콘텐츠로 바로 가기
STAGING SERVER
DEVELOPMENT SERVER

blaze: 깊이 정보를 RGB 이미지로 시각화하기#

Basler blaze-101 카메라를 사용 중이며 깊이 정보를 컬러 이미지에 매핑하려고 합니다.

깊이 정보를 RGB 이미지로 시각화하는 방법에 대한 자세한 내용은 여기에서 확인할 수 있습니다.

이 기술 문서에서는 추가 정보를 제공합니다.

Scaling 인자는 카메라가 Short 또는 Long Range 중 어느 모드로 작동하는지와 무관합니다. 깊이 이미지는 강도(intensity) 이미지와 완전히 독립적이므로 좌표 계산 역시 강도 이미지와 무관합니다. 계산은 Range Map을 캡처하는 방식에 따라 달라집니다.

blaze 레거시 SDK 또는 pylon SDK를 사용하여 획득한 Range Maps#

pylon API 또는 ROS 드라이버로 캡처한 원본(raw) 이미지는 [0mm..10000mm]의 z값을 [0..65535]의 회조값으로 매핑하여 생성됩니다.

다음에 제공되는 Scaling 인자를 사용하십시오. gray2mm == Scan3dCoordinateScale. DepthMin 및 DepthMax 파라미터는 고려할 필요가 없습니다.

blaze-101의 경우, gray2mm 은(는) 상수 값이고 gray2mm = 10000/65535 = 0.15259입니다. 그 결과는 다음과 같습니다.

측정된 거리 [mm] = Gray_Value * gray2mm = Gray_Value * 0.15259

blaze Viewer를 사용하여 획득한 Range Map#

blaze Viewer는 포인트 클라우드 데이터를 캡처하고 3D 데이터로부터 자체 Range Map을 생성합니다. blaze Viewer가 생성한 Range Map과 API를 사용하여 캡처한 "원본(raw)" 깊이 이미지 간의 유일한 차이점은 스케일의 차이뿐입니다.

blaze Viewer는 획득한 Range Map을 가져와 재스케일링(re-scale)하며, [MinDepth..MaxDepth] z값을 [0..65535] 회조값에 매핑합니다. 이를 통해 표시(및 저장)되는 이미지의 대비(contrast)가 향상됩니다. 이 경우 다음 공식을 적용해야 합니다.

측정된 거리 [mm] = DepthMin + (Pixel_Value x (DepthMax - DepthMin)) / 65535

이 매핑은 blaze viewer가 깊이 데이터에 대해 수행하는 유일한 처리 작업입니다.

정보

blaze viewer를 사용하여 Range 이미지를 8비트 이미지로 저장하는 경우, 16비트 데이터가 8비트로 매핑됩니다. 즉, [MinDepth..MaxDepth] z값이 [0..255](으)로 매핑됩니다. 따라서 이러한 8비트 회조값을 z값으로 변환하려면 다음과 같은 다른 공식을 적용해야 합니다.

측정된 거리 [mm] = DepthMin + (Pixel_Value x (DepthMax - DepthMin)) / 255

하지만 양자화 오차로 인해 256개의 서로 다른 회조도로 축소되면서 정밀도가 크게 저하되므로, 8비트 범위 이미지는 권장되지 않습니다.

기술 자료로 돌아가기