我正在使用 OpenCV 进行图像中的正方形检测。squares.c 示例非常有帮助,但我的问题是它几乎可以识别所有具有 4 个接近 90 度角的东西。
然而,我的目标是仅从视频源中识别图像中的真实方块。这意味着对象本身有 4 个长度相同的边和 4 个 90 度角。起初这听起来很容易,但由于图像中的物体可能会倾斜,因此角度可能会在 45 到 135 度之间变化,并且边缘的长度也不同。如果我检查这些属性,尽管我仍然可以识别不是正方形的矩形。
几天来,我一直在想一个好的解决方案,只识别真正的正方形,但我想出的一切仍然有缺陷。我想知道你们中是否有人知道角的角度和边长之间的确切关系是什么。到目前为止,根据我的猜测,我已经走了很远,但有时会弹出我不想识别的随机方块。我真的认为有一些数学关系,但我真的无法在透视图中找到正方形的公式。
任何帮助将不胜感激!