相似图片搜索——感知哈希算法

本文介绍了感知哈希算法在相似图片搜索中的应用,包括算法的基本原理、操作步骤和优势。通过参考代码和相关资料,读者可以理解并实现这一技术。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

注:原文地址:感知哈希算法
感知哈希算法

感知哈希算法(PHA)是哈希算法的一类,主要用来做相似图片的搜索工作。

算法原理

为图片生成一个指纹(字符串格式), 两张图片的指纹越相似, 说明两张图片就越相似。

算法步骤

1.缩小尺寸:将图片缩小到8*8的尺寸,总共64个像素。
2.简化色彩:将缩小后的图片,转为64级灰度,也就是说,所有的像素点共只有64种颜色。
3.计算DCT(离散余弦变换):DCT是把图片分解频率聚集和梯状形,虽然JPEG使用8*8的
DCT变换,在这里使用32*32的DCT变换。
4.缩小DCT:虽然DCT的结果是32*32大小的矩阵,但我们只要保留左上角的8*8的矩阵,这
部分呈现了图片中的最低频率。
5.计算平均值:计算所有64个值得平均值。
6.进一步减少DCT:根据8*8的DCT矩阵,设置0或1的64位hash值,大于DCT均值的设为“1”
小于DCT均值的设为“0”。
7.计算哈希值:将64bit设置成64位的长整型,组合的次序并不重要,只要保证所有图片都
采用同样次序就行了。将32*32的DCT转换成32*32的图像。

算法的优点


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值