image - 从添加背景的第二张图像中使用的列表中查找图像

标签 image algorithm computer-vision comparison

我目前正在做一个项目,我有一组白色背景的小图片。用户将向我提供包含上述图像之一的图像(完全是一个,保证),但图像将位于不同的背景上/将有其他对象不在其中,等等。

最初我认为这将是一些机器学习/图像比较算法的简单应用。但是,使用关键点匹配有时会失败,因为更突出的对象会与列表中的不同图像或类似图像匹配。

我认为这实际上不需要任何机器学习,因为图像是相同的,而且我的图像集非常小(大约 500 张图像),那么是否有任何图像比较算法可以正确处理我的情况?如果不是,我可以做什么样的预处理来提高准确性?

最佳答案

如果您知道图像与您所拥有的图像完全相同(姿势、方向、比例等没有变化)并且只有背景不同,我建议您使用简单的模板匹配。

因此,您需要做的第一件事就是从白色背景中提取小图像。这是一个简单的步骤,只需选择图像中不同于 255(或适当的背景值)的所有像素。这被认为是"template"。

第二阶段是对测试图像上的每个模板运行“模板匹配”算法,并将其值视为最大相关性。

在最后阶段选择给出最大相关值的模板作为所选图像。

有关示例代码和进一步说明,您可以查看 http://docs.opencv.org/2.4/doc/tutorials/imgproc/histograms/template_matching/template_matching.html

关于image - 从添加背景的第二张图像中使用的列表中查找图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41402809/

相关文章:

matlab - 运动检测的最佳算法?

image - 我应该为动态创建的条形码使用什么图像格式

python - 如何使用 tkinter 调整此图像的大小?

algorithm - 非重叠区间的贪婪选择

python - 从keras中的扩展张量制作输入特征图

c++ - 如何使用 SVM 从视频中检测对象

javascript - 如何根据包含特定词的属性选择元素

c# - 检查图像是否着色

algorithm - 4向渐变填充。可能的?

php - 人气算法