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