REF
perceptual hashing 种类很多,引用中介绍了一种简单、快速的的方法,每一个图像生成一个二进制串作为
图像的feature codes
1. 彩色图缩小到8X8,并转换成灰度图
2. 计算均值
3. 每一个像素和均值相比较,大于记为1,小于记为0,得到一个64位的bit串
4. 64bit转换成int,作为hash的快速索引
5,比较相似图时,比较bit串的hamming distance,< 3很相似,< 5比较相似, > 10差距很大
一个复杂的版本是pHash
1. 彩色图缩小到32X32,并转换成灰度图
2. 做32X32的DCT,获得32X32的DCT系数,取top-left的8X8的系数
3. 除第一个分量为(均值分量),计算其他63个DCT系数的均值
4. 每一个DCT系数(64个)和均值比较,大于均值记为1, 否则记为0
4. 64bit转换成int,作为hash的快速索引
5,比较相似图时,比较bit串的hamming distance