劉 帆,王 穎,閆國玉,蔣遂平
(1.中國航天科工集團(tuán)第二研究院 七〇六所,北京 100854;2.西安電子科技大學(xué) 網(wǎng)絡(luò)與信息安全學(xué)院,陜西 西安 710071)
圖像感知哈希(perceptual hashing,pHash)[1]從一幅圖像導(dǎo)出并可表征圖像特征指紋。圖像pHash算法與密碼學(xué)哈希(cryptographic hashing,cHash)[2]算法不同。在cHash算法中,假設(shè)輸入為一幅圖像,則該圖像的微小變化會(huì)通過雪崩效應(yīng)引起輸出結(jié)果即cHash值的巨大變化;而圖像pHash算法則要求輸入圖像在視覺上相似時(shí),輸出的圖像pHash值也相似。
近年來,隨著云存儲(chǔ)技術(shù)的發(fā)展,圖像pHash算法對(duì)于圖像文件的內(nèi)容識(shí)別、完整性驗(yàn)證和水印技術(shù)起到重要作用。圖像pHash算法被廣泛用于可搜索加密方案中的相似性檢索,并因?yàn)槠淠芡瑫r(shí)保證查詢效率和結(jié)果精確度的優(yōu)點(diǎn),使其成為圖像安全去重的重要技術(shù)之一[3,4]。
云存儲(chǔ)和去重應(yīng)用,要求pHash算法具有計(jì)算簡單、一定的不同圖像區(qū)分能力等特性。為此,本文提出并實(shí)現(xiàn)了循環(huán)貫序差分和拉普拉斯算子等兩種基于差分的圖像感知哈希算法。針對(duì)設(shè)計(jì)的算法,分別在小規(guī)模相似圖像集合和大規(guī)模不同圖像集上進(jìn)行了測試。與現(xiàn)有復(fù)雜性類似的圖像感知哈希算法相比,所提出的算法體現(xiàn)了圖像像素點(diǎn)間的局部關(guān)聯(lián)性,增加了不同圖像哈希值間的差異,顯著提升了不同圖像的區(qū)分概率。
自從圖像pHash的概念提出以來,研究人員已經(jīng)提出了多種pHash算法。根據(jù)算法運(yùn)行機(jī)制的不同,主要分為以下3類:
(1)基于圖像灰度的pHash算法:利用圖像灰度值與圖像灰度均值的差或者利用相鄰像素的灰度差等信息來計(jì)算pHash值。應(yīng)用比較廣泛的主要有均值pHash算法(average pHash,Avg pHash)[5],主要利用亮度變化小的區(qū)域即圖像低頻成分來描述整幅圖像所含有的信息,計(jì)算復(fù)雜度低,但是進(jìn)行圖像相似性檢測的準(zhǔn)確率較低;塊均值pHash算法[5],采用重疊阻塞和旋轉(zhuǎn)操作來增強(qiáng)圖像對(duì)幾何失真的魯棒性,在穩(wěn)健性和可辨識(shí)性方面表現(xiàn)出比其它現(xiàn)有算法更高的性能并且實(shí)現(xiàn)簡單;差分pHash算法[5]基于漸變實(shí)現(xiàn),考慮了圖像的局部特征。
(2)基于圖像正交變換的pHash算法:對(duì)圖像進(jìn)行正交等方式的變換,利用變換后的系數(shù)與系數(shù)平均值的差計(jì)算pHash值。劉穎等[6]提出一種基于離散余弦變換(discrete cosine transform,DCT)和奇異值分解(singular va-lue decomposition,SVD)相結(jié)合的pHash算法,首先需要將圖像進(jìn)行分塊DCT變換,然后將低頻系數(shù)的組合進(jìn)行SVD變換,最后將二值水印嵌入到奇異值所對(duì)應(yīng)的矩陣上,這使得當(dāng)嵌入較高強(qiáng)度的水印時(shí)也能具有較好的視覺不可感知性。Sheth等[7]提出了一種基于DCT、離散小波變換(discrete wavelet transformation,DWT)和密碼技術(shù)組合的算法,對(duì)水印圖像和原始圖像提供強(qiáng)大的魯棒性和感知透明度,以抵抗諸如裁剪、噪聲和縮放之類的不同類型的攻擊。
(3)基于圖像特征點(diǎn)的pHash算法:通過提取圖像特征點(diǎn)來表示圖像。歐陽君林等[8]提出了一種基于四元數(shù)Zernike矩(quaternion Zernike moments,QZMs)和尺度不變特征變換(scale invariant feature transform,SIFT)的魯棒圖像哈希方案用于圖像認(rèn)證。所提出的方法可以定位篡改區(qū)域并檢測修改的性質(zhì),包括對(duì)象插入、移除、替換、復(fù)制、移動(dòng)、剪切和粘貼等操作。然而此方案對(duì)于圖像噪聲以及圖像亮度變化較為敏感,使得其對(duì)該類型的圖像篡改識(shí)別準(zhǔn)確率較低。楊寧等[9]提出了一種基于SIFT特征和角度相對(duì)距離的圖像配準(zhǔn)算法,該算法充分利用了圖像正確匹配特征點(diǎn)對(duì)之間存在的角度關(guān)系,實(shí)現(xiàn)了特征點(diǎn)之間的精確匹配。
基于圖像灰度的pHash算法主要使用圖像低頻成分表征圖像信息,計(jì)算復(fù)雜度不高,但精度較低?;趫D像正交變換的pHash算法,對(duì)圖像進(jìn)行正交等方式的變換來獲取圖片的低頻成分,只要圖像之間的相互空間關(guān)系不變,即能提供良好的相似圖像識(shí)別效果。但是該類算法的pHash值,大多僅能表示相較于該圖像頻率平均值比例的一個(gè)估計(jì)值,并不能提供圖像真實(shí)的低頻性質(zhì)?;趫D像特征點(diǎn)的pHash算法,生成的圖像哈希序列維數(shù)較高,算法復(fù)雜度高,計(jì)算開銷大,響應(yīng)速度低,故這類pHash算法在圖像快速相似性檢索中很少使用。
此外,上述pHash算法的研究和應(yīng)用中,重點(diǎn)考慮的是如何減小視覺上相似圖像的pHash值差異,無法體現(xiàn)pHash值對(duì)不同圖像的分辨程度。常用pHash算法在實(shí)際應(yīng)用中,會(huì)將大量視覺上的不同圖像判斷為相似圖像,所帶來的通信開銷很大。因此,需要解決感知哈希算法在應(yīng)用過程中所帶來的計(jì)算復(fù)雜度高、不同圖像區(qū)分概率太低和通信開銷大這一問題。
圖像pHash值的計(jì)算流程如下:
(1)將M行N列像素點(diǎn)的大圖像縮小為8×8、16×16、32×32即m×m等尺寸的小圖像。
(2)彩色小圖像轉(zhuǎn)換為灰度小圖像,此時(shí)圖像可以表示為m階圖像灰度像素矩陣。使用如下規(guī)則
Gray=R×0.299+G×0.587+B×0.114
(1)
式中:Gray代表圖像像素點(diǎn)的灰度值,R、G和B分別代表紅、綠和藍(lán)3種顏色通道的值,取值范圍[0,255]。
(3)灰度小圖像二值化,像素取值0或1,組成m階二值像素矩陣。
(4)二值小圖像像素按某種順序串接為64、256、1024等長度的比特序列,作為圖像的pHash值。
各種pHash算法的主要差異在于(3),例如,均值pHash計(jì)算圖像的平均灰度如下
(2)
二值化方法如下
(3)
式中:h(i,j) 代表m階二值像素矩陣第i行j列的值。如果像素的灰度大于等于平均灰度,則二值化結(jié)果為1,否則為0。同樣地,在DCT pHash算法中,首先計(jì)算圖像DCT系數(shù),如果像素矩陣中第i行j列上的系數(shù)大于等于所有系數(shù)的均值,則該位置像素二值化結(jié)果就為1,否則為0。
針對(duì)圖像pHash值的計(jì)算流程,提出了循環(huán)貫序差分pHash(Seq pHash)算法和拉普拉斯算子pHash(Laplace pHash)算法,并主要基于步驟(3)即圖像二值化方法進(jìn)行改進(jìn)。
(1)Seq pHash:在Seq pHash算法中進(jìn)行二值化時(shí),圖像中的像素按從上到下、從左到右的順序依次排列。對(duì)每個(gè)像素而言,如果當(dāng)前像素的灰度值大于或者等于后一個(gè)像素的灰度值時(shí),則對(duì)應(yīng)的二值像素為1,否則為0。當(dāng)前像素是小圖像中最后一個(gè)像素時(shí),則當(dāng)前像素的后一個(gè)像素為小圖像中第一個(gè)像素。
圖1給出了一個(gè)8×8小圖像的例子,將小圖像中的像素按照?qǐng)D1中的序號(hào)順序可以排成一個(gè)序列,這是Seq pHash的順序性。如果序列中一個(gè)像素A的灰度大于等于后一個(gè)像素B的灰度,則這個(gè)像素A對(duì)應(yīng)的二值化結(jié)果為1,否則為0。如果一個(gè)像素A是序列中的最后一個(gè)像素,則像素A的后一個(gè)像素B是序列中第一個(gè)像素B,這是Seq pHash的循環(huán)性。例如在圖1中,64號(hào)像素的后一個(gè)像素是1號(hào)像素。
(2)Laplace pHash:在Laplace pHash算法中,對(duì)圖像灰度值進(jìn)行二值化并使用了如下規(guī)則
(4)
圖1 Seq pHash中像素的排列方式
式中:n為鄰接像素的個(gè)數(shù),D為m階像素矩陣中第i行j列元素鄰域像素點(diǎn)構(gòu)成的集合,Gray(i,j) 為m階像素矩陣中第i行j列元素鄰域上像素點(diǎn)的灰度值。設(shè)有一個(gè)灰度值為220的像素A。如果像素A為圖像中間像素,則其有8個(gè)鄰接像素,此時(shí)n=8,如圖2(a)所示。如果像素A在圖像的4個(gè)角上,則其有3個(gè)鄰接像素,此時(shí)n=3,如圖2(b)~圖2(e)所示。如果像素A在圖像4個(gè)邊緣,則有5個(gè)鄰接像素,此時(shí)n=5,如圖2(f)~圖2(i)所示。
圖2 Laplace pHash中鄰接像素
在Laplace pHash算法中,僅使用了Laplace的一階微分形式,并沒有采用先計(jì)算Laplace差分,再計(jì)算過零點(diǎn)獲得邊緣像素進(jìn)行二值化的方法[10]。這是因?yàn)閳D像二值化之前,較大的原始圖像已經(jīng)壓縮為小圖像,邊緣效果已經(jīng)不明顯,利用Laplace算子計(jì)算邊緣已經(jīng)沒有多大意義。
漢明距離(Hamming distance)[11]是衡量兩個(gè)字之間距離的一種方法。它通過統(tǒng)計(jì)兩個(gè)相同長度的字所對(duì)應(yīng)位不同的數(shù)量來計(jì)算字之間的距離,進(jìn)一步達(dá)到相似性度量的目的。若x={x1,x2,…,xn} 和y={y1,y2,…,yn} 分別表示兩個(gè)有限長度的字符串,以D(x,y) 表示兩個(gè)字符串x,y之間的漢明距離,則相似性度量過程可表示如下
(5)
式中:Q(xi,yi) 取值有如下規(guī)則
(6)
為加快字符比較效率,將漢明距離相對(duì)于字符串長度作相對(duì)距離歸一化。歸一化后的漢明距離可以定義為
(7)
特別的是,可以通過異或運(yùn)算的方式來計(jì)算二進(jìn)制字符串間的漢明距離Db,其中符號(hào)⊕代表異或運(yùn)算符,如下
(8)
因此,可以使用所獲得的兩個(gè)字符串之間的漢明距離來確定其相似性。為了識(shí)別相似的字符串,通常設(shè)置漢明距離的閾值,表示為T。
如果D(x,y)=0,則x和y被認(rèn)為是相同的字符串。
如果D(x,y)≤T,則x和y被認(rèn)為是相似的字符串。
如果D(x,y)>T,則x和y被認(rèn)為是不相似的字符串。
兩幅圖像的pHash值差異采用漢明距離來進(jìn)行度量。由于pHash值是比特序列,故漢明距離計(jì)算更加方便,只需要將兩個(gè)比特序列異或后,計(jì)算其中的比特1的數(shù)目即可。
使用圖像pHash算法進(jìn)行圖像文件的相似性判斷,本質(zhì)上是將圖像按照視覺相似性進(jìn)行分類,即將圖像分為與待上傳圖像相似的同類圖像和不相似的異類圖像。在模式分類中,要求同類事物的特征差距較小,不同類事物的特征差距較大[12]。因此,對(duì)于圖像pHash算法,應(yīng)該具有以下兩個(gè)性質(zhì):
(1)類內(nèi)聚合性:同一幅圖像及其微小變形圖像的pHash值差異應(yīng)該較小。
(2)類間分離性:視覺上不同的兩幅圖像的pHash值差異應(yīng)該較大,這樣可以降低pHash沖突率。pHash沖突率,即在使用pHash值差異衡量圖像相似性時(shí),不同圖像被認(rèn)為是相同圖像的概率。
利用收集到的圖像數(shù)據(jù)集,從上述兩個(gè)性質(zhì)上,分析本文提出的pHash算法,并與常用的Avg pHash算法和DCT pHash算法進(jìn)行對(duì)比。接下來,將進(jìn)一步介紹具體實(shí)驗(yàn)過程和評(píng)估結(jié)果。
類內(nèi)聚合性測試的圖像集合來自開源代碼pHash庫(https://www.phash.org/download/)。圖像集合中有23幅不同的圖像,每幅圖像有4個(gè)版本:基準(zhǔn)版本(misc)、模糊版本(blur)、壓縮版本(compr)、旋轉(zhuǎn)版本(rotd),其中blur版本圖像經(jīng)過高斯噪聲和椒鹽噪聲等常見信號(hào)的處理;compr版圖像經(jīng)過聯(lián)合圖片專家組(joint photographic experts group,JPEG)制定的標(biāo)準(zhǔn)壓縮算法的處理;rotd版是以圖像對(duì)稱中心為定點(diǎn)并作輕微旋轉(zhuǎn)的圖像。其中1幅圖像的4個(gè)版本如圖3所示。
圖3 部分測試圖像
分別在不同算法和不同比特?cái)?shù)目下,計(jì)算每幅基準(zhǔn)、模糊、壓縮和旋轉(zhuǎn)版本圖像的pHash值,進(jìn)一步得到漢明距離的平均值和方差,列于表1。在表1欄目數(shù)據(jù)區(qū)域,每個(gè)單元格有兩行數(shù)值,第一行數(shù)值是平均值,第二行數(shù)值是方差。例如,在32×32圖像尺寸1024比特?cái)?shù)目下,計(jì)算每幅基準(zhǔn)圖像和其模糊版圖像在Avg pHash算法下的pHash值。然后,求取兩個(gè)pHash值間的漢明距離,則23組圖像產(chǎn)生23個(gè)漢明距離。接下來,對(duì)該23個(gè)漢明距離值求取平均值和方差,分別為2.782 609和3.463 556。
從表1可以看出,在這個(gè)小規(guī)模圖像集合上,隨著圖像尺寸的縮小,這4種圖像pHash算法計(jì)算出的pHash值普遍存在著一種現(xiàn)象。每幅基準(zhǔn)圖像與其模糊、壓縮、旋轉(zhuǎn)版本圖像pHash值的差異在不斷縮小,這意味著類內(nèi)聚合性“越來越好”。然而這是一種假象,因?yàn)榘殡S圖像壓縮率的提高,圖像損失的信息熵也會(huì)越來越多,再去比較相似性已經(jīng)沒有任何意義。因此,計(jì)算圖像的pHash值時(shí),圖像比特?cái)?shù)不應(yīng)太少,否則容易將不同的圖像判別為相同或相似的圖像。
此外,Avg pHash算法對(duì)于同一圖像的不同變化版本,計(jì)算出的pHash值差異較小,Seq pHash算法、Laplace pHash算法和DCT pHash算法計(jì)算出的pHash值差異較大。因此,可以得出如下結(jié)論:即Avg pHash算法在類內(nèi)聚合性上更有優(yōu)勢。但是,既然相似圖像的pHash值差異較小,不相同圖像的pHash值差異也可能較小,即不相同的圖像也可能被判斷為相同或相似的圖像,再次說明圖像分類中關(guān)于類間分離性的討論很有必要。
表1 基準(zhǔn)圖像與其它版本圖像的漢明距離均值和方差
為進(jìn)一步分析pHash算法的類間分離性,采用CIFAR-100(http://www.cs.toronto.edu/~kriz/)的開源圖像集合進(jìn)行實(shí)驗(yàn)。CIFAR-100開源圖像集合由32×32圖像尺寸大小,共100個(gè)類的彩色圖像組成。其中每個(gè)類包含600幅圖像,500幅用于訓(xùn)練的圖像和100幅用于測試的圖像。以下是該圖像數(shù)據(jù)集合中的類,以及每個(gè)類中的一些隨機(jī)圖像,如圖4所示。
比較圖像在256比特?cái)?shù)目下的pHash值差異。選取CIFAR-100開源圖像集合中的訓(xùn)練集,即100類不同景物的50 000幅不同彩色圖像,作為本次實(shí)驗(yàn)的數(shù)據(jù)集。接下來,兩兩圖像形成一對(duì),那么這50 000幅圖像可以組成 1 249 975 000 個(gè)圖像對(duì)。采用不同pHash算法,求取每個(gè)圖像對(duì)pHash值之間的漢明距離,并統(tǒng)計(jì)小于等于某個(gè)漢明距離的圖像對(duì)的累計(jì)分布情況。
圖5給出了不同pHash算法下圖像對(duì)數(shù)目隨漢明距離分布情況??梢钥闯?,當(dāng)漢明距離為50時(shí),DCT pHash算法和Avg pHash算法便開始有數(shù)量比較可觀的不相同圖像對(duì)被判定為相似圖像對(duì),而在此情景下,Seq pHash算法和Laplace pHash算法所對(duì)應(yīng)的漢明距離為90。相對(duì)而言,Seq pHash算法和Laplace pHash算法有較高的容錯(cuò)率。
圖4 CIFAR-100數(shù)據(jù)集部分圖像
圖5 圖像對(duì)數(shù)目隨漢明距離分布情況
圖7 漢明距離小于50時(shí)的圖像對(duì)累計(jì)數(shù)目 隨距離分布趨勢
為進(jìn)一步觀察不同pHash算法下漢明距離小于50時(shí)圖像對(duì)數(shù)目上存在的差距,圖6給出了不同pHash算法下漢明距離小于50時(shí)圖像對(duì)數(shù)目隨距離分布的對(duì)數(shù)坐標(biāo)變化趨勢,圖7給出了不同pHash算法下漢明距離小于50時(shí)圖像對(duì)累計(jì)數(shù)目隨距離分布情況??梢钥闯?,Seq pHash值和Laplace pHash值在漢明距離小于50的圖像對(duì)數(shù)目明顯少于Avg pHash值和DCT pHash值的圖像對(duì)數(shù)目。其中圖6和圖7,縱坐標(biāo)均采用了底數(shù)為10的對(duì)數(shù)刻度。
圖8給出了不同pHash算法下圖像對(duì)累計(jì)數(shù)目隨漢明距離分布情況,可以看出,大多數(shù)圖像對(duì)的Seq pHash值和Laplace pHash值的漢明距離大于90,大多數(shù)圖像對(duì)的Avg pHash值和DCT pHash值的漢明距離大于50。這表明,Seq pHash值和Laplace pHash值的pHash沖突概率[13]小于Avg pHash值和DCT pHash值的概率。
圖8 圖像對(duì)累計(jì)數(shù)目隨漢明距離分布情況
表2給出了部分漢明距離下圖像對(duì)數(shù)目的累計(jì)分布。例如,Avg pHash算法中有1693對(duì)圖像的漢明距離小于等于2??梢钥闯?,為達(dá)到百萬分之一以下的哈希沖突率,即不同圖像被認(rèn)為是相同或相似圖像的概率小于百萬分之一,要求相同或相似圖像對(duì)的累計(jì)數(shù)目不能超過1250對(duì)。這時(shí),Avg pHash算法對(duì)應(yīng)的漢明距離閾值為2,Seq pHash算法、Laplace pHash算法和DCT pHash算法對(duì)應(yīng)的漢明距離閾值分別為33、48和10。Seq pHash算法、Laplace pHash算法的漢明距離閾值較大,可以容許的圖像間差異較大,類間分離性優(yōu)于Avg pHash算法和DCT pHash算法。
由于不同pHash算法的類內(nèi)平均距離不同,用于判斷兩幅圖像是否為同一圖像的漢明距離閾值也應(yīng)不同。采用模糊、壓縮和旋轉(zhuǎn)3種情況的平均值T作為閾值,方法如下
表2 部分漢明距離下的圖像對(duì)累計(jì)數(shù)目
(9)
式中:D(mi,bi) 表示第i幅基準(zhǔn)版圖像和模糊版圖像pHash值間的漢明距離;D(mi,ci) 表示第i幅基準(zhǔn)版和壓縮版圖像pHash值間的漢明距離;D(mi,ri) 表示第i幅基準(zhǔn)版和旋轉(zhuǎn)版圖像pHash值間的漢明距離。k值代表圖像組數(shù)23,i取值范圍[1,23]。此時(shí),Avg pHash算法、Seq pHash算法、Laplace pHash算法和DCT pHash算法對(duì)應(yīng)的漢明距離閾值分別為12、20、21和20,對(duì)應(yīng)的相同或相似圖像對(duì)數(shù)目的累計(jì)分別為31 983、167、124和39 138。其中,Seq pHash算法和Laplace pHash算法的相同或相似圖像對(duì)累計(jì)數(shù)目較小,哈希沖突概率小,類間分離性優(yōu)于Avg pHash算法和DCT pHash算法。
圖像旋轉(zhuǎn)造成的差異最大,超過平均差異,在工程中選擇圖像輕微旋轉(zhuǎn)情況下的均值與方差的和作為判斷圖像相似性的漢明距離閾值。這時(shí),Avg pHash算法、Seq pHash算法、Laplace pHash算法和DCT pHash算法的閾值分別為21、33、33和35,對(duì)應(yīng)的相同或相似圖像對(duì)數(shù)目的累計(jì)分別為171 853、1240、321和587 125。該種情況下,Seq pHash算法和Laplace pHash算法的相同或相似圖像對(duì)累計(jì)數(shù)目明顯較小,再次說明,Seq pHash算法和Laplace pHash算法的哈希沖突概率小,類間分離性優(yōu)于Avg pHash算法和DCT pHash算法。
實(shí)驗(yàn)結(jié)果表明,Avg pHash算法沒有考慮圖像像素點(diǎn)之間的關(guān)系,而DCT pHash算法中DCT系數(shù)主要描述圖像各種組成信號(hào)強(qiáng)弱的全局性質(zhì)。因此,Avg pHash算法和DCT pHash算法的類間分離性相對(duì)較差。Seq pHash算法和Laplace pHash算法均考慮了像素點(diǎn)之間的關(guān)系,即圖像的局部性質(zhì)。Seq pHash算法考慮了相鄰2個(gè)像素點(diǎn)之間的關(guān)系,Laplace pHash算法考慮了像素點(diǎn)與周圍像素點(diǎn)的關(guān)系,在圖像局部性上更有優(yōu)勢。因此,Laplace pHash算法的類間分離性好于Seq pHash算法。
由此可知,Seq pHash算法和Laplace pHash算法雖然增大了同一幅圖像與其微小變形圖像之間的pHash值差異,但也增大了不同圖像之間pHash值的差異。也就是說,通過選擇可以容許圖像微小變化的漢明距離閾值,這兩種算法將仍能按照視覺相似性進(jìn)行圖像的分類。此外,所設(shè)計(jì)算法可以更清楚地量化哈希碰撞效果,提高了查詢結(jié)果的精確率和召回率。這樣將進(jìn)一步減少圖像相似性判斷的錯(cuò)誤率,從而降低了對(duì)結(jié)果處理的開銷。
本研究針對(duì)可搜索加密方案中相似性檢索關(guān)于如何增大不相似圖像差異這一問題,提出了Seq pHash和Laplace pHash兩種基于差分的圖像感知哈希算法,并對(duì)所提出的算法進(jìn)行了性能測評(píng)。測評(píng)分別采用開源感知哈希庫的小規(guī)模圖像集和CIFAR-100大規(guī)模圖像集。測試結(jié)果表明,所提出的圖像感知哈希算法較好地體現(xiàn)了圖像像素點(diǎn)間的局部關(guān)聯(lián)性。在不同圖像被認(rèn)為是相同或相似圖像的概率小于百萬分之一情況下,Seq pHash算法和Laplace pHash算法對(duì)應(yīng)漢明距離閾值均高于Avg pHash算法和DCT pHash算法對(duì)應(yīng)漢明距離閾值。因此,所提出的pHash算法在類間分離性上優(yōu)于所對(duì)比的常用pHash算法,它們不僅能夠識(shí)別多種失真類型的相似圖像,還能有效地降低不相似圖像漢明距離接近的概率以實(shí)現(xiàn)不同圖像的區(qū)分,可以更好地應(yīng)用到可搜索加密方案中的相似性檢索中。