張漪 蔣欽如
摘 要:當下隨全球經濟的快速發展,環境正作為其發展代價,每況愈下,其中,水面環境尤甚。為了在一定成本范圍內有效改善水面環境問題,為治理水污染提供新思路,通過借助藍牙模塊及馬達控制模塊,實現對馬達的遠程藍牙控制;通過微型電壓動力式抽水泵,實現靜水的俯流,在51單片機燒錄程序,串口通信實現與藍牙對接。再通過藍牙模塊與手機APP對接,從而實現對水面漂浮物的采集。本設備還可自主擴展OLED、繼電器模塊,實現可視化、無線化的智能垃圾收集器的控制。
關鍵詞:深度學習;卷積神經網絡;Faster-RCNN算法;嵌入式;水面垃圾收集
1 引言
近年來,隨著媒體的報道和政策的變化,水污染問題[1]引起越來越多的人重視。我國東南沿海城市的河流、湖泊的水質日益降低。越來越多的漂浮物出現在水面上,這些漂浮物大多為生活垃圾和水藻。水面漂污物不僅會導致水體變質,從而不利于人體健康,還會影響當地的生態形象。當前,人們普遍采用人工方式通過駕駛船只來收集水面垃圾[2],或通過竹竿從岸邊清理水面漂浮物。顯然,如何設計一種更加高效的水面垃圾收集系統成為解決目前困境的熱點問題。
深度學習是神經網絡發展到一定時期的產物[3]。2006年,國外研究團隊首次提出了首次提出并闡述了深度學習的概念,在這段時期,人們常常采用分層次初始化的方法來完成神經網絡的訓練。深度學習的本質是通過低層特征之間的組合產生更加抽象的高層特征來描述研究對象的變化規律和特征。卷積神經網絡是常見的一種深度學習方法,作為一種深層前饋型神經網絡,它可以高效的識別和提取圖片的特征,目前已被廣泛的應用于人臉識別等圖像處理領域。
因此,本文提出了一種結合卷積神經網絡的深度學習算法和嵌入式系統的水面垃圾收集系統的設計方法。
2 設計構想
本系統主要由三個主要部分組成,包括:主電路,控制電路和檢測電路。其中,主電路包括兩個電機,一個GPRS模塊,一個攝像頭和若干傳感器;控制電路為STM32F103單片機;檢測電路中包含一個過電流檢測模塊。STM32單片機[5]不僅擁有豐富的接口,同時配合GPRS和其他模塊的開發資料非常齊全,也擁有功耗低,內核強大和實時性強的特點,因此我們選用STM32作為整套系統的控制電路。通過控制器,經過功率執行裝置,驅動電機和水泵工作,同時由風速傳感器獲取書面風速信息,并利用GPS獲取當前位置信息,結合攝像頭拍攝的照片,通過4G模塊上傳至服務器后,經過圖像識別標記垃圾將坐標信息返回給控制器,形成閉環系統使水面垃圾收集系統工作。
3 技術實現
3.1 基于卷積神經網絡的水面漂浮物識別
為了提高深度學習后的圖像識別模型的準確性,我們將數據分為測試集和數據集和驗證集,一方面數據集要足夠大,另一方面兩個數據集應該滿足同分布并且獨立的條件。我們首先通過網絡和實際拍攝收集了關于水面漂浮物的照片530張。數據集的照片數量、測試集和驗證集的數量比近似滿足2:1:1。
其次,由于R-CNN算法訓練分為多個階段,步驟多;磁盤占用大,1000張照片會產生約幾十G的特征文件,大大降低了測試運行的效率,因此我們使用Faster-RCNN[4]方法,即通過卷積神經網絡自行產生建議框,并且和目標檢測網絡共享卷積網絡,有效的減少了建議框的且建議框的質量也有本質的提高。算法過程如下:
(1)輸入測試圖像;
(2)將整張圖片輸入CNN,進行特征提取;
(3)用RPN生成建議窗口(proposals),每張圖片生成300個建議窗口;
(4)把建議窗口映射到CNN的最后一層卷積feature map上;
(5)通過RoI pooling層使每個RoI生成固定尺寸的feature map;
(6)利用Softmax Loss(探測分類概率)和Smooth L1 Loss(探測邊框回歸)對分類概率和邊框回歸(Bounding box regression)聯合訓練.
水面漂浮物的圖像識別問題的本質是二分類[6]問題,通過判斷圖片中的某一區域是漂浮物區域(塑料垃圾)還是其他區域(水面、岸邊、石塊、浮萍等等)。在水面環境中,背景區域的內容相比于其他環境更加簡單,因此更容易識別出水面上存在的漂浮垃圾,通過形狀差異和顏色差異區分,其精度與其他復雜背景環境相比有所提高。
3.2 水面垃圾收集嵌入式系統實現
水面垃圾收集裝置進入指定水域后,電源給整套裝置供電,PWM輸出可調的直流電壓驅動直流電機轉動,通過齒輪帶動螺旋槳,從而使裝置按照預先設定動作以直線方式行進。
視覺模塊是一個500萬像素的USB攝像頭,OV5648模組,實現自動對焦,自動增益和曝光,當裝置行進過程中,如果水面上的漂浮物進入攝像頭的識別區域,攝像頭進行快速拍照,圖片經過圖像處理模塊的加工處理通過4G模塊把壓縮后的圖片發送至新浪云端;同時記錄目前裝置所在位置的參數,通過坐標轉換程序轉換為當前工作水域的坐標參數,為收集垃圾做好準備。
通過圖像識別獲取水面漂浮垃圾的具體位置后,緊接著通過坐標轉換程序轉換為當前工作水域的坐標參數,控制器控制舵機轉向改變行進位置,計算出動向垃圾所在處行進的路線距離,然后電機啟動帶動螺旋槳轉動,當裝置前沿緩沖區觸碰到漂浮垃圾后停下,開啟水泵吸附垃圾,垃圾隨水流進入收集裝置。當液位傳感器檢測到水位上升到閾值時,水泵停止工作,垃圾收集盒關閉并開始通過濾網放水。完成垃圾收集后,裝置再次啟動并循環執行相關動作。
3.3 控制程序設計
本程序使用C語言編程。藍牙模塊主要負責通過通信接口采集傳感器數據,經過處理或所接收的數字數據可以通過BLE接口發送,并由內置BLE功能的手機或者任何其他客戶端設備進行監測與調控。傳感器的DATA管腳連接單片機的P2口,藍牙串口模塊的RXD、TXD分別連接單片機的TXD、RXD。該模塊得到串口數據后會轉成藍牙數據。上電后,單片機復位并開始對各模塊進行功能初始化,此時轉子以零轉速的初始化狀態投入工作,當其轉速達到某一程度時,通過控制其逆變電路的開關器件的通斷,可使輸出端得到一系列幅值相等的電壓脈沖,再用這些脈沖來代替我們所需要的正弦波,即在輸出波形的半個周期中產生多個脈沖,使各脈沖的等值電壓為正弦波形,所獲得的輸出平滑且低次諧波少,隨后根據實際情況對各脈沖的寬度進行調制,即可調節逆變電路輸出電壓的大小,并調節輸出頻率,以此控制轉子轉速。同理,通過控制伺服機的PWM輸入信號,控制馬達旋轉角度。傳感器模塊子程序主要完成數據的采集,以及和單片機直接的數據通信等,此部分程序的完成是整個系統軟件設計成功與否的關鍵所在。4G通信模塊子程序主要完成圖片和位置信息的發送和接收和單片機直接的數據通信等功能。
4 結論
本文通過對進行一類基于深度學習的水面垃圾收集系統研究設計,通過攝像頭采集水面照片,經過圖像處理模塊處理后經4G通訊模塊將處理后的圖片發送至云端,采用Faster-RCNN算法對圖像進行識別,經坐標變換后提取垃圾位置,之后將信息發送給主控裝置,通過控制電機進行啟動、調速,控制舵機進行方向調整。通過結合卷積神經網絡的深度學習算法和嵌入式系統,實現了對圖片中水面垃圾的快速、高精度檢測,大幅度地降低人力成本,具有較高的實用價值。但是當前的設計方案仍有它的不足之處,一是循跡路線無法覆蓋所有水域,存在盲區;二是圖像識別的精度仍可進一步的提高,這需要更大的數據集和更加優化的算法作為支撐。
參考文獻
[1] 郭智超.水污染防治工作中存在的問題及對策研究[J].化工管理,2019(06):159.
[2] 李思雨,吳艷娟,王帆,胡遠杰.智能型水面垃圾清理器控制系統的研究與實現[J].自動化與儀表,2017,32(11):45-48+63.
[3] 徐夢雪.基于深度學習的圖像識別技術綜述[J].計算機產品與流通,2019(01):213.
[4] 胡炎,單子力,高峰. 基于Faster-RCNN和多分辨率SAR的海上艦船目標檢測[J]. 無線電工程,2018(2):96-100.
[5] 勾慧蘭,劉光超. 基于STM32的最小系統及串口通信的實現[J]. 工業控制計算機,2012,25(9):30-32.
[6] 鄭靈鳳,胡勝,朱蓉,等. 面向照片-圖形圖像的二分類方法[J]. 計算機系統應用,2017,26(6):176-181.