?

基于定位導航的多傳感器導盲系統設計

2023-11-02 12:34陳雷博陳智利
計算機應用與軟件 2023年10期
關鍵詞:導盲測距盲人

陳雷博 陳智利

1(北京信息科技大學經濟管理學院 北京100101)

2(西安工業大學光電工程學院 陜西 西安 710021)

0 引 言

截至2016年中國視障人數的數量已超過1 700萬,也就是說,每80人就有一名失明人士,據統計在視障人士中30%基本不外出,約24%外出不需要家人或朋友陪同,且其中大部分一周外出1至3次,視力障礙給盲人出行帶來諸多不便[1-2]。盲人普遍的導盲方式還是傳統的導盲手杖,出行安全很難保障[3-4]。為了解決盲人的出行問題,出現了多種裝配在盲人外套、眼鏡、背包、鞋子等的穿戴式導盲系統,解放盲人的雙手,讓盲人可以更自由地步行在大街上[5-9]。新一代移動式導盲機器人,讓盲人出行更安全[10-12]。

現有的導盲系統大都致力于利用計算機視覺或傳感器對障礙物進行探測、規劃障礙物避讓路徑等,但對于盲人如何到達目的地很少有涉及,如何到達目的地多數依賴于盲人的經驗。當前GPS定位導航技術已經非常成熟,廣泛應用于社會的各個方面,但對于導盲領域的使用還相對較少,文獻[4]介紹了一種基于GPS定位的導盲系統,其在路徑規劃與實時匹配及合理的語音交互方面沒有考慮,為了解決導盲設備的導航問題,本文設計一種適用于盲人的帶有定位、導航功能的多傳感器導盲系統,在系統工作前語音輸入目的地,導航模塊結合GPS及目的地信息規劃行進路徑,全程語音指導盲人,行進過程中傳感器探障模塊實時探測盲人周圍障礙物,提高行進過程中的安全性,使盲人安全到達目的地。

1 系統方案

本系統需要實現多傳感器的探障以及GPS定位導航功能,主控芯片采用樹莓派3B+,其具有獨立操作系統,編程運行更加方便,處理速度快。根據實際需要,通過GPS/BD雙模定位模塊獲取當前位置信息,結合盲人語音輸入轉換獲得的目的地定位坐標,利用Python爬蟲技術爬取百度地圖路徑規劃信息,獲得盲人使用者的步行導航路徑,并通過語音分段提示給盲人,指導其行進。盲人行進中超聲波測距模塊探測盲人前方2~400 cm以內的障礙物,紅外測距模塊探測盲人兩側15~80 cm內的障礙物,攝像頭進行環境信息獲取,使盲人能有效避開障礙,保障其安全。系統與盲人信息交互通過語音形式進行。本系統方案如圖1所示。

圖1 系統設計方案

2 系統設計

2.1 GPS定位

GPS定位選用ATK-S1216F8-BD GPS/BD模塊,該模塊的核心器件采用SkyTraq公司的S1216F8-BD模組,有167個通道,靈敏度為-165 dBm,測量輸出頻率20 Hz,體積小,GPS/BD雙模天線定位精度高[6]。

利用minicom工具獲取GPS串口數據,安裝相關軟件和庫(gpsd、gpsd-clients、python-gps),通過minicom即可獲取GPS數據,通過Python程序控制GPS模塊接收當前定位信息。

2.2 路徑規劃及導航

以GPS硬件系統采集的坐標信息和由百度地圖開放平臺爬取的導航信息為基礎,通過軟件的加工處理,形成導航指令,由語音交互系統傳遞給盲人,以達到引導其安全行進的目的。其軟件整體設計框圖如圖2所示。

圖2 路徑規劃及導航整體設計

(1) 起終點位置獲取。起點位置直接由GPS模塊定位給出,在起點坐標位置獲取時首先設置接口,進行接口初始化,再啟動接口通信,讀取GPS原始數據。由于國家測繪局規定商用GPS坐標有需要進行加密,所以還需要將原始數據(wgs84坐標系)通過坐標轉換接口轉換為百度坐標系下的經緯度值。

終點位置由使用者自行確定,本系統采用語音輸入方式,百度AI平臺轉換為字符串,轉換后通過url請求發送到百度地圖開放平臺服務器,服務器返回目的地的經緯度值,此方法無須進行坐標系轉換。

(2) 路徑規劃。將起終點位置通過url請求發送至百度地圖服務器,爬取起點與終點之間的步行導航路徑規劃信息,將信息解析后輸出為json格式,便于理解和交互。

(3) 分段導航。路徑爬取成功后,需要實時播報導航信息,此處采用實時定位,匹配輸出的方式,程序建立循環,循環進行當前位置定位,通過與導航路徑拐點匹配,實現分段實時播報,準確引導盲人前往目的地,程序設計流程如圖3所示。

圖3 分段匹配導航流程

(4) 終點檢測。終點檢測是導航模塊最后一個內容,當中間路徑都已匹配成功后,此時系統將終點定位坐標拿出進行匹配,成功后系統語音提示“到達終點,導航結束”。

2.3 探障模塊

導航模塊可以指導盲人前往目的地,由于導航功能針對可以通過的道路而言,至于道路上的一些障礙物卻無法避免,容易使盲人撞上受傷,所以本系統在導航的基礎上還增加了圖像和傳感器探障模塊,探測盲人在行進過程中前方和兩側一定范圍內的障礙物,增加其出行的安全性。探障避障處理框圖如圖4所示。

圖4 探障避障處理框圖

傳感器探障模塊利用紅外測距傳感器和超聲波測距傳感器來探測障礙。超聲波測距傳感器利用時間差法探測前方2~400 cm內的障礙,紅外測距傳感器利用三角法測量兩側15~80 cm以內的障礙物。利用圖像處理技術對盲道、斑馬線等基本出行環境進行檢測識別,利用YOLO算法對紅綠燈及常見障礙物的類型、大小進行識別。硬件均連接在樹莓派3B+主控模塊上。

由于紅外測距模塊返回電壓為模擬電壓,需要在導入樹莓派芯片前將其轉換為數字電壓,本模塊應用MCP 3008 8通道10位模數轉換器進行模數轉換。

2.4 語音模塊

本系統導航模塊終點獲取利用語音識別方式,信息探測處理后以語音形式反饋給盲人,所以本系統中語音模塊需要實現兩大功能,其一為語音錄制與識別,其二為語音合成與播報。

(1) 語音錄制與識別。采用USB麥克風,自帶聲卡,錄制音頻采樣率為44.1 kHz,需要在錄制結束后將采樣率轉換為16 kHz以方便識別,在線通過url請求百度AI平臺,將轉換后的音頻文件導入啟動識別,程序控制需要安裝Python的pyaudio庫進行錄音,利用pydub及相應庫ffmpeg進行語音轉碼,最后通過baidu-aip庫進行識別。語音識別程序流程如圖5所示。

圖5 語音識別程序流程

(2) 語音合成與播報。語音合成同樣利用百度AI平臺的方法,利用baidu-aip庫進行語音合成,使用pygame庫進行語音文件的直接播報,通過3.5 mm音頻輸出接口連接耳機輸出音頻。

3 系統測試

根據系統方案對本系統硬件部分進行搭建,利用軟件編程實現了上述所涉及功能,采用多線程方式,讓導航與探障模塊互不影響,使系統的探測效率大大提高。

系統開始時,首先語音提示“請輸入導航終點”,此時開始進行語音錄制,使用者說出目的地,程序自動識別,識別后傳入導航模塊進行坐標獲取從而規劃路徑,將全程需要的時間及距離語音輸入,其后進行坐標點的匹配,將導航信息分段以語音形式提示給使用者,此外,在整個導航過程中,圖像、超聲波和紅外測距模塊實時探測使用者前方以及側方的障礙物,系統判斷為危險距離后語音提示盲人進行避讓,安全性增強。

(1) 定位導航。開啟定位功能,可獲取當前定位點,通過程序將自動獲取當前位置經緯度坐標,系統在開始工作前利用語音錄制及識別模塊獲取目的地并反查目的地位置信息,利用百度地圖規劃步行導航路徑,總體測試時起終點設置為某兩高校,程序運行后,具體導航路徑信息如表1所示。根據路徑信息在地圖上繪制了本系統提供的路徑如圖6所示,經過實際測試,該模塊能夠進行精準導航(誤差小于2 m),使盲人能正確地到達目的地。

表1 具體導航路徑分段表

圖6 導航路徑地圖

(2) 傳感器探障及誤差。超聲波測距模塊、紅外測距模塊分別實現了前方3 m和兩側1.2 m以內的障礙物探測。樹莓派系統啟動后,利用開辟的獨立線程不間斷探測盲人前方和兩側的障礙物信息,考慮到盲人的行進速度,設定閾值范圍,將障礙物分為危險、警告和安全三個級別,根據級別采用不同的播報方式,避免頻繁播報占用系統資源給盲人造成安全隱患。表2和表3給出了探障模塊多次測量的結果,在超聲導盲0.6~4 m范圍內誤差小于±0.5%,在紅外導盲0.3~1.2 m范圍內誤差小于±3.5%,滿足盲人使用要求。

表2 超聲波測距誤差

表3 紅外測距誤差

4 結 語

本文設計一種基于GPS定位導航的多傳感器導盲系統,在實現盲人出行導航的基礎上進一步利用了多傳感器探障對近距離的障礙物進行探測,確保了盲人在導航行進過程中不會撞向障礙物,保證了盲人的出行安全。開始工作時系統語音提示輸入目的地,而后進行語音錄制及識別,將識別結果導入導航模塊進行路徑規劃,結合GPS定位信息進行路徑的分段播報,經測試,GPS定位精度高,路徑規劃合理,語音識別準確,語音播報清晰;行進過程中利用超聲波及紅外測距模塊對前方2~400 cm以及側方15~80 cm障物進行探測,探測準確率高,在超聲導盲60~400 cm范圍內誤差小于±0.5%,在紅外導盲30~80 cm范圍內誤差小于±3.5%,滿足系統需要。

猜你喜歡
導盲測距盲人
基于云端技術的多功能導盲手杖的設計與實現
基于物聯網的導盲機器犬的研究與設計
類星體的精準測距
隨聲附和的盲人
路口導盲及馬路障礙物檢測提醒系統的設計
自首的盲人
智能導盲
盲人節
淺談超聲波測距
盲人分衣服
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合