使用Opencv StereoCalib校准2个相同的相机。 我有0.32109 RMS错误 和0.386568平均重新引发错误 results of calibrating
我认为这不是很大的校准错误。 但是使用带有黑色左边框的opencv SGBM算法获得this depth map
int sgbmWinSize = 9;
int cn = img1.channels();
sgbm->setPreFilterCap(63);
sgbm->setBlockSize(sgbmWinSize);
sgbm->setP1(8 * cn*sgbmWinSize*sgbmWinSize);
sgbm->setP2(32 * cn*sgbmWinSize*sgbmWinSize);
sgbm->setMinDisparity(0);
sgbm->setNumDisparities(numberOfDisparities);
sgbm->setUniquenessRatio(10);
sgbm->setSpeckleWindowSize(100);
sgbm->setSpeckleRange(32);
sgbm->setDisp12MaxDiff(1);
sgbm->setMode(alg > 1 ? StereoSGBM::MODE_HH : StereoSGBM::MODE_SGBM);
问题是什么?
答案 0 :(得分:0)
非遮挡区域遮罩 除了视差图,对于立体匹配 - 方法评估非常有趣 遮挡区域面具。这个面具代表白色 为场景中可见的像素着色 相机和黑色可见的像素 只从一台相机
问题"解决了#34;与
for(int y=0;y<height;y++){
for(int x=0;x<width;x++){
if(imageData[y*width+x]==0){
imageData[y*width+x]=x>width/2?imageData[y*width+x+1]:imageData[y*width+x-1];}}}