取消扭曲img以查找与三角剖分匹配的相应特征

时间:2019-02-13 08:59:18

标签: opencv camera-calibration feature-detection triangulation

i具有立体声设置,该设置已通过stereoCalibratestereoRectify进行了校准和校正。我着手使用来自initUndistortRectifyMap的重映射图像,使用检测器和描述符找到相应的特征匹配。我这样做是为了仅通过沿着水平立体设置从左侧图像中的每个点沿相同的y轴进行检测来找到左侧图像和右侧图像之间的对应匹配,这将减少搜索时间。

但是我确实知道沿着搜索线会有一些对极误差,因此通过为水平线上下创建一个像素的遮罩来扩展搜索范围。但是即时消息一直没有很好的搜索。我正在使用ORB。对极误差= 0.53。正确匹配的最佳方法是什么?

cv::Mat mask = cv::Mat::zeros(img_r_0.size(),CV_8U);
cv::Mat roi(mask,cv::Rect(0,points_l_0[i].y-1.0,img_r_0.cols,3 ));
roi = cv::Scalar(255);
orb_detector->detectAndCompute(img_r_0,mask,temp_keypoints_r_0,descriptors_r_0);

enter image description here 我也想知道是否最好在失真的图像上找到相应的匹配项,然后在三角剖分之前对点进行不失真。我的最终目标是通过检测左图像上的特征点来获得良好的特征点。我不想使用深度图。

我更大的目标是在没有深度图的情况下进行立体测距。我试图避免左右特征匹配,因为它很难根据运动在不同的帧之间进行匹配。我是新手,如果您有更好的解决方案,请随时提供帮助

0 个答案:

没有答案