?

基于改進聯合濾波與CNN模型的儀表識別算法

2023-11-16 08:18李曉峰程遠方李文豪
制造業自動化 2023年10期
關鍵詞:同態濾波游標卡尺字符

孫 輝,李曉峰,程遠方,姜 飛,李文豪

(國營洛陽丹城無線電廠,洛陽 471000)

0 引言

如今數字式儀器儀表廣泛應用于各個行業,由于歷史原因、成本控制考慮、設計要求等因素,仍有相當數量的儀器沒有提供與計算機的數據通訊接口,不具備程控功能,在工藝工卡錄入時,還需手動記錄儀器儀表測試數據。人工錄入儀表數據耗費大量人力和時間,記錄的測試結果容易受到更改。相比之下,更方便的是通過工業相機實時監控采集儀器儀表表盤圖像,然后使用字符識別的機器視覺技術,對儀器儀表表盤圖像中的字符數據進行識別[1-2]。

數字儀器儀表中的數據通常包含多個字符,傳統的方法是先通過機器視覺定位算法,尋找儀表特征,來確定字符顯示區域的位置,然后將字符區域分割成單個字符進行識別。整個過程復雜,識別結果容易受到預處理過程中定位和分割結果的影響[3-4]。如果我們實現了數字儀器儀表圖像的像素級預測,并且預測結果同時包含了位置信息和類別信息,對識別的示數區域進行預處理,就可以直接將兩者合成得到字符結果?;诰矸e神經網絡的目標檢測算法被廣泛應用于各類型工業應用場合[5-8]。若目標定位后需對目標信息進行內容的識別,則圖像預處理階段及其重要,處理算法為后續字符成功分割和識別提供了重要的基礎。經過工業相機在復雜環境中獲取到的圖像會存留各種各樣的噪聲,均值濾波雖然能夠很好的解決噪聲點的保留問題,但是其對原有的信號點的灰度值進行了改變,尤其是針對前景與背景交界的邊緣處,細節保留方面并不完備。文獻[9-10]分別提出利用灰度檢測器來檢測圖像中的噪聲程度,設計了相關模糊加權的中值濾波器或濾波選擇器來進行處理,有效的去除了椒鹽噪聲,保護了大部分圖像細節。諧波均值濾波器和非局部均值濾波器(NLM)對高斯噪聲和白噪聲處理有著顯著作用,但是參數取值時,則往往需要人工經驗,且NLM濾波器[11-12]對非局部主要體現在利用整張圖的像素點進行濾波,但是該濾波算法濾波速度較慢,無法應用于實時圖像檢測與處理。然而,儀器儀表所處各類工業應用場景較為復雜,目前僅僅針對光照不均勻和低對比度圖像的增強算法層出不窮,被不斷發展來應用于增強各種類型的圖像,以方便后期對字符的分割與提取。文獻[13]設計同態濾波器來增強圖像對光照變化的適應性,算法能夠解決不同光照條件下,存在指針陰影問題,能夠較好的提取指針式儀表的指針區域。文獻[14]通過同態濾波對圖像進行銳化,以提高圖像的清晰度,從而突出了圖像的邊緣細節特征。文獻[15]提出了一種結合對比度約束的自適應直方圖形式來增強圖像對比度,取得了較好的效果。但是上述同態濾波器所需調節參數較多,且往往參數調節需要大量的人工經驗,不利于算法的工業多場景下的快速部署。

為了解決上述問題,本文提出了一種基于改進的聯合濾波與CNN檢測模型算法,用于對復雜場景下的數字式工業儀表進行快速識別與判定。通過CNN目標檢測模型快速準確定位儀表表盤位置,然后通過聯合濾波算法對多場景約束下的表盤圖像進行自適應濾波操作,能夠快速處理相關圖像,大幅度的減少運算時間,較好的保留了圖像受關注的細節成份,對于復雜場景下的算法工業部署具備較高的實用性。

1 基本原理

1.1 數顯區域識別與定位

常見的CNN主要分為顯示層和隱藏層兩部分,顯示層包括輸入層和輸出層,隱藏層包括卷積層和池化層。在每一層中,一個二維平面由多個神經元組成,然后由這些平面形成一個層結構[16]。圖1是常見的CNN結構圖。

圖1 CNN結構

其中,C1和C3為卷積層,卷積層的作用是通過在之前的特征圖上滑動卷積核來提取卷積核對應的特征。將前一層的輸出作為輸入,根據卷積層的卷積核數進行卷積運算。卷積層中每個神經元的輸入連接到前一層的局部感受野,局部感受野與卷積核進行卷積[17]。然后,經過一個激活函數(通常是Sigmoid函數),提取局部特征,如式(1)所示。

其中S(x)為Sigmoid函數,含義如式2所示。θ和x為卷積核中的參數值,b為偏置,i和j為卷積核的大小,k為上層特征圖的數量。使用激活函數的原因是它是一個非線性函數,它的輸出對輸入是非線性的。如果沒有激活函數,多個卷積層和單個卷積層之間不會有數學差異。卷積層的本質是從一個大尺寸的特征圖中選擇一小塊作為樣本,然后通過訓練從這個小樣本中學習到很多不同的特征。然后將這些特征作為檢測器應用到圖像的其他部分進行卷積,從而從特征圖不同位置的局部區域中得到許多不同特征的激活值。

層S2和S4是池化層??梢钥闯墒且粋€模糊濾波器,起到二次特征提取的作用,也可以降低特征維數。池化層將在不同位置通過卷積層的特征進行聚合,計算特征圖某個區域內某個特定特征的平均值。這些匯總統計特征不僅具有較低的維度,而且還提升了檢測效果。這種聚合的操作稱為池化,池化函數通常分為平均池化和最大池化。對于池化層,如果有N個輸入特征圖,則有N個輸出特征圖,但每個輸出特征圖都被池化函數減少。池化操作是選擇上層的輸出特征圖不與區域結合,平均池化計算區域的平均值作為輸出,最大池化選擇區域的最大值作為輸出。

本文中所提出的基于改進的聯合濾波與CNN檢測模型的數字式儀表識別算法的工作流程分為兩個階段,一個是游標卡尺數字顯示區域的位置,另一個是數字字符識別。在識別游標卡尺讀數之前,需要對游標卡尺儀器的數顯區域進行定位,這在很大程度上影響了后續字符識別的準確性。如圖2所示,我們隨機收集了多個不同場景下的游標卡尺圖像。從圖2可以看出,游標卡尺圖像存在傾斜、位置、焦距、光照差等現象,增加了字符識別的難度。圖2(a)的背景不同。圖2(c)的位置不同,焦距較遠。

圖2 不同場景下的游標卡尺圖像

由于游標卡尺的背景環境非常復雜,需要排除儀器的背景干擾,才能獲得較高的識別精度和穩定性。為減少數據樣本采集工作量,同時提升模型的泛化能力,本文對采用數據增強技術對擴充樣本類別,通過旋轉、位移、鏡像等操作來擴充數據樣本量。本文采用CNN模型來提取游標卡尺數字顯示區域的特征進行定位。首先將游標卡尺的數顯區域作為候選區域,隨機選取10000幅圖像樣本作為數據增強的樣本輸入,將數據增強后的游標卡尺樣本放入CNN模型進行訓練,使得計算機自己學習候選區域的特征。訓練完成后,得到一個結構化的CNN模型。如圖3所示,黃色框為多種游標卡尺樣品的候選區域標定圖。為驗證模型的定位效果,隨機選取多張游標卡尺圖像樣本進行實踐實驗,定位正確率均在99%以上,因此,構建的模型得到驗證。

圖3 游標卡尺候選區域標記效果圖

1.2 預處理與傾斜校正

在游標卡尺圖像采集過程中,由于操作過程的隨機性,難免會導致圖像采集傾斜。定位傾斜圖像的候選區域后,圖像的數字顯示部分傾斜,字符傾斜,如圖4所示。在這種情況下,后續字符分割得到的字符噪聲會明顯增加,降低字符識別的正確率,傾斜過大的圖像甚至會出現無法進行字符分割的情況。因此,有必要對傾斜的游標卡尺圖像進行校正[18]。對于游標卡尺的水平傾角,主要有兩種修正方法,Hough法[19]和Radon法。與Hough法相比,Radon法計算簡單,依賴性小。本文選用Radon法校正游標卡尺圖像的傾斜,圖4(a)為逆時針操作得到的圖像,圖4(b)為順時針操作得到的圖像。

圖4 游標卡尺傾斜校正示意圖

圖5 本文所提改進型的中值濾波算法流程圖

通過工業相機拍攝到的高質量圖像,是后續開展字符得以準確識別的前提,由于拍照過程會受到周邊環境、雜物、光照等影響,因此對拍攝到的數字儀表表盤信息,開展相關的預處理工作尤為必要,一次位分割后的圖像可以看到,由于環境光源和數字式儀表表盤自身反光或光照不均勻等影響下,導致圖像中的數字字符顯示部分與背景液晶表盤對比度不高,且受一定的噪聲干擾,不利于后期的字符的提取,因此需要采用圖像增強技術來改善現有的數顯部分對比度。

1.3 預處理與傾斜校正

本文設計一種聯合濾波方式,來的對分割獲得含字符的表盤信息進行預處理,選取改進后的自適應中值濾波算法來對分割后的圖像進行先期濾波操作,用來去除噪聲干擾,然后再對濾波后的圖像進行同態濾波操作,使得一次分割圖像具備字符與液晶背景具備明顯分離條件。

通過工業高清相機,獲取得圖片分辨率較高,區域分割定位后,儀表顯示區域所占總畫面較小,因此受環境噪點影響較大,針對定位分割后的儀表區域圖像,采取了濾波操作,現階段濾波分為均值濾波、中值濾波和NLM濾波,本文設計一種急速中值濾波器用于對一次定位后帶有噪聲分布的儀表圖像進行快速濾波。根據檢測圖像中噪聲含量,來自主切換卷積核的尺寸,從而達到急速濾波的效果。本算法中卷積核的尺寸分為3×3、5×5和7×7三種大小,通過依次檢測圖像中存在的噪聲強度,來逐步切換不同的卷積核,以期達到混合濾波的效果。其中,噪聲強度檢測公式如式(3)所示:

其中,像素灰度Gray(i,j)的取值范圍為[λ,255-λ],λ為灰度偏差,當Noise(i,j)為1時,代表當前像素顆粒為噪聲。

具體的濾波算法流程如下:

步驟一:對輸入含噪聲圖像時,采用3x3卷積核進行濾波操作,當濾波完成后,判別當前濾波后的圖像是否存在疑似噪聲點,若不存在,則噪聲濾波結束;若存在,則繼續下一步;

步驟二:對步驟一完成濾波后的圖像,采用5x5卷積核進行濾波操作,當濾波完成后,再次判定濾波后的圖像是否存在疑似噪聲點,若不存在,則噪聲濾波結束;若存在,則繼續下一步;

步驟三:對第二步驟完成濾波后的圖像,采用7x7卷積核進行濾波操作,濾波完成后檢測當前圖像是否存在疑似噪聲點,若不存在,則完成濾波;若仍然存在疑似噪聲點,則判定是否圖像有大面積二值背景,若存在,則停止濾波,輸出當前像素圖像;若判定非二值背景,則繼續采用7×7卷積核進行濾波操作,最終輸出濾波后的像素圖像。

圖6表示幾種濾波算法處理50%密度椒鹽噪聲的對比圖,這里對比了高斯濾波器、算數均值濾波器、逆諧波濾波器、自適應中值濾波、NLM濾波。從圖中可以看出,在加入50%椒鹽噪聲密度時,本文所提算法能夠較好的濾掉噪聲,且數顯部分對比度較為明顯。

圖6 濾波算法對比圖

工業部署情況環境較為復雜,針對光照不均勻情況,本文引入同態濾波器來對光照不均勻圖像,進行進一步濾波,同態濾波屬于圖像頻域處理方法中的一種,通過結合圖像頻率過濾和灰度變換來處理相關圖像,具備調節圖像灰度范圍,突出圖像細節,增強對比度,去除照明不均勻的作用,可以用提高圖像對比度的增強方法。它將圖像f(x,y)看作是由入射分量i(x,y)和反射分量r(x,y)組合而成[20],具體如式(4)所示:

同態濾波是一種依靠圖像的照度—反射模型來改善圖像質量的頻域方法,對式(4)兩端求對數可得:

對式(5)兩端求取傅里葉變換,可以得到:

選取頻域函數H(u,v)對F(u,v)進行濾波處理,可以得到:

其中,H(u,v)為同態濾波的傳遞函數,濾波后對式(7)做傅里葉反變換到空間域內,可得:

對式(8)兩邊同取指數,可得:

輸出圖像g(x,y)為經過同態濾波后的最終增強的圖像,具體的同態濾波的流程如圖7所示。

圖7 同態濾波流程圖

其中,f(x,y)表示輸入圖像,1n表示以e為底的對數變換,DFT為傅里葉變換,H(u,v)表示濾波處理,DFT-1表示傅里葉逆變換,exp表示指數變換,g(x,y)表示輸出圖像。因此,可以通過圖像照射分量和反射分量的特征來選取合適的同態濾波函數H(x,y),從而達到在減弱圖像低頻信息的同時,增強圖像高頻信息的分量的目標。

工業場景中游標卡尺的使用,受光照影響較為普遍,為了達到圖像增強的效果,以期方便后期對字符的順利分割,選擇合適的同態濾波器尤為重要[21]。常用的同態濾波器有高斯型同態濾波器、Butterworth型同態濾波器、指數型同態濾波器等。由于傳統的同態濾波器在調參時,需要花費大量的時間,參數量較多,如式(10)所示:

其中,D(u,v)為頻率(u,v)到(u0,v0)的距離,;D0為截止頻率;n為濾波器階數;rH為高頻增益系數;rL為低頻增益系數;c為銳化系數,為了增強對比度,選取n為2。由于指數型的同態濾波器可調參數較多,且對于不同的圖像,需要調節的參數也不同,尤其是針對不同情況來控制高頻或低頻增益以及截止頻率,就需要依賴大量的經驗才能調節好相關參數。為此,本文在指數型同態濾波器上進行改進,在保持較好的濾波效果情況下,引入高低頻增益參數γ,提出了改進型的單參數同態濾波器,如式(11)所示:

式中:γ為可調參數,相比其他各類型同態濾波器,可調參數個數從原始的各類型同態濾波器的≥3個,減少至1個,可以方便的調節相關參數,可使濾波器達到最佳效果。其三維結構與文獻[22]中采用的同態濾波器相對比,如圖8所示。如圖8(b)為文獻[22]所提同態濾波器結構圖,在壓縮圖像動態范圍容易出現過壓縮情況,而本文所提改進的同態濾波算法由中心頻率到高頻的過渡較為平緩,斜率較小,從而導致濾波更為均勻,如圖8(a)所示。

圖8 改進后同態濾波三維結構對比

本文所提改進型同態濾波與高斯同態濾波器、Butterworth濾波器、文獻[22]所提的同態濾波器和指數濾波器,對同一低光照度圖像進行處理,處理結果進行比較,如圖9所示。

圖9 圖像增強算法對比

從圖9可以看出,圖9(a)為原始定位分割出來的儀表顯示區域圖像,基于高斯同態濾波器增強后的字符區域,如圖9(b)所示,可以看出相較原圖可以較好的將前景與背景分離出來,但是并不能夠將字符的邊緣細節呈現出來,如圖9(b)、圖9(e)所示,Butterworth同態濾波與文獻[22]所提同態濾波均不能夠對字符和背景進行較為明顯的提取,但是指數同態濾波后的圖像可以較好的將前景和背景明顯區分出來,但是前景字符細節比較模糊,出現聯通情況,并不能夠較好的體現細節。如圖9(f)所示,本文所提算法可以很好的增強了圖像邊緣與細節,與其他算法相比較而言,對所關注圖像邊緣紋理細節得到了較好的重構。

1.4 字符提取與識別

二值圖像只包含黑白色,灰度值只有0和1,進一步縮小了圖像處理數據。候選圖像二值化的目的是將圖像分成兩部分:目標和背景。目標是我們需要的信息,即字符部分,背景是不需要的部分,包括游標卡尺字符的背景信息。二值化過程大致分為兩個步驟,首先確定一個合理的閾值,然后將每個像素的灰度值與我們設置的值進行比較。如果灰度值小于閾值,則將像素轉換為黑色,否則轉換為白色,如圖10(b)所示。二值化處理的重點是如何確定閾值,閾值過小可能會得到過多的干擾信息,給后續的字符處理帶來困難。如果閾值過大,會破壞部分目標信息,導致缺少有效字符信息,無法進行字符識別。這里我們選取灰度圖像自動閾值分割法,通過統計學的方法來選取一個閾值,使得這個閾值可以將前景色和背景色盡可能的分開[23]。這里使用的判據為最大類間方差判據,如式(12)所示。

其中:M為灰度平均值;MA為前景色平均值;MB為背景色平均值;前景色像素數占總像素數的比例記作PA;背景色像素數占總像素數的比例記做PB,最終目標是確定最佳閾值,以確保ICV最大。

此外,圖像樣本還需要進行邊緣檢測處理,如圖10(c)所示。邊緣通常是指像素與周圍像素之間明顯的階躍變換,邊緣包含豐富的信息,如方向、階躍屬性和形狀。該方法的目的是檢測圖像中亮度變化明顯的突出,這些點反映了圖像的局部特征。圖像數據中還存在不必要或冗余的干擾信息,會嚴重影響圖像質量,因此必須進行腐蝕噪聲處理,如圖10(d)所示。其基本原理是用一定區域內點的平均值代替圖像中某個點的值。主要作用是使周圍像素灰度值差異較大的像素點變得接近周圍像素點,從而消除孤立的噪聲點。如圖10(e)所示,閉合操作可以連接圖像的近區域,放大不連續的噪聲,結構元素不同,放大程度也不同。封閉操作使圖像的像素點粘附在一起,可以填充圖像的封閉區域,彌補微小裂縫。為了更徹底地消除圖像中的噪聲,我們進行了二次腐蝕噪聲處理,如圖10(f)所示。經過一系列的圖像后處理,我們得到了一個非常清晰的游標卡尺字符,為我們進一步的圖像字符定位提供了依據。

本文的字符識別過程采用基于多淺層網絡算法對單個字符進行識別,通過引入循環檢測方式,快速檢測出相關字符,與顯示區域定位的訓練方式類似,在開展的圖像字符數據識別之前,必須增加訓練階段。在該算法中,應在訓練過程中選擇合適的單個字符訓練樣本。樣本輸入網絡后,計算各層神經元的輸出和理想輸出,然后進行反饋,網絡模型根據差異調整修改網絡的權重和閾值,重新計算輸出與理想輸出的差異。以此類推,經過大量學習,不斷修改權重和閾值,直到確定網絡權重和閾值,最終形成分類器。

本文所提數字式儀表識別方案的總體算法結構圖如圖11所示。

圖11 總體算法結構圖

2 實驗結果與分析

2.1 硬件及軟件環境

實驗以MATLAB2017b為仿真平臺,開發相關識別模型和人機交互界面,實驗所使用計算機操作系統為Windows7,英特爾酷睿I7處理器,NVIDA GeForce GTX 1050Ti顯卡,8G內存,攝像頭選取手動可調變焦距CMOS工業攝像頭,最大分變率為2448×3264。

2.2 實驗結果與分析

為了證明本文所提的算法的多場景下的具備較強的泛化能力,和魯棒性,對比傳統識別算法,本文開展了一系列實驗與分析。

本文中將攝像頭的拍攝區域劃分為四個象限,如圖12所示,在正常光照條件下,分別對所處四個象限空間的游標卡尺進行識別,共采集1800組數字式游標卡尺圖像,分別用于模板匹配法[24]、穿線法[25]和本文所采用的方法進行了評估比較。將參與評估算法的預處理、訓練時間、推理與識別時間和識別正確率作為統計指標進行評判,本文所提算法與傳統算法的實驗結果如表1所示。

表1 識別效果統計與分析

圖12 工業相機拍攝區域坐標

雖然,從表1看出模板匹配法和穿線法在平均推理+識別時間,均少于本文算法,然而從識別正確率來看,文本所提算法遠遠優于這兩類算法。在工業部署場景中,儀表檢測的正確率往往作為一個重要指標來衡量算法適配場景部署的適應度。

為了進一步說明所提算法具備較強的泛化性能,又將游標卡尺所處環境設計為高光照度、低光照度和正常光照度,共計采集圖片測試集樣本2000張,如圖13所示。應用MATLAB GUI開發相關人機交互軟件,軟件平臺的操作界面如圖14所示,能夠直觀的顯示讀數結果,大大提高了實驗效率。通過本文算法對游標卡尺進行識別,在四個象限內分別進行展開三類光照度的實驗,具體結果如圖15所示,對實驗數據進行統計分析如表2所示。

表2 多場景測試實驗結果分析

圖13 多場景測試樣本選取示例

圖14 智能識別系統人機交互界面

圖15 光照樣本識別正確率統計

如圖14所示,我們整合了游標卡尺圖像候選區域的定位、后處理、二次定位和識別,并建立了人機交互界面。通過對6000張游標卡尺圖像的測試,經統計第三象限在強光照條件下識別率相對較低,這是由于本實驗所采取的光源為固定照射光源,更加模擬真實工業場景內現場部署時的光照條件,攝像頭固定位置不變,因此會導致在第三象限內出現大量的反光照射情況,且對游標卡尺的字符影響較大,甚至出現反光字符遮蓋情況,導致了字符缺失,從而使得識別率較低,但從整體實驗結果統計來看,平均識別準確率在95.02%以上。

3 結語

由于數字式儀表字符的識別率受到光照對被檢測儀表的影響而持續降低,圖像增算法能夠有效的提升圖像質量,更有利于機器識別。本文針對數字式游標卡尺所處的環境光照不均勻,所采集的圖像清晰度、對比度不高的問題,研究了基于改進的聯合濾波與CNN檢測模型的數字式儀表識別算法,引入CNN模型對儀表表盤進行定位和分割,然后設計了改進的聯合濾波算法對分割后的圖像進行進一步濾波操作,得到對比度較高的灰度圖,進而引入淺層神經網絡對字符進行識別與組合。最后,本文對算法進行了對比仿真實驗,實驗結果表明,本文提出的算法能夠有效的削弱光照不均勻干擾的影響,同時可增強圖像細節及清晰度,在多場景下平均識別率已經能達到95%以上。雖然本文針對多場景的已經達到了較高的識別率,但工業場景的部署應在邊緣計算終端進行,尤其是針對老舊設備的智能化改造,因此在接下來的研究中,在保障較高識別率的前提下,將提升本文算法在邊緣計算終端部署的能力。

猜你喜歡
同態濾波游標卡尺字符
尋找更強的字符映射管理器
關于游標卡尺讀數問題易錯點的剖析
字符代表幾
一種USB接口字符液晶控制器設計
淺析游標卡尺的讀數策略
消失的殖民村莊和神秘字符
基于同態濾波與GA優化的QR碼識別算法及其應用
基于同態濾波和Retinex的圖像去霧算法
利用同態濾波提取高分辨率遙感影像樹冠信息
CBERS影像灘涂濕地識別技術
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合