Probe coordinates

47 views
Skip to first unread message

Ce

unread,
Aug 3, 2022, 10:44:27 AMAug 3
to BoofCV
Hello Community, Hello Peter,

I would be very pleased to get the solution to my problem. The example "Example Stereo Disparity 3D" shows how to calculate a 3D point cloud from two images and the stereo parameters.

I would like to calculate only the 3D coordinates of single 2D image points (marker points of the checkerboard) in real time (as tracking of a probe) with my stereo camera. The 2D checkerboard points on both raw images are easy to find. Also my stereo cameras are calibrated and I have the stereo parameters. At this point I am not getting further.
A.jpgB.jpg
The "Example Stereo Disparity 3D" rectifies the whole stereo images to one plane. Is it also possible to rectify only my found chess points to this plane? This would save a lot of performance.

If these points are then on the common plane, is there another method to get the 3D coordinate for each stereo pair?

In summary, I need a method that [A] gets a list of 2D chess points on the left ,[B] a list of 2D chess points on the right and [C] stereo parameters and returns me a list of 3D chess board points in the camera coordinate system.

I am very excited about the boofcv library. I've been doing very well with stereo calibration, but I'm a bit lacking with Stereo Disparity 3D. I would really appreciate the support. Thanks a lot in advance!

Best regards
Ce

Peter A

unread,
Aug 31, 2022, 10:51:08 AMAug 31
to boofcv
Sorry for the late reply. Yes you can get the 3D coordinate of each checkerboard point given a known stereo baseline and the detected corners. Here's what it would look like:
  1. Detect corners in image
  2. Pick a corner in left and right image
  3. Convert from pixels to normalized image coordinates
  4. Triangulate point in 3D space using normalized image coordinates and known stereo baseline

For triangulation see FactoryMutliView.triangulate2ViewMetric()

I glossed over a few steps so let me know if you need more information!


--
You received this message because you are subscribed to the Google Groups "BoofCV" group.
To unsubscribe from this group and stop receiving emails from it, send an email to boofcv+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/boofcv/19c1e5d2-9552-4c86-b3e6-e85d32bc12fcn%40googlegroups.com.


--
"Now, now my good man, this is no time for making enemies."    — Voltaire (1694-1778), on his deathbed in response to a priest asking that he renounce Satan.

Ce

unread,
Sep 6, 2022, 10:45:49 AMSep 6
to BoofCV
Thank you so much Peter!
It works now! Have a nice day!
Reply all
Reply to author
Forward
0 new messages