如何检索单应性计算的 findHomography 和 RANSAC 的点?

How can I retrieve the points of the homography computed findHomography and RANSAC?

我是 OpenCV 的新手。我注意到那行

Mat H = findHomography( obj, scene, CV_RANSAC );

使用 RANSAC 帮助找到单应性 H

但是,我需要 RANSAC 之后 'purified' 匹配点的位置,但我根本找不到可以使用的函数。我需要一个使用 RANSAC 和 returns RANSAC 之后匹配点位置的函数。

findHomography 可以选择提供异常值和异常值的掩码(异常值就是你所说的 purified 匹配)。

C++: Mat findHomography(InputArray srcPoints, InputArray dstPoints, int method=0, double ransacReprojThreshold=3, OutputArray mask=noArray() )

Python: cv2.findHomography(srcPoints, dstPoints[, method[, ransacReprojThreshold[, mask]]]) → retval, mask

您在进行匹配时只能使用内点(即对应 mask 值等于 1 的点)。

当你从finhomography得到真正的H33结果时,为什么不perspectiveTransform match points from mask to frame,然后你得到很多'purified'个匹配点。