首页 » 科技之窗 » 图像处理 » 基于感知哈希算法的快速图像相似度比对Neal Krawetz

基于感知哈希算法的快速图像相似度比对Neal Krawetz
作者:管理员  来源:本站原创   2016-10-25

根据Neal Krawetz博士的解释,(LOOKS LIKE IT)原理非常简单易懂。我们可以用一个快速算法,就达到基本的效果。这里的关键技术叫做“感知哈希算法”(Perceptual hash algorithm),它的作用是对每张图片生成一个“指纹”(fingerprint)字符串,然后比较不同图片的指纹。结果越接近,就说明图片越相似。

下面是一个最简单的实现:

第一步,缩小尺寸。将图片缩小到8×8的尺寸,总共64个像素。这一步的作用是去除图片的细节,只保留结构、明暗等基本信息,摒弃不同尺寸、比例带来的图片差异。

第二步,简化色彩。将缩小后的图片,转为64级灰度。也就是说,所有像素点总共只有64种颜色。

第三步,计算平均值。计算所有64个像素的灰度平均值。

第四步,比较像素的灰度。将每个像素的灰度,与平均值进行比较。大于或等于平均值,记为1;小于平均值,记为。

第五步,计算哈希值。将上一步的比较结果,组合在一起,就构成了一个64位的整数,这就是这张图片的指纹。组合的次序并不重要,只要保证所有图片都采用同样次序就行了。

得到指纹以后,就可以对比不同的图片,看看64位中有多少位是不一样的。在理论上,这等同于计算“汉明距离”。如果不相同的数据位不超过5,就说明两张图片很相似;如果大于10,就说明这是两张不同的图片。

» 上一篇:移动TLD跟踪算法
« 下一篇:计算两张黑白图片的相似度及代码优化
联系我们

综合管理部 010-84924375

组织工作与会员服务部 010-84924385

学术交流、国际合作与科技咨询部 010-84924387

扫一扫关注我们

中国航空学会信息融合分会 2016 版权所有