我有一些带有图像的磁铁。只有一小部分不同的图像(比如说 20 张图像),它们将在固定的棋盘中对齐(图中仍未显示)。
我已经有一种算法可以从板上提取每张磁卡,对原始图像应用透视变换以防止透视失真。
我想听听您的建议,以便检测板上的每个图像,我的意思是,检测磁铁是否是: Pandas 、兔子、狗、胡萝卜……因为我的主要目标是分析图像并提取包含所有棋盘元素的矩阵。
我的第一次尝试非常基础:根据平均颜色猜测图像。它不是很健壮,因为有几张图像具有相似的平均颜色(特别是那些卡住的卡片),并且浅色调可以改变很多颜色。
您能指点我正确的方向来提取包含板上所有图像的矩阵吗?我不需要特定的实现,而是需要我应该遵循的步骤的概念或应用于主图像的技术,以获得稳健(而不是太复杂)的算法。
我将使用 OpenCV 来实现它,但我想使用任何其他计算机视觉库都是一样的。
非常感谢您的时间!
最佳答案
虽然 SIFT 或其他特征检测器运行良好且应用广泛,但我总是从最简单的可行方法开始:在您的情况下,可能是 template matching .毕竟,您已经完成了消除透视失真、旋转和不同比例的艰苦工作。
基本思想是获取 20 个模板图像中的每一个,并将其与搜索图像中的每个可能位置进行比较。由于卷积定理,这是一个相对便宜的操作。
关于image - 请告诉我有关此计算机视觉任务的信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29409769/