莫文星 劉華珠
(1. 東莞理工學(xué)院 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,廣東東莞 523808;2. 東莞理工學(xué)院 國(guó)際微電子學(xué)院,廣東東莞 523808)
液晶顯示屏(Liquid Crystal Display,LCD)缺陷檢測(cè)的核心是在于光學(xué)成像系統(tǒng)的搭建和檢測(cè)算法的實(shí)現(xiàn),由于工業(yè)生產(chǎn)線的實(shí)際需求,對(duì)光學(xué)成像系統(tǒng)穩(wěn)定性要和缺陷檢測(cè)系統(tǒng)的檢測(cè)速度要求較高。傳統(tǒng)檢測(cè)方法是基于人工檢測(cè),但是該方法卻存在著諸多弊端,比如強(qiáng)度大、生產(chǎn)效率低、主觀性、檢測(cè)成本高等。為提高工廠生產(chǎn)效率和降低勞動(dòng)成本,全自動(dòng)LCD缺陷檢測(cè)越來越受到企業(yè)重視。
LCD缺陷檢測(cè)方法主要分為兩類:一類是基于傳統(tǒng)機(jī)器視覺的方法,一類是基于深度學(xué)習(xí)的方法。在基于傳統(tǒng)機(jī)器視覺的方法中楊勍等[1]提出了一種利用局部凸包擬合算法,實(shí)現(xiàn)對(duì)小視野LCD圖像異物缺陷的自動(dòng)分割,但是存在缺陷連通方法的魯棒性問題;王宏碩等[2]利用二維DFT從頻域消除周期性紋理成分的方法對(duì)LCD面板缺陷圖像進(jìn)行處理, 解決了基于顯著圖模型的缺陷檢測(cè)方法對(duì)缺陷大小敏感的問題;張騰達(dá)等[3]提出了一種基于二維離散傅里葉變換的方法能檢測(cè)出包括纖維、污點(diǎn)和劃痕的LCD缺陷。在基于深度學(xué)習(xí)的方法中馬嶺等[4]使用了深度卷積生成對(duì)抗網(wǎng)絡(luò)和遷移學(xué)習(xí)用于LCD表面缺陷檢測(cè),但是存在在線檢測(cè)實(shí)時(shí)性問題。何俊杰等[5]通過構(gòu)建多層的區(qū)域提議網(wǎng)絡(luò)生成精確的候選區(qū)域,再根據(jù)區(qū)域特征和樣本分類實(shí)現(xiàn)對(duì)LCD缺陷的識(shí)別及定位。歐先鋒等[6]提出了基于全卷積神經(jīng)網(wǎng)絡(luò)的端到端的LCD缺陷檢測(cè)算法對(duì)缺陷點(diǎn)與非缺陷點(diǎn)進(jìn)行像素級(jí)分類,但是檢測(cè)率以及穩(wěn)定性存在不足。以上算法都不能很好地兼顧檢測(cè)時(shí)間和檢測(cè)精度,因此本文提出了一種基于改進(jìn)的YOLO算法的 LCD缺陷來滿足精度和時(shí)間的要求。
LCD常見的表面缺陷主要有黑點(diǎn)、劃痕、水漬、崩角等,其中黑點(diǎn)和劃痕發(fā)生在LCD表面,崩角發(fā)生在邊緣,污漬發(fā)生在夾層里。各類缺陷的實(shí)物圖如圖1所示。
圖1 各類缺陷實(shí)物圖
檢測(cè)系統(tǒng)主要包括圖像采集系統(tǒng)和實(shí)時(shí)檢測(cè)系統(tǒng),總體方案如圖2。圖像采集系統(tǒng)主要包括光源、相機(jī)、鏡頭、PC等,負(fù)責(zé)采集LCD外觀圖像,并將采集得到的圖像傳至后續(xù)模塊進(jìn)行圖像分析和處理。實(shí)時(shí)檢測(cè)系統(tǒng)主要由缺陷檢測(cè)算法構(gòu)成,該系統(tǒng)對(duì)前面采集得到的LCD外觀圖像進(jìn)行處理,首先提取需要檢測(cè)的部分,然后找出待檢LCD上存在的缺陷,最后對(duì)檢測(cè)到的缺陷進(jìn)行分析和判定。
圖2 檢測(cè)系統(tǒng)的總體方案
圖像采集是機(jī)器視覺檢測(cè)系統(tǒng)工作的首要環(huán)節(jié),圖像采集系統(tǒng)的成像效果直接影響機(jī)器視覺檢測(cè)系統(tǒng)的性能。該系統(tǒng)的硬件部分包括相機(jī)、鏡頭、光源三部分,具體組合安裝如圖3所示,這些硬件的選型和安裝會(huì)直接影響圖像的成像質(zhì)量[7]。
圖3 圖像采集系統(tǒng)
相機(jī)的選型是根據(jù)視野大小、要求的像素精度來確定分辨率。本實(shí)驗(yàn)中檢測(cè)精度要求達(dá)到0.05 mm/pixel,其中LCD屏幕尺寸大小是190×115(mm)2,故相機(jī)像素至少為(190/0.05×115/0.05)×2=17 480 000,所以至少需要2 000萬(wàn)像素的工業(yè)相機(jī)。綜合以上分析,該圖像采集系統(tǒng)選用A3B00MG000工業(yè)相機(jī)和CST-DTCM110-72-AL鏡頭。因?yàn)橥S光會(huì)產(chǎn)生更多的照明線,減少低對(duì)比度的表面特征,從而更清晰地反映對(duì)比度明顯的幾何表面特征,所以在光源上采用了CST-COS100-W型號(hào)的同軸光源。經(jīng)過實(shí)際測(cè)試,當(dāng)被測(cè)物離光源54 mm和相機(jī)鏡頭離被測(cè)物172 mm時(shí)能夠很好地將缺陷顯示出來。
2.2.1 圖像預(yù)處理
圖像預(yù)處理對(duì)系統(tǒng)運(yùn)行的可靠性和檢測(cè)結(jié)果的準(zhǔn)確性起著至關(guān)重要的作用。本系統(tǒng)的圖像預(yù)處理主要在空間域上,空間域處理主要分為灰度變換和空間濾波兩類?;叶茸儞Q對(duì)圖像的單個(gè)像素進(jìn)行操作,主要以對(duì)比度和閾值處理為目的;空間濾波涉及改善性能的操作,通過對(duì)圖像中每個(gè)像素的鄰域處理來銳化圖像[8]。
伽馬變換是常用的灰度變換,通過非線性變換,讓圖像中較暗的區(qū)域的灰度值得到增強(qiáng),圖像中灰度值過大的區(qū)域的灰度值得到降低。經(jīng)過伽馬變換,圖像整體的細(xì)節(jié)表現(xiàn)會(huì)得到增強(qiáng)。其變換的基本形式為如式(1)所示。
s=crγ
,
(1)
其中,c和γ為正常數(shù)。γ>1時(shí)會(huì)壓縮灰度級(jí)低的部分,拉伸灰度級(jí)高的部分;γ<1時(shí)會(huì)壓縮灰度級(jí)高的部分,拉伸灰度級(jí)低的部分;而γ=1時(shí)是線性的灰度變換,此時(shí)通過線性方式改變?cè)瓐D像。
為了確定γ的最優(yōu)取值,需要對(duì)圖像的灰度值進(jìn)行統(tǒng)計(jì),當(dāng)灰度直方圖中缺陷的灰度統(tǒng)計(jì)值與背景的灰度統(tǒng)計(jì)值的距離k最大時(shí),γ達(dá)到最優(yōu)。以某黑點(diǎn)缺陷圖像為例,灰度統(tǒng)計(jì)結(jié)果如圖4所示。
圖4 圖像灰度直方圖
圖4中灰度統(tǒng)計(jì)部分中占比小的為缺陷,占比大的部分為圖像背景。圖5為k和γ之間的關(guān)系示意圖。由圖5可知,當(dāng)γ=1.46時(shí),k取最大值,即當(dāng)γ=1.46時(shí)缺陷能很好地和背景區(qū)分開來。
圖5 k和γ的關(guān)系圖
2.2.2 子區(qū)域分割
子區(qū)域分割是圖像處理中的一項(xiàng)重要技術(shù),它是將圖像分割成若干個(gè)小的子區(qū)域或子圖像的過程。通常情況下,子區(qū)域分割的目的是更好地理解和處理圖像,從而實(shí)現(xiàn)各種不同的應(yīng)用,例如目標(biāo)檢測(cè)和跟蹤、圖像分割、特征提取和圖像增強(qiáng)等。
由于原圖分辨率為5 472×3 648像素太大,如果直接將原圖送入模型中部分缺陷特征會(huì)在層層卷積中丟失。因此本文將原圖被分割成16個(gè)子塊圖,即每個(gè)子塊圖為1 368×912像素大小,防止缺陷特征丟失。
2.2.3 檢測(cè)算法
Yolov5是基于深度學(xué)習(xí)的單階段目標(biāo)檢測(cè)模型[9],它將目標(biāo)檢測(cè)問題轉(zhuǎn)化為端到端的回歸問題,在檢測(cè)速度上要優(yōu)于基于二階段的Faster R-CNN。Yolov5主要分為主干網(wǎng)絡(luò)、頸部網(wǎng)絡(luò)、檢測(cè)網(wǎng)絡(luò)三大部分。主干網(wǎng)絡(luò)主要由CBS、CSP、SPPF組成;CBS層由Conv卷積函數(shù)、Batch Norm歸一化函數(shù)和SiLU激活函數(shù)[10]組成;CSP模塊分為CSP1_X和CSP2_X。前者由兩個(gè)CBS和X個(gè)Resunit組成然后拼接后再接一個(gè)CBS;后者由3X個(gè)CBS組成然后拼接后再接一個(gè)CBS。SPPF是主干網(wǎng)絡(luò)的最后一層,它采用多個(gè)小尺寸池化核級(jí)聯(lián)代替SPP模塊中單個(gè)大尺寸池化核,從而在保留原有功能,即融合不同感受野的特征圖,豐富特征圖的表達(dá)能力的情況下,進(jìn)一步提高了運(yùn)行速度。頸部網(wǎng)絡(luò)主要由PANet[11]構(gòu)成,它經(jīng)過自頂向下的特征融合后,再進(jìn)行自底向上的特征融合,這樣底層的位置信息也能夠傳遞到深層,從而增強(qiáng)多個(gè)尺度上的定位能力。檢測(cè)網(wǎng)絡(luò)包括3個(gè)輸出頭,卷積步長(zhǎng)分別是8、16、32,大尺寸輸出特征圖負(fù)責(zé)檢測(cè)小物體,小尺寸輸出特征圖負(fù)責(zé)檢測(cè)大物體。
模型的損失函數(shù)包括三個(gè)部分:矩形框損失、分類損失、置信度損失??倱p失的計(jì)算如式(2)所示
L=Lbox+Lcls+Lcon.
(2)
矩形框損失的計(jì)算如式(3)所示,因?yàn)楫?dāng)預(yù)測(cè)框與真實(shí)框沒有相交時(shí),IoU不能反映兩者之間的距離,并且此時(shí)IoU損失為0,將會(huì)影響梯度回傳,從而導(dǎo)致無(wú)法訓(xùn)練。
(3)
其中,IoU表示預(yù)測(cè)框與真實(shí)框的重疊程度,p表示預(yù)測(cè)框和真實(shí)框中心點(diǎn)之間的歐式距離,c表示預(yù)測(cè)框和真實(shí)框的最小閉包區(qū)域的對(duì)角線距離,b和bgt分別表示預(yù)測(cè)框和真實(shí)框的中心點(diǎn)。α是權(quán)重參數(shù),它的計(jì)算如式(4)所示
(4)
v是用來衡量寬高比的一致性,它的計(jì)算如式(5)所示
(5)
w和h分別為預(yù)測(cè)框的寬和高,wgt和hgt分別為真實(shí)框的寬和高。
分類損失使用二元交叉熵函數(shù)來計(jì)算,它的計(jì)算如式(6)所示
(6)
其中,y為輸入樣本對(duì)應(yīng)的標(biāo)簽(正樣本為1,負(fù)樣本為0),p為模型預(yù)測(cè)該輸入為正樣本的概率。
置信度損失的計(jì)算如式(7)所示
Lcon=-LlogP-(1-L)log(1-P),
(7)
其中,L為置信度標(biāo)簽矩陣,P為置信度預(yù)測(cè)矩陣。
由于原始的Yolov5模型對(duì)全局信息的提取能力不足進(jìn)而導(dǎo)致對(duì)劃痕的識(shí)別不精確,因此將第8層的原先CSP1_1模塊替換為C3TR模塊。該模塊由C3層和Transformer模塊相結(jié)合,運(yùn)用基于輸入特征上下文的加權(quán)平均操作,通過相似性函數(shù)動(dòng)態(tài)計(jì)算相關(guān)像素對(duì)之間的注意力權(quán)重,使得注意力模塊[12]能夠自適應(yīng)地關(guān)注全局感受野下的不同區(qū)域,將更多的注意力聚焦于缺陷區(qū)域,捕捉更多有效的特征從而提高算法性能[13]。改進(jìn)后的Yolov5模型結(jié)構(gòu)如圖6所示。
圖6 改進(jìn)后Yolov5模型結(jié)構(gòu)
C3TR層是C3層和Transformer架構(gòu)中的encoder部分相結(jié)合而成,其具體的實(shí)現(xiàn)主要包括四步:首先將輸入圖像特征進(jìn)行維度壓縮后轉(zhuǎn)為序列化數(shù)據(jù);然后將位置編碼和序列化數(shù)據(jù)相加;再將所有數(shù)據(jù)傳入Transformer架構(gòu)中的enconder中進(jìn)行殘差連接和多頭注意力機(jī)制處理;最后通過全連接層得到輸出結(jié)果[14]。C3TR層具體結(jié)構(gòu)如圖7。
圖7 C3TR層結(jié)構(gòu)示意圖
實(shí)驗(yàn)一共采集450張圖像,其中黑點(diǎn)和崩角各100張,劃痕200張,水漬50張。將每類缺陷的圖片數(shù)量按照8∶2的比例分別隨機(jī)劃分成訓(xùn)練集和驗(yàn)證集,然后對(duì)訓(xùn)練集的數(shù)據(jù)進(jìn)行數(shù)據(jù)增強(qiáng)。數(shù)據(jù)增強(qiáng)是一種常用的技術(shù),通過利用保留輸出標(biāo)簽的輸入轉(zhuǎn)換來增加標(biāo)記訓(xùn)練集的大小和多樣性。在計(jì)算機(jī)視覺領(lǐng)域,圖像增強(qiáng)已成為深度卷積神經(jīng)網(wǎng)絡(luò)中對(duì)抗過擬合的常用隱式正則化技術(shù),并被廣泛用于提高性能[15]。本文主要對(duì)訓(xùn)練集采用了水平翻轉(zhuǎn)、垂直翻轉(zhuǎn)、旋轉(zhuǎn)及隨機(jī)縮放的數(shù)據(jù)增強(qiáng)方式,最后得到訓(xùn)練集數(shù)據(jù)1 440張圖像,驗(yàn)證集90張圖像。
3.2.1 評(píng)價(jià)指標(biāo)
評(píng)價(jià)指標(biāo)主要包括準(zhǔn)確率(Precision)、召回率(Recall)、F1、檢測(cè)速度(FPS)這四個(gè)指標(biāo)。其中準(zhǔn)確率是模型分類正確的正樣本數(shù)與測(cè)試集中正樣本總數(shù)的比值;召回率是原始數(shù)據(jù)集中的正樣本有多少被準(zhǔn)確預(yù)測(cè);F1是對(duì)精確率和召回率的整體評(píng)價(jià);檢測(cè)速度是指處理一張圖片所需要的時(shí)間。它們的計(jì)算如式(8)~式(11)所示:
(8)
(9)
(10)
(11)
其中,TP(True Positive)表示檢測(cè)到LCD缺陷,且實(shí)際LCD圖像中也存在缺陷;FP(False Positive)表示檢測(cè)到缺陷,但實(shí)際LCD圖像中不存在缺陷;FN(False Negatives)表示沒有檢測(cè)到LCD缺陷,但實(shí)際LCD圖像中存在缺陷;T表示模型推理時(shí)間。
3.2.2 結(jié)果分析
表1所示為Yolov5優(yōu)化模型與Faster-RCNN[15]、SSD[16]基本模型及Yolov5基準(zhǔn)模型[9]對(duì)LCD缺陷檢測(cè)精度和速度(幀/s)進(jìn)行對(duì)比檢測(cè)結(jié)果。實(shí)驗(yàn)結(jié)果表明,F(xiàn)aster R-CNN準(zhǔn)確率比SSD高但是召回率、F1還有檢測(cè)速度均不如SSD,而Yolov5的各項(xiàng)指標(biāo)均優(yōu)于SSD。經(jīng)過Transformer架構(gòu)和C3層融合改進(jìn)的Yolov5算法相比,雖然速度不及Yolov5基準(zhǔn)模型和SSD模型,但是準(zhǔn)確率、召回率和F1指標(biāo)都有一定的提升,檢測(cè)速度也達(dá)到155幀/s,且能夠滿足實(shí)時(shí)處理的要求。為了更加直觀地驗(yàn)證本文算法對(duì)每類缺陷檢測(cè)效果,將各個(gè)模型對(duì)圖片進(jìn)行檢測(cè),其中圖8為各類別缺陷部分樣本檢測(cè)結(jié)果圖。第一列是SSD模型檢測(cè)結(jié)果;第二列是Faster R-CNN模型檢測(cè)結(jié)果;第三列是Yolov5模型檢測(cè)結(jié)果;第四列是本文模型檢測(cè)結(jié)果。
表1 LCD缺陷檢測(cè)結(jié)果
圖8 各類別檢測(cè)結(jié)果
通過對(duì)檢測(cè)結(jié)果對(duì)比分析可知,在檢測(cè)黑點(diǎn)時(shí),SSD未識(shí)別出黑點(diǎn)缺陷,F(xiàn)aster R-CNN檢測(cè)效果最好,其檢測(cè)置信度達(dá)到98%,本文模型檢測(cè)置信度達(dá)到94%;在檢測(cè)劃痕時(shí),SSD檢測(cè)結(jié)果最差,其檢測(cè)置信度只有50%,本文模型檢測(cè)效果最好,置信度達(dá)到94%;在檢測(cè)污漬時(shí),SSD檢測(cè)效果最好,其檢測(cè)置信度達(dá)到100%,其次是Faster R-CNN,檢測(cè)置信度是98%,本文模型檢測(cè)效果較差,但是檢測(cè)置信度達(dá)到了95%;在對(duì)崩角檢測(cè)時(shí),SSD模型、Faster R-CNN、Yolov5、本文模型的檢測(cè)置信度依次提升,最好的是本文模型檢測(cè)置信度達(dá)到95%。
LCD是一種常見的數(shù)字顯示屏,廣泛應(yīng)用于電視、計(jì)算機(jī)顯示器、智能手機(jī)、平板電腦等設(shè)備中。在生產(chǎn)過程中,LCD面板可能會(huì)出現(xiàn)各種各樣的缺陷,例如黑點(diǎn)、劃痕、崩角、污漬等,這些缺陷會(huì)影響產(chǎn)品的性能。因此本文設(shè)計(jì)了一種基于深度學(xué)習(xí)的LCD缺陷檢測(cè)系統(tǒng),并且針對(duì)Yolov5原模型對(duì)劃痕識(shí)別不準(zhǔn)確提出了改進(jìn)算法,通過構(gòu)建C3TR模塊并引入到網(wǎng)絡(luò)模型中。實(shí)驗(yàn)結(jié)果表明:在準(zhǔn)確率和召回率上分別比Yolov5模型提高了4.1%和1.4%,能夠滿足檢測(cè)精度和時(shí)間的要求。