感知哈希算法是一种在人工智能领域比较实用的算法,因为它的优势就是计算速度快,可实现实时图片比较,我们说说它的算法构成
第一步 缩小尺寸
缩小至8×8 64个像素 不保持纵横比 正方形
因为这样做会减少大部分计算时间,将图片细致化降到最低
第二步 简化色彩
将图片转换灰度图像
第三步 计算平均值
计算64个像素灰度平均值
第四步 比较像素的灰度
对每个像素的灰度,与平均值进行比较 大于等于平均值记1 小于平均值记0
第五步 计算hash值
将上面比较结果组合,构成64为整数(图片指纹)。组合次序不重要,只需保证所有图片次序相同。作为二进制保存
第六步 汉明距离
对两张图片计算不同位的个数(汉明距离)
如果等于0则该图片一样 如果小于5,则图片相似 如果大于10,则两张图片完全是不一样的
最佳用途是根据缩略图,找出原图