estimateRigidTransform

estimateRigidTransform

我在 python 中使用 OpenCV。文档正在杀死我。如何正确使用estimateRigidTransform?

我试图提取两个图像之间的相似性变换,所以我假设我不能使用 findHomography b/c 我不想引入剪切等。 EstimateRigidTransform 似乎是完美的候选者,但我只是收到“无”的输出”。它的输入是什么?有没有人正确地使用它,即使是一个简单的案例?

我的代码是这样的:

img1=cv2.imread('src.jpg')
img2=cv2.imread('dst.jpg')
H = cv2.estimateRigidTransform(img1, img2, False)

我试过操纵不同数据类型的输入无济于事。我也可以输入关键点?或匹配的关键点?

任何两个图像的简单示例都会很有用!!谢谢

最佳答案

estimateRigidTransform 有两种工作模式:图像之间的匹配和点集之间的匹配。为了在图像之间进行匹配,它需要在两个图像中找到感兴趣的点,并找到哪个点应该与哪个点匹配。我很欣赏尝试创建一个通用案例算法来做到这一点,但这几乎是不可能的任务。所以我建议你使用estimateRigidTransform的第二种模式,即点集之间的匹配。首先,找到图像中的兴趣点。其次,找到不同集合的点之间的匹配。第三,使用estimateRigidTransform 找到变换本身。点应该在两个相同大小的数组中提供(匹配点应该在匹配的地方)。

您可以使用estimateRigidTransform 的this 文档。它很简单,而且非常具有描述性。

关于python - 在 OpenCV python 中估计刚体变换,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21129314/

10-11 01:46