文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.180347
中文引用格式: 張精榕,顧彬彬,繆誠鈺,等. 一種實(shí)時在線的公路路面破損及位置檢測裝置[J].電子技術(shù)應(yīng)用,2018,44(8):64-68,77.
英文引用格式: Zhang Jingrong,Gu Binbin,Miao Chengyu,et al. A real-time on-line highway pavement breakage and position detection device[J]. Application of Electronic Technique,2018,44(8):64-68,77.
0 引言
我國高速公路快速發(fā)展令世界矚目,高速公路快速發(fā)展的同時,也使得傳統(tǒng)的路面破損人工目測檢測無法滿足需求,人工方法存在效率低、安全性不高等問題,因此,迫切需要一種高效的、高智能化的路面檢測裝置用于檢測路面破損檢測。
隨著計算機(jī)視覺技術(shù)的發(fā)展,很多科研工作者提出了對路面裂縫的智能檢測方法并對其進(jìn)行了系統(tǒng)的開發(fā)。早在20世紀(jì)60年代末期以模擬攝影技術(shù)為基礎(chǔ)的檢測系統(tǒng)就有由日本PASCO公司研發(fā)的ROADRECON-70檢測車和由法國開發(fā)的GERPHO自動檢測車[1]。80年代,日本的KOMATSU公司研發(fā)了一款以模擬視頻錄像技術(shù)為基礎(chǔ)的路面裂縫檢測車[2],最高速度可達(dá)10 km/h;90年代中期,加拿大的RoadWare公司和瑞典的Romboll公司分別研制了基于面陣相機(jī)技術(shù)的ARAN系統(tǒng)和PAVUE系統(tǒng)[3],最高時速可達(dá)90 km/h;2008年,加拿大又研制出了以3D激光掃描技術(shù)為基礎(chǔ)的LCMS檢測系統(tǒng)[4],將路面檢測帶入一個新領(lǐng)域。國內(nèi)相關(guān)研究起步較晚,在2002年,南京理工大學(xué)的趙春雷等成功研制了N-1型路面檢測車[5],其檢測時速可達(dá)70 km/h。2007年武大卓越與湖北合力聯(lián)合研發(fā)了ZOYON-RTM智能道路檢測車[6];2010年長安大學(xué)研制出來基于依維柯的CT-502多功能路況檢測車[7]。
然而這些已經(jīng)研制成功的路面檢測系統(tǒng)都是通過圖像采集之后再通過計算機(jī)的強(qiáng)大處理能力來做后期的圖像處理,增加了大量視頻數(shù)據(jù)傳輸?shù)碾y度,且實(shí)時性低。為了避免大量數(shù)據(jù)的處理和傳輸難度,增加系統(tǒng)的實(shí)時性,本文提出一種在下位機(jī)就能實(shí)現(xiàn)路面有效信息提取的方案。在前人工作的基礎(chǔ)上,提出一種實(shí)時在線公路路面破損及位置檢測裝置。檢測裝置以FPGA技術(shù)、圖像處理技術(shù)以及北斗定位技術(shù)與無線通信技術(shù)相結(jié)合的方式來實(shí)現(xiàn)。檢測裝置通過CMOS圖像傳感器進(jìn)行視頻圖像采集,SDRAM進(jìn)行視頻圖像的緩存,在FPGA中就可對圖像進(jìn)行實(shí)時處理與識別分類,然后用VGA進(jìn)行視頻圖像的顯示,北斗定位模塊進(jìn)行位置信息的獲取,通過DTU 4G無線傳輸模塊把獲取的圖像信息和位置信息發(fā)送到后臺進(jìn)行存儲,通過LCD顯示識別分類結(jié)果和地理位置信息。
1 硬件系統(tǒng)設(shè)計
本文所設(shè)計的路面破損檢測裝置的系統(tǒng)結(jié)構(gòu)框圖如圖1所示,整個系統(tǒng)使用Altera的Cyclone IV系列的EP4CE30F23C8N FPGA芯片作為主控芯片,該芯片有4個PLL,能產(chǎn)生多達(dá)20個全局時鐘,28 848個邏輯門,608 256個存儲單元,533個I/O接口,如此豐富的片上資源為本系統(tǒng)的設(shè)計提供了極大靈活性。
首先FPGA芯片通過I2C總線協(xié)議對COMS攝像頭OV7725進(jìn)行配置以實(shí)現(xiàn)路面圖像的采集,然后利用FPGA對獲得的圖像進(jìn)行圖像處理,灰度中值濾波、Sobel邊緣檢測、形態(tài)學(xué)膨脹腐蝕,最后達(dá)到對裂縫特征提取與分類識別的目的。得到裂縫的特征并通過VGA顯示,再進(jìn)行路面裂縫的識別與分類并對裂縫位置進(jìn)行定位,最后把路面裂縫信息和位置信息發(fā)送到后臺終端。
1.1 灰度中值濾波的實(shí)現(xiàn)
在對路面進(jìn)行圖像信息采集的時候圖像中會摻雜一些噪聲,因此需要對采集到的圖像進(jìn)行平滑濾波從而進(jìn)行降噪處理,以便后續(xù)的圖像處理[8]。中值濾波是一種非線性濾波的圖像處理方法,對消除少量離散噪聲點(diǎn)效果顯著[9],其通過對鄰域內(nèi)像素按灰度排序的結(jié)果決定中心像素的灰度,是通過窗口內(nèi)的像素的灰度值進(jìn)行排序,并取出位于中間位置的灰度作為中心像素的灰度。因此中值濾波由窗口提取模塊和排序模塊組成。
1.1.1 窗口實(shí)現(xiàn)
由于FPGA芯片內(nèi)部具有豐富Shift_RAM移位寄存器資源,可以非常方便地通過2行或3行Shift_RAM的移位存儲,來實(shí)現(xiàn)3×3像素陣列。本文通過移位寄存器Shift_RAM來存放2行像素,同時與當(dāng)前輸入行的數(shù)據(jù)組成3行的陣列。其硬件實(shí)現(xiàn)框圖如圖2所示。
1.1.2 排序模塊
排序模塊的目的就是從9個像素點(diǎn)中比較出中間像素值,在FPGA中最快只需3個時鐘即可完成中值的比較,即使用7個比較器進(jìn)行三輪比較,第一輪比較3個比較器并行比較出每行的最大值、中間值和最小值;第二輪3個比較器比較出3個最大值中的最小值、3個中間值的中間值、3個最小值中的最大值;第三輪用一個比較器比較出第二輪得出的3個像素值的中間值,將該值作為9個像素點(diǎn)的中間值[10]。其實(shí)現(xiàn)流程如圖3所示。
1.2 改進(jìn)的Sobel邊緣檢測的實(shí)現(xiàn)
Sobel邊緣檢測模塊主要分梯度計算和基于像素閾值的邊緣檢測兩部分,因?yàn)橹恍枰獙?shí)現(xiàn)裂縫的邊緣檢測,這里不需要方向信息的提取。改進(jìn)后的Sobel算子相比傳統(tǒng)的Sobel算子增加了不少運(yùn)算量,涉及加法、減法、乘法、除法、平方和開平方等運(yùn)算。
經(jīng)過中值濾波后的圖像繼續(xù)使用移位寄存器Shift_RAM提取3×3像素陣列與改進(jìn)的Sobel算子作乘法運(yùn)算并經(jīng)過最后的合成得到的梯度值用來取代原來3×3像素陣列的中心像素值。由于 Altera 在 LPM 中提供了豐富的 IP核,復(fù)雜的乘除運(yùn)算和平方根運(yùn)算都可以通過例化相應(yīng)的IP核來實(shí)現(xiàn),只需要根據(jù)需要配置相應(yīng)的參數(shù)即可,而簡單的加減運(yùn)算則是用運(yùn)算符實(shí)現(xiàn)。
將設(shè)計好的閾值IP核與最后輸出的梯度值D比較,閾值可以根據(jù)實(shí)際情況作相應(yīng)的修改,本文設(shè)為60,如果像素值大于閾值,視為邊緣并賦值為 1;反之則賦 0,這樣就就可以得到一幅二值化的邊緣圖像,為后面的特征提取提供了基礎(chǔ)。
1.3 形態(tài)學(xué)膨脹與腐蝕的實(shí)現(xiàn)
由于圖像降噪或者邊緣檢測時可能會發(fā)生部分信息丟失或者出現(xiàn)噪聲邊緣,因此需要通過形態(tài)學(xué)膨脹腐蝕算法來對圖像進(jìn)行修復(fù)[11]。
膨脹與腐蝕是在二值化的圖像上處理的,需要用Shift_RAM移位寄存器來實(shí)現(xiàn)1 bit的3×3陣列,即將寬度參數(shù)設(shè)置為1 bit。其中膨脹運(yùn)算通過像素之間作或運(yùn)算來實(shí)現(xiàn)[12], 考慮到運(yùn)算效率問題,在HDL中通過面積換取效率,通過兩個時鐘來實(shí)現(xiàn),第一個時鐘分別計算每行3個像素的或,第二個時鐘計算前面結(jié)果的或。而腐蝕則相反,通過像素值作與運(yùn)算來實(shí)現(xiàn)。
1.4 投影特征提取與裂縫分類識別
本文將路面裂縫大致分為橫向裂縫、縱向裂縫、以及龜裂和塊狀裂縫4類。裂縫的特征提取直接關(guān)系到對裂縫識別與分類性能的優(yōu)劣[13]。
1.4.1 裂縫投影特征提取
投影算法就是將某個方向作為投影方向,并統(tǒng)計在其方向的垂直方向上的坐標(biāo)圖像目標(biāo)的像素點(diǎn)的和,為了更好地對裂縫路面進(jìn)行分類,則需要對裂縫圖像分別做X、Y坐標(biāo)軸方向上的投影,其算法如式(1)與式(2)所示。
在FPGA中,通過設(shè)計累加器來對各行各列的像素值進(jìn)行累加并且通過寄存器保存累加值,再通過比較器比較出最大投影值來作為當(dāng)前圖像的投影特征值。
1.4.2 裂縫分類識別
考慮到裂縫種類的特殊性,在裂縫判定分類根據(jù)收集的大量不同裂縫圖像的投影特征設(shè)定不同的閾值標(biāo)準(zhǔn),為了獲取裂縫的特征,對裂縫圖像進(jìn)行采樣并作為裂縫特征數(shù)據(jù)庫,并通過MATLAB進(jìn)行投影特征分析,獲得表1所示的裂縫分類投影特征。將提取到的圖像投影特征值與表中的閾值進(jìn)行比較就能判斷出裂縫的類型,本文通過一個一段式狀態(tài)機(jī)來實(shí)現(xiàn)裂縫類型的判別。
1.5 北斗定位模塊
北斗衛(wèi)星系統(tǒng)是我國具有自主知識產(chǎn)權(quán)的空間導(dǎo)航定位系統(tǒng),具有定位、授時以及短報文通信等功能[14]。本文選擇了具有高精度定位的基于北斗地基增強(qiáng)站(CORS)的北斗偽距差分定位方法。北斗地基增強(qiáng)系統(tǒng)由參考站網(wǎng)、數(shù)據(jù)處理與控制中心、網(wǎng)絡(luò)通信系統(tǒng)和用戶設(shè)備4部分組成[15]。本文采用泰斗D303導(dǎo)航差分定位芯片作為用戶端與江蘇北斗地基增強(qiáng)站(JSCORS)建立數(shù)據(jù)通信獲得高精度差分定位信息[16],由芯片D303接收的單點(diǎn)定位信息通過GPRS網(wǎng)絡(luò)通信發(fā)送給數(shù)據(jù)中心,再接收數(shù)據(jù)中心生成的差分修正信息,再由D303差分定位模塊解析得到高精度定位信息[17]。
D303芯片與FPGA之間通過串口通信將解析后的高精度北斗定位電文發(fā)給FPGA端的串口接收模塊,本文只要從所有電文中提取出其中包含經(jīng)緯度信息的BDGGA電文中的經(jīng)緯度信息即可,在FPGA中通過一個簡單的狀態(tài)機(jī)實(shí)現(xiàn)。
1.6 無線通信模塊
無線傳輸使用DTU 4G無線傳輸模塊,支持AT指令,本系統(tǒng)中其與FPGA之間采用串口通信的方式,通信速度設(shè)為230 400 b/s,TXD、RXD為發(fā)送、接收端,分別連接到FPGA的串口發(fā)送和接收端。在發(fā)送數(shù)據(jù)之前先使用AT指令與遠(yuǎn)程服務(wù)器建立TCP連接,接收到返回連接建立成功后即可發(fā)送數(shù)據(jù),F(xiàn)PGA端已將要發(fā)送的定位信息、裂縫信息以及裂縫圖片按約定的格式緩存在SRAM中,通過串口發(fā)送模塊即可發(fā)送數(shù)據(jù)。
2 Sobel算子及其改進(jìn)
Sobel邊緣檢測算法被廣泛運(yùn)用在計算機(jī)視覺識別領(lǐng)域[18],其算法是對獲取的圖像的像素平滑處理后進(jìn)行橫向和縱向的3×3矩陣卷積即可得到橫向和縱向的差分近似值[19],假設(shè)A代表獲取平滑濾波處理后的圖像,Gx、Gy表示經(jīng)過縱向和橫向邊緣檢測的圖像,其定義如式(3)所示:
同時梯度方向由arctan(Dx/Dy)所決定[20]。
傳統(tǒng)的Sobel邊緣檢測算法只對橫向和縱向作卷積運(yùn)算[21],因此對于一些紋理比較復(fù)雜的圖像可能邊緣檢測效果不是那么明顯,尤其是對路面這樣噪聲較多的圖像,針對瀝青路面的高噪聲的情況,對傳統(tǒng)的Sobel邊緣檢測算法進(jìn)行改進(jìn),加入抗噪能力更強(qiáng)的可變分母差分算法[22],用fij表示圖像模板中的像素點(diǎn),Dx、Dy分別表示水平和垂直方向的像素差分值,A和B表示圖像與水平模板計算后各部分的值,C和D表示圖像與垂直模板計算后的值,加入了可變分母后的計算方法如式(5)和式(6)所示:
3 系統(tǒng)測試與實(shí)驗(yàn)結(jié)果分析
圖4所示是搭建的整個系統(tǒng)的實(shí)物圖以及系統(tǒng)的顯示界面,主要由圖像處理部分、定位部分、顯示部分、數(shù)據(jù)傳輸部分以及后臺服務(wù)器組成。圖5是檢測到各類裂縫后傳輸?shù)椒?wù)器后通過上位機(jī)顯示出來的經(jīng)緯度信息以及裂縫信息,表明該系統(tǒng)能夠穩(wěn)定地運(yùn)行并成功地檢測出橫向、縱向、龜裂以及塊狀裂縫。
本文采用的評價智能路面裂縫檢測系統(tǒng)的技術(shù)指標(biāo)如下所示:
(1)識別率:用來作為衡量識別系統(tǒng)能否正確識別的最重要的一個指標(biāo)。
(2)誤識率:簡單地概括為將一種裂縫識別分類成其他類別的比率。
(3)拒識率:對有裂縫的圖像無法進(jìn)行識別或分類,即衡量算法能否進(jìn)行正常識別工作。
表2所示是實(shí)驗(yàn)結(jié)果統(tǒng)計表,是分別對20個橫向、縱向、龜裂、塊狀的裂縫進(jìn)行檢測,通過結(jié)果可以得知該系統(tǒng)工作性能優(yōu)良,能夠滿足正常的路面裂縫檢測的工作,達(dá)到預(yù)期目標(biāo)。由表2可以得知,塊狀的識別率在4種裂縫類別中最低,主要是因?yàn)閴K狀的裂縫在橫向與縱向上的投影特征不顯著,在判定閾值的選取上對塊狀的裂縫識別影響較大。
4 結(jié)論
本系統(tǒng)通過將北斗導(dǎo)航技術(shù)和圖像處理技術(shù)結(jié)合實(shí)現(xiàn)了基于北斗定位和FPGA的路面裂縫檢測系統(tǒng)。通過改進(jìn)的Sobel邊緣檢測算法,降低了邊緣的模糊程度,提高檢測準(zhǔn)確性和抗干擾能力。并且在FPGA上實(shí)現(xiàn)了裂縫的自動識別和分類,系統(tǒng)只需在識別出裂縫時通過無線通信發(fā)送裂縫圖片和經(jīng)緯度信息,避免了大量數(shù)據(jù)流傳輸?shù)耐瑫r而不失實(shí)時性。本系統(tǒng)所采用的是北斗差分導(dǎo)航定位模塊,該定位模塊的精度在靜止和運(yùn)動狀態(tài)下分別為1 m和3 m,實(shí)現(xiàn)了高精度定位功能。把無線通信模塊和FPGA結(jié)合起來,可以把FPGA采集和處理完的數(shù)據(jù)實(shí)時傳輸?shù)椒?wù)器上顯示實(shí)時圖片并存儲起來,實(shí)現(xiàn)實(shí)時監(jiān)控,方便后期的管理。存儲的數(shù)據(jù)可以輸入到地圖上,實(shí)現(xiàn)裂縫位置信息在地圖上可視化。
參考文獻(xiàn)
[1] BENSON K R,ELKINS G E,UDDIN W,et al.Comparison of methods and equipment to conduct pavement distress surveys[M].Transportation Research Record,1988.
[2] COUNCIL N.Automated imaging technologies for pavement distress surveys[C].Transportation Research E-Circular,2011.
[3] KLASSEN G,SWINDALL B.Automated crack detection system implementation in ARAN[C].Digital Image Processing:Techniques and Applications in Civil Engineering,1993.
[4] LAURENT J,LEFEBVRE D,SAMSON E.Development of a new 3D transverse laser profiling system for the automatic measurement of road cracks[J].Symposium on Pavement Surface Characteristics Portoroz Slovenia,2008.
[5] 趙春霞,唐振民,楊靜宇,等. N-1型道路狀況智能檢測系統(tǒng)[C].中國人工智能學(xué)會全國學(xué)術(shù)年會,2003.
[6] 武漢武大卓越科技有限責(zé)任公司,道路檢測[EB/OL].(2016-04-03).http://www.zoyon.com.cn/index.php/index-show-tid-31.html.
[7] 王建鋒.激光路面三維檢測專用車技術(shù)與理論研究[D].西安:長安大學(xué),2010.
[8] American Association of State Highway and Transportation Officials(AASHTO) Guide for Design of Pavement Structures[M].Washington,D.C.,2002.
[9] 張杰.基于FPGA的數(shù)字圖像處理[D].武漢:華中科技大學(xué),2009.
[10] 孟顯英.中值濾波算法的FPGA設(shè)計與實(shí)現(xiàn)[J].電腦知識與技術(shù),2010,27(6):7822-7824.
[11] 何春華,張雪飛,胡迎春.基于改進(jìn)Sobel算子的邊緣檢測算法的研究[J].光學(xué)技術(shù),2012,38(3):332-337.
[12] KELVIN C,WANG P.Elements of automated survey of pavements and a 3D methodology[J].Journal of Modern Transportation,2011,19(1):51-57.
[13] 宋俊芳.路面檢測關(guān)鍵技術(shù)綜述[J].科教導(dǎo)刊,2016(18):156-157.
[14] 李亞鵬,馬潤.基于北斗衛(wèi)星的電力調(diào)度應(yīng)急通信系統(tǒng)的研究[J].寧夏電力,2015(2):51-55.
[15] 劉天恒,陳明劍,張樹為,等.北斗地基增強(qiáng)系統(tǒng)數(shù)據(jù)通信綜述[J].全球定位系統(tǒng),2017,42(1):65-69.
[16] 閆建巧,陳明劍,汪威,等.基于地基增強(qiáng)系統(tǒng)的增強(qiáng)PPP技術(shù)[J].全球定位系統(tǒng),2016,41(2):50-54.
[17] 劉天恒,陳明劍,尹子明,等.基于北斗地基增強(qiáng)系統(tǒng)RTD精度分析[C].中國衛(wèi)星導(dǎo)航學(xué)術(shù)年會,2016.
[18] 陳娟,文振宇,李志強(qiáng),等.一種快速手勢識別算法的實(shí)現(xiàn)與驗(yàn)證[J].實(shí)驗(yàn)科學(xué)與技術(shù),2011,9(6):34-36.
[19] 盧春雨,張長水,聞方,等.基于區(qū)域特征的快速人臉檢測法[J].清華大學(xué)學(xué)報(自然科學(xué)版),1999,39(1):101-105.
[20] 李鵬,杜敏,趙芬芬.基于FPGA圖像分析的路面破損檢測系統(tǒng)的研究與實(shí)現(xiàn)[J].微電子學(xué)與計算機(jī),2017,34(3):100-104.
[21] 劉博峰,郜麗鵬.基于FPGA的Sobel圖像邊緣檢測算法[J].應(yīng)用科技,2016,43(6):59-61.
[22] 張建軍,羅靜.基于改進(jìn)Sobel算子的表面裂紋邊緣檢測算法[J].合肥工業(yè)大學(xué)學(xué)報(自然科學(xué)版),2011,34(6):845-848.
作者信息:
張精榕1,2,3,顧彬彬1,2,3,繆誠鈺1,2,3,李劍喬4
(1.南京信息工程大學(xué) 江蘇省大氣環(huán)境與裝備技術(shù)協(xié)同創(chuàng)新中心,江蘇 南京210044;
2.南京信息工程大學(xué) 江蘇省氣象傳感網(wǎng)技術(shù)工程中心,江蘇 南京210044;
3.南京信息工程大學(xué) 江蘇省氣象探測與信息處理重點(diǎn)實(shí)驗(yàn)室,江蘇 南京210044;
4.南京郵電大學(xué) 電子科技與工程學(xué)院,江蘇 南京210003)