王麗娟,張雨潔,李俊杰,洪文韜,廖智民


摘 要:本文設(shè)計(jì)了一款以 STM32和樹(shù)莓派為核心控制器的共享汽車超載智能檢測(cè)預(yù)警系統(tǒng)。系統(tǒng)分為硬件和軟件兩部分:硬件部分以STM32和樹(shù)莓派為平臺(tái),搭載了稱重壓力傳感器、OV5647攝像頭模塊、有源蜂鳴器模塊、藍(lán)牙模塊等外設(shè),實(shí)現(xiàn)了人數(shù)檢測(cè)、后備箱載荷檢測(cè)、報(bào)警及APP提醒等功能;軟件部分采用Python語(yǔ)言與C語(yǔ)言編寫(xiě),使用RT-Thread作為實(shí)時(shí)操作系統(tǒng),實(shí)現(xiàn)多線程操作。該系統(tǒng)工作具有準(zhǔn)確性、實(shí)時(shí)性及穩(wěn)定性,為共享汽車超載智能檢測(cè)預(yù)警系統(tǒng)的設(shè)計(jì)提供了一種方案。
關(guān)鍵詞:共享汽車;超載檢測(cè);STM32單片機(jī);樹(shù)莓派;人臉識(shí)別;智能檢測(cè)
0 前言
共享汽車也稱汽車分時(shí)租賃,是一種新興的汽車租賃模式,用于人們短期內(nèi)租車。作為一種交通運(yùn)輸新業(yè)態(tài),共享汽車在我國(guó)興起并快速發(fā)展。然而,隨著共享汽車廣泛進(jìn)入人們的生活,在共享汽車出行過(guò)程中,由于部分使用者缺乏安全意識(shí),存在僥幸心理,共享汽車超載事故也在頻頻發(fā)生,對(duì)公共交通安全造成較大隱患。共享汽車超載問(wèn)題需要引起我們的關(guān)注與重視。
1 系統(tǒng)構(gòu)成
1.1 系統(tǒng)方案
1.1.1 總體設(shè)計(jì)
本系統(tǒng)由五部分構(gòu)成:人臉檢測(cè)系統(tǒng),傳感器檢測(cè)系統(tǒng),控制系統(tǒng),報(bào)警系統(tǒng),傳輸模塊。人臉檢測(cè)系統(tǒng)包括樹(shù)莓派、OV5647攝像頭模塊,傳感器檢測(cè)系統(tǒng)包括稱重壓力傳感器,控制系統(tǒng)STM32F429IGT6作為主控芯片;報(bào)警系統(tǒng)由蜂鳴器模塊構(gòu)成,傳輸模塊由藍(lán)牙模塊構(gòu)成。系統(tǒng)總體設(shè)計(jì)框圖如圖1所示。
1.1.2 工作流程介紹
駕駛?cè)撕统丝瓦M(jìn)入共享汽車內(nèi),行李物品放入后備箱;人臉識(shí)別檢測(cè)系統(tǒng)用于檢測(cè)人員的超載情況,利用攝像頭對(duì)車內(nèi)乘客進(jìn)行人臉捕捉[1],經(jīng)樹(shù)莓派使用Haar Cascade檢測(cè)人臉的數(shù)量,LBP算法進(jìn)行人臉識(shí)別,將人臉檢測(cè)數(shù)量傳輸至STM32單片機(jī)內(nèi),將車內(nèi)實(shí)際人數(shù)與預(yù)設(shè)核載人數(shù)進(jìn)行對(duì)比,當(dāng)乘客人數(shù)超過(guò)設(shè)置好的共享汽車可搭載最大人數(shù)后,則系統(tǒng)將發(fā)出報(bào)警提示,并將超員人數(shù)通過(guò)共享汽車手機(jī)端APP進(jìn)行提示[2]。
稱重系統(tǒng)用于檢測(cè)行李重量,通過(guò)稱重傳感器測(cè)量后將采集到的信息傳輸?shù)絾纹瑱C(jī)中進(jìn)行處理。當(dāng)實(shí)際稱重質(zhì)量超過(guò)預(yù)設(shè)后備箱載重質(zhì)量時(shí),蜂鳴器將發(fā)出報(bào)警提示,同時(shí)會(huì)將超重重量在APP進(jìn)行記錄,提示駕駛?cè)撕统丝鸵?guī)范乘車。
2 系統(tǒng)硬件設(shè)計(jì)
2.1 STM32主控芯片
該系統(tǒng)采用STM32單片機(jī),以STM32F429芯片作為主控芯片,搭載ARM Cortex-M4 內(nèi)核,性能優(yōu)良,可搭載多種外設(shè),內(nèi)置嵌入式OS采用我國(guó)自主開(kāi)發(fā)的RT-thread。其優(yōu)勢(shì)在于系統(tǒng)完全開(kāi)源,不僅具有實(shí)時(shí)內(nèi)核,還具備豐富的中間層組件,支持包括高性能、實(shí)時(shí)功能、數(shù)字信號(hào)處理、低功率、低電壓操作,擁有集成和易用的開(kāi)發(fā),還具有優(yōu)秀的圖像處理能力。
2.2 圖像采集模塊
為保證圖像質(zhì)量的同時(shí)更快地實(shí)現(xiàn)圖像采集,圖像采集模塊采用OV5647攝像頭模塊,具有500 W像素,采集的圖像分辨率為2 594×1 944,讀取圖像方便快捷,具有拍攝對(duì)焦距離可調(diào)功能,曝光、白平衡、消除燈光條紋、濾波等均實(shí)現(xiàn)自動(dòng)化,可滿足設(shè)計(jì)需求,而且功率低、采集速度快,因此選用OV5647攝像頭作為圖像采集模塊。
2.3 稱重壓力傳感器模塊
稱重壓力傳感器[3]基于應(yīng)變效應(yīng),主要包含三個(gè)部分:彈性敏感元件,電阻應(yīng)變片,測(cè)量電路。彈性敏感元件在外力作用下產(chǎn)生彈性變形,使粘貼在表面的電阻應(yīng)變片也隨同產(chǎn)生變形,電阻應(yīng)變片發(fā)生變形后,它的阻值將發(fā)生變化,使電橋失去平衡,測(cè)量電路將電阻轉(zhuǎn)換為電信號(hào)。
3 人臉識(shí)別算法
3.1 人臉檢測(cè)算法—使用Haar Cascade檢測(cè)人臉的數(shù)量
為了產(chǎn)生穩(wěn)定的分類結(jié)果和跟蹤結(jié)果,從圖像中提取出細(xì)節(jié)并將提取結(jié)果作為圖像特征。兩個(gè)圖像的相似程度可通過(guò)對(duì)應(yīng)特征的距離來(lái)度量。對(duì)給定的圖像,特征可能會(huì)因區(qū)域大小而有所不同,區(qū)域大小也被稱為窗口大小。即使窗口大小不同,僅在尺度上不同的兩幅圖像也應(yīng)該具有相似的特征,因此能為不同大小的窗口生成特征非常有用,這些特征稱為級(jí)聯(lián),而Haar Cascade在尺度變化上具有魯棒性。
Haar Cascade是一系列用來(lái)確定一個(gè)對(duì)象是否存在于圖像中的對(duì)比檢查。對(duì)比檢查由檢查圖像的中心垂直是否比邊緣垂直更輕微等過(guò)程組成,這一系列對(duì)比檢查被分成多個(gè)階段,后一階段的運(yùn)行以先前階段的完成為前提。前期階段進(jìn)行大范圍的檢查,后期階段進(jìn)行更多更小區(qū)域的檢查。算法運(yùn)行時(shí),首先從Haar Cascade二進(jìn)制文件加載一個(gè)Haar Cascade;然后通過(guò)直接傳遞“frontalface”字符串給構(gòu)造函數(shù),將一個(gè)內(nèi)置的正臉Haar Cascade載入內(nèi)存;最后,該方法會(huì)返回載入的Haar Cascade對(duì)象,用來(lái)使用 image.find_features()。
3.2 人臉識(shí)別算法——LBP算法
LBP是Local Binary Pattern局部二值模式的縮寫(xiě)。LBP特征簡(jiǎn)單易算,且具有灰度不變形、旋轉(zhuǎn)不變形和紋理特征維度低等顯著優(yōu)點(diǎn),在一定程度上消除了光照變化的問(wèn)題,于是選擇提取圖像的LBP特征來(lái)進(jìn)行人臉識(shí)別。
4 軟件設(shè)計(jì)與實(shí)現(xiàn)
4.1 程序設(shè)計(jì)
設(shè)計(jì)中,STM32的硬件程序采用C語(yǔ)言編寫(xiě)。
單片機(jī)程序使用RT-Thread作為實(shí)時(shí)操作系統(tǒng),實(shí)現(xiàn)多線程操作目的,有效的提高了單片機(jī)CPU的使用率[4]。
單片機(jī)程序主要包含三大部分,壓力傳感器數(shù)據(jù)采集及處理,攝像頭數(shù)據(jù)的處理及分析,藍(lán)牙通信的信息傳輸。其中壓力傳感器通過(guò)HX711模塊進(jìn)行高精度的AD采樣,有效提升獲取壓力傳感器的精度。當(dāng)壓力傳感器傳輸?shù)臄?shù)值經(jīng)過(guò)處理后超過(guò)設(shè)定的閾值或處理的攝像頭數(shù)據(jù)中檢測(cè)人數(shù)超過(guò)設(shè)定值時(shí),會(huì)引起蜂鳴器的報(bào)警電路響應(yīng),提醒駕駛員目前的車內(nèi)情況不符合駕駛要求,并會(huì)經(jīng)過(guò)藍(lán)牙傳輸,將當(dāng)前的車內(nèi)數(shù)據(jù)通過(guò)設(shè)計(jì)的APP傳入云端記錄。
本系統(tǒng)的另一處理單元為樹(shù)莓派4B采用Python語(yǔ)言編寫(xiě),通過(guò)人臉檢測(cè)算法,將攝像頭采集的圖像進(jìn)行處理,并通過(guò)藍(lán)牙與單片機(jī)進(jìn)行數(shù)據(jù)傳輸,將實(shí)時(shí)處理完的檢測(cè)人數(shù)數(shù)目返回給單片機(jī)處理。
4.2 系統(tǒng)實(shí)現(xiàn)
系統(tǒng)經(jīng)多次及多方面實(shí)際測(cè)試,從人臉檢測(cè)方面,分別進(jìn)行人數(shù)變化及不同人臉的識(shí)別測(cè)試。從壓力傳感器檢測(cè)方面,分別進(jìn)行了小重量及大重量精度測(cè)試。從各模塊調(diào)用情況,進(jìn)行了較長(zhǎng)時(shí)間不同場(chǎng)景的測(cè)試,都已驗(yàn)證本系統(tǒng)有較強(qiáng)的魯棒性及穩(wěn)定性。測(cè)試結(jié)果顯示,已實(shí)現(xiàn)系統(tǒng)的全部功能,其響應(yīng)速度、準(zhǔn)確度都達(dá)到了設(shè)計(jì)要求。
5 結(jié)論
本文通過(guò)設(shè)計(jì)了一款以STM32和樹(shù)莓派為核心控制器的共享汽車超載智能檢測(cè)預(yù)警系統(tǒng),利用STM32和樹(shù)莓派為平臺(tái),搭載了稱重壓力傳感器、OV5647攝像頭模塊、有源蜂鳴器模塊、藍(lán)牙模塊等外設(shè),實(shí)現(xiàn)了人數(shù)檢測(cè)、后備箱載荷檢測(cè)、報(bào)警及APP提醒等功能。該系統(tǒng)工作準(zhǔn)確性、實(shí)時(shí)性及穩(wěn)定性較高,為共享汽車超載智能檢測(cè)預(yù)警系統(tǒng)的設(shè)計(jì)提供了一種方案。
參考文獻(xiàn):
[1]一種基于人臉檢測(cè)的客車超載檢測(cè)裝置[P].中國(guó).專利授權(quán)公告說(shuō)明書(shū).CN 202771616 U.2013.03.06.
[2]劉偉.汽車超載預(yù)警系統(tǒng)設(shè)計(jì)[D].陜西:西北農(nóng)林科技大學(xué),2011.
[3]彭春華,劉建業(yè),劉岳峰,等.車輛檢測(cè)傳感器綜述[J].傳感器與微系統(tǒng),2007,26(6):4-7.
[4]禹璽,董蘊(yùn)華.基于移動(dòng)通信網(wǎng)絡(luò)的客車超載檢測(cè)系統(tǒng)設(shè)計(jì)[J].郵電設(shè)計(jì)技術(shù),2017(6):47-50.