我在Emgu CV中使用Image
类及其MatchTemplate
方法来检测图片中的模式。所以,我的照片是黑白色(256灰色变体),我必须搜索白色模板,但我该如何存储它们?如果我只使用两种颜色的.png:白色代表图案,黑色代表背景 - 那么MatchTemplate
方法会考虑模板的背景部分(并且会破坏结果)。我必须使用什么颜色作为图案背景?
UPD:已添加图片。
图案(仅需白色三角形):
图片示例(一个简单的例子):
答案 0 :(得分:0)
你显然不知道matchTemplate的工作原理。
您不能简单地为要忽略的背景选择一种颜色。该算法总是计算模板和某些图像区域之间的一些差异度量。除非图像和模板背景相同,否则您将始终产生影响。
如果你想“忽略”背景,你必须为每次迭代用图像区域替换背景,这样每个像素的背景差异变为0或至少相同。这听起来效率不高。
提供输入图像和模板示例。最有可能解决您的问题。
答案 1 :(得分:0)
您可能应该通过删除四个黑色侧面(仅留下白色三角形和黑色三角形)来修改模板图像。那应该可以帮助您获得理想的结果。