- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I've found that when I use the Calibration interface to query camera intrinsics (focal length and principal point), I get a different result than when I use the Device interface.
For example, with my SR300, using Intel::RealSense::Calibration:
calibration->QueryStreamProjectionParameters(StreamType::STREAM_TYPE_DEPTH, &depthCalib, &depthTransform);
reports focal length of {x=475.89, y=475.89} and principal point of {x=313.28, y = 240.76}.
But when I using Intel::RealSense::Capture::Device:
auto depthFocalLength = device->QueryDepthFocalLength();
auto depthPrincipalPoint = device->QueryDepthPrincipalPoint();
I get focal length of {x=463.88, y=463.88} and principal point of {x=320.00, y=240.00}.
Why do these two interfaces report different results? Which is accurate?
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello JonathanMoisantThompson,
Thanks for reaching out!
I'd like to share the links for the documentation of QueryStreamProjectionParameters, QueryDepthFocalLength, QueryDepthPrincipalPoint:
https://software.intel.com/sites/landingpage/realsense/camera-sdk/v1.1/documentation/html/index.html?querystreamprojectionparameters_pxccalibration.html
https://software.intel.com/sites/landingpage/realsense/camera-sdk/v1.1/documentation/html/index.html?querydepthfocallength_device_pxccapture.html
https://software.intel.com/sites/landingpage/realsense/camera-sdk/v1.1/documentation/html/index.html?querydepthprincipalpoint_device_pxccapture.html
If you read the description of the QueryStreamProjectionParameters function, it is mentioned that it returns the calibration and transformation parameters of the specified stream type.
Meanwhile on the documentation of QueryDepthFocalLength and QueryDepthPrincipalPoint it is mentioned that they return their respective parameters values but they also make an important note, the property value is the model fixed value, and not the device instance calibrated value hence the difference in the outputs.
I hope this helps.
-Peter.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello JonathanMoisantThompson,
Do you have any updates about this?
-Peter.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page