新聞分類

車道閘杆防撞係統:軟件篇與測試結果

您的當前位置: 首 頁 >> av欧美高清观看 >> 公司新聞

車道閘杆防撞係統:軟件篇與測試結果

發布日期:2018-06-27 作者: 點擊:

1.車道閘杆防撞係統軟件的設計與實現

軟件在編寫上采用DSP 專用匯編指令集和C 語言混合編程的方法, 優點在於匯編可以彌補C 語言的一些瓶頸( 如C 語言中循環的反複賦值過程) , 從而大大提高程序的運行效率。程序的主要組成包括自適應閾值的獲取、圖像預處理、背景更新、特征提取與識別判斷。

1.1 係統軟件的整體結構

係統的程序流程圖如圖 所示。程序的具體實現步驟如下。

程序流程圖

(1 ) 對係統的使用環境初始化。

(2 ) 取係統運行後的前10 幀圖像的平均值並將其保存2.1 係統軟件的整體結構係統的程序流程圖如圖2 所示。程序的具體實現步驟如下。

(1 ) 對係統的使用環境初始化。

(2 ) 取係統運行後的前10 幀圖像的平均值並將其保存為背景圖像。

(3 ) 將下一幀圖像與背景相減, 根據最大類間方差法(Otsu ) 求差值圖像的閾值, 根據閾值求二值圖像。

(4 ) 將二值圖像進行中值濾波與開運算, 消除由於噪聲等幹擾造成的小亮點, 在纖細處分離物體, 平滑較大物體的邊界,提高圖像的質量,為後續的處理奠定基礎。

(5 ) 對開運算之後的二值圖像進行特征提取, 如麵積、周長等。

(6 ) 根據提取的特征進行識別判斷,並輸出控製信號。

(7 ) 對背景進行更新, 消除外部環境變化對處理結果的影響。

1.2 自適應閾值的獲取

自適應閾值是指處理和分析過程中, 根據處理數據的數據特征自動獲得適應環境變化的閾值, 在不同環境下都能得到較理想的二值圖像, 使係統智能化。本係統采用最大類間方差法(Otsu ) 來獲取閾值。它是按圖像的灰度特性將圖像分成背景和目標。背景和目標之間的類間方差越大, 說明構成圖像的背景和目標的差別越大。

算法如下:

(1 ) 設圖像包含256 個灰度(G0,G1,…,G255) , 灰度值為Gi的像素點數為Ni, 灰度級為Gi的灰度值總數為Mi=Gi×Ni, 一幀圖像的像素點總數為:N=N0+N1+…+N255。

一幀圖像灰度值的總數為:Gsum=M0+M1+…+M255。令最大類間方差的初值為σmax=0 。

(2 ) 令k 從0~255 遍曆, 循環計算n1+=Nk,N2=Nn1,Gsum +=k ×Gk,m1 =Gsum/n1,m2 =(Gsum -Csum)/n2,σ =n1 ×n2 ×(m1-m2)2。

(3 ) 判斷σ 與σmax的關係,當σ>σmax時,更新σmax=σ,此時更新最佳閾值T=k,當k 遍曆結束就可以得到最佳閾值。

1.3 圖像預處理

圖像消噪是圖像預處理的主要任務之一, 其作用是提高圖像的信噪比, 突出圖像的區域特征。本係統采用中值濾波和由數學形態學的腐蝕和膨脹運算定義的開運算實現。

中值濾波是一種非線性平滑技術, 它將每一像素點的灰度值設置為該點鄰域窗口內的所有像素點灰度值的中值, 適用於濾除脈衝噪聲或顆粒噪聲, 並能保護圖像邊緣。其實現原理為:g (x ,y )=mid {f (x-k ,y-i ) , (k ,i∈W)}, 其中f (x ,y ) 為原始圖像;g (x ,y ) 為處理後圖像;W 為二維模板, 通常為2 ×2 或3 ×3 的區域, 也可以是不同的形狀, 如線狀、圓形、十字形、圓環形等。

實際中通常使用開運算消除與結構元素相比較小

的兩區域, 從而保證圖像的整體灰度值基本保持不變。

開運算是由先腐蝕後膨脹運算相結合而定義的, 腐蝕運算去除了小的亮區域, 但同時削弱了圖像的亮度; 膨脹運算既增強了圖像的亮度, 又不重新引入腐蝕運算去掉的小區域, 兩者的默契配合, 很好地消除了由於噪聲而造成的小亮區域。開運算的實現公式為:A。B=(AΘB)茌B, 其中A 為輸入圖像,B 為結構單元;AΘB=∩{A-b}:

b∈B}, 通過將輸入圖像半移並計算所有半移的交集而得到;A茌B=U{A+b :b∈B} , 通過相對結構元素的所有點半移輸入圖像, 然後計算並集得到。

區域填充可以快速地填充聯通區域的內部孔洞, 並使輪廓邊界修補完整。算法描述如下: 二值化後的差分圖是存在黑色孔洞的聯通區域, 首先對其自底向上、從左向右在水平方向上依次掃描白點, 如果相鄰的白點的間距小於設定的距離閾值, 就將這相鄰的白點連成一線( 即用白點填充白點之間的黑點) ; 同樣地, 再對圖像自左向右進行操作。從底向上地在垂直方向上重複一遍上述的填充算法, 就可以得到完整的連通區域。

1.4 背景更新

背景泛指在視覺圖像中與人所看到的視覺前景相對應的起到襯托前景、協調色調等作用的獨立圖像。背景更新使圖像分割效果的保障, 及時準確地對背景進行更新使後續處理結果起到決定性的作用。本文通過子塊劃分的方式更新背景, 其實現步驟如下:

(1 ) 將處理後的二值圖像C 分成n 個互不重疊的小區域, 子塊的大小取決於運動目標的麵積, 通常取運動目標麵積的1/4~1/8 。

(2 ) 將子塊分為背景塊和前景塊, 子塊的邊緣像素值為255 的個數達到子塊總邊沿像素的10%左右即可認為該子塊是前景塊; 邊沿像素點沒滿足要求, 再對子塊像素值為255 的個數進行統計, 當其值到達子塊總像素的30%左右即可判定該子塊是前景塊。不滿足上述要求的其他子塊均為背景塊。

(3 ) 對背景塊進行更新, 將背景塊作為一個整體並采用Surendra 算法進行更新, 其具體實現公式為:

Bj(x ,y )=αIj(x ,y )+(1-α)Bj-1(x ,y )其中,Bj(x ,y ) 為更新後的背景;Bj -1(x ,y ) 為更新前的背景;Ij(x ,y ) 為當前圖像;α 為迭代速度係數, 本係統取α=0.3 。

(4 ) 對前景塊進行更新, 由於前景塊既可能包含前景像素也可能包含背景係數, 因此要對前景塊逐個像素點進行更新。其更新算法為:

Bj(x ,y )= Bj-1(x ,y ) ,Cj(x ,y )=255α×Ij(x ,y )+(1-α)Bj-1(x ,y ) ,Cj(x ,y )=0 U (2)其中,Cj (x ,y ) 為二值圖像中前景塊部分;Bj (x ,y ) 為更新後的背景;Bj -1(x ,y ) 為更新前背景;Ij (x ,y ) 為當前圖像;α 為迭代速度係數, 本係統取α=0.3 。

(5 ) 實際應用中, 光照的劇烈變化、攝像機的移動等都會造成背景全局變化。如果發生全局變化, 利用上述方法更新需要花很長的時間才能完成, 會嚴重幹擾係統的正常工作, 甚至會讓係統一度處於癱瘓狀態。為了解決這個問題, 本係統如果檢測到前景塊數量急劇增加,就會判定為發生了全局變化, 連續100 幀都出現全局變化, 則對背景進行重新初始化, 時刻保證背景的正確性。

1.5 特征提取與識別判斷

本係統的主要目的是實現防撞, 因此沒必要提取太多特征和進行模式識別等複雜運算。提取圖像分割後前景的麵積和輪廓周長作為圖像特征, 當前景的麵積為總像素的30%且周長大於閾值Tl時認為有汽車通過, 並給出控製閘杆起降的信號; 否則不給出控製信號, 隻進行圖像背景的更新。

2 實驗結果與分析

測試過程與結果

為了驗證本係統的實驗效果, 進行了現場測試。為了提高係統的工作效率, 將一幀圖片通過網口上傳到上位機, 通過上位機選擇感興趣的區域並將該區域的坐標傳給DSP,DSP 根據接收到的坐標選取對應的區域進行處理, 測試的過程與結果如圖3 所示。

圖(a ) 是某時刻濾波前的背景圖像, 圖(b ) 是濾波後的背景圖像。圖 (c ) 是當車經過時捕捉的圖像, 圖3 (d ) 是濾波後的圖像, 根據濾波前與濾波後圖像的對比可知, 濾波後的圖像比較光滑, 噪聲比較少, 利於後續的處理。圖(e ) 是處理前的二值圖像,  (f) 是處理後的二值圖像, 對比圖 (e ) 與圖 (f) 可知, 經過開運算及區域填充處理後圖像的黑色小點明顯減少, 更加貼近前景的輪廓, 使處理結果更加準確。

圖3(d ) 與圖(b ) 相減得到差值圖像, 根據Otsu 算法求差值圖像的閾值T, 根據閾值T 得到圖 (e ) 所示的二值圖像, 並經過一係列的預處理後得到圖(d ) 所示的效果。根據圖(d ) 求出白色區域的麵積和輪廓的周長,根據這兩個特征來判斷是否有車輛經過。有車時發出信號控製閘杆不能下降,直到沒有車輛一段時間後才允許閘杆下降,以此實現車道閘杆防撞的功能。經過一段時間的測試, 結果顯示係統工作穩定, 實驗效果較理想。

本文采用TI 公司的高速DSP DM642 作為係統的硬件平台, 滿足了係統實時性的要求。采用中值濾波和數學形態學的開運算作為圖像預處理的基本算法, 有效地提高了圖像的質量, 減少了外部噪聲的幹擾, 為以後的特征提取和識別判斷打好可靠的基礎。采用分塊操作對圖像背景進行更新, 減少了計算時對存儲器的開銷, 降低了對硬件的要求, 提高了運算速度, 提高了背景對環境的適應能力, 是係統能夠實現防撞功能的保障。


本文網址:http://www.jjswsxx.com/news/396.html

關鍵詞:綿陽停車識別係統安裝,綿陽門禁係統,綿陽停車識別係統安裝

最近瀏覽:

欧美视频智能科技

服務熱線:153-9026-5152

  • 在線客服
  • 聯係電話
    15390265152
  • 在線留言
  • 手機網站
  • 在線谘詢