我已经使用立体摄像机捕获了包含2个门(1个打开,1个关闭)的2张图像。 2张图像已校正且未失真。我尝试使用sgbm方法生成视差图。以下是我用于sgbm的参数。
numberOfDisparities = 48;
SAD windowsize = 9;
sgbm->setPreFilterCap(63);
sgbm->setBlockSize(9);
sgbm->setP1(8*cn*sgbmWinSize*sgbmWinSize); //cn=3,sgbmWinSize=9
sgbm->setP2(32*cn*sgbmWinSize*sgbmWinSize);
sgbm->setMinDisparity(0);
sgbm->setNumDisparities(48);
sgbm->setUniquenessRatio(1);
sgbm->setSpeckleWindowSize(100);
sgbm->setSpeckleRange(20);
sgbm->setDisp12MaxDiff(1);
sgbm->compute(img1, img2, disp);
disp.convertTo(disp8, CV_8UC1, 255/(numberOfDisparities*16.));
imshow("disparity8", disp8);
可以在下面的此链接中找到2张图像和视差图。
!(http://i.stack.imgur.com/Qbhh6.png)
我需要调整哪些参数以进一步改善视差图?
此外,我想使用视差图生成深度图,但不确定如何去做。
最后,我想通过使用深度图来检测打开的门。有人对此有任何建议或方法吗?
最佳答案