我有两张相同的图片,但第二张被扭曲并且尺寸不同。我希望能够在第一张图片上选择一个点并在第二张图片上找到完全相同的点。图片的同步将由每张图片上的 4 个点进行。示例:普通图片扭曲的画面 结果将是一个函数从第一张图片中获取 X,Y 点并返回与第二张图片上完全相同的点对应的 X',Y'。我发现 OpenCV 的 findHomography() 函数返回一个 Homography 矩阵,但在所有示例中,该矩阵都用于使用 warpPerspective() 扭曲第二个图像,这不是我想要的。我只想要两张图片之间的相应坐标/像素。关于如何在 C# 中做到这一点的任何提示?(是否使用 OpenCV)
1 回答
慕娘9325324
TA贡献1783条经验 获得超4个赞
感谢 Alexander Reynolds 的评论,我终于使用了OpenCvSharp 3库。您可以使用以下方法获得单应矩阵:
homographyMatrix = OpenCvSharp.Cv2.FindHomography(originalPicturePoints, targetPicturePoints);
然后从原始图片中获取目标图片上的任何点:
targetPoint = OpenCvSharp.Cv2.PerspectiveTransform(orignalPoint, homographyMatrix);
- 1 回答
- 0 关注
- 149 浏览
添加回答
举报
0/150
提交
取消