Sto*_*012 18 c++ opencv image-processing computer-vision template-matching
我正在使用匹配模板的方法CV_TM_CCORR_NORMED来比较两个图像...我想制作这个旋转和缩放不变..任何想法?
我尝试在图像和模板的傅里叶变换上使用相同的方法,但旋转后的结果仍然不同
Lar*_*bar 34
matchTemplate在场景中旋转或缩放对象时,模板匹配效果不佳.
您应该尝试使用Features2DFramework中的openCV函数.例如SIFT,SURF描述符和FLANN匹配器.此外,您将需要findHomography方法.
这是在场景中找到旋转对象的一个很好的例子.
更新:
简而言之,算法是这样的:
查找对象图像的关键点1.1.从这些关键点中提取描述符
查找场景图像的关键点2.1从关键点提取描述符
匹配器匹配描述符
分析你的比赛
有不同类别的FeatureDetectors,DescriptorExtractors和DescriptorMatches,您可以阅读它们并选择适合您的任务的那些.
比通过特征检测和单应性来匹配模板比例尺和旋转不变性更容易的方法(如果您知道模板实际上仅是旋转的和比例尺,但其他所有条件都是不变的)。对于真正的物体检测,以上建议的基于关键点的方法效果更好。
如果您知道它是相同的模板,并且不涉及透视图更改,则可以使用图像金字塔进行比例空间检测,并在该金字塔的不同级别上匹配模板(通过简单的方法,例如SSD或NCC)。在金字塔的较高(=较低分辨率)级别上找到粗略的匹配将很便宜。实际上,它是如此便宜,以至于您也可以在低分辨率级别上大致旋转模板,并且当您将模板追溯到更高分辨率级别时,可以使用更细粒度的旋转步进。这是一种非常标准的模板匹配技术,并且在实践中效果很好。
| 归档时间: |
|
| 查看次数: |
34836 次 |
| 最近记录: |