姜磊,趙漢理,吳承文(溫州大學智能信息系統研究所,溫州 325035)
基于卷積神經網絡的鞋類圖像檢索研究
姜磊,趙漢理,吳承文
(溫州大學智能信息系統研究所,溫州325035)
近年來,我國的電子商務獲得了前所未有的蓬勃發展,各種大中型電商網站紛紛應運而生。互聯網技術及物流的發展極大地方便了人們的日常購物與日常生活。然而,網上商城店鋪眾多并且各色商品種類繁多,用來展示商品的圖片數量也在呈幾何倍數不斷增加。人們在購物過程中,往往希望能夠購買到稱心如意的商品,但面對如此龐大的圖像數據往往需要花費相當多的時間去篩選和比較。因此,如何從如此龐大的圖像數據中快速并準確地搜索出人們所期望的商品成為了一個現實的難題。
為了解決這個問題,很多研究人員提出了各自的解決方法。根據解決方式的不同,這類算法可以概括為以下三種類型:基于文本的圖像檢索(Text Based Image Retrieval)[1]、基于內容的圖像檢索(Content Based Image Retrieval)[2-3]以及基于文本和內容相結合的圖像檢索[4]。基于文本的圖像檢索方法出現的時間比較早、技術相對成熟,但是,文本描述并不能充分表達圖像的內容并且很難用來完成圖像的相似性檢索[5]。基于內容的圖像檢索能夠很好地用來實現圖像的相似性檢索,近年來在諸多領域得到了很好的應用,具有代表性的應用例如百度識圖、阿里網站的搜索等。基于文本和內容的圖像檢索是前面兩種方法的結合,能夠很好地結合兩種搜索方式的優點,但實現方式比較復雜。
本文主要關注和解決鞋類圖像的檢索問題。鞋子作為人們日常穿著的一個重要組成部分,在各大電商網站中占據著相當比例的銷售量。然而,據筆者所知,國內很少有專門針對該問題進行專門的研究工作。近年來卷積神經網絡(Convolutional Neural Networks)[6]被證明在一些圖像檢索任務中取得了很好的效果。因此,本文提出了利用卷積神經網絡來進行鞋類圖像的檢索。卷積神經網絡是一種深度學習(Deep Learning)算法,已經被廣泛應用到諸多圖像處理任務。本文主要完成以下兩個方面的工作。一是通過在已經訓練好的網絡上利用鞋類圖像進行微調,再利用學習到的特征來進行檢索。二是整理了包含45個種類一共10000多張標注好的圖像數據用來訓練網絡,同時搜集了20000多張圖像作為我們的檢索庫。實驗數據和分析證明本文的基于卷積神經網絡來進行鞋類圖像檢索的方法能夠取得很好的效果。
基于內容的圖像檢索算法主要包含兩個方面的內容。一個是如何來抽象地表達圖像內容,另一個是采用何種方式來進行特征匹配。
對于圖像內容的表達指的是通過一些特征來抽象地描述圖像所包含的信息。這些特征可以是圖像的紋理、顏色、邊緣或者一些高階的語義特征。傳統的基于內容的圖像檢索方法通過一些低階的特征來描述圖像。這類特征包括全局的顏色特征、紋理特征或者通過一些局部描述子SIFT[7]、SURF[8]建立起來的字袋模型[9]。最近的這幾年隨著卷積神經網絡[6]的興起,很多學者開始嘗試基于已經訓練好的網絡模型來提取圖像的特征。并且這些被稱作通過算法學習到的特征在圖像檢測[10]和圖像檢索[11]等圖像處理任務中表現出了比傳統基于人工設定特征的方法獲得更好的檢索效果。因此本文也采用這種學習到的特征來表征鞋類圖像的信息。
采用何種方式來度量特征之間的相似度,是基于內容的圖像檢索中又一個重要的研究內容。針對于這個問題,有很多算法已經被提出來。例如,一種比較簡單的方法是利用歐氏距離來計算特征間的相似度。另一種方法是通過學習策略計算出一個相似度量矩陣,并將該矩陣用來進行特征的相似匹配[12]。還有,通過把描述圖像的特征轉換為二進制特征從而利用漢明距離(Hamming Distance)來快速地進行相似性計算[13]。
卷積神經網絡的思想最早是Lecun等[6]在1998年提出的,用來進行手寫字符的識別。網絡主要由一些相互鏈接的卷積層和全連接層組成。卷積層主要是對輸入做卷積操作然后對卷積后的結果做非線性變換得到輸出作為下一層的輸入。全連接層和人工神經網絡的全連接層類似。當時網絡層數還只有5層,并且已經在手寫字符識別上取得了很好的成績。這種特定數量的層組合在一起構成的網絡被稱作網絡模型。近年來卷積神經網絡得到快速的發展,在很多圖像處理任務上取得了良好的效果,與此同時網絡的層數也在不斷的增加。
本文提出了一種運用卷積神經網絡來實現基于內容的圖像檢索方法。本文采用一種由很多卷積層和全連接層以及一些用來優化網絡的層組成的卷積神經網絡模型。本文方法包括以下三個主要模塊:
(1)預訓練好網絡模型并用鞋類圖像進一步微調;
(2)建立鞋類圖像檢索所需的特征庫;
(3)輸入所要查詢的鞋子圖像進行圖像檢索。

圖1 利用鞋類圖像在預訓練的網絡模型上進行微調
第一步是訓練好網絡模型并用鞋類圖像進一步微調。據筆者所知,現有的基于卷積神經網絡的圖像檢索算法[11,13]大都是采用了AlexNet[14]網絡模型。然而,本文采用的是Christian等[15]在ILSVRC2014大賽中所提出的Inception網絡模型。該網絡模型比AlexNet網絡模型識別的準確率高,并且所需要的參數數量相對于AlexNet要少很多。首先,利用ImageNet[16]提供的百萬張圖片預訓練Inception網絡模型;然后,標注好一萬張鞋類圖像,并在這些鞋類圖像上進行微調。微調操作和預訓練操作采用的是同樣的網絡模型。微調指的是訓練網絡的時候網絡的參數用預訓練好的網絡參數進行初始化。該操作比較簡單,只需要簡單地把網絡中輸出層的節點數由原來的1000改為45個節點即可。圖1示意了網絡模型訓練的過程。圖1中最左邊是訓練集,中間白色的部分是Inception網絡的內部的卷積操作,藍色矩形的表示一個1024維的向量對應于Inception網絡中位于輸出層前一層的FC層,最后一個黃色的矩形表示微調時輸出層的節點數,節點數和本文鞋類數據的類別數相一致為45。這種在大量圖像上進行預訓練,然后在特定任務上進行網絡微調的方法能夠取得很好的學習效果。
在得到訓練好的網絡模型之后,第二步則利用該網絡模型來提取檢索庫中圖像的特征,建立鞋類檢索圖像特征庫。特征可以理解為表示圖像的一種編碼方式。近年來學者把卷積神經網絡中除輸入層和輸出層以外的一些層看成學習到的圖像特征,并且理論上在網絡模型中層數越高表示的特征越抽象,就越能夠很好地表征圖像的內容。因此,本文使用Inception輸出層前一層的FC層作為本文的圖像特征。具體流程如圖2如示。圖2中左邊表示檢索庫圖像,中間表示微調好的網絡模型,右邊表示保存的檢索庫圖像的特征。

圖2 利用為調好的網絡建立鞋類特征檢索需要的特征
最后一步,輸入所要查詢的鞋子圖像,利用訓練好的網絡提取圖像的特征實現圖像的檢索。在這里,利用訓練好的網絡提取圖像特征的方法和建立特征索引庫時采用的方法一樣。然后,本文利用簡單的歐氏距離來進行特征的相似計算,公式如下:

這里q表示查詢圖像的特征向量,Di表示檢索庫中第i張圖像的特征向量,Si表示特征之間的距離差,n表示檢索庫中一共有多少張圖片。值越小說明兩幅圖像的相似度越高。最后,通過排序算法返回相應的特征索引并查找出對應的圖像庫,就能檢索出所需要的相似圖像。圖3示意了本文的鞋子圖像檢索過程。圖3中左邊是輸入的查詢圖像,中間是微調好的網絡模型,右邊表示在檢索庫圖像特征。

圖3 輸入圖像進行檢索
本文實驗電腦配置為Intel Core i7 CPU和NVIDIA GeForce Titan顯卡,裝載Ubuntu環境。利用深度學習庫Caffe[17]來進行訓練。Caffe是一種完全開源,文檔詳細且使用簡單的深度學習庫。通過Caffe訓練本文的網絡模型并且使用Caffe的MATLAB接口來編寫相應的檢索程序。

圖4 檢索結果示例

圖5 獲取前10個檢索結果
本文實驗采用的圖像數據包括ImageNet中的含有的1000個類別的已經標注好的百萬張圖像、我們自己收集的45個類別的10000多張標注好的鞋類圖像以及含有20000多張圖像的檢索庫。鞋類圖像中每個類別的圖像數量不等。并且,為了防止過擬合現象,添加了大約2000不到的衣服圖像用來一起參與訓練。
圖4中給出了部分鞋子圖像的檢索效果。左邊是輸入的查詢圖像,右邊是對應的檢索到的最相似圖像。從本圖中可以發現,檢索出來的前4張圖像基本上都具有和查詢圖像較高的相似度。根據實際經驗,在本文程序中查詢到的前10張圖像都是非常相似的。圖5給出了一個例子。因此,實驗的結果達到了本文方法的預期。一方面,因為Christian等的網絡具有很好的泛化能力,在本文的鞋類數據上微調之后能夠很好地表達鞋類圖像的信息。另外,本文檢索庫中的圖像非常簡單,沒有過多的背景干擾,因此有效地降低了檢索出錯率。如果檢索庫中已有與查詢圖像相同的鞋子內容,則該鞋子圖像能夠被檢索出來,如圖4第一個例子所示。因此,本文的基于卷積神經網絡鞋類圖像檢索方法具有實際使用的價值。
本文所采用的學習算法雖然需要很長的訓練時間,但是當運用已經訓練好的模型來進行圖像處理任務時卻僅需要非常短的時間。本文提出的鞋類圖像檢索方法從圖像特征提取到給出檢索結果只需要100毫秒的運行時間。因此,本文方法能夠適用于實際的在線檢索應用。這種提取特征的速度也是傳統的基于圖像局部描述子的特征所無法比擬的。
本文成功地把卷積神經網絡應用到鞋類圖像的檢索中。運用已經訓練好的卷積神經網絡來提取圖像特征,這種基于內容的圖像檢索能夠快速高效地查詢到所期望的相似圖像。并且,在應用到實際問題時,本文方法的實時性也是一個重要的優點。
本文的工作還存在一些不足之處。例如,檢索庫僅包含所搜集的20000多張圖片,而在實際情況中往往需要百萬級的圖像檢索庫。在將來的工作中將進一步擴充和完善圖像檢索庫。另外,在實際的商業應用中,檢索圖像中除了鞋子信息之外往往還有一些背景信息。可以在檢索前加入目標檢測[10]的預處理過程,以減少背景對檢索效果的影響。
[1]Avinash N Bhute,B B Meshram.Text Based Approach for Indexing And Retrieval of Image and Video:A Review[J].Computing Research Repository(CoRR),2014.
[2]孫君頂,原芳.基于內容的圖像檢索技術[J].計算機系統應用,2011,08:240-244.
[3]Wan J,Wang D,Hoi S C H,Wu P,Zhu J,Zhang Y,et al.Deep Learning for Content-Based Image Retrieval:A Comprehensive Study [C].Proceedings of ACM International Conference on Multimedia,22nd ACM 2014:157-166.
[4]阿斯艷·哈米提,阿不都熱西提·哈米提.基于文本的圖像檢索與基于內容的圖像檢索技術的比較研究[J].首都師范大學學報(自然科學版),2012,04:6-9.
[5]顧昕,張興亮,王超,陳思媛,方正.基于文本和內容的圖像檢索算法[J].計算機應用,2014,S2:280-282.
[6]Lecun Y,Bottou L,Bengio Y,Haffner P.Gradient-Based Learning Applied to Document Recognition[C].Proceedings of the IEEE. IEEE 1998:2278-2324.
[7]Lowe D G.Distinctive Image Features from Scale-Invariant Keypoints[J].International Joural of Computer Vision,2004:91-110
[8]Bay T T H,Gool L J.V.Surf:Speeded up Robust Features[C].European Conference on Computer Vision(ECCV)2006:404-417.
[9]Wu L,Hoi S C H,Yu N.Semantics-Preserving Bag-of-Words Models for Efficient Image Annotation[C].Proceedings of ACM Workshop on Large-Scale Multimedia Retrieval and Mining,First ACM 2009:19-26.
[10]Girshick R,Donahue J,Darrell T,Malik J.Rich Feature Hierarchies for Accurate Object Detection and Semantic Segmentation[C]. IEEE Conference on in Computer Vision and Pattern Recognition(CVPR)2014:580-587.
[11]Babenko A,Slesarev A,Chigorin A,Lempitsky V.Neural Codes for Image Retrieval[C].European Conference on Computer Vision (ECCV)Springer International Publishing 2014:584-599.
[12]Chechik G,Sharma V,Shalit U,Bengio S.Large Scale Online Learning of Image Similarity Through Ranking[J].J.Mach.Learn.Res, 2010:1109-1135.
[13]Kevin Lin,Yang Huei-Fang,Hsiao Jen-Hao,Chen Chu-Song.Deep Learning of Binary Hash Codes for Fast Image Retrieval[C].IEEE Conference on Computer Vision and Pattern Recognition Workshops(CVPRW),2015:27-35.
[14]Alex Krizhevsky,Sutskever.ImageNet Classification with Deep Convolutional Neural Networks[J].Advances in Neural InformationProcessing System 25(NIPS)2012:1097-1105.
[15]C.Szegedy,L.Wei,J.Yangqing,P.Sermanet,S.Reed,D.Anguelov,et al.Going Deeper with Convolutions[C].IEEE Conference onin Computer Vision and Pattern Recognition(CVPR),2015:1-9.
[16]ImageNet.http://www.image-net.org/[OL].Princeton University,2015.
[17]Jia Y,Shelhamer E,Donahue J,Karayev S,Long J,Girshick R,et al.Caffe:Convolutional Architecture for Fast Feature Embedding[C].Proceedings of ACM international conference on Multimedia,22nd ACM 2014:675-678.
Image Retrieval;Convolutional Neural Networks;Deep Learning
Shoe Image Retrieval Based on Convolutional Neural Networks
JIANG Lei,ZHAO Han-li,WU Cheng-wen
(Institute of Intelligent Information Systems,Wenzhou University,Wenzhou 325035)
浙江省自然科學基金項目(No.LY13F020022)、溫州市科技計劃項目(No.G20150019)
姜磊(1993-),男,安徽滁州人,碩士研究生,研究方向為計算機圖形圖像處理
趙漢理(1982-),男,浙江文成人,博士,副教授,研究方向為計算機圖形圖像處理
吳承文(1974-),男,安徽桐城人,博士,講師,研究方向為數據處理
2015-12-15
2016-02-14
基于內容的圖像檢索是計算機視覺和機器學習領域中重要的研究內容。提出一種基于卷積神經網絡的鞋類圖像檢索方法。首先基于百萬張圖片進行神經網絡模型預訓練,再使用鞋類圖像在該預訓練好的網絡上進行微調使系統學習到鞋類圖像的特征信息,最后可以利用學習到的特征來實現鞋類圖像檢索。實驗結果表示本文的鞋類圖像檢索方法能夠獲得很好的檢索結果。
圖像檢索;卷積神經網絡;深度學習
Content based image retrieval is a hot topic in computer vision and machine learning fields.Presents a shoe image retrieval method based on convolutional neural networks.First obtains a pre-trained convolutional neural network from one million of images,then employs shoe images to generate fine-tuned networks,and finally implements the shoe image retrieval using the learned characteristics.Experimental results show that our method can produce good shoe image retrieval results.