王曙敦,賀 杰
(深圳晶華電子股份有限公司,深圳 518000)
液晶顯示屏不僅給人們帶來(lái)了良好的視覺感受,也讓任何時(shí)間地點(diǎn)的信息交互變成現(xiàn)實(shí),現(xiàn)代科技的進(jìn)步也邁上了萬(wàn)物互聯(lián)的新臺(tái)階。作為信息交互的重要組成部分,液晶顯示屏的應(yīng)用前景非常廣闊[1-2]。LCD顯示屏是一種最常用的液晶顯示屏,因其生產(chǎn)成本低廉,響應(yīng)時(shí)間較快,目前已成為中低端現(xiàn)實(shí)市場(chǎng)的主流產(chǎn)品[3-4]。液晶顯示屏的質(zhì)量問(wèn)題主要分為兩類:一類是畫質(zhì)類問(wèn)題,另外一類是功能性不足。其中,畫質(zhì)類問(wèn)題大多由于線路不良引起,通過(guò)更換電路板等方式即可恢復(fù)。氣泡類故障是最常見的功能性問(wèn)題,此類故障產(chǎn)生原因相對(duì)復(fù)雜,通常無(wú)法進(jìn)行維修[5]。因此對(duì)LCD液晶顯示屏的氣泡分類進(jìn)行研究,提高液晶屏氣泡分類識(shí)別的正確率,對(duì)于及時(shí)發(fā)現(xiàn)液晶屏的質(zhì)量問(wèn)題具有重要意義。
液晶氣泡邊緣通常為封閉曲線,而氣泡背景大多是點(diǎn)線輪廓,封閉曲線的面積采用格林公式進(jìn)行計(jì)算,在此基礎(chǔ)上對(duì)各輪廓面積進(jìn)行比較,找出其中的最小值,即可完成氣泡標(biāo)注。
格林公式的基本原理如下:令光滑曲線閉合區(qū)域上的連續(xù)函數(shù)為P(x,y)和Q(x,y),它們都具有連續(xù)一階偏導(dǎo),則:
(1)
式中:D為曲線閉區(qū)域;L為D的邊界。
令P=-y,Q=x,則可以得到
(2)
由此可以計(jì)算出D的面積S為:
(3)
由式(3)可知,如果輪廓為直線或者是零,則S=0;對(duì)于氣泡而言,其輪廓為封閉曲線,因此S>0。
本文采用Python軟件對(duì)曲線的輪廓面積進(jìn)行計(jì)算,為了避免在計(jì)算過(guò)程中受到噪聲點(diǎn)的干擾,將篩選閾值設(shè)置為6像素。
采用外接矩形框?qū)⒑Y選結(jié)果中的氣泡位置框出,這樣可以將屏幕中82%的氣泡標(biāo)注出來(lái),其余氣泡則需要進(jìn)行人工標(biāo)注。
氣泡被標(biāo)注后,其標(biāo)注文檔中就會(huì)有該氣泡的相關(guān)邊框信息,具體如圖1所示。采用Python軟件進(jìn)行批量剪裁,其中,可以直接提取的氣泡圖像為正樣本,隨機(jī)剪裁的非氣泡部分為負(fù)樣本。
圖1 標(biāo)注文檔部分信息截圖
支持向量機(jī)(Support Vector Machines,SVM)是由Vapnik等人基于統(tǒng)計(jì)學(xué)習(xí)理論提出的一種機(jī)器學(xué)習(xí)方法,SVM處理非線性分類、回歸問(wèn)題的原則是將低維空間的復(fù)雜數(shù)據(jù)通過(guò)核函數(shù)映射到高維空間,在高維空間中構(gòu)造最優(yōu)超平面進(jìn)行分類、回歸,從而使問(wèn)題得到簡(jiǎn)化,降低計(jì)算的復(fù)雜程度[6]。
SVM最優(yōu)超平面構(gòu)造示意圖如圖2所示,令H為最優(yōu)超平面, H可將圖中的數(shù)據(jù)分為兩類,此時(shí)可以得到另外兩個(gè)超平面H1和H2,它們均與最優(yōu)超平面H平行,H1、H2上的數(shù)據(jù)到H的距離最近,這些數(shù)據(jù)就是所謂的支持向量。
圖2 SVM最優(yōu)超平面構(gòu)造示意圖
支持向量機(jī)具有如下優(yōu)點(diǎn):
1) 對(duì)樣本容量的要求較低,即使小樣本也能獲得較理想的計(jì)算效果;
2) 求解的思想是轉(zhuǎn)化為二次規(guī)劃問(wèn)題求解,理論上確保全局最優(yōu)解是存在的;
3) 計(jì)算結(jié)果只受支持向量的影響,降低了計(jì)算維度;
4) SVM的決策函數(shù)比較簡(jiǎn)單,簡(jiǎn)化了計(jì)算過(guò)程。
支持向量機(jī)分類原理如下[7]:令樣本集為{(x1,y1),…,(xi,yi)}(xi∈Rn,y∈{-1,1}),高維空間超平面的方程可表示為:
wT·x+b=0.
(4)
式中:w為權(quán)向量;b為偏置量。
為了使樣本集到超平面的距離最小,令判別函數(shù)f(x)=wT·x+b,且有xi∈Rn,|f(x)|≥1,則距離最小時(shí)有:
(5)
約束條件為:
y·(wT·x+b)≥1.
(6)
當(dāng)樣本集中元素滿足yi·(wT·x+b)=1,這些元素即為支持向量,其余元素與超平面之間距離>1,該距離為2/‖w‖。
為了計(jì)算w和b,引入拉格朗日函數(shù),則有:
(7)
式中:ai(ai>0)為拉格朗日系數(shù)。
對(duì)式(7)中的w和b求導(dǎo):
(8)
(9)
求導(dǎo)后可得:
(10)
將式(10)轉(zhuǎn)化為二次優(yōu)化問(wèn)題,可得:
(11)
求解式(11),得到下列線性分類判別函數(shù):
f(x)=sign(wT·x+b).
(12)
對(duì)于分類問(wèn)題,SVM的求解思路是采用非線性函數(shù)將樣本數(shù)據(jù)映射到高維空間,在高維空間建立分割超平面進(jìn)行分類,為了使函數(shù)的推廣能力和經(jīng)驗(yàn)風(fēng)險(xiǎn)之間得到平衡,可以引入非負(fù)的松弛變量ξi,此時(shí)相應(yīng)的約束條件變?yōu)?
s.t.y·(wT·φ(x)+b)+ξi≥1;ξi≥0 .
(13)
同時(shí)引入懲罰項(xiàng),則有:
(14)
式中:C為懲罰參數(shù),C>0。
則欲求解的問(wèn)題變?yōu)?
(15)
引入核函數(shù)k(xi,xj),即可得到SVM分類判別函數(shù):
(16)
常用核函數(shù)有多項(xiàng)式核函數(shù)、線性核函數(shù)和徑向基核函數(shù),為了提高SVM分類的準(zhǔn)確性,本文采用徑向基核函數(shù),其表達(dá)式為:
(17)
式中:σ為核參數(shù)。
SVM的回歸效果受懲罰因子C與核參數(shù)σ的影響很大,為了提高SVM擬合精度,需要對(duì)C和σ進(jìn)行尋優(yōu)。
量子粒子群算法(Quantum Particle Swarm Optimization,QPSO)是基于PSO算法提出的一種改進(jìn)算法,它認(rèn)為粒子群在尋優(yōu)過(guò)程中遵循量子力學(xué)[8]。在QPSO算法中,粒子能夠?qū)崿F(xiàn)整個(gè)可行解空間的搜索,且QPSO算法只有位置一個(gè)控制參數(shù),其優(yōu)化性能比PSO算法更好。QPSO算法的粒子采用薛定諤方程ψ(x,t)進(jìn)行描述,然后利用蒙特卡洛模擬得到的粒子位置,具體如下:
(18)
式中:u為隨機(jī)數(shù),u∈[0,1],其值服從正太分布,pid(t)、L的值可根據(jù)下列式子確定:
(19)
(20)
pid(t)=φ·pid(t)±(1-φ)·pgd(t).
(21)
(22)
式(19)~式(22)中:M為粒子個(gè)數(shù);D為維數(shù);φ為隨機(jī)數(shù);φ∈[0,1],其值服從正太分布;pid(t)為第i個(gè)粒子在第t次迭代時(shí)的最優(yōu)位置;pgd(t)為所有粒子在第t次迭代時(shí)的最優(yōu)位置,為有粒子在第t次迭代時(shí)最優(yōu)位置的平均值;β為收擴(kuò)系數(shù);m、n為收擴(kuò)系數(shù)參數(shù)。
綜合式(9)~式(12),得到QPSO算法粒子位置的更新方程為:
(23)
式中:當(dāng)β≤0.5時(shí),式(23)中的“±”取“-”,當(dāng)β>0.5時(shí),式(23)中的“±”取“+”。
相比PSO算法,QPSO算法既保留了PSO算法良好的優(yōu)化性能,又簡(jiǎn)化了粒子尋優(yōu)方式,操作更簡(jiǎn)便,且具有更強(qiáng)的全局收斂能力,目前在能源、交通、醫(yī)療等領(lǐng)域得到了廣泛應(yīng)用。
采用QPSO算法對(duì)SVM的懲罰系數(shù)C和核參數(shù)σ進(jìn)行優(yōu)化,對(duì)支持向量機(jī)進(jìn)行改進(jìn),建立基于改進(jìn)支持向量機(jī)的LCD液晶屏氣泡分類識(shí)別模型,建模流程如圖3所示,建模步驟如下:
圖3 模型流程圖
1) 劃分樣本數(shù)據(jù)并初始化,將樣本數(shù)據(jù)劃分為訓(xùn)練集和測(cè)試集,并初始化氣泡樣本數(shù)據(jù)。
2) 初始化SVM參數(shù),設(shè)置懲罰系數(shù)C和核參數(shù)σ的初值及搜索范圍,計(jì)算初始適應(yīng)度值。
3) 初始化粒子位置并對(duì)QPSO算法的相關(guān)參數(shù)進(jìn)行設(shè)置,主要空間維數(shù)、粒子數(shù)目、最大迭代次數(shù)和收擴(kuò)系數(shù)參數(shù)等。
4) 將C、σ作為粒子,利用公式(20)對(duì)所有粒子的平均最優(yōu)位置進(jìn)行計(jì)算。
5) 利用公式(21)執(zhí)行迭代,對(duì)粒子當(dāng)前適應(yīng)度值進(jìn)行計(jì)算,并與上一次的適應(yīng)度值比較,如果優(yōu)于,則進(jìn)行替換,否則保持不變。
6) 確定種群最優(yōu)適應(yīng)度值,并與上一次的種群最優(yōu)適應(yīng)度值比較,如果優(yōu)于,則進(jìn)行替換,否則保持不變。
7) 利用公式(23)更新所有粒子的位置。
8) 判斷迭代結(jié)束條件是否滿足,若滿足,則輸出懲罰系數(shù)C和核參數(shù)的最優(yōu)解,否則,返回步驟5)。
9) 將最優(yōu)解賦給SVM,對(duì)測(cè)試集中液晶氣泡進(jìn)行分類。
采用Python軟件進(jìn)行批量剪裁,構(gòu)建仿真分析中所用的樣本數(shù)據(jù),將樣本數(shù)據(jù)劃分為訓(xùn)練集和測(cè)試集,它們分別用于模型的訓(xùn)練和檢驗(yàn)分類效果,訓(xùn)練集和測(cè)試集的樣本組成情況如表1所示。
表1 訓(xùn)練集和測(cè)試集的樣本組成情況
采用下列四種常用指標(biāo)對(duì)分類器的分類效果進(jìn)行評(píng)價(jià),它們分別為:
1) Accuracy:表示分類結(jié)果的總體正確率,主要用于衡量分類器的總體分類效果。
2) Recall:表示查全率,分類正確的氣泡數(shù)量占總氣泡數(shù)量的比重。
3) Precision:表示查準(zhǔn)率,主要用于評(píng)價(jià)分類結(jié)果正確的樣本占總樣本的比重。
4) F1:表示查全率和查準(zhǔn)率的平均值。
采用訓(xùn)練集數(shù)據(jù)進(jìn)行訓(xùn)練,利用QPSO算法對(duì)SVM的懲罰系數(shù)C和核參數(shù)σ進(jìn)行尋優(yōu),尋優(yōu)結(jié)果為C=37.24和σ=6.35,將最優(yōu)解賦值給SVM,利用改進(jìn)支持向量機(jī)分類器對(duì)測(cè)試集樣本進(jìn)行分類,表2給出了改進(jìn)支持向量機(jī)的分類結(jié)果指標(biāo)。為了對(duì)比分析,采用支持向量機(jī)和隨機(jī)森林兩種常用的二分類方法對(duì)測(cè)試集樣本進(jìn)行分類,分類結(jié)果的各項(xiàng)指標(biāo)也如表2所示。
表2 三種分類器分類結(jié)果的各項(xiàng)指標(biāo)
對(duì)比表2中的三種分類器的各項(xiàng)指標(biāo)數(shù)據(jù)可以看出,本文所提改進(jìn)支持向量機(jī)分類器的分類效果更好,驗(yàn)證了本文所提LCD液晶屏氣泡分類識(shí)別方法的正確性和優(yōu)越性。
氣泡分類完成后,利用滑動(dòng)窗口法對(duì)LCD液晶屏幕上的氣泡進(jìn)行檢測(cè),提取其中的灰色部分。選取200個(gè)LCD液晶屏幕進(jìn)行測(cè)試,屏幕中共有氣泡250個(gè),檢測(cè)結(jié)果及檢出率計(jì)算結(jié)果如表3所示。
表3 檢測(cè)結(jié)果及檢出率計(jì)算結(jié)果
從檢測(cè)結(jié)果上看,本文提出的基于改進(jìn)支持向量機(jī)的LCD液晶氣泡分類方法具有良好的識(shí)別效果,對(duì)于邊緣受遮擋和對(duì)比度較低的屏幕,都能夠被正確識(shí)別出其中的氣泡。
經(jīng)檢查發(fā)現(xiàn),未檢測(cè)出的氣泡主要有兩種:一種是氣泡形狀不完整,此類氣泡通常由很多小氣泡聚集而成,其邊緣信息相對(duì)特殊,模型無(wú)法正確識(shí)別;另一種是氣泡體積過(guò)小,通常都在2 mm以下,此類氣泡的邊緣信息無(wú)法正確提取。
本文采用量子粒子群算法對(duì)支持向量機(jī)的懲罰參數(shù)和核函數(shù)進(jìn)行優(yōu)化,建立基于QPSO-SVM的LCD液晶屏氣泡分類識(shí)別模型,采用LCD液晶氣泡數(shù)據(jù)進(jìn)行算例分析,并與其他二分類方法的分類效果進(jìn)行對(duì)比,結(jié)果表明,QPSO-SVM分類器的分類準(zhǔn)確率高于其他方法,驗(yàn)證本文所提LCD液晶屏氣泡分類識(shí)別方法的正確性和實(shí)用性。