盧乃旬,羅愷韻,王 琦,張慧蕾,胡江海,羅秀雯
(1.湖南文理學院芙蓉學院,湖南 常德 415000;2.河北工程大學科信學院,河北 邯鄲 056000)
據國家權威部門統計,中國是世界上盲人最多的國家,約有700 多萬,占世界總數的18%[1]。盲人的視覺缺陷給他們的日常生活和出行帶來諸多不便,他們的安全和舒適問題尚未得到很好的解決。本項目的研究致力于創建一個服務于盲人出行的APP,該APP 擁有出行地圖語音及振動提示導航、識別人臉、尋求幫助、好友視頻和語音聊天功能等,為盲人出行提供更為便捷的服務,讓他們能安全外出、隨心交友,從而豐富他們的生活。
盲人出行智能導航主要由兩個系統支持,一個是以外部識別設備為載體的硬件系統,另一個是以智能語音導航為主體的導盲軟件系統,如圖1 所示。

圖1 盲人出行智能導航系統功能模塊
硬件外部設備可通過佩戴特殊眼鏡來實現盲人所處環境相關參數的獲取,比如一定范圍內的避障物、交通標志等相關信息。收集相關參數并進行分析,判斷障礙物的類型、距離、大小、危險指數等,并通過藍牙連接導盲軟件共享分析結果。
導盲軟件部分主要由百度導航、智能語音、振動提示、通信交流四大模塊構成,具體介紹如下:
(1)將百度導航與智能語音兩者結合,通過接口接入百度導航地圖,與硬件獲取的數據進行交互分析,并結合智能語音提示實現出行路線規劃。
(2)智能語音既可以充當系統的操作提示指令,也可以充當盲人的眼睛,時刻提示他們道路上的正確行走方向,并準確避開障礙物,避免危險事件發生的同時給予他們真正的安全感。
(3)振動提示可以對危險提前做出預警,也可以在其他方面作為提示手段,比如可以將振動強度作為方向判別指標。
(4)通信交流功能,即通過語音指令實現交友聊天以及在遇到困難時進行求助。
硬件設備是以導盲眼鏡作為載體實現相應的數據采集,并利用OpenMV 中控芯片對數據做初步的篩選,將篩選結果通過數據傳輸的方式發送給軟件部分,以實現盲人出行過程中軟硬件數據的實時共享。
通過信息采集數字化和網絡化,使數據采集的覆蓋范圍擴大,提高審核工作的及時性、準確性和全面性;最終實現相關業務工作管理決策科學化、現代化、服務網絡化、程序規范化。主要有數據庫管理、異常處理、實時監視、數據處理、統計計算及報表、運行指導及性能分析等功能[2]。
此部分由紅外線超聲傳感器和攝像頭來實現。紅外線傳感器主要是監測盲人周圍障礙物,如地面坑洼、欄桿等,攝像頭用于標志物識別,比如紅綠燈、盲道、斑馬線的識別等。
采集的數據作為原材料進行數據加工、數據建模,然后分門別類地儲存,再根據實際的業務場景,打造各類數據服務,從而實現對業務的賦能加速。數據采集平臺是數據處理的基座,我們也可以把數據采集平臺稱為數據采集開發平臺,它需要具備與數據采集相關的開發能力,提供數據存儲、數據清洗/計算、數據查詢展示及權限管理等功能。以 Hadoop生態構建的技術體系為主,依托各類開源組件進行優化改進與二次開發,數據存儲組件可以選擇HBase、Hive 等組件,數據計算引擎可以選擇Spark、Flink 等分布式計算引擎。數據采集平臺需要能為用戶提供數據建模工具,幫助用戶創建目標數據(數據集),其提供的功能包括坐標計算、自動識別、數據預處理、設置邊界參數、計算函數選擇等基本操作,以及多源異構的JOIN/UNION 等數據處理功能[3]。
在復雜的未知環境中,單獨依靠超聲傳感器對障礙進行精確的探測時會存在誤差。面對不同環境,采用多傳感器信息融合的方式進行探測。利用以電荷耦合器件為核心部件的數字傳感器(Charge Coupled Device, CDD)與攝像頭結合協同工作,將CCD 攝像頭獲得的彩色圖像與超聲波傳感器提供的距離信息進行融合處理,可以得到簡單的障礙物類型。將超聲傳感器陣列獲得的回波波形中的特征點信息與CCD 獲得的強度分布采用遺傳算法進行融合[2],得到相應的障礙物位置。將CCD 獲得的彩色圖像及超聲傳感器陣列測量得到的距離值使用神經網絡融合算法進行融合[2]。利用OpenMV 作為中央控制器,將在復雜環境采集的數據進行處理,并將處理后的數據通過藍牙接口傳給軟件系統。
智能化數據處理是外部設備采集數據分析應用的核心。對于實現硬件設備采集的數據與軟件系統的交互,智能化數據處理能夠起到中轉站的作用。只有根據分析處理后的數據才能對實時路況進行判斷,并在外部設備采集到的數據基礎上,利用大數據分析手段,輔以人工智能對獲取的數據進行更加準確的處理,對導航路線進行規劃,以提高出行的安全性。
路況數據采集是通過攝像頭及紅外線感應設備得到的,再通過軟硬件數據銜接傳遞到智能導航系統中。在處理數據過程中,數據處理、數據分析作為智能導航系統平臺的功能,需要實時進行環境數據采集,并且必須要在盲人經過前完成數據的分析。因此對數據的實時性、真實性要求較高,同時也對數據的具體需求和需求種類提出了很多要求[3]。
要實現數據采集與應用系統模塊間的數據傳輸,需確保各接口協議的可擴展性,同時要保證通信協議的一致性。數據協議在保證系統穩定的前提下具備統一性并讓各設備之間相互支持,可以更方便地進行系統之間的銜接[4]。在此基礎上將處理分析后的數據傳輸到導航應用中。
采集數據系統需完成傳感器數據采集,以及通過網絡控制器和設備控制箱等實現串口協議信號向TCP/IP 協議數據的轉換,數據通過網絡被傳輸至控制器、服務器的數據庫進行處理、統計、分析等。數據傳輸網絡系統的主干連接應采用負載均衡的冗余方式,設置的兩條連接均提供數據傳輸功能并互為備用,兩條線路可實時、自動進行切換且不影響系統的應用。數據采集處理模塊如圖2 所示。

圖2 數據采集處理模塊
通過設備特殊按鈕喚醒語音合成AI,盲人通過語音指令打開導航軟件。語音AI 播報“請輸入起點”,盲人語音輸入起點后,地圖導航通過百度導航定位確認盲人位置與輸入起點相符。語音AI 播報“請輸入目的地”,盲人語音輸入目的地及出行方式,地圖導航規劃最優路線。語音AI 進入導航提示播報模式,通過百度導航及硬件設備來播報實時路況。語音提示模塊如圖3 所示。

圖3 語音提示模塊
盲人在步行導航時,語音AI 通過識別設備傳回的圖片判斷前方路況,當存在障礙物時AI 及時發出語音提醒躲避。當遇到過馬路時,首先提醒盲人停止行走,若有路人則發出請求幫助語音,沒有則通過AI 判斷設備傳回的紅綠燈圖片,語音提示盲人行走。語音指令模塊如圖4 所示。

圖4 語音指令模塊
調用百度地圖API,實現定位及導航路線基本功能。調用百度地圖地點檢索服務獲取任意位置的經緯度坐標,關鍵代碼如下:
系統實現了路線規劃及軌跡數據分析功能。用戶通過語音指令錄入想到達的地點,在導入的地圖模塊中檢索出所有路線;再通過迪杰斯特拉(Dijkstra)算法以及弗洛伊德(Floyd)算法對所有路線的優劣性進行排序,并存入數據庫中。在盲人出行時調用數據庫路線圖,選用最佳的路線作為出行路線,每次盲人完成行程導航后,會對行程軌跡數據上傳并保存,分析這次行程的耗時,以及在路上遇到的障礙物數量(包括過馬路的次數)等信息。根據數據分析形成更適合盲人的行走路線,并通過語音提示對本次規劃的路線進行評分,把評分作為下次選擇路線的基礎,使得下次出行更加順暢。
障礙物圖像獲取方法如下:

障礙物識別是圖像識別中的一個典型過程。圖像識別就是運用現代信息處理與計算機技術來獲取障礙物的位置、大小、距離等環境信息,它包括成像、圖像處理、圖像識別三個步驟[5],如圖5 所示。

圖5 圖像識別基本模型
圖像識別主要是利用計算機對圖像進行處理、分析和理解,以識別各種不同模式的目標和對象的技術。依據輸入圖像的空域二維圖像信息f(x,y,t)根據圖像識別模型進行相關的圖像運算分析并提取出圖像的識別特征,然后按照圖像特征對圖像進行分類識別運算[5]。
語音識別是在EasyDL 語音識別平臺上創建了導航語音專屬模型,并進行數據錄入及識別訓練,保證語音AI 進行正確操作及下達正確指令。
調用百度AI 語音服務實現將文本轉化為語音,并輸出為MP3 文件,關鍵代碼如下:

3.5.1 線上聊天、添加和刪除好友、撥打和接聽電話功能
(1)用戶可以通過語音指令調用添加、刪除和修改好友程序,通過MySQL 數據庫進行數據的修改。
(2)用戶可以調用手機本身內部電話的接口接聽電話,還可以通過特定的語音指令來實現撥打電話,這些函數的調用主要是通過百度AI 語音技術來實現的,通過特定的語音指令識別關鍵字并返回參數,從而調用相關程序運行[6-7]。
(3)線上聊天時可以通過語音指令選擇聊天對象,進入對話框發送語音條,收到回復后百度語音AI 語音播報給該用戶。
3.5.2 實時共享位置
實時共享位置功能設置的目的是防止盲人用戶走失、迷路等意外事件的發生,方便親友對盲人用戶的實時監護,它是通過使用百度地圖API 返回數據來實現的。實現方式如下:

3.5.3 尋求幫助功能
尋求幫助功能是為解決盲人用戶遇到問題時在線上尋求幫助而設計的,通過大數據分析經常出現的問題并做出解答,對這些問題和解答進行數據存檔。當用戶向應用尋求幫助時,首先在數據庫中檢索是否有類似問題的解決辦法,檢索到時可以語音提示給用戶;未檢索到時系統借助網絡中的公益平臺,通過實時視頻連接給予盲人幫助。
盲人用戶可以向公益平臺志愿者請求幫助。志愿者們將在手機上收到通知。一旦有志愿者第一時間接收了幫助請求,就會在雙方之間建立實時音視頻連接,通過盲人手機的后置攝像頭來為盲人提供幫助。
如果志愿者無法幫助到盲人,也不必擔心盲人用戶需要一直等待,系統會自動轉發請求并尋找下一位志愿者,在通話過程中需要對內容進行存儲備份以及加密,確保每次通話的安全性。
3.5.4 數據傳輸網絡設計
數據處理中心系統與數據采集之間的傳輸網絡采用局域內網進行連接,采用I/O 協議進行傳輸。由于接入方式、接入速率、應用方式和數據類型的多樣性,網絡數據流量突增而致擁塞是不可避免的。為應對這一問題,網絡應支持區分服務模型機制,根據應用類型、流量大小、用戶所在網段等自動進行業務分類,使業務遵守設定的接入速率約定[10],在網絡出現擁塞前能自動采取措施進行先期擁塞控制,以避免瞬間大量“丟包”現象的發生。
網絡以無線為主、有線補充的方式使多終端無縫接入網絡,實現訪問業務和共享數據。無線接入點主要采用雙星型冗余組網結構,將無線AP 連接至接入交換機,無線控制器連接至核心交換機,用戶通過無線控制器和無線網絡管理軟件實現對所有無線AP 設備的集中管理[11],而且選擇的無線接入需要支持無線轉發技術,實現無線全覆蓋。
為了實現精確安全的導盲,我們采用軟硬件結合的方式,設計了一款智能化、實用化、簡易化、精準化的輔助盲人安全出行的系統。本系統具有智能導航、智能語音、路線規劃、智能避障、交友聊天、位置共享等功能。此設計從盲人的角度全面考慮問題,解決了盲人出行難的問題,大大提高了他們出行的安全性。