裴俊艷,吳景前,楊陽,李培碩
(中國礦業大學 徐海學院,江蘇徐州,221000)
隨著近年來我國經濟的快速發展,居民的收入水平持續提高,汽車開始成為居民家庭的標配,汽車保有量大幅上升。根據智研咨詢發布的《2020-2026年中國智慧停車行業競爭現狀及投資商機預測報告》的數據顯示,國內停車設施建設速度遠滯后于汽車保有量的增長速度,停車位供給缺口巨大。除此之外,傳統停車行業的管理方式也相對落后,存在諸多痛點,困擾著交管部門、車場運營者與私人車主。資源錯配問題導致了城市車位使用率低下,也進一步加深了城市停車難的困境。為了緩解日益嚴重的城市停車難題,近年來我國政府持續出臺相關政策,支持停車產業發展,因此智慧停車場在中國具有巨大的市場需求。盡管市面上已存在一些智慧停車場的方案,但是主要集中在計時計費和移動支付方面,對于路徑規劃、車位引導方面有明顯不足。另外因成本原因,智慧停車場普及率過低,不同的停車場規劃方案也對智慧停車場的適用性提出了較高要求。
(1)研究的目標
本設計計劃采用圖像識別與處理技術采集車輛信息,與上位機的數據庫信息進行交互,通過A*算法的改進算法分析出合理、高效的停車方案和行駛路徑,并通過電子引導方式幫助車主停好車,利用硬件平臺與軟件環境相互交叉合作共同實現一套完備的智慧停車系統。
(2)主要內容
在車輛進入停車場時,閘口處利用圖像處理技術對車牌進行掃描、識別,并將相關數據上傳至上位機數據庫。與此同時,利用A*優化算法為當前車輛提供最優的停車位,并規劃出合理的停車路線。當車輛按照歸劃路線行駛時,在停車場內關鍵路口對車主進行路徑引導。當車輛進入車位后,利用圖像識別或超聲波探測技術判斷其是否停車規范,并對車主發出提醒。停車成功后系統會記錄當前狀態并更新停車場狀態(見圖1)。

圖1 智慧停車系統流程圖
(1)圖片灰度化與二值化
在車牌識別系統中,通常會將圖片進行灰度化處理,即將所獲取彩色圖像轉化為灰度圖像,上述過程就稱為圖像的灰度化。灰度化的原理是,彩色圖像中R、G、B三個分量的值決定了具體的像素點,一個像素點通常可以有成千上萬種顏色,而灰度圖像是一種特殊的彩色圖像,不同之處在于R、G、B三個分量的具體值是一樣的,且圖像中每個像素點的變化區間是0~255,在保留圖像特征和輪廓的基礎上,灰度圖像仍然可以反應整幅圖像的完整特征。這樣便為實際應用過程中簡化了運算量。二值化是對于已經灰度化的圖像中的每一個像素點逐個進行閾值計算,它的閾值是由像素周圍點局部的灰度特性和像素灰度值來確定的。局部閾值法就是通過計算圖像的每個像素灰度級,保存圖像的詳細信息。二值化算法描述如圖2所示。

圖2 圖片二值化處理
(2)Canny邊緣檢測
Canny邊緣檢測是從不同的視覺對象中提取有用的結構信息從而大幅度的減少需要處理的數據量,目前Canny邊緣檢測技術已經廣泛應用于計算機視覺系統之中。Canny邊緣檢測技術包絡要盡可能多的捕捉圖像中的邊緣,捕捉到的邊緣精確定位在真實邊緣的中心,并要求對于給定的邊緣只能被標記一次。首先通過高斯濾波器使圖像平滑,濾除噪聲,其次計算像素點的梯度強度和方向,應用非極大值抑制消除邊緣檢測帶來的散雜影響,最后抑制孤立的弱邊緣。
(3)車牌位置定位與識別
經過二值化的圖片,車牌字符與車牌底色形成強烈的對比,字符集中于一塊長方形區域,具有寬高成一點的比例。車牌區域的像素值會變化頻繁,總數會大于一個定值,這時就可以將這個值作為判斷車牌區域的一個依據。車牌的水平區域,最高行與最低行的差值即為車牌在圖像中的高度。在水平區域內選擇任意一行,用L長的窗口橫向移動,統計窗口中相鄰像素0,1的跳變次數并存入數組中。若窗口移動到車牌的垂直區域時,窗口內的跳變次數應該最大。所以在數組中找到最大值,最大值對應的區域即為車牌的垂直區域。
字符識別是車牌識別中重要的組成部分,字符識別的基本思路是匹配度判斷。待識別字符特征與預先存儲在計算機中的標準字符模式表達形式的集合逐個進行匹配,找出最接近輸入字符模式的表達形式,該表達形式對應的字就是識別結果。標準字模的設計采用深度學習的神經卷積網路,將大量的數據分為訓練集、測試集進行機器學習。根據我國車牌標磚,三個神經網絡包含:漢字網絡、字母網絡、字母數字網絡。
停車場系統框圖如圖3所示。

圖3 停車場系統框圖
(1)閘門開關
該部分設計由STM32F013作為主控芯片,配合3.3V高電平觸發繼電器控制閘門開關。在圖像處理階段獲取車牌信息后,將車輛信息發送到單片機,單片機檢測到車輛信號就意味著有車輛駛入,此時會給連接繼電器的GPIO口一個高電平信號,使閘門電路聯通,并設置一定時長的延時,確保車輛已經駛入停車場內。隨后恢復GPIO口的低電平狀態等待下一次信號的到來。在實驗研究階段利用有源蜂鳴器對閘門抬起與放下狀態進行模擬,在實際操作時可選取高電壓的繼電器控制閘門開關。
(2)路線指引
路線指引基于A*(A-Star)算法規劃最優停車路線,利用0.96寸OLED屏幕顯示最優路徑信息,從而對用戶進行路徑指引。A*(A-Star)算法是一種在靜態路網中求解最短路徑最有效的直接搜索方法。表達公式為f*(n)=g*(n)+h*(n)。其中,f*(n)是從初始狀態經由狀態n到目標狀態的最小代價估計,g*(n) 是在狀態空間中從初始狀態到狀態n的最小代價,h*(n) 是從狀態n到目標狀態的路徑的最小估計代價。對路徑進行搜索時,需要創建兩個表,表一中保存所有已經生成但是沒有被考察到的節點,表二中保存已經被訪問過的節點,計算起點h*(n)的值放入表一中,經過C語言程序里的判斷和循環語句不斷更新表一里f*(n)的值并對其進行排序,即從終點開始,每一個節點沿著父節點移動直到起點形成的路徑取倒序就是所獲取的最優路徑。

圖4 最優路徑關鍵算法
(3)停車檢測
停車檢測是針對停車場因停車不規范而導致的停車位利用率低下問題所設計研究的。在用戶到達停車位時,該系統利用超聲波模塊測量車身與車位邊界的距離,從而判斷該車位用戶是否停車規范。超聲波傳感器采用的是HCSR04,具有VCC、GND、Trig、Echo四個引腳,其使用方法為:將Trig 設置為高電平并保持至少10μs,傳感器將發出 8 個脈沖的聲波。對于聲波產生回聲所需的整個時間內, Echo 要設為高電平。該高電平維持時間即是聲波經過的時間,則可計算障礙物的距離。測量Echo 為高電平的時間是利用STM32的通用定時器進行輸入捕獲,測量得到的高電平時間通過公式:距離 = Thigh×340/2 (m) ,其中Thigh單位為秒(s), 340米/秒(m/s)為聲速。在停車合格的時指示屏顯示停車完成信息,并回傳車位信息,然后在算法中將該車位位置設置為障礙物,并將程序里記錄車位數變量的值減一,以提醒后來用戶是否有空余車位,減少排隊等候時間。同時在用戶將車駛出時,釋放被標志的障礙物,獲得障礙物標志時間,從而實現對車輛的收費管理。
移動數據端系統框圖如圖5所示。

圖5 移動數據端系統框圖
(1)微信小程序
智慧停車場系統移動端的設計可以很大程度上減少硬件手持設備的開銷,將手機作為數據顯示、路徑指引的工具,可以很大程度上提高用戶的使用的便捷程度。本次移動數據端將微信小程序作為交互平臺,微信小程序是一種不用下載就可以使用的應用,也是一種創新,經過將近兩年的發展,已經構造了新的微信小程序開發環境和開發者生態,目前已經有超過150萬的開發者加入到了微信小程序的開發,小程序使用的是JS編程語言,有成熟的框架、組件等工具,開發周期更短、流程更簡單,只需要一個開發版本,即可跨平臺運行在Android和iOS上;非常適合低頻簡單的應用程序;大小不到1MB,無需下載加載且速度極快;支持多級緩存,查詢獲取信息的效率更高。主要用到的文件有視圖層和邏輯層,視圖層是用來顯示頁面的制作效果,用作人機交互的界面,可以通過WXML來設計頁面效果。邏輯層用來處理頁面之間傳遞的數據、參數,涉及到一些組件,處理內部的數據交互,可以通過js文件來實現邏輯功能。部分頁面如圖6~7所示。

圖6 上傳OneNet數據

圖7 獲取OneNet數據
系統根據傳感器上傳的數據實時更新車位狀態,在小程序可查看當前剩余車位數量、當前場內排隊數量以及等待時長,如圖8~9所示。

圖8 用戶登錄界面

圖9 車位狀態顯示界面
(2)MQTT通信協議
數據傳輸使用MQTT通信協議,將單片機采集到的數據用ATK-ESP8266 WIFI模塊發送到MQTT服務器,微信小程序通過訂閱服務器轉發路徑來獲取單片機的數據,從而實現單片機到小程序的數據傳輸。MQTT服務器可以自建或者租用網絡上一些開源的已經建設好的服務器申請添加設備。MQTT服務器通過設備號、密碼、端口號以及mqtt:ws地址與微信小程序進行聯接、相互通信,MQTT服務器起著中間橋梁的作用,聯系著下位機與上位機,進行客戶端與服務器端的通信。MQTTBox軟件是一個帶有可視化界面的MQTT客戶端工具。該軟件具有很多優良特性:支持創建連接到相同或不同MQTT代理的多個并發MQTT客戶端、支持TCP,SSL/TLS,Web套接字和安全的Web套接字、支持創建具有多種連接設置的MQTT客戶端。
通信部分采用ESP8166WiFi模塊,該模塊目前已經廣泛應用于物聯網智能家居領域。本次設計便利用這一模塊進行數據傳輸,首先將單片機采集到的數據用ATK-ESP8266 WiFi模塊發送到MQTT服務器,微信小程序通過訂閱服務器轉發路徑來獲取單片機的數據,最終實現單片機到小程序的數據傳輸。
此次智慧停車場的設計,采用出入識別系統都連接到一個系統后臺,用戶可以通過小程序到這個系統查看所有停車場信息,提示用戶是否有車位,進入停車場后小程序可以自動結算費用,付費成功即可離開。在物聯網迅速發展與現代城市停車位一位難求的狀況之下,本設計可以很好的解決都市停車難效率低的問題,具有良好的市場發展前景。同時在一些突發事件需要提升改進,如在車主沒有按照規劃路徑行駛或停車的情況下,需要設有動態靈活的實時解決方案,確保先前的錯誤停車不會影響后續到達停車場車輛的秩序,存在的問題在后續的算法設計中有待進行多方面研究與考察。同時在生活中進行大量的實地考察不斷完善最優路徑規劃時應該注意的多方面綜合因素,切實考慮用戶的實際需求。