首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >模板匹配亚像素精度

模板匹配亚像素精度
EN

Stack Overflow用户
提问于 2016-03-03 11:03:19
回答 2查看 4.3K关注 0票数 2

我使用模板匹配来检测特定的模式,在image.The中确定的移位是非常不稳定的。目前,我将其分别应用于R、G、B信道,并对结果进行平均得到浮点values.Please,提出了如何获得亚像素精度的建议。我正在计划调整图像的大小,然后返回原始比例的数据,请提出其他更好的方法。

我使用Opencv网站"matching.html“中提到的代码

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-03 12:23:23

我相信根本的问题是minMaxLoc只有像素精度。您可以从这里的讨论中尝试一个亚像素精确的补丁SubPix.cpphttp://answers.opencv.org/question/29665/getting-subpixel-with-matchtemplate/

作为一个快速和肮脏的实验,如果一个亚像素精确的minMaxLoc可以解决您的问题,您可以使用三次插值INTER_CUBIC transformations.html#resize来放大模板匹配结果图像(例如,4倍),并在其上应用minMaxLoc。(与线性插值相反,三次插值确实移动了最大值。)

除此之外,还可以将高斯模糊应用到输入图像和模板匹配结果中,以降低高频噪声和抑制局部极大值。

我会先尝试一下这个快速实验。如果有帮助,您可以集成minMaxLogSubPix实现,但这需要更长的时间。

票数 5
EN

Stack Overflow用户

发布于 2016-03-03 12:20:28

在移到亚像素精度之前,从像素精度开始是一件好事。检查整个图像的亚像素精度将是昂贵的方式。

一个简单的解决方案可能是有4个版本的模板。除了基本的一个,还有一个左移1/2像素,另一个向下移动1/2像素,最后一个在两个方向上移动1/2像素。当您在{x,y}上有匹配时,请检查邻里,看看半移位的模板是否更匹配。

这种方法的好处是,您只需移动小模板,就可以预先完成。

话虽如此,但随着时间的推移,你似乎在跟踪一个物体的位置。对于低通滤波器来说,这个位置可能是很有用的。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35770404

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档