我有一张包含水平和垂直线的图像。实际上,这张图像是将 BBC 网站转换为水平和垂直线的结果。我的问题是,我想找到图像中所有的矩形。我想编写一个计算机程序来找到所有矩形。有人知道如何实现,或者可以提供一些入门的想法吗?作为一个人,我可以很容易地找到视觉上的矩形,但我不太确定如何用程序来描述它。
图像是 BBC 网站,链接如下:http://www.bbc.co.uk/
更新:我已经编写了将 BBC 网站图像转换为水平和垂直线的代码,但问题是这些线在角点处并不完全相交,有时它们没有完全形成一个矩形。谢谢!
回答:
Opencv (一个用 C 编写的图像处理和计算机视觉库)实现了霍夫变换(简单的霍夫变换用于查找图像中的直线,而广义的霍夫变换可以查找更复杂的对象),这可能是一个好的开始。对于那些具有闭合角的矩形,也有像 cornerHarris 这样的角点检测器可以提供帮助。
我运行了 opencv 提供的 houghlines 演示,这是在您提供的图像上的结果(检测到的直线用红色标记):
(source: splintec.com)