3

在图像中我需要找到“表格” - 简单的矩形。问题在于边缘识别,因为潜在的照片将是“暗的”。
我尝试了边缘 - sobel,canny,log,.... - 识别,然后是霍夫变换和寻线。但是这种算法不足以完成这项任务。
可以帮助我的东西:
-它是矩形!,仅在透视图中(类似于适合透视矩形的东西?)
-该对象必须至少覆盖例如 90%的照片(我知道我需要查看照片边缘)
-该矩形有快速相同的颜色(例如木餐桌)
-我需要找到至少“仅”4个角..(但是是的,最好找到那张桌子的边缘)

我知道例如 sobel、canny 或 log 算法是如何工作的,Hough 也是如此。当然,这些算法在黑暗或非对比度图像上会失败。但是是否有另一种方法,例如基于“拟合”?

图像显示我可以得到的照片(你看它会很暗)和我需要找到的东西:

图 1 图 2

这真的是“漂亮”的照片(没有噪音)。我在更多噪声图片上对其进行了测试,结果……简直太可怕了……
这张图片的结果与实际算法日志(与另一张看起来相同):
图 3 图 4
我知道图像和边缘识别不是简单的挑战,但有一些新的更好我可以尝试使用的方法或类似的东西?
在这里的一篇文章中,我发现了 LSD 算法。它的描述看起来非常好,而且它似乎也能识别出非常好的直线。你认为将它用于精明或索贝尔检测会更好吗?
另一种解决方案是角点检测,在我的示例图像上效果更好,但它识别出的点太多并且时间会出现问题..我需要连接所有点并“找到”表格..

另一个解决方案:
我考虑过点对点映射。我将有一些“虚拟”表并尝试将上面的表与那个“虚拟”表映射(绘画中的简单二维正方形:])..但我认为点对点映射会给我带来很大的错误,或者它不会工作.

有人对算法使用什么有任何建议吗?
我尝试在 FIJI 中识别边缘,然后将边缘检测到的图像放入 matlab 中,但是尽管它也不好用..:/..

你认为最好用什么?简而言之,我需要找到一些处理非对比度、暗图像的算法。

4

1 回答 1

3

我会尝试一些修改过的算法:

你用 4 个点参数化你的矩形并在图像角落的某个地方初始化它们。然后使用一些优化算法(例如梯度下降、模拟退火等)将这些点移向图像特征。

图像特征可以是要在这四个点之间的线上评估的边缘特征(例如,直接sobel或某些高斯滤波图像的sobel)和要在这4个点评估的角特征的组合。

此外,您可以惩罚不太可能的矩形(可能取决于点之间的角度或到图像边界的距离)。

于 2013-09-08T18:12:14.363 回答