孫曉杰,梁 義
(伊犁師范大學電子與信息工程分院,新疆伊寧 835000)
圖像邊緣檢測作為圖像分割的重要分支,提取出有效的邊緣信息為后續(xù)分析提供基礎,但快速準確檢測是邊緣特征提取的難點問題[1]。單閾值法提取的邊緣信息存在斷點、特征不準確等問題,為實現圖像邊緣實時檢測,采用雙閾值法快速提取圖像邊緣信息并應用到實時檢測系統。
高閾值要求嚴格,會求出很少的圖像邊緣信息,但高閾值邊緣都有效。低閾值要求寬松,求出很多邊緣信息,主要包括無效邊緣和連續(xù)邊緣信息[2]。具體檢測原理如圖1所示,先用高閾值求出有效邊緣,Canny邊緣檢測方法需要邊緣特征連在一起,但高閾值求出的邊緣特征斷斷續(xù)續(xù)[3],再利用低閾值求出的邊緣信息,把高低閾值邊緣連在一起,未使用的低閾值邊緣信息被篩選掉。高低閾值的區(qū)別:高閾值是將物體輪廓與背景區(qū)分開,可以調整目標與背景的對比度;低閾值用來平滑邊緣的輪廓,當閾值設置太高時邊緣輪廓會不連續(xù)或者不夠平滑,通過低閾值平滑輪廓線或連接不連續(xù)邊緣。
圖1 雙閾值檢測原理
圖像邊緣實時檢測分為軟件和硬件系統,具體功能如圖2所示。軟件系統用于提取圖像邊緣特征,主要包括幀圖像、雙閾值和邊緣檢測等模塊,本文利用雙閾值提取邊緣信息并用Canny方法拼接邊緣[4]。硬件系統包括視頻接口、STM32和TMS320部分,STM32部分用于圖像數據的接收、存儲和顯示,TMS320電路用于運行雙閾值、邊緣檢測等程序。
圖2 圖像邊緣實時檢測系統
利用整體圖片的顏色特性進行分割,首先將輸入圖像按照模板進行顏色歸一化,根據雙閾值算法標準,對采集到的圖像進行邊緣判斷[5],按照設定要求篩選出符合要求的像素點。先選擇大小為5×5的梯度模板,利用雙閾值法對提取的圖像數據進行比較,采用數據選擇器選擇出符合要求的結果,算法具體實施過程如下。
(1)采集5個點像素和過高閾值個數:
(1)
式中:(i,j)為像素點;w為照片參數;x為定義參數。
(2)對采集的5點按照像素點灰度值數據排序,對數據進行像素定級:
x1 (2) (3)利用雙閾值選擇符合要求的像素; (4) 計算像素點的能量值: (3) 式中:E為能量值;P為像素點級別。 (5)依據能量值判斷圖像邊緣信息,如果大于設定小閾值則認定為邊緣信號,小于閾值則為背景圖片。 Canny算子具有信噪比高、定位精度準確和單邊緣響應快的準則,它是一階傳統微分中邊緣檢測效果最好的算子[6],比Prewitt 算子、Sobel算子的去噪能力強。 根據對信噪比與定位乘積進行測度,得到最優(yōu)化逼近算子即Canny邊緣檢測算子,具體實施過程如圖3所示。 邊緣檢測系統的主要任務是采集圖像,并利用硬件運行雙閾值等軟件程序,具體硬件檢測系統組成如圖4所示。 圖3 程序編寫流程 圖4 硬件系統整體結構 邊緣檢測硬件系統主要分為圖像采集和邊緣檢測兩個部分,圖像采集是以攝像頭OV7670為基礎讀取圖像,以STM32為核心采集、存儲和顯示圖像數據[7]。DSP處理芯片TMS320為核心運行程序,處理程序以雙閾值特征提取程序和邊緣檢測程序為主,完成邊緣特征的提取和拼接。 CCD采集圖像后可以直接傳送給STM32模塊進行特征數據提取,但為了降低CPU計算傳輸壓力采用外置視頻解碼芯片GV7700進行數據格式轉換[8],經過視頻解碼后原始圖像質量可以得到提高,同時圖像識別算法也會得到簡化。視頻數據采集整體電路如圖5所示,高性能解碼芯片GV7700可以通過SPI總線進行控制,視頻識別格式可以通過編程進行控制,內核低壓電源1.8 V供電可以保證高速采集轉換過程中電路芯片處于低功耗模式[9]。當五針視頻輸入到SDO接口過程中利用電感和電容濾除信號中交流成分,然后芯片把直流成分和SDO接收到的小幅度交流成分進行合成。視頻解碼芯片工作在27 Mbps高速過程中也可以保持低功耗,且視頻輸入輸出都通過20位并行數據總線進行傳輸。 圖5 視頻數據采集電路 在工業(yè)應用中一般內存處理電路即可滿足功能要求,但數據處理速度要求比較高的場所需要高速存儲電路。 圖像高速存儲電路如圖6所示。數據傳輸信號連接到MT47H64的DDR引腳,在高速傳輸和工業(yè)干擾環(huán)境下為提高信號抗干擾能力[10],參考引腳VREF并聯一個0.1 μF去耦電容,在電源部分并聯0.1 μF電容和22 μF電解電容[11],這樣芯片可以很好地兼容+1.8 V電源。 圖6 圖像高速存儲電路 每種場景對閾值參數的要求都不相同,需要根據圖片邊緣的灰度變化、特征像素點數等信息選擇閾值參數[12]。本文以梯度變換的樹形灰度圖為例,利用攝像頭拍攝場景照片,選取Canny檢測方法的合適雙閾值,分別利用變換高閾值和低閾值,根據圖像邊緣檢測結果確定參數,不同低閾值的檢測結果如圖7所示,不同高閾值的檢測結果如圖8所示。 根據兩組不同參數確定邊緣圖形,檢測結果分為原圖、不同低閾值和高閾值,檢測結果表明低閾值引入的邊緣特征比較多,信號可以分為無效邊緣和有效邊緣,低閾值越小無效信息越多,高閾值越大則有效信息越少。綜合觀察高低閾值分別為0.07和0.04時,檢測的圖像邊緣更貼合原始圖,且信息還原度比較高。 為開發(fā)一種基于雙閾值的動態(tài)圖像邊緣檢測系統,設計了邊緣檢測方法和硬件電路,利用樹形灰度圖選取Canny檢測方法的合適雙閾值,實驗結果表明高低閾值分別為0.07和0.04時,檢測的圖像邊緣更貼合原圖,也證明了圖像邊緣檢測系統的可靠性。 (a)原始圖像 (b)雙閾值0.02、0.08,Canny算子進行邊緣檢測 (c)雙閾值0.04、0.08,Canny算子進行邊緣檢測 (d)雙閾值0.06、0.08,Canny算子進行邊緣檢測 (a)原始圖片 (b)雙閾值0.04、0.05,Canny算子進行邊緣檢測 (c)雙閾值0.04、0.07,Canny算子進行邊緣檢測 (d)雙閾值0.04、0.09,Canny算子進行邊緣檢測2.2 Canny邊緣識別
3 邊緣檢測硬件系統
3.1 硬件系統設計
3.2 視頻數據采集電路
3.3 圖像存儲電路
4 圖像邊緣實時檢測實驗
5 結束語