blaze:將深度資訊視覺化為 RGB 影像#
您正在使用 Basler 的blaze-101 相機,並希望將深度資訊映射到彩色影像上。
您可在此處查閱有關如何將深度資訊視覺化為 RGB 影像的詳細資訊。
這篇知識文章提供了一些額外資訊。
縮放係數與相機是在短距離或長距離模式下運作無關。深度影像與強度影像完全獨立,也就是說,座標的計算與強度影像無關。計算結果取決於您如何擷取距離圖。
使用 blaze Legacy SDK 或 pylon SDK 取得的範圍地圖#
使用pylon API 或 ROS 驅動程式擷取的原始影像,是透過將 [0mm..10000mm] 的 z 值映射至 [0..65535] 的灰階值所產生。
使用由以下公式給出的縮放係數: gray2mm == Scan3dCoordinateScale. DepthMin 進行明確的生命週期管理即呼叫 DepthMax 無需將這些參數納入考量。
關於blaze-101 , gray2mm 是一個常數,且 gray2mm = 10000/65535 = 0.15259. 結果如下:
測量距離 [mm] = 灰階值 * gray2mm = 灰階值 * 0.15259
使用 blaze Viewer 取得的分布圖#
Blaze Viewer 會擷取點雲資料,並根據 3D 資料生成其專屬的距離圖。Blaze Viewer 生成的距離圖與透過 API 擷取的「原始」深度影像之間,唯一的差異僅在於比例尺不同。
Blaze Viewer 會將擷取的距離圖進行重新縮放,並將其映射至 [MinDepth..MaxDepth] z 值轉換為 [0..65535] 灰階值。這能增強顯示(及儲存)影像的對比度。在此情況下,必須套用以下公式:
測量距離 [mm] = 最小深度 + (像素值 × (最大深度 - 最小深度)) / 65535
請注意,此映射是 Blaze Viewer 對深度資料執行的唯一處理步驟。
資訊
若您使用 Blaze Viewer 將範圍影像儲存為 8 位元影像,16 位元資料將會被映射為 8 位元。這表示 [MinDepth..MaxDepth] z 值將映射至 [0..255]. 因此,要將這 8 位元灰階值轉換為 z 值時,需採用不同的公式:
測量距離 [mm] = 深度最小值 + (像素值 × (深度最大值 - 深度最小值)) / 255
不過,不建議使用 8 位元範圍的影像,因為將灰階數值縮減至 256 種,會因量化誤差而導致精確度大幅下降。