林海,葉思紅
(湛江幼兒師范??茖W(xué)校,廣東湛江,524300)
隨著我國(guó)的經(jīng)濟(jì)繁榮發(fā)展,公路建設(shè)也取得了不錯(cuò)的成績(jī),但是問(wèn)題也隨之而來(lái),有不少人因?yàn)檐囕v超限超載引發(fā)的交通事故而喪命,近年來(lái),國(guó)內(nèi)一些研究學(xué)者設(shè)計(jì)了多種不停車動(dòng)態(tài)稱重系統(tǒng)及實(shí)施方案,大大地減少了治超檢測(cè)的難度,提高了效率。本研究基于鄉(xiāng)村振興戰(zhàn)略工程,使用AI 邊緣計(jì)算技術(shù),設(shè)計(jì)了基于邊緣計(jì)算的動(dòng)態(tài)稱重系統(tǒng),該系統(tǒng)使用Jetson Nano 人工智能嵌入式設(shè)備,采用人工智能算法,識(shí)別率高,速度快。具有一個(gè)云端多個(gè)終端、5G 網(wǎng)絡(luò)連接、造價(jià)成本低,容易在縣、鄉(xiāng)等地區(qū)布控等特點(diǎn)。
目前,國(guó)內(nèi)車輛超載檢測(cè)技術(shù)聚焦在非現(xiàn)場(chǎng)執(zhí)法的動(dòng)態(tài)稱重檢測(cè)技術(shù),多車橋梁動(dòng)態(tài)稱重算法[5],以Moses 軸重識(shí)別算法為基礎(chǔ),基于橫橋向動(dòng)力響應(yīng)線和橋梁彎矩影響面,對(duì)單車以及多車過(guò)橋的橫向位置及軸重等車輛信息進(jìn)行識(shí)別;基于神經(jīng)網(wǎng)絡(luò)的車輛動(dòng)態(tài)稱重系統(tǒng)[6],采用神經(jīng)網(wǎng)絡(luò)自適應(yīng)濾波變步長(zhǎng)LMS 算法,能根據(jù)不同環(huán)境下針對(duì)不同車型進(jìn)行檢測(cè),達(dá)到了較好的技術(shù)適應(yīng)度;多車軸重識(shí)別的橋梁動(dòng)態(tài)稱重(BWIM)算法[7],搭建了包含9 層卷積層、2 層全連接層的卷積神經(jīng)網(wǎng)絡(luò)(CNN)模型,在單車和多車工況下的軸重識(shí)別誤差均值基本低于5%,軸重識(shí)別效果良好且穩(wěn)定;汽車動(dòng)態(tài)稱重系統(tǒng)的算法研究[8]對(duì)傳感器在車輛非停車狀態(tài)下的短歷程信號(hào)進(jìn)行分析,利用巴特沃斯低通濾波器濾除噪聲信號(hào)中的高頻分量?jī)?yōu)化算法進(jìn)行最小二乘法擬合,能夠提高動(dòng)態(tài)稱重系統(tǒng)的測(cè)量精度。雖然各種非現(xiàn)場(chǎng)執(zhí)法的車輛動(dòng)態(tài)稱重檢測(cè)技術(shù)已經(jīng)不斷地在提升,但是還存在數(shù)據(jù)實(shí)時(shí)性不高,響應(yīng)速度慢的情況;檢測(cè)稱重系統(tǒng)相對(duì)復(fù)雜,車輛較多時(shí)容易出現(xiàn)誤判,系統(tǒng)造價(jià)成本比較高,無(wú)法在經(jīng)濟(jì)比較落后地區(qū)的鄉(xiāng)道、縣道上布控。
Jetson Nano 是英偉達(dá)發(fā)布的一款小型人工智能(AI)計(jì)算主板,GPU 為128 核 Maxwell,顯存采用 64 位LPDDR4 25.6 GB/s 共4 GB,在嵌入式領(lǐng)域?qū)儆谙鄬?duì)高端的產(chǎn)品,CPU 為4 核 ARM? A57 @ 1.43 GHz,有豐富的AI 和計(jì)算機(jī)視覺(jué)(Computer Vision)應(yīng)用程序編程接口(API),視頻編碼能力為4K @ 30 | 4×1080p @ 30 | 9×720p @ 30(H.264/H.265),視頻解碼能力為4K @ 60 | 2×4K @ 30 |8×1080p @ 30 | 18×720p @ 30|(H.264/H.265)可以直接用于注重低功耗的AI 應(yīng)用場(chǎng)景。
本研究車牌檢測(cè)模塊采用了Pytorch 深度學(xué)習(xí)框架,車牌區(qū)域檢測(cè)使用我們提出的PO-MTCNN 改進(jìn)型輕量級(jí)網(wǎng)絡(luò)模型,MTCNN[9]是一種非常著名的實(shí)時(shí)檢測(cè)模型,主要用于人臉識(shí)別。經(jīng)過(guò)修改用于車牌檢測(cè)。基于輕量化考慮去掉了網(wǎng)絡(luò)結(jié)構(gòu)中的Rnet 網(wǎng)絡(luò),經(jīng)實(shí)驗(yàn)發(fā)現(xiàn),在檢測(cè)車牌這類簡(jiǎn)單圖像區(qū)域的情況下跳過(guò)Rnet 不會(huì)損害準(zhǔn)確性。在本次研究中只使用了候選網(wǎng)絡(luò)(Pnet)和輸出網(wǎng)絡(luò)(Onet),通過(guò)大量的車牌區(qū)域目標(biāo)檢測(cè)數(shù)據(jù)集的訓(xùn)練和參數(shù)修改,最終確定PO-MTCNN 網(wǎng)絡(luò)模型結(jié)構(gòu),如圖1 所示。
Pnet 網(wǎng)絡(luò)模塊主要獲得車牌區(qū)域的候選窗口和邊界框的回歸向量,并用該邊界框做回歸,對(duì)候選窗口進(jìn)行校準(zhǔn),然后通過(guò)非極大值抑制(NMS)來(lái)合并高度重疊的候選框。Onet 網(wǎng)絡(luò)模塊與Pnet 類似,通過(guò)邊界框的回歸和NMS 來(lái)去掉假正例的區(qū)域。只是由于該網(wǎng)絡(luò)結(jié)構(gòu)和P-Net 網(wǎng)絡(luò)結(jié)構(gòu)有差異,多了一層卷積層和一個(gè)全連接層,所以會(huì)取得更好地抑制假正例的作用,處理的結(jié)果會(huì)更精細(xì)。Onet接受24(高度)x94(寬度)的BGR 圖像,這與LPRNet 的輸入一致。
車牌字符的識(shí)別采用LPRNet[10],它是另一種實(shí)時(shí)端到端DNN,該網(wǎng)絡(luò)具有卓越的性能和低計(jì)算成本,無(wú)需初步字符分割。本研究還加入了空間變壓器層,使其能更好地識(shí)別圖像特征。
經(jīng)過(guò)實(shí)驗(yàn)證明PO-MTCNN+LPRNet 具有足夠好的魯棒性,不會(huì)受各種相機(jī)參數(shù),視角,光照等的影響,經(jīng)過(guò)系統(tǒng)優(yōu)化,加強(qiáng)了車牌糾錯(cuò)算法,并去掉了終端實(shí)時(shí)顯示路況模塊,減少了計(jì)算成本,與現(xiàn)有的車牌識(shí)別模塊對(duì)比,提高了在復(fù)雜條件下的車牌識(shí)別率,置信度達(dá)到98%以上,車牌識(shí)別速度快,準(zhǔn)確率高,適合在各種嵌入式平臺(tái)上運(yùn)行。
MobileNetV3[11]是輕量型的圖像分類網(wǎng)絡(luò),專注于移動(dòng)或嵌入式設(shè)備的輕量級(jí)CNN,與傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)相比,在精度降低較小的前提下,可以大大減少模型參數(shù)和計(jì)算量。通過(guò)硬件感知的架構(gòu)搜索(NAS)的組合和NetAdapt 算法進(jìn)行調(diào)整,以適應(yīng)嵌入式CPU,然后通過(guò)新的體系結(jié)構(gòu)改進(jìn)進(jìn)行改進(jìn),提高整體識(shí)別率。
本系統(tǒng)能有效治理超載現(xiàn)象和對(duì)車流控進(jìn)行管理。采用非現(xiàn)場(chǎng)執(zhí)法動(dòng)態(tài)稱重檢測(cè)設(shè)計(jì),相對(duì)于目前的靜態(tài)稱重檢測(cè),不需要車輛停車,也不會(huì)引起交通阻塞。工控機(jī)系統(tǒng)使用邊緣計(jì)算設(shè)備Jetson Nano 作為嵌入式AI 邊緣計(jì)算平臺(tái),與目前使用的X86 架構(gòu)的集顯工控機(jī)相比算力更強(qiáng)大。邊緣計(jì)算設(shè)備減少了數(shù)據(jù)在網(wǎng)絡(luò)中傳輸?shù)臅r(shí)間,簡(jiǎn)化網(wǎng)絡(luò)結(jié)構(gòu),數(shù)據(jù)的分析和決策都交由邊緣節(jié)點(diǎn)進(jìn)行處理。車型分類模塊采用輕量型Mobilenet V3 算法,與目前的車輛外廓尺寸檢測(cè)模塊相比較具有結(jié)構(gòu)簡(jiǎn)單、檢測(cè)距離遠(yuǎn)、速度快、計(jì)算成本低等特點(diǎn)。車牌檢測(cè)模塊采用POMTCNN+LPRNet 算法,系統(tǒng)使用一個(gè)云端即可連接多個(gè)終端系統(tǒng)。
系統(tǒng)終端主要由稱重模塊、隔離裝置、邊緣計(jì)算攝像頭三部分組成,結(jié)構(gòu)簡(jiǎn)單,穩(wěn)定性高,如圖2 所示。稱重模塊采用先進(jìn)的壓電石英傳感器,隔離裝置包含12V 的獨(dú)立供電模塊和數(shù)字重量變送器,數(shù)字重量變送器是通過(guò)數(shù)模轉(zhuǎn)換,把壓力的模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)。具體指標(biāo)為綜合精度1/100000,輸入范圍0.4~6mV/V,激勵(lì)電壓 5VDC,通訊接口RS485。
圖2 系統(tǒng)終端結(jié)構(gòu)
邊緣計(jì)算攝像頭是整體系統(tǒng)的核心組成部分,主要由Jetson Nano 嵌入式AI 邊緣計(jì)算平臺(tái)、CSI 攝像頭(IMX219)、RS485 轉(zhuǎn)USB 模塊等組成。Jetson Nano 采用Ubuntu18 操作系統(tǒng),Pytorch 深度學(xué)習(xí)框架,Python 編程。CSI 攝像頭(IMX219)參數(shù)指標(biāo)為分辨率800W(3280X2464),CMOS 尺寸1/4 英寸,光圈2.0,焦距2.96mm,對(duì)焦視場(chǎng)角77°,畸變<1%。
系統(tǒng)云端使用WINSERVER 服務(wù)器、動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)、數(shù)據(jù)庫(kù)管理技術(shù)實(shí)現(xiàn)智慧公路大屏管理系統(tǒng)。WINSERVER服務(wù)器參數(shù)指標(biāo)為CPU 主頻 2.4G 10 核心20 線程,內(nèi)存ECC DDR4 2933,固態(tài)硬盤2T。
首次啟動(dòng)時(shí)JetsonNano 檢測(cè)稱重模塊和拍照模塊是否正常。如果正常則攝像頭開始實(shí)時(shí)監(jiān)控車輛。POMTCNN+LPRNet 算法是正確率在95%以上的深度學(xué)習(xí)算法,為了保證車牌信息識(shí)別的置信度,我們采用連續(xù)拍照采集和識(shí)別的方法來(lái)進(jìn)一步提高正確率。當(dāng)車輛經(jīng)過(guò)時(shí),系統(tǒng)通過(guò)PO-MTCNN+LPRNet 算法獲取第一個(gè)車牌信息為χ1,然后每間隔0.1 秒,通過(guò)攝像頭采集一張車輛照片,連續(xù)采集10 張,再通過(guò)PO-MTCNN+LPRNet 算法獲取到的車牌信息分別為χ2,χ3,χ4……χ11,再把11個(gè)車牌信息χ1,χ2,χ3,χ4……χ11,加入到列表θ,通過(guò)列表求得相同元素最多的車牌信息為χn,作為最終的車牌號(hào)碼信息。最后保存車輛實(shí)時(shí)照片及車牌信息。整體識(shí)別時(shí)間平均為1.3 秒,車牌置信度平均為98%。
接下來(lái),車輛經(jīng)過(guò)稱重模塊,系統(tǒng)通過(guò)USB 口讀取壓力傳感器稱出的車輛重量信息,當(dāng)車前輪剛接觸稱重模塊時(shí),設(shè)置時(shí)間變量β1,當(dāng)前獲取的重量值為μ,最高重量值為φ,隨著車輛不斷地前進(jìn),β值在增加,μ值也不斷地在增加時(shí),車重公式為:
當(dāng)稱重模塊檢測(cè)到μ<φ時(shí),φ值不更新,直到μ=0 時(shí),取得時(shí)間變量β2,設(shè)置稱量模塊的總長(zhǎng)為γ,車速ψ為:
由于采用整車式稱重方式,稱重模塊結(jié)構(gòu)簡(jiǎn)單,出錯(cuò)率低,而且可以同時(shí)測(cè)出車輛的行駛速度。
最后,使用輕量型圖像分類網(wǎng)絡(luò)Mobilenet V3 對(duì)保存的車輛實(shí)時(shí)照片進(jìn)行車型判斷。接著系統(tǒng)將車輛照片、車牌號(hào)、車重、車型等車輛信息通過(guò)MQTT 協(xié)議發(fā)送到云端,當(dāng)云端FTP 連接正常時(shí),通過(guò)FTP 協(xié)議將車輛信息文件發(fā)送到云端服務(wù)器。上傳成功后,攝像頭繼續(xù)實(shí)時(shí)監(jiān)控車輛。系統(tǒng)流程圖如圖3 所示。
圖3 終端技術(shù)路線
云端服務(wù)器每隔15 秒檢測(cè)是否有監(jiān)控點(diǎn)車輛信息的數(shù)據(jù)文件上傳,如果有,就會(huì)將數(shù)據(jù)文件里的車輛圖片、車重、車型、車牌號(hào)碼等數(shù)據(jù)解密拆分,分別存入云端數(shù)據(jù)庫(kù)記錄中。經(jīng)過(guò)IIS 信息服務(wù),就可以在動(dòng)態(tài)網(wǎng)頁(yè)端和移動(dòng)端APP實(shí)時(shí)顯示當(dāng)前通過(guò)車輛,超載車輛的現(xiàn)場(chǎng)圖片,并能對(duì)指定時(shí)間內(nèi)的車輛數(shù)據(jù)進(jìn)行匯總,顯示超載車輛,車流量、車型等數(shù)據(jù)。系統(tǒng)運(yùn)行流程圖如圖4 所示。
圖4 云端技術(shù)路線
實(shí)驗(yàn)平臺(tái)采用Jetson Nano 4G,CSI 攝像頭,使用輪輻式壓力傳感器做稱重模塊,記錄不同的車輛和車速經(jīng)過(guò)檢測(cè)點(diǎn)的數(shù)據(jù),實(shí)驗(yàn)數(shù)據(jù)如表1 所示。
表1
從表1 的數(shù)據(jù)可知,整個(gè)系統(tǒng)的正確率很高,稱重檢測(cè)模塊在車輛低速經(jīng)過(guò)時(shí),正確率最高,耗時(shí)最長(zhǎng),這主要是由于系統(tǒng)采用整車稱重設(shè)計(jì),車輛要完全在稱重模塊內(nèi)才能達(dá)到最大重量,稱重檢測(cè)模塊的平均正確率在98.76%。車牌檢測(cè)模塊隨著車速不斷地增加,攝像頭捉拍到高清圖像的難度增加,為了保證檢測(cè)的正確率在98%以上,需要經(jīng)過(guò)多輪的檢測(cè),因此耗時(shí)也隨著車速的增加而加長(zhǎng),平均檢測(cè)耗時(shí)為1.27 秒。車型檢測(cè)是在車牌檢測(cè)之后,由于車速的增加,所獲取的圖像質(zhì)量略有下降,平均正確率為94.96%,車型分類只對(duì)采集后的圖像進(jìn)行識(shí)別,因此耗時(shí)保持不變?yōu)?.5 秒。
通過(guò)上述的實(shí)驗(yàn)數(shù)據(jù)表明,基于邊緣計(jì)算的整車動(dòng)態(tài)稱重系統(tǒng)在車輛的稱重檢測(cè)、車牌識(shí)別、車型分類方面與現(xiàn)有的技術(shù)對(duì)比,具有系統(tǒng)響應(yīng)速度快,正確率高的特點(diǎn),能完全滿足檢測(cè)要求。而且結(jié)構(gòu)簡(jiǎn)單、易于維護(hù)、造價(jià)成本低、采用5G 無(wú)線網(wǎng)絡(luò)連接、一云端多終端,適合在縣鄉(xiāng)公路布控。實(shí)現(xiàn)了車輛在不停車的狀況下的超限超載檢測(cè),大大提高了公路運(yùn)輸載重檢測(cè)效率,可從根源上降低了車輛超限超載對(duì)路面造成的損傷和人員傷亡的情況,提升公路運(yùn)輸效率,保護(hù)人民生命財(cái)產(chǎn)安全。