Live disparity map quality
Posted: Thu Feb 20, 2020 9:56 pm
Hello,
I'm attempting to create a disparity map with two fisheye cameras. We're running scripts from https://github.com/realizator/stereopi-fisheye-robot.
We ran the calibration successfully and tuned parameters exactly as shown in the videos. Regardless, we're having trouble achieving the same performance/smoothness/quality of the disparity map shown in the demo video. We've tried tuning parameters extensively and we've also taken a look at some of the other posts on this topic, but we still have an extremely noisy map (fluctuating colors, noisy/rough edges, lots of speckles and patches of random color).
Changing the minDisparity, numberOfDisparities, speckleRange, or speckleWindowSize seem to be helping, but it's quite difficult to pinpoint the exact parameter values for the best image. Is there any methodology or set process for finding the optimal parameter values (even programmatically)? Is there something beyond our parameter values that could be causing imperfection (lighting, our calibration, cameras)? Is there something in the calibration or disparity map code that could be changed to improve our map quality?
For reference, here's our fork of the repository that contains all of our calibration data, results, and settings (such as scenes, etc): https://github.com/vivvyk/stereopi-fisheye-robot. In the "vids" directory, you can see recorded videos of our disparity map. I've also included some screenshots here. As a side note, our saved video has slightly worse resolution but it's much clearer with the cameras.
I certainly understand it's difficult to tell what may be going wrong, but any suggestions or guidance to improve the quality of our map would be appreciated!
Thanks!
I'm attempting to create a disparity map with two fisheye cameras. We're running scripts from https://github.com/realizator/stereopi-fisheye-robot.
We ran the calibration successfully and tuned parameters exactly as shown in the videos. Regardless, we're having trouble achieving the same performance/smoothness/quality of the disparity map shown in the demo video. We've tried tuning parameters extensively and we've also taken a look at some of the other posts on this topic, but we still have an extremely noisy map (fluctuating colors, noisy/rough edges, lots of speckles and patches of random color).
Changing the minDisparity, numberOfDisparities, speckleRange, or speckleWindowSize seem to be helping, but it's quite difficult to pinpoint the exact parameter values for the best image. Is there any methodology or set process for finding the optimal parameter values (even programmatically)? Is there something beyond our parameter values that could be causing imperfection (lighting, our calibration, cameras)? Is there something in the calibration or disparity map code that could be changed to improve our map quality?
For reference, here's our fork of the repository that contains all of our calibration data, results, and settings (such as scenes, etc): https://github.com/vivvyk/stereopi-fisheye-robot. In the "vids" directory, you can see recorded videos of our disparity map. I've also included some screenshots here. As a side note, our saved video has slightly worse resolution but it's much clearer with the cameras.
I certainly understand it's difficult to tell what may be going wrong, but any suggestions or guidance to improve the quality of our map would be appreciated!
Thanks!