|
发表于 2018-10-12 14:33:21
|
显示全部楼层
常用技术:
1、Comparing histograms
最简单快速的方法,几十年前被提出用于发现图片相似性。森林多是绿的,人脸多是粉的,如果比较两张森林的照片,会发现在直方图方面有更多的相似,因为他们都有很多绿色。
不足:过于简化,香蕉和沙滩因为颜色的原因,看上去很像
Opencv:compareHist()
2 Template matching
一个很好的用处是寻找优质匹配(good match)。使用要进行搜索的图片和被搜索图片进行卷积。通常用于在大图中寻找小图片段。
不足:仅返回优质结果,相同图片、相同大小或方向
Opencv:matchTemplate()
3、Feature matching
很可能是图片搜索中最有效率的方法。以一种保险的方式从一张图片中提取一些特征,保证即使进行了旋转、缩放、扭曲(skewed),仍然能够再次提取出相同的特征。按照这种方式提取的特征能够匹配其他图片的特征集合。另一张图片如果含有很高比例第一张图片所具有的特征的话,他们在很大程度上描绘了相同的对象或场景。能用于在照片中寻找不同拍摄角度的相对差异,或者重叠量。
有很多Opencv手册&例子,有一整个opencv模块(features2d)专用于做这个事情。
不足:速度很慢,并不完美 |
|