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

?

基于深度學(xué)習(xí)的服裝三要素識別

2022-11-08 02:30:38韓曙光姜凱文趙麗妍
服裝學(xué)報 2022年5期
關(guān)鍵詞:款式圖案卷積

韓曙光,姜凱文,趙麗妍

(1.浙江理工大學(xué) 理學(xué)院,浙江 杭州 310018;2.浙江理工大學(xué) 服裝學(xué)院,浙江 杭州 310018;3.浙江理工大學(xué) 國際教育學(xué)院,浙江 杭州 310018)

隨著人工智能技術(shù)的快速發(fā)展與手機等拍攝設(shè)備的逐步普及,服裝行業(yè)正向著數(shù)字化方向推進。如何自動且準確地獲取服裝流行信息已是各大服裝電商關(guān)注的重點,其中服裝圖像因其包含的流行信息全面、明確且方便獲取,成為服裝信息數(shù)據(jù)挖掘的重點。傳統(tǒng)服裝三要素為款式、顏色與面料[1]。面料是圖案的載體,圖案是體現(xiàn)面料特征的一種設(shè)計,也是反映服裝流行趨勢的重要藝術(shù)形式。因此,從服裝圖像中獲取款式、顏色、圖案三要素是分析顧客偏好的首要條件。

要實現(xiàn)服裝信息的自動獲取,需對服裝圖像進行識別。傳統(tǒng)的服裝圖像識別主要從設(shè)計有效的特征描述算子入手,如邊緣檢測、圖像輪廓提取等,然后通過各種分類器進行識別。庹武等[2]采用傅里葉描述子進行特征提取,利用BP神經(jīng)網(wǎng)絡(luò)對服裝款式分類和識別;QIAN S Q等[3]利用Canny算子提取服裝輪廓,結(jié)合3層BP神經(jīng)網(wǎng)絡(luò)識別服裝風(fēng)格;李東等[4-5]采用服裝輪廓曲線的曲率極值點集和傅里葉描述子提取服裝輪廓特征,并結(jié)合支持向量機對服裝款式進行分類。上述研究從不同角度對服裝圖像識別進行了探索,但采取的方法存在一定局限性:①需要事先設(shè)計特征描述算子,模型泛化能力較為有限;②對多變場景的適應(yīng)性不強,服裝圖像背景復(fù)雜多變,導(dǎo)致識別準確率下降。

近年來,深度學(xué)習(xí)的逐步興起為特征提取與圖像識別分類提供了新的研究思路[6],它可以規(guī)避傳統(tǒng)方法設(shè)計特征描述算子的不足,從圖像中自適應(yīng)提取特征信息?;谏疃葘W(xué)習(xí)的服裝圖像研究主要包括分類模型與目標檢測模型。分類模型由兩個模塊組成:①利用卷積神經(jīng)網(wǎng)絡(luò)進行特征提??;②用全連接層進行分類。KIAPOUR M H等[7]利用卷積神經(jīng)網(wǎng)絡(luò)對服裝圖像的特征進行提取,以消除圖像背景的影響,提升跨場景下服裝圖像檢索的效果;尹光燦等[8]針對服裝領(lǐng)型特征識別困難、分類效果不理想等問題,提出了一種基于AlexNet卷積神經(jīng)網(wǎng)絡(luò)的服裝領(lǐng)型識別與分類方法。目標檢測模型是在分類模型基礎(chǔ)上完成的,其實現(xiàn)過程主要有兩個步驟:①目標分類;②目標定位[9]。經(jīng)典的目標檢測算法有Faster R-CNN[10]、YOLO系列[11]、SSD[12]等,其中YOLO系列在視頻幀的動態(tài)檢測上有很大的優(yōu)勢[13]。劉正東等[14]基于尺寸分割和負樣本增強技術(shù),提出了一種西裝識別檢測算法DN-SSD;張艷清等[15]使用Faster R-CNN對連衣裙衣領(lǐng)進行識別與定位。以上學(xué)者已對服裝圖像單一屬性(如款式、顏色等)的識別進行了較為深入的研究,而服裝的特征要素復(fù)雜多樣,只研究款式與顏色無法完整描述服裝信息,應(yīng)加強局部細節(jié)特征的識別,如服裝圖案的識別。圖案即圖形的設(shè)計方案,圖案的大小、分布位置、數(shù)量都是多變的,所以不僅需要對其進行識別,還需完成圖案的定位,這就要借助目標檢測技術(shù)。因此,文中從上衣的款式、顏色、圖案3個特征要素進行研究,構(gòu)建基于深度學(xué)習(xí)的分類與目標檢測模型,進行服裝三要素的自動識別。

1 數(shù)據(jù)準備

1.1 數(shù)據(jù)采集

文中研究對象為青少年與青年常穿上衣的款式、顏色和圖案,所需圖片數(shù)據(jù)為互聯(lián)網(wǎng)上采集并制作的相應(yīng)數(shù)據(jù)集。參考各大電商平臺對上衣款式的劃分,考慮服裝實用性,選取T恤、襯衫、連帽衛(wèi)衣3種常見的上衣款式(見圖1)。圖1中,3種款式整體廓形相似,不同之處在于衣領(lǐng)與帽子,識別上屬于服裝的細粒度識別,具有較為顯著的類間相似性[16]。

圖1 3種上衣正面款式Fig.1 Front styles of three kinds of tops

選取6種顏色:無彩色系中的黑、白、灰與彩色系中的美術(shù)三原色紅、黃、藍。運用爬蟲程序以文本檢索的方式從百度、淘寶等網(wǎng)站獲取相應(yīng)服裝款式與顏色的圖片,篩選并剔除無關(guān)圖片,最終得到服裝款式與顏色的樣本數(shù)據(jù)。每種服裝款式的每種顏色挑選400張圖片,組成7 200張圖片的數(shù)據(jù)集。

選取紋理類、文字類、動物類3大類圖案,每大類下設(shè)2小類,共6種,具體如圖2所示。

圖2 各種圖案類型示例Fig.2 Examples of various pattern types

紋理類圖案選取格子與波點,此類圖案有較強的規(guī)律性且遍布于整件服裝;文字類圖案選取中文與英文,此類圖案變化較大,字符、字體種類多;動物類圖案選取貓類與狗類,貓狗作為常見的動物頻繁出現(xiàn)在服裝圖案中,其表現(xiàn)形式分為卡通與真實兩類。上述圖案均為上衣款服裝的常見圖案,每大類圖案在分布位置、變化方式等方面都有自身的特點。每類圖案選取500張圖片作為樣本,組成共3 000張圖片的數(shù)據(jù)集。

1.2 數(shù)據(jù)處理與標注

服裝款式與顏色的圖像采集完畢后,需進行相應(yīng)的裁剪處理,只保留上衣部分,以提高識別效果;穿著于身和有背景的上裝圖像會給予保留,目的是提高模型在多場景識別中的適應(yīng)性。不同服裝的款式、顏色和圖案具有不同性質(zhì),處理不同性質(zhì)的特征要素需采取不同的標注方式。服裝的款式與顏色是服裝的基底,屬于服裝的整體性特征,在識別這類特征時需要對圖像進行整體標注,即同種類別放入同一標簽文件。服裝圖案屬于服裝的細節(jié)特征,因此需使用Labelimg軟件進行標注,即將服裝圖像打上圖2中的6種標簽,標注獲得圖案的類別信息、位置信息以及大小信息。

2 識別模型構(gòu)建

為了更準確地識別服裝三要素,根據(jù)其相應(yīng)的特點,分別構(gòu)建分類模型與目標檢測模型。使用卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural networks, CNN)中的VGGNet進行服裝款式與顏色的識別;使用目標檢測模型進行服裝圖案的識別。具體識別步驟如圖3所示。

圖3 識別步驟Fig.3 Identify steps

2.1 CNN模型構(gòu)建

2.1.1VGGNet模型構(gòu)建 VGGNet是經(jīng)典的卷積神經(jīng)網(wǎng)絡(luò),一般由輸入層、隱藏層、輸出層組成,隱藏層包含卷積層、池化層和全連接層,其中VGG16由13個卷積層、5個池化層、3個全連接層組成[17]。圖4為 VGGNet識別服裝款式與顏色的流程。VGG16從結(jié)構(gòu)上看是一個較深的網(wǎng)絡(luò),使用VGG16對服裝圖像中的款式、顏色進行識別可提取出圖像的細節(jié)特征,具體流程如圖4(a)所示。文中研究的3種上衣款式的整體廓形比較簡單,重點需識別領(lǐng)部的變化與帽子的有無。早前已有學(xué)者運用較淺網(wǎng)絡(luò)對Fashion-MNIST數(shù)據(jù)集進行訓(xùn)練與識別的研究[18],因此運用深度學(xué)習(xí)方法實現(xiàn)服裝款式的識別并不困難。文中提出一種更輕量化的網(wǎng)絡(luò)——改進的VGGNet進行服裝款式與顏色的識別,用以均衡訓(xùn)練時間,提高識別的準確率。

改進的VGGNet保留了VGG的整體框架,卷積核采用像素3×3的網(wǎng)格,與VGG16在卷積層的設(shè)置方面存在差異,具體流程如圖4(b)所示。

圖4 VGG16與改進的VGGNet識別服裝款式與顏色流程Fig.4 Clothing style and color identify process of VGG16 and improved VGGNet

2.1.2款式與顏色識別評價指標 參考深度學(xué)習(xí)相關(guān)評價指標[19],結(jié)合款式與顏色的多標簽識別研究特點,引入3個評價指標:準確率、損失、訓(xùn)練時間。準確率計算公式為

(1)

式中:TP為被正確劃分成正例的個數(shù);TN為被正確劃分成負例的個數(shù);N為測試樣本數(shù)。

多標簽分類有兩個特點:①類別標簽的數(shù)量是不確定的;②類別標簽之間可能存在相互依賴關(guān)系。由于文中使用多標簽分類,就需要選用Binary_Crossentropy損失函數(shù)。損失函數(shù)計算公式為

(2)

2.2 目標檢測模型構(gòu)建

目標檢測算法可同時完成識別與定位工作。服裝領(lǐng)域的研究圍繞款式特征[14]展開,并逐步延伸到長度特征[20]、局部細節(jié)特征[15]。圖案屬于服裝的細節(jié)特征,需實現(xiàn)識別與定位。目前較為成熟的目標檢測技術(shù)有YOLO系列模型、Faster R-CNN模型和SSD模型。文中構(gòu)建了這3種圖案檢測模型,并進行對比實驗,以找出一種在圖案識別定位上表現(xiàn)更佳的模型,用于獲取服裝圖案信息。

2.2.1構(gòu)建YOLOv3模型 YOLOv3算法的特征提取網(wǎng)絡(luò)通常為Darknet-53,可對3種不同尺度的特征圖層進行檢測。特征獲取預(yù)測結(jié)果的過程分成兩部分:①構(gòu)建FPN特征金字塔,進行加強特征提?。虎诶肶olo Head對3個有效特征層進行預(yù)測。根據(jù)以上原理,構(gòu)建基于YOLOv3的服裝圖案識別模型,其檢測大圖案的過程如圖5所示。圖5中,圖案識別的具體步驟為:①輸入帶圖案的服裝圖像到Darknet-53網(wǎng)絡(luò)中進行下采樣,最終獲得可以用來表示圖像的特征;②檢測大圖案時會將圖像劃分為像素13×13的網(wǎng)格,然后進行5次卷積操作;③5次卷積后有2條路徑,第1條是進行分類預(yù)測與回歸預(yù)測,最終獲得大圖案檢測結(jié)果;若圖片中還有別的圖案會再走第2條路徑,這條路徑會對5次卷積后的結(jié)果進行上采樣,之后與像素為26×26×512的特征圖結(jié)果堆疊(即構(gòu)建特征金字塔),并重復(fù)之前的5次卷積操作,以檢測中圖案與小圖案。

2.2.2構(gòu)建Faster R-CNN模型 Faster R-CNN是一種two-stage算法,該模型預(yù)測過程分為2步:①粗略篩選;②精細調(diào)整。基于Faster R-CNN原理,構(gòu)建服裝圖案識別模型,具體如圖6所示。圖6中,圖案識別的步驟為:①輸入1張帶圖案的服裝圖像到該模型中,先對原圖像進行處理,獲得服裝圖像的公用特征層,再利用RPN(region proposal network,區(qū)域建議網(wǎng)絡(luò))獲得這些先驗框的調(diào)整參數(shù),確定先驗框內(nèi)是否包含服裝圖案的信息(該過程為建議框的獲取);②利用建議框?qū)蔡卣鲗舆M行截取,截取后的部分特征層會在ROI Pooling層調(diào)整到同樣大小,經(jīng)過相應(yīng)的分類與回歸就能得到服裝圖案的預(yù)測結(jié)果。

圖5 基于YOLOv3的服裝圖案識別流程Fig.5 Clothing pattern recognition process based on YOLOv3

圖6 基于Faster R-CNN的服裝圖案識別流程Fig.6 Clothing pattern recognition process based on Faster R-CNN

2.2.3構(gòu)建SSD模型 利用CNN提取特征后,均勻地在圖片不同位置進行密集抽樣,抽樣時可以采用不同尺度和長寬比,且物體分類與預(yù)測框的回歸同時進行。一般情況下,SSD采用的主干網(wǎng)絡(luò)是VGG網(wǎng)絡(luò),其使用的VGG網(wǎng)絡(luò)相比普通VGG網(wǎng)絡(luò)有一定修改:將VGG16的FC6和FC7層轉(zhuǎn)化為卷積層,去掉所有的Dropout層和FC8層,新增Conv6,Conv7,Conv8和Conv9。依據(jù)SSD算法過程,使用其特定的VGG網(wǎng)絡(luò)進行特征提取,構(gòu)建服裝圖案的識別模型,具體如圖7所示。

2.2.4圖案識別定位評價指標 由于圖案的識別定位需運用相應(yīng)的目標檢測算法,結(jié)合該算法常用的評價指標[9]與服裝圖案的特點,文中引入查準率、召回率、F1-Score、mAP作為評價指標。

查準率(precision)又稱精確率,其計算公式為

(3)

式中:TP為正確檢測到某種圖案的目標框個數(shù);N為所有檢測到的某種圖案的目標框個數(shù)。

召回率(recall)又稱查全率,即預(yù)測正確的目標框和真實值框的比值,其計算公式為

(4)

式中:TP為正確檢測到某種圖案的目標框個數(shù);FN為將此圖案檢測為其他圖案的個數(shù)。

F1-Score為定位查準率和召回率的調(diào)和平均值,計算公式為

(6)

AP為平均查準率(average precision),AP值用precision-recall曲線(P-R曲線)下方面積表示,mAP則是對每個類別的AP值求平均。

圖7 基于SSD的服裝圖案識別流程Fig.7 Clothing pattern recognition process based on SSD

3 實驗部分

依照文中構(gòu)建的網(wǎng)絡(luò)模型進行實驗,實驗環(huán)境為11th Gen Intel(R) Core(TM) i7-11800H@2.30 GHz,16位英特爾處理器,NVIDIA Ge Force GTX 3060 Laptop GPU。服裝款式與顏色識別使用CNN模型實驗,以Tensor Flow作為深度學(xué)習(xí)框架;服裝圖案識別使用目標檢測模型實驗,以Pytorch作為深度學(xué)習(xí)框架,分別進行單獨訓(xùn)練。兩個實驗均以Python作為編程語言。

3.1 CNN模型實驗

實驗數(shù)據(jù)集包含3種上衣款式、6種顏色,共計7 200張服裝圖片。設(shè)置Epoch為75,初始學(xué)習(xí)率為0.001,batch size為32,輸入圖像尺寸為96×96×3。在實驗數(shù)據(jù)集中隨機選取80%的數(shù)據(jù)作為訓(xùn)練集,剩余20%的數(shù)據(jù)作為測試集,用于模型的性能評估。在進行多次實驗之后發(fā)現(xiàn),關(guān)閉Tensor Flow中的eager execution可以提高訓(xùn)練效果,所以實驗都在關(guān)閉eager execution的狀態(tài)下進行。

3.2 目標檢測模型實驗

實驗數(shù)據(jù)集包含6種服裝圖案共3 000張圖片,每張圖片中有相應(yīng)類別的一個或多個圖案,或不同類別的一個或多個圖案(此種標注方法可以實現(xiàn)多種圖案的同時識別),即實際實驗圖案數(shù)量超過3 000個。實驗將3種模型進行對比,設(shè)置相同參數(shù),實驗訓(xùn)練過程分為凍結(jié)階段與解凍階段,凍結(jié)階段的Epoch設(shè)置為50,batch size設(shè)置為8,學(xué)習(xí)率為0.001;解凍階段的Epoch設(shè)置為100,batch size設(shè)置為4,學(xué)習(xí)率為0.000 1。在實驗數(shù)據(jù)集中將隨機選取90%的數(shù)據(jù)作為訓(xùn)練集,剩余10%的數(shù)據(jù)作為測試集,用于模型的性能評估。

4 結(jié)果與討論

4.1 CNN模型結(jié)果

將改進的VGGNet與VGG16進行對比實驗,實驗結(jié)果見表1。

表1 服裝款式與顏色識別結(jié)果

由表1可以看出,改進的VGGNet在服裝款式與顏色的多標簽識別中表現(xiàn)出較優(yōu)的性能,可以用較短的訓(xùn)練與檢測時長在測試集上實現(xiàn)96.49%的總體準確率。數(shù)據(jù)集包含了多種場景,VGG16因在服裝及其他場景的細節(jié)特征上挖掘較深,其識別準確率下降了1.16%。

4.2 目標檢測模型結(jié)果

目標檢測模型實驗經(jīng)過編程與訓(xùn)練后,獲得服裝圖案識別結(jié)果,具體見表2。

表2 服裝圖案識別結(jié)果

對比3種模型的檢測結(jié)果,score threhold設(shè)置為0.5的情況下,YOLOv3在識別與定位圖案上表現(xiàn)出更優(yōu)的性能,其mAP達到了86.63%。3大類圖案中,紋理類圖案檢測效果最好,格子與波點的mAP為96.14%;文字類圖案檢測效果較差,中文與英文的mAP為79.75%。紋理類圖案由于其自身規(guī)律性強、特征明顯且遍布服裝,成為最易檢測的圖案;而文字類圖案的變換較多,文字的組合方式和分布位置多變,字母字符種類繁多,在圖案設(shè)計時還會將文字的書寫樣式進行扭曲、隔斷,從而導(dǎo)致文字類圖案的檢測效果較差。所以提高文字類圖案檢測精度最重要的是數(shù)據(jù)集的覆蓋面要廣,即盡可能多地覆蓋文字類圖案的樣式。動物類圖案(如文中選用的貓狗類圖案)特征相對明顯,相應(yīng)的檢測效果位于中位,mAP為83.69%。服裝圖案中存在兩種類型的動物圖案:真實動物與卡通繪畫動物,這就使得計算機在學(xué)習(xí)這類圖案特征時會表現(xiàn)出一定的困難,從而導(dǎo)致檢測效果不佳。動物類圖案與文字類圖案相比,變換方式不多,因此動物類圖案檢測效果比文字類好。

對比3種模型的查準率與召回率,發(fā)現(xiàn)YOLOv3的查準率最高,即檢測服裝圖案的效果最好;Faster R-CNN的召回率最高,即檢測出圖案的個數(shù)最多,6種圖案的平均召回率為89.84%。后續(xù)研究可根據(jù)所需檢測服裝圖案的側(cè)重點,選擇不同網(wǎng)絡(luò)模型。若兩者都需考慮時,可以參考F1-Score指標。

5 實例驗證與分析

為驗證模型對服裝款式、顏色和圖案的識別性能,選用實驗中識別效果最好的YOLOv3模型,從淘寶網(wǎng)某品牌中隨機選取6張上衣款服裝圖像進行識別,測試結(jié)果如圖8所示。

圖8中的數(shù)字表示識別為對應(yīng)類別的概率,以圖8(a)成衣款式為例,顏色識別為黑色的概率為99.97%,款式識別為T恤的概率為99.56%,圖案識別為中文圖案的概率為98%。由圖8可以看出,模型對6款服裝三要素的識別都表現(xiàn)出較好的判別結(jié)果。款式與顏色的識別結(jié)果輸出在圖片左上方橘黃色框內(nèi),圖案的識別結(jié)果由不同顏色框出,從而實現(xiàn)了識別與定位。紋理類圖案直接框出整件服裝,文字和動物類圖案分別在各服裝內(nèi)部定位成功。款式的識別結(jié)果在有無背景與是否穿著于身的變化中表現(xiàn)出一定偏差,如圖8(b)中穿著效果的款式識別率下降,但變化不大,概率維持在90%以上。有無背景與是否穿著于身對服裝顏色與圖案的識別結(jié)果基本沒有影響,具有較好的魯棒性。圖8(c)中的格子襯衫為紅黑相間,識別結(jié)果卻為紅色,是由于在數(shù)據(jù)標注時,對格子類顏色的標注以市場確定顏色為準,一般情況下,彩色系與無彩色系顏色都存在時,以彩色系為服裝顏色,如紅黑格子襯衫、紅白格子襯衫都可命名為紅色格子襯衫。

圖8 上衣款服裝三要素測試結(jié)果Fig.8 Testing results of the three elements of top clothing

6 結(jié)語

為了通過圖片自動獲取服裝流行信息,文中針對服裝三要素識別不夠全面、多特征識別效果較差的問題,提出一種利用深度學(xué)習(xí)識別服裝三要素的方法。文中選取青少年及青年上衣的3種款式、6種顏色和6種圖案,通過收集不同網(wǎng)絡(luò)平臺中的上衣圖片,按照同類文件標簽存放與目標框框選兩種標注方式,建立了包含10 200張服裝圖片的數(shù)據(jù)庫,并利用深度學(xué)習(xí)方法對服裝三要素中的款式、顏色、圖案進行訓(xùn)練和識別。結(jié)果表明:與VGG16相比,改進的VGGNet在服裝款式與顏色的多標簽識別中表現(xiàn)出較優(yōu)的性能,其用較短的訓(xùn)練與檢測時長在測試集上實現(xiàn)了96.49%的準確率;在YOLOv3,F(xiàn)aster R-CNN和SSD 3種目標檢測算法中, YOLOv3表現(xiàn)出更優(yōu)的服裝圖案檢測性能,score threhold設(shè)置為0.5時,檢測服裝圖案的mAP值為86.63%。3大類圖案中,紋理類圖案的檢測效果最好,其mAP為96.14%;動物類圖案mAP為83.69%;文字類圖案mAP為79.75%。

基于YOLOv3在服裝圖案檢測中的良好效果以及YOLO系列在視頻幀檢測的優(yōu)勢,可將其應(yīng)用在商場的視頻監(jiān)控系統(tǒng)中,通過檢測進出商場顧客的服裝穿搭,獲取顧客的著裝信息并進行歸納,分析其服裝穿著偏好,商家可根據(jù)顧客偏好增減庫存、安排陳列,以提高店鋪銷量與顧客忠誠度。未來可以進一步改善當前識別結(jié)果,并在視頻幀獲取服裝信息方面展開研究,將方法擴展到其他服裝款式、顏色和圖案的識別工作中。

猜你喜歡
款式圖案卷積
基于3D-Winograd的快速卷積算法設(shè)計及FPGA實現(xiàn)
從濾波器理解卷積
電子制作(2019年11期)2019-07-04 00:34:38
畫中謎
娃娃畫報(2018年6期)2018-08-15 13:03:20
畫中謎
娃娃畫報(2018年5期)2018-08-15 12:49:20
畫中謎
娃娃畫報(2018年3期)2018-08-15 12:26:56
Dream Bag
基于傅里葉域卷積表示的目標跟蹤算法
最火的單品款式
Coco薇(2015年5期)2016-03-29 22:40:10
猜猜看
一種基于卷積神經(jīng)網(wǎng)絡(luò)的性別識別方法
毕节市| 河西区| 姚安县| 志丹县| 招远市| 琼中| 甘肃省| 上高县| 疏勒县| 中江县| 宣武区| 蒙阴县| 盐津县| 曲靖市| 清涧县| 手游| 建德市| 江陵县| 景德镇市| 汶川县| 安顺市| 禹城市| 福州市| 怀宁县| 平遥县| 芒康县| 确山县| 祁连县| 雷州市| 中宁县| 宁海县| 遵义县| 米泉市| 新绛县| 壶关县| 滨海县| 惠水县| 八宿县| 攀枝花市| 岳池县| 济宁市|