国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

結(jié)合卷積神經(jīng)網(wǎng)絡(luò)與哈希編碼的圖像檢索方法

2020-12-07 06:12吳振宇邱奕敏周纖
現(xiàn)代電子技術(shù) 2020年21期
關(guān)鍵詞:卷積神經(jīng)網(wǎng)絡(luò)

吳振宇 邱奕敏 周纖

摘? 要: 為了提高圖像檢索的精度與速度,提出一種卷積神經(jīng)網(wǎng)絡(luò)與哈希方法結(jié)合的圖像檢索算法。該方法在深度殘差網(wǎng)絡(luò)的基礎(chǔ)上構(gòu)建了一個網(wǎng)絡(luò)模型,將隨機選取成對的圖像(相似/不相似)作為訓(xùn)練輸入,使用曼哈頓距離作為損失函數(shù),并添加了一個二值約束正則項,促使訓(xùn)練好的網(wǎng)絡(luò)輸出為類二值碼,再將類二值碼閾值化為二值碼,最后用于圖像檢索。在Caltech256數(shù)據(jù)集和MNIST數(shù)據(jù)集上的實驗結(jié)果顯示,文中方法的檢索性能優(yōu)于其他現(xiàn)有方法。

關(guān)鍵詞: 圖像檢索; 卷積神經(jīng)網(wǎng)絡(luò); 哈希編碼; 網(wǎng)絡(luò)模型; 圖片對生成; 網(wǎng)絡(luò)訓(xùn)練

中圖分類號: TN911.7?34; TP391? ? ? ? ? ? ? ? ? ?文獻標識碼: A? ? ? ? ? ? ? ? ? ? 文章編號: 1004?373X(2020)21?0021?06

Image retrieval method combining convolution neural network and Hash coding

WU Zhenyu, QIU Yimin, ZHOU Qian

(School of Information Science and Engineering, Wuhan University of Science and Technology, Wuhan 430081, China)

Abstract:In order to improve the precision and speed of image retrieval, an image retrieval algorithm combining convolutional neural network and Hash method is proposed in this paper. On the basis of the depth residual network, a network model is built with the proposed method, which can select pairs of images (similar/dissimilar) randomly as a training input. The Manhattan distance is taken as a loss function, and a binary constraint regularization is added to prompt the trained network output as approximate binary code. Then the approximate binary code threshold is converted into binary code for image retrieval. The results of experimental on Caltech256 data set and MNIST data set show that the retrieval performance of this method is better than other existing methods.

Keywords: image retrieval; convolutional neural network; Hash coding; network model; image pair generation; network training

0? 引? 言

隨著網(wǎng)絡(luò)多媒體的發(fā)展,互聯(lián)網(wǎng)上的圖片越來越多,這使得根據(jù)不同用戶要求查找相似圖片變得極其困難。而圖像檢索是從數(shù)據(jù)庫中找到與所查詢圖像相似的圖像,目前常用的方法是基于內(nèi)容的圖像檢索(Content?Based Image Retrieval,CBIR)[1]。CBIR通過提取查詢圖像的特征,并將其與數(shù)據(jù)庫中的圖像特征相比較,然后將圖像按照相似度從高到低排序并返回給用戶。圖像相似度是指人類對圖像內(nèi)容理解的差異,這種差異難以通過圖像的低層視覺特征反映出來。因此,基于深度學(xué)習(xí)的哈希檢索方法被學(xué)者們廣泛研究[2]。

深度學(xué)習(xí)(Deep Learning)是一種利用含有多個隱層的深度神經(jīng)網(wǎng)絡(luò)實現(xiàn)學(xué)習(xí)任務(wù)的機器學(xué)習(xí)(Machine Learning)方法[3]。隨著深度學(xué)習(xí)的研究與發(fā)展,研究人員發(fā)現(xiàn),經(jīng)過大量帶標簽樣本訓(xùn)練與學(xué)習(xí)后的卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN),有能力抽象出高層的語義特征[4]。然而,傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練準則是針對圖像分類任務(wù)設(shè)計的,直接用于圖像檢索任務(wù)難以取得好的效果[5]。因此,針對圖像檢索任務(wù)設(shè)計特有的訓(xùn)練準則,是提高檢索準確率的一種有效途徑。

雖然CNN能夠提取圖像的高層語義,但是其提取出的特征維度往往高達幾千維,直接計算這些高維特征的相似度進行圖像檢索需要耗費大量時間。因此,學(xué)者們提出了利用哈希方法[6?7]進行圖像檢索。哈希方法將圖像特征映射成緊湊的二進制代碼,近似地保留原始空間中的數(shù)據(jù)結(jié)構(gòu)。由于圖像使用二進制代碼而不是實值特征來表示,因此可以大大減少搜索的時間和內(nèi)存開銷。但是,哈希方法直接對圖像特征進行特征編碼,然后對特征編碼排序檢索,并沒有將相似圖像檢索的結(jié)果反饋到網(wǎng)絡(luò)參數(shù)的學(xué)習(xí)之中[8]。因此,如何將CNN提取特征的方法與哈希方法相結(jié)合,即在提高檢索精度的同時減少檢索時間,也是圖像檢索研究的一個關(guān)鍵問題。

為了解決傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)直接應(yīng)用于圖像檢索任務(wù)易導(dǎo)致檢索準確率低的問題,本文提出了一種結(jié)合深度殘差網(wǎng)絡(luò)(Deep Residual Network,ResNet)與哈希方法的圖像檢索算法——Residual Network Hashing(RNH)。本文在ResNet網(wǎng)絡(luò)模型的基礎(chǔ)上,通過改進損失函數(shù)和添加哈希層,設(shè)計了一個新的網(wǎng)絡(luò)模型ResNetH36。訓(xùn)練時網(wǎng)絡(luò)輸入是成對的圖片,圖片對是否相似作為輸入的標簽,輸出是類二值碼。改進的損失函數(shù)采用曼哈頓距離,訓(xùn)練集采用隨機選取的圖片對,以期能縮短網(wǎng)絡(luò)的訓(xùn)練時間。為了能夠?qū)⒕W(wǎng)絡(luò)的輸出直接用于圖像檢索,在利用CNN特征提高檢索精度的同時能夠減少檢索時間,本文方法給該損失函數(shù)加上一個二值約束正則項約束網(wǎng)絡(luò)輸出的范圍,以便將輸出閾值化為二值碼。

1? 相關(guān)工作

傳統(tǒng)的圖像檢索算法[6?7]一般是將SIFT,GIST等人工特征通過哈希函數(shù)編譯成二值碼。這些哈希方法雖然取得了一定的效果,但是由于使用的是人工特征,這些特征只能反映圖像的底層視覺特征,無法捕獲真實數(shù)據(jù)中外觀劇烈變化時的高層語義特征,從而限制了得到的二值碼的檢索精度。

為了有效的進行圖像檢索,一些基于CNN的哈希方法被提出。文獻[9]提出了一種CNN與哈希方法相結(jié)合的算法CNNH,CNNH先通過對相似矩陣分解,得到圖像的二值碼,將其作為圖像的標簽訓(xùn)練網(wǎng)絡(luò),利用網(wǎng)絡(luò)擬合二值碼用于圖像檢索。雖然利用了卷積神經(jīng)網(wǎng)絡(luò),但是該方法沒有實現(xiàn)端到端的訓(xùn)練。文獻[10]在CNNH方法上做出改進,提出了CNNH+方法,CNNH+用一張樣本圖片,一張相似圖片,一張不相似圖片共三張構(gòu)成三元組訓(xùn)練網(wǎng)絡(luò),能夠同時學(xué)習(xí)哈希函數(shù)和圖像特征,但是三元組的選取質(zhì)量直接影響最終網(wǎng)絡(luò)的性能,且利用三元組訓(xùn)練網(wǎng)絡(luò)的過程比較麻煩。文獻[11]提出一種可以同時學(xué)習(xí)哈希函數(shù)和圖像特征的算法DSLH,DSLH將圖像原本的標簽作為監(jiān)督信息。不需要進行三元組的挑選,減少了工作量。但是該方法量化時采用的是sigmoid函數(shù),雖然能將網(wǎng)絡(luò)的輸出壓縮為類二值碼,但是會增加量化誤差。文獻[12]也提出一種利用深度卷積網(wǎng)絡(luò)框架同時學(xué)習(xí)特征和哈希函數(shù)的算法DSH,該方法利用圖片對作為輸入,將兩張圖片是否相似作為標簽,很好地描述了網(wǎng)絡(luò)所需要擬合的特征空間,使得最終的二值碼能夠保持原始圖像的相似性,避免了挑選三元組的過程,但是該方法的損失函數(shù)采用的是歐氏距離,且所用的在線生成圖片對方法將所有的樣本兩兩組合生成圖片對,使得網(wǎng)絡(luò)的訓(xùn)練時間較長。

針對現(xiàn)有方法使用歐氏距離作為損失函數(shù),同時訓(xùn)練時用到了所有的圖片對,會使網(wǎng)絡(luò)訓(xùn)練時間較長,且量化時采用sigmoid,tanh等約束函數(shù)會使量化誤差較大,導(dǎo)致檢索精度不高,本文提出了結(jié)合深度殘差網(wǎng)絡(luò)與哈希方法的圖像檢索算法RNH。首先,該方法的損失函數(shù)采用曼哈頓距離(Manhattan Distance),同時參考原始數(shù)據(jù)集的樣本數(shù)量隨機選取圖片對,減少了訓(xùn)練網(wǎng)絡(luò)需要的時間。其次,通過給該損失函數(shù)加上一個二值約束正則項,使網(wǎng)絡(luò)輸出為類二值碼以便閾值化為二值碼,減少了量化帶來的誤差,提升了檢索精度。

2? 本文方法

為了提高卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用于圖像檢索問題時的檢索精度,本文提出了一種結(jié)合深度殘差網(wǎng)絡(luò)與哈希方法的圖像檢索算法RNH。由于曼哈頓距離計算簡單,且用于圖像檢索問題時衡量特征數(shù)據(jù)之間相似性效果較好,所以本文損失函數(shù)采用曼哈頓距離。同時參考原始數(shù)據(jù)集數(shù)量隨機選取圖片對,以期能加快網(wǎng)絡(luò)的訓(xùn)練速度。然后通過為損失函數(shù)添加二值約束正則項,減少量化誤差,提高檢索精度。本文方法RNH構(gòu)建的圖像檢索模型如圖1所示。

首先將圖像輸入到通過本文方法訓(xùn)練好的ResNetH36網(wǎng)絡(luò)模型中,圖像經(jīng)過ResNet網(wǎng)絡(luò)得到其特征向量,然后經(jīng)過哈希層得到類二值碼,最后閾值化得到最終的二值碼。當(dāng)輸入任意一張查詢圖像時,經(jīng)過上述步驟,能得到圖像的二值碼。然后計算該二值碼與數(shù)據(jù)庫中圖像的二值碼之間的漢明距離。距離按照從小到大排列返回圖像,距離越近代表該圖像與查詢圖像越相似。

2.1? ResNetH36網(wǎng)絡(luò)模型

網(wǎng)絡(luò)深度對深度學(xué)習(xí)的性能有顯著影響,但是當(dāng)網(wǎng)絡(luò)深度加深時網(wǎng)絡(luò)會變得難以訓(xùn)練,產(chǎn)生退化問題,針對這個問題,文獻[13]提出了ResNet。如圖2所示通過恒等映射(Identity Mapping)連接的殘差模塊(Residual Block)結(jié)構(gòu)是ResNet的主要特點,該結(jié)構(gòu)將原本網(wǎng)絡(luò)所需要擬合的映射[H(x)]轉(zhuǎn)換成[F(x)+x]。雖然兩種映射表達效果一樣,但是對[F(x)]進行擬合要比對[H(x)]進行擬合簡單得多。通過捷徑連接(Short Connection)將網(wǎng)絡(luò)的輸入和輸出疊加,就可以構(gòu)成殘差模塊,通過捷徑連接疊加的卷積層不會為網(wǎng)絡(luò)帶來額外的參數(shù)和計算量,并且可以解決網(wǎng)絡(luò)層數(shù)加深時導(dǎo)致的退化問題,這就是ResNet比以往的網(wǎng)絡(luò)更深的原因。為了將ResNet的優(yōu)點應(yīng)用到圖像檢索任務(wù)中,本文在ResNet34的基礎(chǔ)上添加了一個哈希層和閾值化層,作為本文方法的網(wǎng)絡(luò)模型,用以提取圖像的深層特征并生成圖像檢索需要的二值碼,網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。

圖3中從上至下省略號處分別省略了4層、6層、10層、4層卷積層,閾值化層的作用是將網(wǎng)絡(luò)的輸出通過式(1)閾值化為二值碼用于圖像檢索,是無參數(shù)層,因此不參加網(wǎng)絡(luò)的訓(xùn)練,也在圖中省略。各省略處卷積層參數(shù)與省略號前一層卷積層參數(shù)相同,且每兩層有一個捷徑連接,構(gòu)成殘差塊。模型由36層組成,其中,前34個卷積層的結(jié)構(gòu)、參數(shù)與ResNet34相同,后面添加了一個哈希層與閾值化層。每個卷積層里面的參數(shù)依次表示卷積核局部感受野的大小和個數(shù),“pool”表示最大池化,“avg pool”表示平均池化。第35層中的“[k]”表示二值碼的長度。閾值化層通過式(1)將35層中得到的[k]維類二值碼閾值化為二值碼,用于圖像檢索。

[Hj=1,? ? kj≥0.50,? ? otherwise,? ? j=1,2,…,k] (1)

式中:[kj]表示哈希層生成的[k]維類二值碼的第[j]位;[Hj]表示結(jié)果閾值化后的二值碼的第[j]位。

2.2? 損失函數(shù)

假設(shè)[Ω]是RGB空間,那么網(wǎng)絡(luò)學(xué)習(xí)的目標是學(xué)習(xí)一個從[Ω]到[k]維二值編碼空間的映射,即[F]:[Ω→{+1,-1}k],同時保持圖像的相似性。因此,相似的圖像編碼應(yīng)該盡可能的接近,而不同圖像的編碼應(yīng)該盡可能的遠?;谶@個目標,設(shè)計的損失函數(shù)需要將相似的圖像編碼拉到一起,將不同的圖像編碼相互推開。

具體的說,假設(shè)有一對圖像[I1],[I2∈Ω],其對應(yīng)的輸出[b1],[b2∈{+1,-1}k],定義[y=0]表示它們相似,[y=1]表示不相似。那么可以將損失函數(shù)定義為:

[l(b1,b2,y)=12(1-y)Dh(b1,b2)+12y max(m-Dh(b1,b2),0)] (2)

[s.t.? ?bj∈{+1,-1}k,? ? j∈{1,2}]

式中[Dh(· ,·)]表示兩個二值碼之間的漢明距離;[m>0]為邊緣閾值參數(shù),為了讓不相似的圖像之間距離足夠遠,令[m=2k]。損失函數(shù)的第一項用于懲罰相似的圖像映射到不同的二值碼,第二項通過閾值[m],保證不相似的圖像得到的二值碼之間的距離大于[m],即讓不相似的圖像之間的距離盡可能遠。

假設(shè)有[N]個圖像對[{(Ii,1,Ii,2,yi)i=1,2,…,N}],那么整體的損失函數(shù)為:

[L=i=1Nl(bi,1,bi,2,yi)s.t.? ?bi,j∈{+1,-1}k,? ? i∈{1,2,…,N},j∈{1,2}] (3)

由于[Dh(· ,·)]不可以直接求導(dǎo),而網(wǎng)絡(luò)的訓(xùn)練要求損失函數(shù)是可導(dǎo)的,所以為了符合后續(xù)網(wǎng)絡(luò)訓(xùn)練的要求,需要將其轉(zhuǎn)換成一個可以求導(dǎo)的距離函數(shù),同時為了保證網(wǎng)絡(luò)的輸出能夠滿足約束條件與便于將其閾值化為二值碼,需要添加一個正則化項。具體來說,將式(2)中的漢明距離替換為曼哈頓距離,并增加一個[L1]正則項來替換二值約束。相較于使用歐氏距離等其他距離函數(shù),曼哈頓距離具有更少的計算量可以減少網(wǎng)絡(luò)訓(xùn)練時間,相較于使用tanh,sigmoid等量化函數(shù)約束網(wǎng)絡(luò)輸出,使用[L1]正則項能夠減少量化誤差,提高檢索準確率。最終可以得到網(wǎng)絡(luò)的損失函數(shù)為:

[Lr=i=1N12(1-yi)b1-b21+12yi max(m-b1-b21,0)+αbi,1-11+bi,2-11]? ? ?(4)

式中:[?1]表示[L1]范數(shù);[α]為該正則化項的權(quán)重因子。求解式(4)采用批量梯度下降算法,計算[b1]和[b2]的偏導(dǎo)數(shù)時,使用反向傳播算法。

2.3? 訓(xùn)練細節(jié)

批量梯度下降法能夠加快網(wǎng)絡(luò)的收斂速度[14],因此本文使用批量梯度下降法對ResNetH36網(wǎng)絡(luò)模型進行訓(xùn)練學(xué)習(xí)。訓(xùn)練時批量大小設(shè)為256,學(xué)習(xí)率從0.1開始。每當(dāng)錯誤率平穩(wěn)時,將學(xué)習(xí)率除以10,權(quán)值衰減為0.000 1,動量為0.9,[α]為0.01。網(wǎng)絡(luò)每一層的權(quán)重由均值為0,標準差為[2k×k×c]的高斯分布來初始化,其中[k×k]是該層卷積核的大小,[c]是該層卷積核的個數(shù)。

同時,本文隨機均勻選取圖片對。先將原始數(shù)據(jù)集中兩張標簽相同的圖片定義為相似,相似的圖片對標簽為1,不相似的圖片對標簽為-1。接著利用批量梯度下降算法將訓(xùn)練集分成多個mini?batch,對于每個mini?batch,將圖像兩兩組合生成圖片對。假設(shè)整個數(shù)據(jù)集的樣本數(shù)為[n],mini?batch的個數(shù)為[m],那么在每個mini?batch隨機選取的圖片對數(shù)量為[nm]。最后利用這些圖片對進行網(wǎng)絡(luò)訓(xùn)練。

3? 實驗結(jié)果與分析

3.1? 實驗設(shè)置

為了驗證RNH算法的有效性,本文采用Caltech256與MNIST數(shù)據(jù)集,將RNH算法與LSH,ITQ,KSH,CNNH,CNNH+等哈希方法相比較。其中CNNH,CNNH+直接使用圖像作為輸入,LSH,ITQ,KSH均使用圖像的Gist特征作為輸入。為了使實驗結(jié)果更具有說服力,本文采用平均精度(Mean Average Precision,MAP)和top?[k]近鄰域檢索準確率作為指標評價檢索精度,采用Loss?Iterations曲線作為指標評價網(wǎng)絡(luò)訓(xùn)練時間。

MNIST是一個手寫數(shù)字識別的數(shù)據(jù)集,總共有70 000張28×28像素的圖片,包含0~9共十個類別。Caltech256是一個物體識別數(shù)據(jù)集,總共包含30 608張圖片,256個物體類別,每類最少80張,最多827張。

在本文中,MNIST數(shù)據(jù)集從生成的所有圖片對中隨機選取70 000個相似的圖片對,630 000個不相似圖片對用于訓(xùn)練網(wǎng)絡(luò)。Caltech256數(shù)據(jù)集從生成的所有圖片對中隨機選取25 600個相似的圖片對,230 400個不相似的圖片對用于訓(xùn)練網(wǎng)絡(luò)。在MNIST數(shù)據(jù)集中,每一類分別隨機選取100張圖片,共1 000張作為查詢圖像,構(gòu)成測試集。在Caltech256數(shù)據(jù)集中,每一類分別隨機選取10張圖片,共2 560張作為查詢圖像,構(gòu)成測試集。由于深度殘差網(wǎng)絡(luò)的輸入大小固定為224×224,所以在訓(xùn)練和測試時都需將輸入圖片的尺寸縮放為224×224。

為了比較使用曼哈頓距離的損失函數(shù)與使用歐氏距離的損失函數(shù)訓(xùn)練網(wǎng)絡(luò)時所花費的時間,本文在MNIST數(shù)據(jù)集和Caltech256數(shù)據(jù)集上分別用不同的損失函數(shù)進行訓(xùn)練,實驗時除了改變損失函數(shù),即將式(4)中的曼哈頓距離改為歐氏距離,其他條件如網(wǎng)絡(luò)模型、訓(xùn)練參數(shù)等均保持不變。MAP值是一個反映圖像檢索方法整體性能的指標,MAP值越大,說明圖像檢索方法的檢索性能越好,其值范圍在0~1之間。top?[k]近鄰域檢索準確率是指檢索方法根據(jù)最小漢明距離排序返回的[k]張圖像中,與查詢圖像相似的圖像所占的比例。Loss?Iterations曲線表示損失函數(shù)的值隨著網(wǎng)絡(luò)訓(xùn)練迭代次數(shù)的變化趨勢。

[10] LAI Hanjiang, PAN Yan, LIU Ye, et al. Simultaneous feature learning and hash coding with deep neural networks [C]// IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Boston, MA, USA: IEEE, 2015: 3270?3278.

[11] LIN K, YANG H F, HSIAO J H, et al. Deep learning of binary hash codes for fast image retrieval [C]// IEEE Conference on Computer Vision and Pattern Recognition Workshops (CVPRW). Boston, MA , USA: IEEE, 2015: 27?35.

[12] LIU Haomiao, WANG Ruiping, SHAN Shiguang, et al. Deep supervised hashing for fast image retrieval [C]// IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Las Vegas, NV, USA: IEEE, 2016: 2064?2072.

[13] HE Kaiming, ZHANG Xiangyu, REN Shaoqing, et al. Deep residual learning for image recognition [C]// 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Las Vegas, NV, USA: IEEE, 2016: 1063?6919.

[14] BOTTOU L. Stochastic gradient descent tricks [M]. Berlin: Springer, 2012.

作者簡介:吳振宇(1993—),男,湖北黃岡人,在讀碩士研究生,研究方向為深度學(xué)習(xí)、圖像處理。

邱奕敏(1981—),女,浙江黃巖人,博士,高級工程師,主要研究方向為圖像處理、模式識別、深度學(xué)習(xí)。

周? 纖(1993—),男,湖北仙桃人,在讀碩士研究生,研究方向為深度學(xué)習(xí)、圖像處理。

猜你喜歡
卷積神經(jīng)網(wǎng)絡(luò)
基于深度神經(jīng)網(wǎng)絡(luò)的微表情識別
卷積神經(jīng)網(wǎng)絡(luò)中減少訓(xùn)練樣本時間方法研究
卷積神經(jīng)網(wǎng)絡(luò)語言模型研究
基于卷積神經(jīng)網(wǎng)絡(luò)的車輛檢索方法研究
基于卷積神經(jīng)網(wǎng)絡(luò)溫室智能大棚監(jiān)控系統(tǒng)的研究
基于深度卷積神經(jīng)網(wǎng)絡(luò)的物體識別算法
深度學(xué)習(xí)算法應(yīng)用于巖石圖像處理的可行性研究
基于深度卷積網(wǎng)絡(luò)的人臉年齡分析算法與實現(xiàn)
深度學(xué)習(xí)技術(shù)下的中文微博情感的分析與研究
基于卷積神經(jīng)網(wǎng)絡(luò)的樹葉識別的算法的研究
桦川县| 汕尾市| 高邮市| 绥芬河市| 灵寿县| 汉源县| 武陟县| 紫阳县| 顺昌县| 西华县| 竹北市| 连云港市| 永泰县| 将乐县| 泰来县| 望江县| 库伦旗| 大兴区| 拉孜县| 郯城县| 茌平县| 鸡西市| 巴马| 万源市| 都匀市| 许昌县| 石河子市| 双牌县| 门源| 娄底市| 阿克陶县| 邛崃市| 本溪市| 始兴县| 罗平县| 永德县| 泾源县| 五家渠市| 永善县| 东源县| 永新县|