劉學(xué)博
( 山西省自動(dòng)化研究所,山西 太原 030012)
GNSS(Global Navigation Satellite System)系統(tǒng),是由多個(gè)系統(tǒng)組合而成的衛(wèi)星導(dǎo)航系統(tǒng),可提供全天候、實(shí)時(shí)的定位服務(wù),因而應(yīng)用相當(dāng)廣泛[1]。GPS定位可分為單點(diǎn)定位、差分定位兩種模式[2]。其中單點(diǎn)定位根據(jù)偽距觀測(cè)來(lái)計(jì)算全局坐標(biāo),定位精度一般3 m~20 m;差分定位主要根據(jù)多個(gè) GNSS 接收機(jī)的數(shù)據(jù)來(lái)計(jì)算每個(gè)測(cè)量點(diǎn)相對(duì)位置,其中載波相位差分定位的定位精度可達(dá)厘米級(jí)[3]。如今駕駛?cè)藞?chǎng)地駕駛技能考試系統(tǒng)、道路駕駛技能考試系統(tǒng)基本都是基于載波差分定位技術(shù)來(lái)實(shí)現(xiàn)車(chē)輛的定位,定位誤差在厘米級(jí)。
通常影響GPS信號(hào)的因素有天氣因素(太陽(yáng)黑子、惡劣天氣)、 電氣電磁干擾(無(wú)線電,強(qiáng)磁場(chǎng))、遮蔽物下等。在模擬隧道環(huán)境中GPS無(wú)法正?;蛎銖?qiáng)工作,車(chē)輛搜星狀態(tài)、定向解狀態(tài)、定位解狀態(tài)都處于錯(cuò)誤狀態(tài),因而無(wú)法達(dá)到定位的目的,其中大型汽車(chē)模擬隧道項(xiàng)目示意圖如圖1所示。由于車(chē)輛在隧道中無(wú)法實(shí)現(xiàn)定位,因此如何實(shí)現(xiàn)車(chē)輛在隧道中的壓線評(píng)判,是一個(gè)目前急于解決的問(wèn)題。
圖1 模擬隧道項(xiàng)目示意圖
相位式激光測(cè)距,測(cè)量時(shí)首先由激光傳感器系統(tǒng)發(fā)出連續(xù)的光波,經(jīng)調(diào)制后發(fā)射至被測(cè)目標(biāo),由被測(cè)目標(biāo)返射回的回波激光信號(hào)經(jīng)一定時(shí)間的延遲后進(jìn)入接收系統(tǒng),激光信號(hào)傳導(dǎo)至光電探測(cè)器,再由解調(diào)器對(duì)延遲信號(hào)進(jìn)行解調(diào),并將解調(diào)之后的信號(hào)送到相位差比較模塊中進(jìn)行計(jì)算,最終得到相位差值[3]。
本文使用測(cè)距精度高、反應(yīng)迅速的HPS-167系列激光測(cè)距傳感器,該傳感器在測(cè)距工程上被廣泛的使用。在實(shí)際使用過(guò)程中,常常將激光傳感器掛載到載具上,達(dá)到測(cè)距的目的。在本文算法中,測(cè)距傳感器安裝的位置將直接影響壓線檢測(cè)算法的精度。其中大型汽車(chē)的車(chē)模載波差分定位測(cè)繪點(diǎn)示意圖如圖2所示??紤]到安裝的簡(jiǎn)便性和實(shí)用性,本文選擇大型汽車(chē)測(cè)繪點(diǎn)的第15點(diǎn)、16點(diǎn)、18點(diǎn)擬安裝3個(gè)相位式激光測(cè)距傳感器進(jìn)行測(cè)量實(shí)時(shí)距離。
圖2 大型汽車(chē)車(chē)模型測(cè)繪點(diǎn)示意圖
KNN(K-Nearest Neighbor),代表K個(gè)最近鄰居分類(lèi)法,通過(guò)K個(gè)最與之相近的歷史記錄的組合來(lái)辨別新的記錄[4]。KNN是一個(gè)眾所周知的統(tǒng)計(jì)方法,在過(guò)去幾十年間被廣泛的應(yīng)用于模式識(shí)別等研究中。
本文算法主要研究隧道車(chē)輪壓線檢測(cè),但考慮到安裝的方便些和可行性,激光測(cè)距傳感器安裝在車(chē)身部位,這樣安裝存在車(chē)身與車(chē)輪之間的誤差。綜合考慮,單個(gè)激光測(cè)距計(jì)算方法說(shuō)明和代碼如下:
1) 如果激光測(cè)繪距離<路牙寬度-最大誤差,證明右輪壓線。
2) 如果激光測(cè)距+車(chē)寬-路牙寬度-最大誤差>路寬,說(shuō)明左輪壓線。
publicbool IfPressRealLine(double dist_Laser).
if (((dist_Laser + JConfig.CP_CarWidth - JConfig.CP_WaySide - JConfig.CP_ErrorDist >JConfig.CP_RoadWidth)|| JCar.Dist_Laser < JConfig.CP_WaySide - JConfig.CP_ErrorDist)
&& JCar.Dist_Laser > JConfig.CP_WaySide && JCar.Dist_Laser < JConfig.CP_RoadWidth ).
returnfalse;.
else.
returntrue;.
}
有了上述激光測(cè)距的壓線檢測(cè)算法后,本文設(shè)計(jì)基于KNN算法的大型汽車(chē)壓線檢測(cè)算法實(shí)現(xiàn)的具體步驟如下:
1) 利用激光測(cè)距壓線檢測(cè)算法獲取壓線與不壓線時(shí)的距離分別作為特征向量;
2) 剔除錯(cuò)誤數(shù)據(jù),精細(xì)化特征向量;
3) 多次實(shí)驗(yàn)測(cè)試調(diào)整K值;
4) 找到最佳K值,獲取算法模型。
本文算法在晉城市五星科目二考試場(chǎng)驗(yàn)證分析,使用車(chē)型為解放牌CA5127TJLE。在設(shè)備安裝調(diào)試、特征向量提取篩選后,總共獲取1000組樣本數(shù)據(jù)作為訓(xùn)練集。
為了比較載波差分定位方法、激光測(cè)距壓線方法和本文提出的壓線檢測(cè)算法的性能,本文在考場(chǎng)進(jìn)行100次的實(shí)驗(yàn)測(cè)試,從表1不難發(fā)現(xiàn),相比于其他兩種算法,本文提出的壓線檢測(cè)算法的準(zhǔn)確率最高,能夠達(dá)到99%。
表1 不同方法的比較
為了找到評(píng)判效果最好時(shí)所需的激光測(cè)距傳感器的數(shù)目,本文選取不同數(shù)目的傳感器進(jìn)行100次測(cè)試比較壓線檢測(cè)準(zhǔn)確性的檢測(cè),評(píng)判結(jié)果遵從少數(shù)服從多說(shuō)原則。由表2可以發(fā)現(xiàn)當(dāng)傳感器數(shù)目的個(gè)數(shù)為3時(shí)檢測(cè)效果最好。
表2 不同傳感器數(shù)目的比較
實(shí)驗(yàn)證明基于KNN算法的大型汽車(chē)模擬隧道行駛項(xiàng)目壓線評(píng)判算法,簡(jiǎn)單實(shí)用,操作性強(qiáng),能比較準(zhǔn)確地實(shí)現(xiàn)壓線評(píng)判。在駕駛?cè)藞?chǎng)地駕駛技能考試系統(tǒng)的模擬隧道行駛項(xiàng)目壓線檢測(cè)有一定的參考、借鑒價(jià)值。