我目前正在使用OpenCV的cv::stereoMatcher()
类创建视差图,尤其是使用stereoSGBM。我想知道如果匹配器在两个图像中都找不到相应的像素会发生什么。看起来差异设置为0.但是如果我得到3D坐标(reprojectImageTo3D
),则0的差异必须是无限的(设置CV_CALIB_ZERO_DISPARITY
时为stereoRectify
)并且似乎并非如此。像素(通过meshlab查看)略微落后于墙壁(这是我的照片的实际背景)。
那么不匹配的像素会发生什么?重新投影到3D的效果如何呢?如果我观察pointcloud的实际点(在texteditor中),它们没有值inf
或NaN
,但z坐标比背景墙略大。
我将handleMissingValues
中reprojectImageTo3D
的值设置为false
,但我不明白它究竟是如何影响零差异的像素。
提前致谢