李文龍 王彬
摘要:盲人數(shù)量不斷增加,因為視力問題,盲人在生活和出行中遇到了很大困難,為此我們設(shè)計了一款盲人智能拐杖,具有障礙物距離測定,拍照,物體識別,GPS定位線路規(guī)劃等功能,基于wukong-robot實現(xiàn)了語音控制,語音播報的功能,本文設(shè)計的盲人智能拐杖,可應(yīng)用于盲人朋友的日常生活出行之中,市場前景良好。
關(guān)鍵詞:盲人拐杖;語音控制;樹莓派3B;障礙物測距;物體識別
中圖分類號:TP399? ? 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2019)24-0203-02
開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):
A Smart Cane for the Blind Based on the Raspberry Pie 3B
LI Wen-long, WANG Bin
(School of Computer Science and Engineering, Xian University of Technology, Xian 710048, China)
Abstract: the number of blind people continues to increase, because of vision problems, blind people in life and travel encountered great difficulties, so we designed a blind intelligent crutch, with obstacles distance measurement, photography, object recognition, GPS positioning line planning and other functions, based on wukong-robot to achieve voice control, voice broadcast function, the design of intelligent crutch for blind people, can be used in the daily life of blind friends travel, the market prospects are good.
Key words: blind person crutch; voice control; raspberry pie 3B; obstacle ranging; object recognition
1 前言
隨著社會經(jīng)濟(jì)和科技的發(fā)展,人們越來越追求高質(zhì)量的生活,然而有一部分人——盲人朋友,仍然把自己關(guān)在家中,逐步與社會脫節(jié)。據(jù)世界衛(wèi)生組織統(tǒng)計,2010年中國盲人數(shù)量為824.8萬,據(jù)估計,目前的盲人數(shù)量可能超過1300萬,因為視覺障礙,盲人的生活出行充滿了困難,無法看見生活中的物體,出行時不清楚自身位置容易迷路,還可能撞到障礙物。
目前主流的智能拐杖功能較單一,僅有簡單的障礙物震動提示功能,其優(yōu)勢是制作簡單,成本低廉,但盲人不知道前方障礙物的距離,不能做出最佳判斷,因為缺少定位功能,盲人仍會有迷路的苦惱。
為了解決盲人朋友的生活出行問題,基于樹莓派3B,我們設(shè)計了一款智能拐杖,可以動態(tài)探測前方障礙物并語音播報障礙物的距離,可以播報盲人所處的位置,讓盲人擺脫迷路的苦惱,還可以播報拍攝到的物體,讓盲人也能“看見”世界,語音控制拐杖,非常便捷,具有廣闊的市場應(yīng)用前景。
2 系統(tǒng)的硬件設(shè)計
本系統(tǒng)采用樹莓派3B為核心控制器,GPS傳感器,麥克風(fēng)通過USB接口與樹莓派相連接,相機(jī)通過CSI接口與樹莓派相連接,耳機(jī)通過3.5mm接口與樹莓派相連接,超聲波傳感器有四個引腳,超聲波傳感器的VCC,GND,TRIG,ECHO引腳分別與樹莓派的5v,GND,GPIO14,GPIO4相連。
2 系統(tǒng)的軟件設(shè)計
系統(tǒng)主要分為四大模塊,語音助手模塊,拍照識別模塊,定位線路規(guī)劃模塊,超聲波測距模塊,主要執(zhí)行流程如下圖。
2.1 語音助手模塊
主流的開源語音助手都是基于Jasper改進(jìn)的,本項目采用的語音助手開源項目wukong-robot,離線喚醒引擎采用的是Snowboy離線引擎,錄制三段喚醒詞音頻,即可在Snowboy官網(wǎng)訓(xùn)練自己的喚醒詞聲學(xué)模型,當(dāng)語音助手被喚醒后,會錄制一段定長的音頻,通過百度的STT引擎將語音轉(zhuǎn)為文本,對文本進(jìn)行技能匹配,判斷文本是否包含已注冊的模塊關(guān)鍵字中, 如包含則由關(guān)鍵字對應(yīng)模塊進(jìn)行處理,若不包含,則進(jìn)入圖靈機(jī)器人處理,對于處理得到的文字結(jié)果,通過百度的TTS引擎轉(zhuǎn)為語音,對執(zhí)行結(jié)果進(jìn)行播報。
2.2 拍照識別模塊
在設(shè)置中啟用樹莓派相機(jī)后,通過rasistill命令可以拍攝照片,對于照片的識別,采用的是已經(jīng)訓(xùn)練好的inception v3網(wǎng)絡(luò),inception v3將物體分成了1000類,下載的模型包含有兩個文件,classify_image_graph_def.pb和imagenet_2012_challenge_label_map_proto.pbtxt
我們需要將兩個文件中的target_class與分類得到的結(jié)果做映射,使用tensorflow框架,創(chuàng)建圖,啟動圖,最終得到的結(jié)果需轉(zhuǎn)為1維數(shù)據(jù),截取概率最大的結(jié)果通過有道翻譯,翻譯為中文,最終通過調(diào)用語音助手的say函數(shù)語音播報識別的結(jié)果。
2.3 超聲波測距模塊
給TRIG引腳一個超過10us的高電平,模塊會自動發(fā)出8個40KHZ的脈沖,此時只需檢測ECHO引腳高電平的時間,其高電平持續(xù)的時間即為超聲波在空氣中傳輸遇到障礙物的往返時間,根據(jù)聲速,傳播時間即可計算出障礙物距離,通過調(diào)用語音助手的say函數(shù)播報障礙物距離,因為超聲波測距需要循環(huán)執(zhí)行,可采用多線程的執(zhí)行方案,一個線程循環(huán)執(zhí)行測距模塊,一個線程監(jiān)聽是否用戶說出了“退出”,若監(jiān)聽到退出則退出測距模塊,否則一直執(zhí)行測距。
2.4 定位線路規(guī)劃
先從GPS芯片中獲取經(jīng)緯度信息,將GPS經(jīng)緯度通過百度地圖坐標(biāo)轉(zhuǎn)換服務(wù)轉(zhuǎn)為百度坐標(biāo)系下的坐標(biāo),再通過百度地圖逆地理編碼服務(wù)將經(jīng)緯度信息轉(zhuǎn)換為位置信息,通過調(diào)用語音助手的Say函數(shù)語音播報所在位置。對于線路規(guī)劃,需要獲知起始點的經(jīng)緯度,默認(rèn)采用拐杖所在地經(jīng)緯度,終點的位置由用戶語音輸入,通過百度地圖的地理編碼服務(wù)轉(zhuǎn)換為經(jīng)緯度,最終通過百度地圖的路線規(guī)劃服務(wù)實現(xiàn)簡單的線路規(guī)劃。
3 結(jié)束語
本文基于樹莓派3B設(shè)計了一款盲人智能拐杖,基于wukong-robot來實現(xiàn)語音控制,語音播報,具有障礙物距離測定,拍照,照片識別,GPS定位線路規(guī)劃等功能,但仍有較大改進(jìn)空間,由于硬件的限制,麥克風(fēng)錄制的音頻音質(zhì)相對較差,有電流噪聲,不利于語音助手的喚醒,可采用降噪算法,減少噪聲。另外可以設(shè)計服務(wù)器和移動端程序,服務(wù)器程序?qū)崟r接收拐杖的位置信息并發(fā)送到移動端。讓盲人的子女可以清楚知道父母的位置。
參考文獻(xiàn):
[1] Tariq Rashid.Python神經(jīng)網(wǎng)絡(luò)編程[M]. 北京:人民郵電出版社,2018:89.
[2] 黃文堅,唐源.TensorFlow實戰(zhàn)[M]. 北京:電子工業(yè)出版社,2017:119.
[3] 劉勝金,楊溢凡,張雨婕,等.基于樹莓派的智能小車系統(tǒng)[J].電腦知識與技術(shù),2019(19):158.
[4] 徐國保,洪展文,葉昌鑫,等.基于樹莓派的智能鏡子的研究與開發(fā)[J].電子技術(shù)與軟件工程,2019(12):58.
[5] 張俊,李鑫.TensorFlow平臺下的手寫字符識別[J].電腦知識與技術(shù),2016(12):199.
【通聯(lián)編輯:梁書】