Jump to content
Happy Holidays! Limited Staff Responses: 1/20 - 1/31 ×

Undistorting the Depth Map


LS_Tpowell
 Share

Recommended Posts

Is there currently a method or callback in the works for grabbing the depth map undistorted to match the camera undistortion model? Or perhaps is there a way of grabbing the undistortion model so that I could apply it via OpenCV to the depth map or any other already distorted data.

 

I've found no samples in the C API matching this need, and there's exactly zero documentation in the included headers relating to this.

Link to comment
Share on other sites


 wrote:

Depth map is undistorted. Not sure what you exactly want?

 

The depth map appears to be pre-undistort. IE: It's the matrix prior to any lens distortion correction. When I use the term undistort, I'm referring to the API references to Distorted and Undistorted images which represent pre-undistort and post-undistort respectively. This matches OpenCV terminology as well; the distorted image is actually the source image without any post processing, and the undistorted image is the image after it has been transformed to account for the camera lens distortion. Sorry for any confusion there.

 

Edit: What I'm asking for is documentation on retrieving and applying the undistortion model used internally, since there is exactly zero documentation of that in the API and sample application. My particular use case is undistorting the depth data, but I'm sure there are other use cases. Alternatively, just a callback for already undistorted depth maps would be great for me. But again, the complete lack of documentation for the C API is something I'm sure more people would appreciate being addressed.

Link to comment
Share on other sites

The pipleline of depth map estimation is: Distorted source images -> to undistort images->to rectify images -> to estimate depth. The so-called undistored in SRWorks is actually the images being rectified already, so  the undistorted left-eye image got in callback is directly mapping with depth map in the center with size 640x480 due to left-eye image works as reference for disparity caculation in SRWorks. 

Link to comment
Share on other sites

Awesome, thanks for the clarification!

 

Again though, this is something I think could have been cleared up if there were more than a couple fragmented comments in the released headers. We've had a few updates to the DLLs since the released headers ( https://developer.vive.com/resources/knowledgebase/vive-srworks-sdk/ ).

 

If there is a version of the headers somewhere with documentation in it, or if there's some doxygen unreleased somewhere, I think we'd all appreciate it greatly.

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...