发布时间:2025-07-17 17:18:35 点击量:
HASH GAME - Online Skill Game GET 300
1、图像哈希算法谷歌搜索图像结果Google和Tineye相似图像搜索主要利用的算法是感知哈希算法(Perceptual hash algorithm),它的 作 用 是 对 每 张 图 片 生 成 一 个 “ 指 纹 ”(fingerprint)字符串,然后比较不同图片的指纹,结果越接近,就说明图片越相似。一、均值哈希算法步骤:1 1、缩小尺寸:、缩小尺寸:将图片缩小到8x8的尺寸,总共64个像素。去除图片的细节,只保留结构、明暗等基本信息,摒弃不同尺寸、比例带来的图片差异。2 2、简化色彩:、简化色彩:将缩小后的图片,转为64级灰度。也就是说,所有像素点总共只有64种颜色。3 3、计算平均值:
2、、计算平均值:计算所有64个像素的灰度平均值。4 4、比较像素的灰度:、比较像素的灰度:将每个像素的灰度,与平均值进行比较。大于或等于平均值,记为1;小于平均值,记为0。5 5、计算哈希值:、计算哈希值:将上一步的比较结果,组合在一起,就构成了一个64位的整数,这就是这张图片的指纹。组合的次序并不重要,只要保证所有图片都采用同样次序就行了。得到指纹以后,就可以计算“汉明距离”,如果不相同的数据位不超过5,就说明两张图片很相似;如果大于10,就说明这是两张不同的图片。优点:优点:简单快速,不受图片大小缩放的影响缺点:缺点:缺点是图片的内容不能变更。如果在图片上加几个文字,它就认不出来了。它的最佳
3、用途是根据缩略图,找出原图根据缩略图,找出原图。二、感知哈希算法 步骤:1、缩小尺寸到 32322、图像灰度化3、对图像进行DCTDCT变换变换4、DCT的结果是3232大小的矩阵,但我们只要保留左上角的8 88 8的矩阵,这部分呈现了图片中的最低频率。5、计算平均值6、与均值比较7、用汉明距离比较优点:优点:容忍变形(25%的修改)只要图片的整体结构保持不变,hash结果值就不变。能够避免伽马校正或颜色直方图被调整带来的影响。缺点:缺点:速度比传统慢1.缩小图片:收缩到9*8的大小,一遍它有72的像素点2.转化为灰度图3.计算差异值计算差异值:dHash算法工作在相邻像素之间,这样每行9个像素之间产生了8个不同的差异,一共8行,则产生了64个差异值4.获得指纹:获得指纹:如果左边的像素比右边的更亮,则记录为1,否则为0.三、dHash相比pHash,dHash的速度要快的多,相比aHash,dHash在效率几乎相同的情况下的效果要更好,它是基于渐变实现的。