均值哈希算法(Average hash algorithm,AHA)第一次是从著名的阮一峰阮老师的博文《相似图片搜索的原理》看到的。而此篇文章与阮老师也很类似Looks Like It - The Hacker Factor Blog 。这里不对原谅做摘抄,有兴趣的自己看一下,在此对学习过程中的心得和遇到过的问题做一下总结。
均值哈希算法,是感知哈希算法中最简单的一种,基本原理是对图片降频。对于图片,高频有很多细节,如颜色、亮度、透明度等等,而低频丢弃细节,只有图像结构。
算法步骤
- 缩小尺寸。为了保留结构去掉细节,去除大小、横纵比的差异,把图片统一缩放到8*8,共64个像素的图片。
- 简化色彩,转化为灰度图。把缩放后的图片转化为64级灰度图。
- 计算平均值。计算进行灰度处理后图片的所有像素点的平均值。
- 比较像素灰度值。遍历灰度图片每一个像素,如果大于平均值记录为1&