I want to read a depth image from ros.
I subscribe to the /camera/aligned_depth_to_color/image_raw/compressed
topic published by a intel realsense D435i camera.
I get a sensor_msgs CompressedImage ros msg, the image has a 16UC1; jpeg compressed
format.
I use opencv to read the image:
depth_image = bridge.compressed_imgmsg_to_cv2(image_depth,desired_encoding='passthrough')
but it returns an image with values between 0-255. How can I get the depth value in mm for each pixel?
$\begingroup$
$\endgroup$
Add a comment
|
1 Answer
$\begingroup$
$\endgroup$
2
https://github.com/IntelRealSense/realsense-ros/issues/2361#issuecomment-1160149057 and surrounding comments say to use compressedDepth
instead, or uncompressed, /compressed
16UC1; jpeg compressed
is unusable (because it was automatically created by ImageTransport
, which in this case and others creates invalid image topics unless manually configured not to with disable_pub_plugins
).