opencv - 检测图像中的标记以用于OpenCV中的透视变换

我花了一些晚上来修补OpenCV。我正在做一个小项目,该项目会对页面中的内容进行一些分析。我想先进行页面的透视转换,以使其与整个屏幕对齐并适合整个屏幕。但是,我不能说人们会把纸张放在不同颜色的背景上,或者靠得足够长以适合整个页面边界。

因此,我想到了在页面的相对角上添加标记以进行跟踪,获取其位置并对其进行变形的方法。这是我要检测的角标记的示例图像:

最好的方法是什么?我主要是在寻找可以为我指明正确方向的人。

最佳答案

好主意!正如其他人指出的那样,仅两点是不够的,但是您的标记定义了四条线,这些线就足够了。

如果您可以可靠地检测到形成标记的线段上的边缘,则可以将线拟合到它们上,然后直接计算线单应性(然后对其进行反转置以将其转换为点单应性),或成对相交得到四个独立的角,然后在它们上计算点单应性

可能需要进行一些实验才能可靠地检测出您的标记。您可能要考虑使用模板匹配。

https://stackoverflow.com/questions/27432717/

相关文章:

opencv - BackgroundSubtractorMOG2 阴影检测在阳光充足的场景中不起作

python - 如何在python中使用opencv在图像上显示轴

matlab - 如何在 OpenCV 中进行网格插值 interp2

python - 使用 Python 和 Matplotlib 将立体图像和深度图转换为 3D 散点

opencv - 填充轮廓时,drawContours函数在OpenCV中如何工作?

opencv - 从 OpenCV 中的边获取多边形

opencv - 光流和手指跟踪

python - Spatstat:给定二维点列表,如何将它们连接到多边形中,并进一步使其成为研究区

python - 从我的Python代码返回Opencv Mat类型

opencv - 在Cygwin上安装Opencv