梁 碩
(河南工業(yè)職業(yè)技術(shù)學(xué)院,河南 南陽 473000)
進入農(nóng)業(yè)發(fā)展新時期,我國通過實施測土配方智能施肥、推廣應(yīng)用良種良法、機械化耕種作業(yè)、統(tǒng)一飛防作業(yè)、土壤改良工程、烘干貯藏服務(wù)及建設(shè)信息云平臺等措施,推進農(nóng)業(yè)現(xiàn)代化的發(fā)展,逐步由傳統(tǒng)農(nóng)業(yè)生產(chǎn)向機械化生產(chǎn)提升發(fā)展,而機械化耕種與采摘作業(yè)收獲一直是重中之重。在農(nóng)忙時期,農(nóng)機作業(yè)頻繁,投入機械量大面廣,加上農(nóng)用車輛駕駛員精力有限,容易出現(xiàn)安全事故,損害生命財產(chǎn)安全。為了杜絕這類現(xiàn)象和問題,基于嵌入式和機器學(xué)習(xí),設(shè)計了一套自動駕駛系統(tǒng),在駕駛員疲勞時實現(xiàn)農(nóng)用車輛的自動駕駛和作業(yè),有效預(yù)防和減少農(nóng)機安全事故,保障人民生命財產(chǎn)安全,營造和諧、穩(wěn)定的社會環(huán)境。
調(diào)查研究表明:交通事故的原因主要有主觀、客觀、直接和間接4種。從交通安全方面的實際情況出發(fā),又可以分為人、車、路、環(huán)境和管理等多個方面。其中,人的原因可以采用適當(dāng)辦法進行有效控制。在三秋農(nóng)忙期間,由于作業(yè)搶收工期短、任務(wù)重,農(nóng)機作業(yè)及場地轉(zhuǎn)移頻繁,容易造成駕駛員疲勞,出現(xiàn)意外。基于嵌入式和機器學(xué)習(xí),利用視覺傳感器、紅外傳感器,設(shè)計了一套農(nóng)用車輛自動駕駛系統(tǒng),通過對路況進行準(zhǔn)確識別和決策,提醒和輔助駕駛員進行作業(yè),預(yù)防和減少農(nóng)機事故。其中,該系統(tǒng)實現(xiàn)的基礎(chǔ)是對路況的準(zhǔn)確識別和檢測。
路況識別檢測子系統(tǒng)是實現(xiàn)車輛自動駕駛系統(tǒng)的基礎(chǔ),包括CCD相機、圖像采集卡、圖像處理器,以及人機交互界面等模塊。路況識別檢測子系統(tǒng)原理框架如圖1所示。

圖1 路況識別檢測子系統(tǒng)原理框架圖
CCD相機在車前和車后各安裝1個,分別在車輛前進和后退時,拍攝路況信息,并經(jīng)圖像采集卡傳輸?shù)綀D像處理器進行圖像信息的處理。處理器主要是對圖像進行信息的提取和對路況的識別,并將結(jié)果發(fā)送給車輛自動駕駛系統(tǒng),同時在人機交互界面進行實時顯示。
PCA(主成分分析)路況識別檢測系統(tǒng),大多是根據(jù)圖像的像素信息實現(xiàn)檢測與識別。首先利用圖像歸一化公式將其轉(zhuǎn)換為灰度圖,該公式為

(1)
其中,g(x,y)為原圖像的灰度;f(x,y)為原圖像歸一化的灰度。原圖像進行歸一化之后,會被分割成多個單位窗口,然后由圖像處理器提取每個窗口的像素信息作為感興趣信息進行進一步的處理。圖像歸一化的分割窗口如圖2所示。

圖2 圖像歸一化的分割窗口示意圖
原圖像被分割成多個單位窗口后,系統(tǒng)可以在fi(x,y)(i=1,2,3,…,n)中提取有效信息完成路況識別。其中,n為子窗口總數(shù)。路況識別檢測系統(tǒng)中,路況識別的魯棒性表示該系統(tǒng)的穩(wěn)定性和準(zhǔn)確性,其計算公式為
(2)
由式(2)可以看出:路況識別的穩(wěn)定性和準(zhǔn)確性與提取出的圖像像素信息直接相關(guān)。由于PCA路況識別檢測系統(tǒng)判斷決策的依據(jù)是感興趣像素信息,而該部分信息容易受到天氣狀況的影響,出現(xiàn)不穩(wěn)定情況。因此,提出在一般PCA檢測方法中加入圖像特征的提取,以減少系統(tǒng)受到環(huán)境信息的干擾,即首先提取圖像中的特征信息,然后利用SVM將特征參數(shù)進行分類識別,實現(xiàn)農(nóng)用車輛周圍的路況識別。
RGB顏色模型的優(yōu)勢在于表述簡單,但實際上其不能揭示色彩之間的關(guān)系,不符合顏色的表述,而HSV卻符合顏色的表述。所以在圖像處理過程中,常常是將RGB模型轉(zhuǎn)換為HSV模型,轉(zhuǎn)換公式為
(3)
其中,Max=max{R,G,B};Min=min{R,G,B};H為HSV模型中圖像的色調(diào);S為HSV模型中圖像的飽和度;V為HSV模型中圖像的透明度。
將CCD相機采集到的路況圖像從RGB模型轉(zhuǎn)換為HSV模型后,利用Hear特征類型對指定圖像窗口的白色和黑色區(qū)域像素灰度差值進行計算,公式為
(4)
其中,ωi為特征值加權(quán)系數(shù);RecSum(ri)為圖像窗口中區(qū)域ri的像素和。根據(jù)得到的灰度差值,并對其上每一像素點進行掃描,則可以計算出圖像的正向積分圖,實現(xiàn)Hear特征類型變換,即
(5)
其中,i(x,y)為每一像素點進行掃描的灰度值;s(x,y)為每一列的灰度值之和。根據(jù)正向積分圖,可以計算出Hear特征類型變換后的圖像特征信息,即
(6)
Xi=ri(x,y)+rs(x,y)+r(x,y)+i(x,y)
(7)
其中,Xi和{Xi}分別為圖像提取出的特征信息及其集合。
將從車況路況圖像中提取出來的路況信息進行降維處理,并結(jié)合SVM選定合適的特征參數(shù)進行處理,則
(8)
其中,Yi為進行降維處理后SVM選定的特征參數(shù)。該過程可減小圖像特征降維過程計算復(fù)雜度,并最大限度地去除天氣干擾因素,準(zhǔn)確完成農(nóng)用車輛的路況識別過程。
基于機器學(xué)習(xí)的農(nóng)用車輛自動駕駛系統(tǒng)主要包括訓(xùn)練和分類識別兩個過程。前者分為對路況信息的預(yù)處理、特征選擇及SVM分類器訓(xùn)練等;后者分為對新信息的預(yù)處理和分類判定決策等。基于機器學(xué)習(xí)的農(nóng)用車輛自動駕駛系統(tǒng)模型如圖3所示。
從農(nóng)用車輛自動駕駛系統(tǒng)模型可以看出,該系統(tǒng)由訓(xùn)練和分類識別兩個模塊構(gòu)成。下面進行各部分功能設(shè)計。
2.2.1 訓(xùn)練模塊
在系統(tǒng)訓(xùn)練模塊中,主要是進行路況信息的預(yù)處理、特征選擇及SVM分類器訓(xùn)練等步驟。訓(xùn)練模塊主要流程如圖4所示。

圖3 基于機器學(xué)習(xí)的農(nóng)用車輛自動駕駛系統(tǒng)模型

圖4 訓(xùn)練模塊流程圖
訓(xùn)練模塊的整個過程描述如下:
1)搜索路況信息樣本集,并對其進行預(yù)處理,然后對樣本進行分詞,并計算出現(xiàn)的頻率。同時,去除那些沒用的高頻低頻詞,組成樣本特征值集合。
2)采用特征度量方法,對特征度量值進行計算和排序,并選取一定數(shù)量的特征項,構(gòu)成新集合。
3)路況信息樣本集特征向量送入SVM訓(xùn)練器,對其進行訓(xùn)練,然后得到各項特征值的權(quán)值,根據(jù)權(quán)值構(gòu)成路況信息樣本分類器。
2.2.2 分類識別模塊
在系統(tǒng)分類識別模塊中,可以根據(jù)訓(xùn)練模塊得到SVM分類器,對路況信息樣本進行分類識別,確定自動駕駛控制指令。分類識別模塊流程如圖 5所示。

圖5 分類識別模塊流程圖
分類識別模塊的整個過程描述如下:
1)對新路況信息進行預(yù)處理,并對樣本進行分詞;
2)根據(jù)訓(xùn)練模塊得到的精簡特征項集合,計算特征項權(quán)值;
3)將新路況信息特征向量輸入SVM,進行分類識別;
4)比較輸出分類識別結(jié)果和實際類別,計算分類識別精度,實現(xiàn)農(nóng)業(yè)車輛的自動駕駛控制。
農(nóng)用車輛自動駕駛系統(tǒng)主要功能包括車道識別、保持跟車距離、自主超車、路徑規(guī)劃和取消自動駕駛等,因此需要各個傳感器來獲取障礙物、前方車輛、距離、交通標(biāo)志等周邊環(huán)境信息。本文根據(jù)系統(tǒng)需求,采用模塊化的思想進行設(shè)計,以農(nóng)用車輛為移動平臺,采用CCD相機、DSP控制器、紅外傳感器、超聲波傳感器、霍爾測速傳感器及電機控制器等組成系統(tǒng)硬件平臺。系統(tǒng)硬件體系包括水平式和垂直式兩種體系控制結(jié)構(gòu)。
在水平式體系控制結(jié)構(gòu)中,信息從左至右層層傳遞,上下層之間信息傳輸采用融合處理后進行下一步。水平式體系控制結(jié)構(gòu)如圖6所示。

圖6 水平式體系控制結(jié)構(gòu)
垂直式體系控制結(jié)構(gòu)中,按照行為能力將命令劃分為多個優(yōu)先級別,每層根據(jù)系統(tǒng)命令處理信息,并能發(fā)出指令和指令特定命令,并能夠獨立控制農(nóng)業(yè)車輛的運動狀況。垂直式體系控制結(jié)構(gòu)如圖7所示。

圖7 垂直式體系控制結(jié)構(gòu)
采用上位機實現(xiàn)對農(nóng)用車輛自動駕駛和手主駕駛的切換。上位機軟件是基于QT環(huán)境開發(fā)搭建的,并考慮了Windows和Unix系統(tǒng)的區(qū)別,設(shè)計了一個跨平臺的軟件。在軟件的工程搭建上,采用了工程文件和源文件分離的管理方式,將工程文件從源文件目錄中分離出來,單獨構(gòu)成目錄,提高開發(fā)效率。上位機軟件主界面如圖8所示。

圖8 上位機軟件主界面
為了驗證農(nóng)用車輛自動駕駛是否符合設(shè)計要求,以及是否具有可行性,讓搭載該系統(tǒng)的農(nóng)用車輛在布滿各種障礙物的環(huán)境下作業(yè),驗證其是否能夠自動駕駛,即測試系統(tǒng)在不同的障礙物密度下的避障性能。試驗中,每種情形都經(jīng)過多次測試,結(jié)果如表1所示。

表1 試驗結(jié)果
從表1可以看出:當(dāng)障礙物密度高于或等于50%時,該系統(tǒng)自動駕駛率下降明顯,但農(nóng)用車輛在實際作業(yè)中障礙物密度值不會高于20%。因此,系統(tǒng)能夠在常規(guī)作業(yè)中正常進行自動駕駛功能,實現(xiàn)了預(yù)期的功能,驗證了系統(tǒng)的可行性、穩(wěn)定性和有效性,說明系統(tǒng)對實現(xiàn)農(nóng)用車輛自動駕駛具有一定的現(xiàn)實意義。
針對農(nóng)用車輛在農(nóng)忙期間,由于工期短、任務(wù)重,農(nóng)機作業(yè)頻繁,會因駕駛員疲勞駕駛出現(xiàn)意外,影響人民生命財產(chǎn)安全的問題,提出了基于嵌入式和機器學(xué)習(xí)的農(nóng)用車輛自動駕駛系統(tǒng)。系統(tǒng)采用PCA檢測方法和SVM分類技術(shù),對獲取的圖像信息進行處理并實現(xiàn)自動駕駛的控制。試驗表明:系統(tǒng)能夠在常規(guī)作業(yè)中正常進行自動駕駛功能,符合設(shè)計要求,證明了系統(tǒng)的可行性、穩(wěn)定性和有效性。