四川大學(xué)計算機學(xué)院 劉鍇迪
?
圖像識別在印染花型檢索的應(yīng)用與實踐
四川大學(xué)計算機學(xué)院劉鍇迪
圖像識別在當下已有廣泛應(yīng)用,它極大地方便我們的生活,并推動著社會的發(fā)展。在我們將圖像識別應(yīng)用到最前沿科技可以的同時,或許我們也可以考慮將圖像識別應(yīng)用到傳統(tǒng)行業(yè)。一個印染企業(yè)往往擁有大量的花型模板,當客戶需要某種花型的布料時,就需要在模板庫里找到所需模板進行印染。目前大部分印染企業(yè)主要依靠人工查找,費時、費力。如果可以通過計算機圖像識別技術(shù)來實現(xiàn)模板查找,將大大提高生產(chǎn)力。所以我們嘗試通過運用圖像識別等技術(shù)來構(gòu)建一個專門印染花型檢索系統(tǒng),目前已有一個可以使用的初步成果。
印染花型模版;圖像檢索;ORB算法;檢索速度
浙江華都紡織集團有限公司是一家涉及紡織、印染、商貿(mào)、房產(chǎn)開發(fā)、融資擔保等行業(yè)的綜合性大型企業(yè)集團。公司主要從事高檔織物面料的印染及后整理工作,產(chǎn)品大部分銷往國際市場。
公司的印染部門在做布料印染時的大致流程如下:布料的花型由專門的設(shè)計師設(shè)計,然后公司再根據(jù)設(shè)計圖打造模版,用這些模版就可以實現(xiàn)布料印染,讓布料擁有各式各樣的花型。
公司現(xiàn)已有上萬種花型,由于打造一個模版價格上千,并且耗費時間,所以當客戶提供所需產(chǎn)品時,會有專人從庫存中尋找是否有相同或相似花型,如果有,則使用已有模板,如果沒有,則需另外打造。但這種方式需要專門有人在計算機中尋找,耗費勞動力、時間和精力,沒準還會出現(xiàn)遺漏,這樣就會重復(fù)打造花型模板,給公司帶來損失。
經(jīng)查閱資料和實地調(diào)查,以上問題不僅僅是華都集團一家公司的問題,印染行業(yè)普遍存在該類問題。
2.1設(shè)計構(gòu)思
假如匹配花型的工作可由計算機完成或者由計算機輔助完成,通過圖像識別來檢索花型,那么這將會很好的解決人工查找花型費時費力的問題,并且大大提高生產(chǎn)效率。
2.2功能設(shè)計
我們的項目是一個針對印染花型檢索的集成系統(tǒng),而不僅僅使其功能局限于以圖搜圖。
考慮到調(diào)查所得印染行業(yè)的實際情況,我們將圖像數(shù)據(jù)庫設(shè)計為以編號為主碼,底色、圖案顏色、長、高、是否規(guī)則、是否有花、圖片路徑等為一般屬性的表。
用戶可以在系統(tǒng)中添加、刪除圖片。并且添加、編輯圖片信息。
由于存在數(shù)據(jù)庫里的是圖片路徑,所以不會因為在系統(tǒng)中刪除圖片(實際上只是刪除了圖片路徑)而刪除計算機中的圖片。
在各個屬性中,編號為主碼,一個編號唯一標識一張圖片。按關(guān)鍵字檢索時,編號、底色、圖案顏色、長、高都為輸入框,而是否規(guī)則、是否有花則為勾選框。當輸入框未輸入時,所有結(jié)果都將輸出(如:底色未輸入,所有圖片都符合該條件,無論底色有或沒有)。而當勾選框未輸入時,只要,不滿足該條件的圖片輸出(如:在是否有花欄未打勾,則所有沒有花的圖片符合該條件)。此外,當在按長和高搜索時,搜索結(jié)果會有一定范圍(如:搜索高為10,返回的結(jié)果可能是高為9-11的圖片)。
當使用檢索功能時,系統(tǒng)會檢索出所有符合條件的結(jié)果50張(只是舉例,可以根據(jù)需要改變該值)。如果符合條件的超過50張,則只選出最符合條件的50張,其排列順序即按照圖片相似度大小來排列,若符合條件的未到50張,則只輸出符合條件的圖片。
使用該系統(tǒng)需要一定權(quán)限,只有輸入特定賬號密碼的用戶才能使用該系統(tǒng)。
該系統(tǒng)要能夠處理10000張圖片,并且搜索時間最大不能超過10分鐘。
2.3評估指標
在算法的選擇和系統(tǒng)的改進中,我們主要使如下指標最佳為目標。
2.3.1查全率和查準率
查全率是指在一次查詢過程中,系統(tǒng)返回的查詢結(jié)果中相關(guān)圖像的數(shù)目占整個圖像庫中所包含的相關(guān)圖像數(shù)目(包含檢索返回的和沒有檢索出來的相關(guān)圖像)的百分比。查準率是指系統(tǒng)返回的查詢結(jié)果中相關(guān)圖像的數(shù)目占所有返回圖像數(shù)目(包括相關(guān)的和不相關(guān)的圖像)的百分比。所以我們的系統(tǒng)需要做到相關(guān)的圖片盡可能顯示出來,并且顯示出來的圖片盡可能與所需圖片相關(guān)。
2.3.2排序評價
查全率-查準率沒有考慮返回的相關(guān)圖像在檢索出來的圖像中所處的位置 ,我們希望所有相關(guān)圖片應(yīng)該排在檢索出來的圖像的前面。
2.3.3響應(yīng)時間
響應(yīng)時間是從用戶提交查詢圖像開始檢索到返回結(jié)果為止所經(jīng)歷的時間。由于系統(tǒng)在檢索是要進行查詢圖像的特征提取、相似度計算及排序,如果采用不同的特征提取算法、相似度匹配算法等,顯然系統(tǒng)會有不同的響應(yīng)時間。除此之外,對部分信息的事先存儲也可能減少響應(yīng)時間,盡管這可能會占用更多的空間。
2.4實施策略
我們使用QT進行開發(fā)及界面優(yōu)化,使用MySQL數(shù)據(jù)庫,并調(diào)用一定OpenCV中關(guān)于圖像識別的庫。
2.4.1圖像識別算法的選擇
該項目使用了ORB算法。ORB算法是Breif算法的改進。Brief是Binary Robust Independent Elementary Features的縮寫。這個特征描述子的主要思路就是在特征點附近選取若干點對,將這些點對的灰度值得大小,組合成一個二進制串,并將這個二進制串作為該特征點的特征描述子。Brief的優(yōu)點是速度,缺點有如下:不具備旋轉(zhuǎn)不變性;對噪聲敏感;不具備尺度不變性。ORB算法就是試圖解決上述缺點中的1和2提出的一種新概念??紤]到我們對識別速度、旋轉(zhuǎn)不變性、抗噪等特性的追求,以及對各種算法性能的實際測試,我們最終選擇了ORB算法。
2.4.2相似度排序方法
假設(shè)有兩張圖片,圖片一和圖片二。經(jīng)過系統(tǒng)的特征點提取,圖片一提取出來的特征點數(shù)為N1,圖片二提取出來的特征點數(shù)為N2,經(jīng)過特征點匹配,圖片一和圖片二共有N3個特征點可以匹配(顯然N1大于N3且N2大于N3)。我們記N3除以(N1+N2)的結(jié)果為k。我們假定k越大,兩張圖片相似度越高,相似度最高的圖片應(yīng)該出現(xiàn)在結(jié)果的最前面,所以我們將k最大的圖片放在最前面(由于待搜圖片是唯一的,所以我們需要做的就是把圖庫里與待搜圖片得出k值最大的圖片放在最前)。
2.4.3速度優(yōu)化方法
在將算法選擇為ORB算法后,雖然速度較其他算法要快,但我們的最初成果響應(yīng)時間仍然比較慢(與實際需求相比),鑒于響應(yīng)時間在應(yīng)用中的重要性,我們通過如下方法來提升系統(tǒng)的響應(yīng)時間。
首先,我們考慮到對一張圖片進行特征提取的大致流程為先將圖像提取出來放入內(nèi)存,然后在內(nèi)存中提取出特征向量,如果需要特征匹配則在內(nèi)存中直接進行,如果不需要,則可以放回硬盤進行存儲。
在改進之前:檢索輸入后,進行花型檢索。每兩張圖片匹配之前都做一次待搜圖像的特征提取和一次圖庫圖像的特征提取。圖庫里有n張圖片的話,就需要訪問n+n次硬盤,進行特征提取n+n次。
在改進之后:在花型庫建立之時,每向圖庫中插入一張圖像就將該圖像的特征向量提取出來存在一個文件中(所有的圖庫里的特征向量就放在該文件中),匹配時將該文件從硬盤中讀取出來放在
內(nèi)存中,并將待搜圖像特征也提取出來,然后逐一比較,這樣就減少了幾乎所有的訪問硬盤時間和特征提取時間。圖庫里有n張圖片的話,只需要訪問1+1次硬盤,進行特征提取1次。
除此之外,當按圖像檢索和關(guān)鍵字檢索同時進行時,我們選擇先進行關(guān)鍵字檢索,再進行圖像檢索。也就是說,在按關(guān)鍵字檢索得到的圖片里進行圖像檢索,由于按關(guān)鍵字檢索速度較快,所以這減少大量時間的浪費。
通過該項目,我對圖像識別領(lǐng)域有了一定的了解和探究,對如何將知識運用到實際生產(chǎn)有了更深刻的認知。
該項目已經(jīng)可以在印染行業(yè)實際使用,在解決一些漏洞并對項目進行一定優(yōu)化后,該項目也可以投入商業(yè)使用。但在這個應(yīng)用廣泛和前景廣闊的圖像識別領(lǐng)域,我們?nèi)杂蟹浅6嗫梢詫W(xué)習(xí)的地方。在理論研究中,或許可以設(shè)計一種更加好的算法,在實際應(yīng)用中,可以將其擴展到更多的領(lǐng)域(比如電子商務(wù)、房屋設(shè)計等)。如果我們更深入,我們還可以進入到模式識別和人工智能領(lǐng)域,總之,魅力無窮。
該項目可以有效解決印染行業(yè)在查找花型模板時效率低下的問題,著實提升印染行業(yè)的生產(chǎn)效率。各類傳統(tǒng)行業(yè)也可受此啟發(fā),在各個方面利用科技優(yōu)化生產(chǎn)流程。
[1]黃翔林,楊麗芳,孫書韜.圖像檢索原理與實踐[M].第1版.北京:中國傳媒大學(xué)出版社,2014.6:5-6.
[2]毛星云,冷雪飛,王碧輝,吳松森.OpenCV3編程入門[M].第1版.北京:電子工業(yè)出版社,2015.2:425-428.
劉鍇迪,男,現(xiàn)就讀于四川大學(xué)計算機學(xué)院計算機科學(xué)與技術(shù)專業(yè)。