gpt4 book ai didi

python - 使用 OpenCv 进行透视检测

转载 作者:太空宇宙 更新时间:2023-11-03 22:16:22 25 4
gpt4 key购买 nike

如果我想检测透视扭曲的物体(例如矩形)并计算校正变换,会有什么好的方法?

比如我有很多张纸躺在平面上的照片(照片是从一个角度拍摄的),我想校正透视并裁剪它们。

我正在考虑使用 OpenCv Python 绑定(bind)来创建一些东西。我认为这将是一个有很多例子的“标准问题”,但我没有找到任何相关信息。线索?

编辑:我应该补充一点,我知道这可以通过使用一些 Web 服务来完成,但我认为这是在学习 OpenCv 的同时做一些有用的事情的机会:)

最佳答案

您必须准确说明检测失真的含义。我假设您想检测此类纸张(或您的 table /平面)的角并使其与您的显示器轴平行。这可以使用 cvFindHomographycvWarpPerspective 来完成。我刚才为 python 编写了一些示例代码,请注意,这些仍然是旧绑定(bind)(不过应该不会花很长时间更新到 opencv 2.0):http://ioctl.eu/blog/2009/05/13/opencv_homography

您显然需要做的另一件事是检测角点。在我的示例代码中,用户需要使用鼠标单击四个角。在你的情况下,很难说,因为我需要一个例子。 OpenCV 提供了几种检测角点的方法(参见 Harris),在示例中也应该有关于如何找到矩形的代码。如果您能更具体一些,我可能会提供更大的帮助。

更新这对你来说可能也很有趣:我刚刚听到一个关于操纵图像中的透视失真的演讲(例如增加透视)。它们需要大量的用户交互,但会优化一些带有一些约束的网格以保持平滑的变形。这是 acm 链接:http://portal.acm.org/citation.cfm?id=1778765.1778864也许您可以从该论文和提到的引用文献中得出一些想法,但是我自己(还)没有读过它。

关于python - 使用 OpenCv 进行透视检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3151034/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com