(上海工程技術(shù)大學(xué) 電子電氣工程學(xué)院,上海 201620)
在電氣柜的制造過程中,電氣柜內(nèi)部電路接線的正確與否直接關(guān)系到設(shè)備是否能夠正常運行,一旦電氣接線出現(xiàn)問題,將會引起設(shè)備故障,進而影響整個系統(tǒng)的運行。因此,電氣接線的檢測尤為重要,怎樣快速準(zhǔn)確的檢測出電氣柜接線的正確與否,一直是檢測人員追求的目標(biāo)。
目前,常用的電氣接線檢測方法有萬用表測量法和人工識圖檢測法。但是,萬用表測量法效率低,工作量大;采用人工識圖檢測,對檢測人員要求較高且自動化程度低,準(zhǔn)確度低。采用機器識別[1]的方法檢測電氣接線是否正確,能夠有效克服在電氣柜的大批量制造過程中人工視覺檢測的不足,提高檢測效率和準(zhǔn)確度,從而大大提高生產(chǎn)效率和生產(chǎn)自動化程度。
針對常規(guī)電氣柜檢測方法較為復(fù)雜,且檢測效率低的問題,用機器視覺代替人工視覺,采用機器識別的方法檢測接線情況,建立數(shù)據(jù)庫,對電氣接線進行自動檢測,檢測原理如圖1所示。
圖1 電氣接線檢測原理圖
拍照前在電氣柜上設(shè)立三個大小相同的定位點作為基準(zhǔn)位置,圖像采集后,根據(jù)定位點的位置建立直角坐標(biāo)系,如圖2所示。點O、A、B為定位點,假設(shè)點O為坐標(biāo)原點,點O指向點A的方向為x軸正方向,指向點B的方向為y軸正方向。線段OA、OB的實際長度已知,分別記為為li、lj,這樣所有接線點的位置坐標(biāo)即是固定的。在坐標(biāo)軸上按實際尺寸標(biāo)上刻度,建立直角坐標(biāo)系。以坐標(biāo)軸上的刻度為標(biāo)準(zhǔn),依次分別檢測出各導(dǎo)線接線點與橫坐標(biāo)、縱坐標(biāo)的距離,即可獲取導(dǎo)線接線位置信息。記點P為檢測點,從點P出發(fā)向兩坐標(biāo)軸作垂線,交點分別為點M、點N。假設(shè)線段OA、OB在圖像中的長度分別為xl、yl,線段OM、ON在圖像中的長度分別為xp、yp,則點P到坐標(biāo)軸的實際距離x、y分別為:
圖2 位置檢測
位置信息獲取后,根據(jù)檢測點所在導(dǎo)線圖像信息識別線號。對采集到的待測電氣柜接線圖進行圖像預(yù)處理,提取其邊緣信息用于導(dǎo)線編號的檢測,分割字符串后采用模板法識別導(dǎo)線編號。
接線表存入MySQL數(shù)據(jù)庫中形成完整的數(shù)據(jù)庫作為模板,導(dǎo)線的編號信息與位置信息將作為檢測結(jié)果與模板中相應(yīng)的數(shù)據(jù)進行對比,并輸出結(jié)果信息。若檢測結(jié)果與數(shù)據(jù)庫中數(shù)據(jù)全部相同或在誤差允許范圍內(nèi),則說明接線正確,將結(jié)果返回給電氣接線檢測結(jié)果輸出單元;若出現(xiàn)差異且在誤差允許范圍外,則說明接線有誤,并將有誤的導(dǎo)線編號輸出。
要獲取導(dǎo)線的編號信息,需提取圖像的邊緣輪廓。為提高檢測精度,本文針對Canny算子[2]在濾波去噪與閾值選取的不足進行改進,采用自適應(yīng)平滑濾波[3]與形態(tài)學(xué)閉運算[4]相結(jié)合的方式代替高斯濾波,采用最大類間方差法(Otsu)[5]自適應(yīng)選取閾值。
1)濾波改進
單純的平滑濾波去噪時易丟失部分原圖細節(jié),使圖像模糊。采用自適應(yīng)平滑濾波,可在去噪的同時增加細節(jié)部分,提高圖像增強效果。設(shè)原圖像為f(i,j),則第k次迭代后梯度分量為:
濾波器的模板系數(shù)為:
對f(k)(i,j)進行加權(quán)平均:
自適應(yīng)平滑濾波處理后,圖像的邊緣不夠平滑,且分布著一些由錯判造成的小孔,對圖像進行閉運算處理,一方面可以在物體面積變化較小的范圍內(nèi)平滑其邊緣,另一方面可以消除小顆粒噪聲,連接斷裂的邊緣線。這種在圖像自適應(yīng)平滑濾波后進行閉運算的濾波方式,能夠有效去除噪聲,銳化邊緣輪廓,平滑區(qū)域邊緣。
2)自適應(yīng)閾值
傳統(tǒng)Canny算子閾值需人工設(shè)定,高閾值過高將造成邊緣信息缺失,過低則易產(chǎn)生偽邊緣,低閾值設(shè)置不合理會對邊緣連續(xù)性造成嚴(yán)重影響,適應(yīng)性差,效率較低。采用Otsu法自適應(yīng)選取閾值,根據(jù)圖像的灰度特性,將圖像像素分為前景與背景兩部分,使類間方差最大的閾值,即為最佳閾值[5,6]。
若大小為M×N像素的圖像含有L個不同的灰度級,用{0,1,2,…,L-1}表示,灰度級為i的像素數(shù)為ni,則:
灰度為i的概率為:
選取閾值k(0<k<L-1),圖像分為C1={0,1,…,K}、C2={k+1,k+2,…,L-1}、兩部分,則像素被分類到C1和C2的概率分別為:
分配到C1和C2的像素平均灰度值為:
k的累加均值:
全局均值為:
當(dāng)方差最大時,記最佳閾值k=k*,即:
將Otsu法獲得的最佳閾值k*作為Canny算子的高閾值,由Th=2Tl的準(zhǔn)則可得到低閾值,這樣就自適應(yīng)選取了Canny算子的高、低閾值[7]。
改進Canny算子后檢測圖像邊緣,如圖3所示。
圖3 邊緣檢測
導(dǎo)線的編號較多且排列擁擠,對原圖像進行預(yù)處理后,得到的待測字符邊緣輪廓依然存在輕微粘連現(xiàn)象。圖像邊緣檢測后應(yīng)用腐蝕運算,可以細化圖像,不僅能夠有效消除待測字符之間的粘連以及小顆粒噪聲的影響,而且可以分開距離較近的字符。
導(dǎo)線編號為一串字符,要完成字符識別,需先進行字符分割,將圖像分割成一系列單個字符圖像,本文采用投影法分割字符。先對圖像自上而下進行逐行掃描,標(biāo)志出字符的大致高度范圍,然后在高度范圍內(nèi)自左至右進行逐列掃描,標(biāo)志出字符的大致寬度范圍。依次判定每個字符的范圍,分割結(jié)果如圖4所示。
圖4 字符分割
本文采用模板匹配法[8]識別字符,由于導(dǎo)線編號字符串較為簡單,通常僅由若干個英文字符與數(shù)字組成,因此能夠建立完整的數(shù)據(jù)庫作為模板。字符圖像歸一化后與字符模板進行比對,相似度最高的即為匹配結(jié)果。
常用的電氣設(shè)計軟件為AutoCAD和EPLAN,相較于AutoCAD,使用EPLAN軟件設(shè)計線路準(zhǔn)確度高,工程耗時短,本文使用EPLAN設(shè)計電氣原理圖。布線完成后,在標(biāo)簽中設(shè)置導(dǎo)出模版,形成接線表,存入MySQL數(shù)據(jù)庫[9]中,表中包括各導(dǎo)線的編號和位置坐標(biāo),用以與檢測結(jié)果進行對比。
將通過機器識別檢測到的導(dǎo)線編號與位置信息與數(shù)據(jù)庫中的對應(yīng)信息一一對比,即可自動判別電氣接線的正確與否。若檢測數(shù)據(jù)與庫中數(shù)據(jù)全部對應(yīng)或在誤差允許范圍內(nèi),則接線正確;否則存在問題,輸出有誤導(dǎo)線編號。部分檢測結(jié)果如表1所示。
表1 電氣接線檢測
誤差設(shè)定為0.3cm,由表1中的檢測結(jié)果可以看出,在位置坐標(biāo)誤差允許范圍內(nèi),實驗所得位置數(shù)據(jù)及其對應(yīng)的導(dǎo)線編號均與數(shù)據(jù)庫中的模板信息相符,本文所述方法能夠準(zhǔn)確地檢測出電氣柜接線是否正確,有效提高電氣接線檢測效率。
本文提出了一種結(jié)合圖像處理與數(shù)據(jù)庫建立的電氣接線自動檢測方法。通過改進Canny算子,有效提高了圖像邊緣檢測的精度。獲取導(dǎo)線的編號與位置信息后,與模板數(shù)據(jù)對比,輸出檢測結(jié)果。本文所述檢測方法能夠有效提高檢測準(zhǔn)確性與效率,可應(yīng)用于電氣柜的生產(chǎn)制造與電氣接線檢測領(lǐng)域。