Stereo processing

Skip to first unread message


Sep 16, 2012, 8:46:27 AM9/16/12
I would like to do some stereo processing using the two cameras of the HTC Evo 3D.

Therefore I would like to know what is possible with OpenCV4Android or NDK/C++ and what is not.

1) I read in another thread that the stereoCalibrate() does not work. Is that true? If yes, can I calibrate
    the stereo camera anyway with Desktop OpenCV by capturing several image-pairs ?
2) Can I use cvFindStereoCorrespondence() in order to calculate the disparity map?
3) Which performance can I expect doing this with live preview, i.e. calculate a live disparity map on Android-platform?

Thank you.

Kirill Kornyakov

Sep 17, 2012, 4:04:17 AM9/17/12
  1. stereoCalibrate function should work, but the use of stereo_calib.cpp sample is not trivial on Android. It is simply doesn't make sense to use it on Android, it is much more convenient to do it on your desktop. So, what you need is to take a set of photos with chessboard, copy them to you desktop and calibrate you stereo camera with the mentioned sample. OpenCV currently can't help you with getting stereo images, but you can use default software or the vendor-specific API for accessing camera, if such exists.
  2. I think yes, but better use C++ StereoBM class, or even StereoSGBM.
  3. StereoBM is fast real-time on desktop, so I think you can take several FPS on VGA frame. But I'm not sure, please let us know when you're have these numbers. BTW, you don't need to calibrate camera to try the correspondence. Just allocate 2 Mat's and call StereoBM, you will see the performance immediately. You can do it in 1 hour :-)
Reply all
Reply to author
0 new messages