当前位置:文档之家› 图像哈希算法

图像哈希算法



优点:简单快速,不受图片大小缩放的影响 缺点:缺点是图片的内容不能变更。如果在图片上加几个文
字,它就认不出来了。 它的最佳用途是根据缩略图,找出原图。

二、感知哈希算法 步骤:

1、缩小尺寸到 32×32


2、图像灰度化
3、对图像进行DCT变换 4、DCT的结果是32×32大小的矩阵,但我们只要保留 左上角的8×8的矩阵,这部分呈现了图片中的最低频 率。



相比 pHash , dHash 的速度要快的多,相比 aHash , dHash 在效率几乎相同的情况下的效果要更好,它是基于渐变 实现的。

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

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

3、计算平均值:计算所有64个像素的灰度平均值。
4、比较像素的灰度:将每个像素的灰度,与平均值进行比
较。大于或等于平均值,记为1;小于平均值,记为0。

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

得到指纹以后,就可以计算“汉明距离”,如果不相同的数据 位不超过5,就说明两张图片很相似;如果大于 10,就说明这 是两张不同的图片。
ห้องสมุดไป่ตู้
5、计算平均值
6、与均值比较 7、用汉明距离比较

优点:容忍变形( 25% 的修改)只要图片的整体 结构保持不变,hash结果值就不变。能够避免伽 马校正或颜色直方图被调整带来的影响。

缺点:速度比传统慢
三、dHash
1.缩小图片:收缩到9*8的大小,一遍它有72的像素点 2.转化为灰度图 3.计算差异值:dHash算法工作在相邻像素之间,这样每 行9个像素之间产生了8个不同的差异,一共8行,则产生 了64个差异值 4.获得指纹:如果左边的像素比右边的更亮,则记录为1, 否则为0.
图像哈希算法
谷歌搜索图像结果
Google和Tineye相似图像搜索主要利用的算法是感 知哈希算法( Perceptual hash algorithm ),它 的作用是对每张图片生成一个“指纹” ( fingerprint )字符串,然后比较不同图片的指 纹,结果越接近,就说明图片越相似。
一、均值哈希算法步骤:
相关主题