What's the intrinsics and extrinsics (w.r.t. left IR cam) of the depth map? (D430)
How can I find out the intrinsics and extrinsics (w.r.t. left IR cam) of the processed 16-bit depth map?
The left IR cam has 1280 x 800 resolution, and the depth map has 1280 x 720 resolution. The realsense API only gives calibration parameter of the raw IR cameras, but not the depth map.
Thank you for the help!
-
You can use an SDK tool called sensor-control to read the intrinsics and extrinsics of both IR and depth streams. The link below has an example guide. Though the guide uses an SR300 camera, the process is the same for the 400 Series cameras.
https://github.com/IntelRealSense/librealsense/issues/5134#issuecomment-546641014
-
Thanks, MartyG, this is a very useful tool.
Another follow-on question, the sensor-control tool you mentioned can give me the extrinsics between the depth map and the RECTIFIED left IR image (the extrinsics is basically identity according to the print out from sensor-control).
I'm wondering how I can get the extrinsics:
1. between depth map and the UNRECTIFIED left IR image, or
2. between RECTIFIED left IR image and the UNRECTIFIED left IR image?
Thank you!
-
First, I checked the extrinsics between rectified left IR image (Y8 profile) and depth map, and found it to be identity:
Translation: [0,0,0]
Rotation Matrix:
[1,0,0]
[0,1,0]
[0,0,0]
which makes sense to me because the depth map is rectified and centered at the left rectified IR image
Then I checked the extrinsics between unrectified Y16 IR profile (Infrared #1 Video Stream: Y16 1280x800@25Hz) and the depthmap (Depth #0 Video Stream Z16 1280x720@30Hz), however, the extrinsics I got was still identity:
Translation: [0,0,0]
Rotation Matrix:
[1,0,0]
[0,1,0]
[0,0,0]
which can't be true because this should be between rectified depth and unrectified raw IR image?
-
I would imagine that there would be discrepancy between an unrectified image and a rectified one, since the rectified one will have gone through a transformation in the Vision Processor D4 component inside the camera before being sent to the computer. Plus, the Y16 format is designed for use with camera calibration, not for everyday use in RealSense applications like the Y8 format is.
For expert advice on rectified and non-rectified images, the RealSense GitHub is an excellent place to ask questions. You can do so at the link below by clicking the 'New Issue' button on that page. Good luck!
-
MartyG Thank you very much for your continued help.
Does this mean sensor-control failed to output the extrinsics between unrectified and rectified IR image? Are there any other ways that can potentially do this and you would recommend me to try?
I understand Y16 is for calibration purpose only, and in my specific application I need to have access to it. Thank you for the pointer to Github too.
-
This is the first time that I have heard of someone trying to compare the extrinsics of rectified and unrectified stream profiles and my research could not find an example of it, and so the GitHub is likely to be the best place to get advice on this from an Intel RealSense team member. I do apologize.
Please sign in to leave a comment.
Comments
7 comments