1.一種圖片相似度計(jì)算方法,其特征在于:所述方法包括以下步驟:
1)用基于DCT的hash方法分別計(jì)算待比較的兩張圖片的hash值h_a與h_b;
2)計(jì)算步驟1)中兩張圖片的hash值h_a與h_b之間的漢明距離dis_h;
3)若漢明距離dis_h不在設(shè)定范圍10<dis_h<25內(nèi),直接通過公式計(jì)算兩張圖片的相似度P,所述公式為:
4)若漢明距離dis_h在設(shè)定范圍10<dis_h<25內(nèi),再用基于徑向投影的hash方法分別計(jì)算兩張圖片的hash值h2_a與h2_b;
5)計(jì)算步驟4)得到的兩張圖片的hash值h2_a與h2_b之間的皮爾遜相關(guān)系數(shù)pcc,并結(jié)合步驟2)得到的漢明距離dis_h計(jì)算兩張圖片的相似度P。
2.根據(jù)權(quán)利要求1所述的一種圖片相似度計(jì)算方法,其特征在于:步驟1)中,所述基于DCT的hash方法使用離散余弦變換提取圖片的低頻成分,先將圖片轉(zhuǎn)換成標(biāo)準(zhǔn)大小的灰度圖,然后對灰度圖做DCT變換,再從系數(shù)矩陣中提取出64位的hash值作為指紋,所述基于DCT的hash方法包括以下具體步驟:
一、將圖片縮小到32*32并灰度化得到灰度圖,以減小計(jì)算量;
二、計(jì)算步驟一得到的灰度圖的DCT變換,得到32*32的系數(shù)矩陣,所述DCT變換公式為:
其中,F(xiàn)(u,v)是灰度圖的DCT系數(shù)矩陣,u、v分別是灰度圖在頻域中水平方向和豎直方向的頻率,f(i,j)為灰度圖中坐標(biāo)(i,j)處的像素值,N是灰度圖的邊長,此處N=32;
三、取步驟二得到的32*32的系數(shù)矩陣左上角的8*8矩陣,計(jì)算該8*8矩陣的均值avg;
四、對步驟三得到的8*8矩陣的每一個(gè)元素,大于等于avg的置1,小于avg的置0;
五、按固定順序?qū)⒉襟E四得到的8*8矩陣?yán)斐?*64的hash值。
3.根據(jù)權(quán)利要求1所述的一種圖片相似度計(jì)算方法,其特征在于:步驟2)中兩張圖片的hash值h_a與h_b之間的漢明距離dis_h取值范圍在0~64之間。
4.根據(jù)權(quán)利要求1所述的一種圖片相似度計(jì)算方法,其特征在于:步驟4)中,所述基于徑向投影的hash方法首先會過灰度圖中心計(jì)算朝等角度間隔的180個(gè)方向上像素值的方差,然后計(jì)算由這180個(gè)方差構(gòu)成的特征向量的DCT,并從DCT系數(shù)矩陣中提取出64位的hash值作為指紋,所述基于徑向投影的hash方法包括以下具體步驟:
(1)將圖片轉(zhuǎn)化為灰度圖;
(2)過步驟(1)得到的灰度圖中心等角度取180條直線,計(jì)算每條直線上像素點(diǎn)的方差,180個(gè)方差構(gòu)成一個(gè)特征向量;
(3)計(jì)算上述特征向量的DCT變換,得到DCT系數(shù)向量;
(4)取前64個(gè)DCT系數(shù)向量構(gòu)成新向量,計(jì)算新向量的均值avg2;
(5)對新向量中的每個(gè)元素,大于等于avg2的置1,小于avg2的置0,得到的新向量即hash值。
5.根據(jù)權(quán)利要求1所述的一種圖片相似度計(jì)算方法,其特征在于:步驟5)中,所述計(jì)算兩張圖片的hash值h2_a與h2_b的皮爾遜相關(guān)系數(shù)pcc的具體公式如下:
其中,X、Y分別代指兩張圖片的hash值h2_a與h2_b,ρX,Y是h2_a與h2_b的皮爾遜相關(guān)系數(shù);
通過以下公式結(jié)合漢明距離dis_h和皮爾遜相關(guān)系數(shù)pcc,得到圖片相似度P: