用卷积神经网络进行四边形/矩形检测的思路

时间:2017-06-01 13:18:40

标签: neural-network computer-vision deep-learning object-detection

我一直试图进行四边形检测和定位几周,我的目标是有一个强大的方法来获得四边形(矩形)的4个点,所以我可以将投影变换应用于图像然后将其附加到源图像。我尝试了经典的opencv轮廓方法,并使用霍夫变换找到线然后计算交叉点,这两种方法在应用于现实生活中的图像时无法使用。 quadrangle detection

所以我转向CNN寻求帮助,但目前我还没有发现任何人尝试使用CNN来解决这个简单的问题。

我的第一次尝试是使用最先进的物体检测和定位方法来获得四边形的边界框,这样我就可以缩小4个点的搜索范围,然后使用图像处理&计算机视觉方法进一步搜索4分。但在尝试YOLOv2和Faster-RCNN后,预测精度并不理想。

所以我想知道是否有任何想法我可以使用单个神经网络进行端到端,训练和前馈。它也必须能够很好地处理遮挡。

目前我的想法是删除fc层并制作一个巨大的激活贴图,其宽度和高度与第一个输入层相同(例如448x448),然后优化4个激活最高的区域,使用argmax获取位置。但是这种方法仅适用于一个四边形,它也不适用于角落遮挡。

如果有人能提供任何建议,我将不胜感激。非常感谢!

1 个答案:

答案 0 :(得分:3)

你提到的第一种方法是完全正确的。像方法一样的霍夫变换是旧的,对野外的图像没有用。当然,随着深度学习的兴起,计算机视觉领域已经转向了物体检测和识别。

然而,最近有一个非常好的讨论。 Have we forgotten about Geometry in Computer Vision?

我的建议是轮廓检测,然后应用Hough变换(使用最先进的)方法来检测你想要的矩形,关于遮挡,你可以设置Hough变换的参数,以更加宽容带有参数的缺失边缘像素。  例如,您可以像最近的CVPR paper一样检查最新的轮廓检测方法。