袁珍
(黎明職業(yè)大學(xué) 通識(shí)教育學(xué)院,福建 泉州362000)
手杖是為特殊群體服務(wù)的一種輔助行走工具,一般是為老年人或殘疾人使用。盲人是指視覺(jué)有障礙的人群,一般分為失明或者弱視兩種情況,通常都需要通過(guò)手杖來(lái)指導(dǎo)行路。常見(jiàn)的手杖功能較為單一,例如帶防滑功能、底端帶有活動(dòng)方向輪、結(jié)合一個(gè)可折疊凳子等。但是這些并沒(méi)有為盲人增加很多便利,目前很多盲人出行還是靠家人陪伴、導(dǎo)盲犬牽引、盲道等輔助物,使得出行的依賴性特別強(qiáng)。隨著科技的發(fā)展,市場(chǎng)上出現(xiàn)一些專門針對(duì)盲人的手杖,但往往功能比較單一,控制復(fù)雜,可擴(kuò)展性和靈活性都不強(qiáng),家屬無(wú)法對(duì)盲人進(jìn)行遠(yuǎn)程監(jiān)控,造成盲人出行安全性較低。
本設(shè)計(jì)的目的在于提供一種方便盲人出行,提高盲人出行安全,可擴(kuò)展性強(qiáng)、功能多樣、人性化、操作簡(jiǎn)易的基于樹(shù)莓派的盲人避障手杖。
一種基于樹(shù)莓派的盲人避障導(dǎo)航手杖的總體結(jié)構(gòu)如圖1所示,結(jié)構(gòu)可以分為用戶端和遠(yuǎn)程控制端兩大部分。用戶端主要包括手杖實(shí)體、樹(shù)莓派、攝像頭、傳感器、揚(yáng)聲器、GPS(全球定位系統(tǒng))模塊等,遠(yuǎn)程控制端包括移動(dòng)客戶端終端APP(應(yīng)用程序)和計(jì)算機(jī)終端(web形式)。兩部分通過(guò)服務(wù)器進(jìn)行數(shù)據(jù)通信和控制。

圖1 總體設(shè)計(jì)方案框圖
系統(tǒng)硬件結(jié)構(gòu)如圖2所示:

圖2 系統(tǒng)硬件結(jié)構(gòu)圖
本系統(tǒng)的硬件部分采用Raspberry Pi 3 Model B+作為控制中心,此型號(hào)的樹(shù)莓派尺寸僅為:82mm*56mm*19.5mm,重量為50克,具有體積小,重量低,功能齊全的優(yōu)點(diǎn)。樹(shù)莓派具有40針擴(kuò)展GPIO(通用輸入輸出)口和音頻輸出口,通用性和擴(kuò)展性強(qiáng)。[1]系統(tǒng)中的傳感器和攝像頭等模塊均通過(guò)通用GPIO口與樹(shù)莓派連接,樹(shù)莓派讀取并處理傳感器的數(shù)據(jù)。此外,樹(shù)莓派還支持網(wǎng)絡(luò)功能,可以連接無(wú)線網(wǎng)卡進(jìn)行網(wǎng)絡(luò)通信,從而實(shí)現(xiàn)遠(yuǎn)程控制。
盲人避障的關(guān)鍵點(diǎn)在于障礙物的距離測(cè)定和報(bào)警,本系統(tǒng)使用的是超聲波測(cè)距傳感器US-015,通過(guò)通用GPIO接口與樹(shù)莓派連接。這款測(cè)距模塊可實(shí)現(xiàn)2cm~4m的非接觸測(cè)距功能,適用于盲人行路時(shí)測(cè)距。其分辨率高于1mm,重復(fù)測(cè)量一致性好,測(cè)距穩(wěn)定可靠。距離測(cè)量過(guò)程方便簡(jiǎn)潔,可以通過(guò)Echo電平時(shí)間計(jì)算得出障礙物距離,公式如下:

另外,在US-015的下側(cè)連接有轉(zhuǎn)葉式舵機(jī),旋轉(zhuǎn)角度可達(dá)60°,同樣通過(guò)通用GPIO接口與樹(shù)莓派連接。通過(guò)舵機(jī)調(diào)整US-015的測(cè)量方向,不僅可以測(cè)量水平方向的障礙物距離,也可測(cè)量手杖下方到地面的大致距離,當(dāng)距離出現(xiàn)突變(有臺(tái)階或坑洼),可以通過(guò)語(yǔ)音或震動(dòng)提示用戶。工作原理如圖3所示:

圖3 超聲波結(jié)合舵機(jī)測(cè)量地面坑洼
攝像頭的使用也是本設(shè)計(jì)的創(chuàng)新點(diǎn)之一。為了全面保障盲人安全,在手杖正前端裝有高清1080P紅外夜視廣角攝像頭,用于拍攝前方路況。攝像頭的數(shù)據(jù)輸出端直接與樹(shù)莓派的CSI(相機(jī)串行接口)相連。目前的設(shè)計(jì)是使用攝像頭進(jìn)行人臉識(shí)別和路況識(shí)別:提示盲人有人靠近,并識(shí)別出是陌生人還是親友,用語(yǔ)言提示;識(shí)別當(dāng)前是否到達(dá)路口斑馬線處,以及當(dāng)前路口的紅綠燈情況,同樣語(yǔ)言提示。未來(lái)還可以進(jìn)行功能擴(kuò)展,例如識(shí)別公交站、盲道位置等。
系統(tǒng)的導(dǎo)航使用了高精度慣性導(dǎo)航傳感器,集成有三個(gè)自由度陀螺儀、三個(gè)加速度計(jì),可以根據(jù)測(cè)得的加速度信號(hào)計(jì)算出自身速度和位置,得到各種導(dǎo)航參數(shù),從而實(shí)現(xiàn)定位和導(dǎo)航功能。[2]模塊支持串口和I2C(雙向二進(jìn)制同步串行總線)輸出,方便與樹(shù)莓派相連。在樹(shù)莓派上使用Linux下的一個(gè)守護(hù)進(jìn)程GPSD來(lái)監(jiān)聽(tīng)來(lái)自GPS接收器的位置信息,并將位置信息轉(zhuǎn)換成一種簡(jiǎn)化的格式。
得到位置信息之后,需要將位置在地圖上顯示出來(lái),本系統(tǒng)的地圖由百度網(wǎng)站的開(kāi)源api提供,在使用導(dǎo)航時(shí)必須聯(lián)網(wǎng)。將GPS的log(日志)文件使用地圖打開(kāi),就可以得到用戶的具體位置并進(jìn)行導(dǎo)航了。
與普通的單片機(jī)不同的是,樹(shù)莓派的底層是一個(gè)完整的Linux操作系統(tǒng),所有可以在個(gè)人計(jì)算機(jī)上運(yùn)行的Linux程序,幾乎都可以在樹(shù)莓派上執(zhí)行。尤其是當(dāng)下流行的Python語(yǔ)言具有GPIO庫(kù),能夠支持樹(shù)莓派的硬件接口,結(jié)合各種開(kāi)源硬件擴(kuò)展諸多應(yīng)用。
本系統(tǒng)的軟件部分包括障礙物檢測(cè)和語(yǔ)音提示子程序、通信導(dǎo)航子程序、圖像識(shí)別子程序等,這里著重描述圖像識(shí)別和移動(dòng)客戶端APP開(kāi)發(fā)。
圖像識(shí)別流程包含四個(gè)步驟:圖像采集、圖像預(yù)處理、圖像特征提取以及匹配與識(shí)別。[3]本系統(tǒng)圖像識(shí)別包含了三種情況:人臉識(shí)別、紅綠燈識(shí)別和斑馬線識(shí)別。三種情況的圖像特征提取算法均不相同。見(jiàn)圖4。

圖4 人臉識(shí)別流程圖
本設(shè)計(jì)在Python平臺(tái)中安裝第三方openCV庫(kù),使用openCV中的CascadeClassifie級(jí)聯(lián)分類器進(jìn)行人臉檢測(cè),再使用LBPH faceRecognizer進(jìn)行人臉匹配。通過(guò)面部定位、雙眼定位、抽取特征點(diǎn)等一系列流程,對(duì)影像合成特征集群,并與存盤記錄對(duì)比,從而得出結(jié)果。
值得注意的是,受外部環(huán)境光線、人體姿勢(shì)、外部飾物等因素的影響,系統(tǒng)存在一定的誤識(shí)率和拒識(shí)率。此部分正在持續(xù)改進(jìn)當(dāng)中。
路況識(shí)別的步驟與人臉識(shí)別類似,首先,通過(guò)基于Haar-like級(jí)聯(lián)分類器的目標(biāo)識(shí)別算法識(shí)別并定位目標(biāo),然后使用HSV色彩模型對(duì)定位區(qū)域的顏色信息進(jìn)行分析,進(jìn)而得出路況信息。[4-5]同樣由于實(shí)際道路環(huán)境相對(duì)復(fù)雜,在對(duì)整張圖片進(jìn)行目標(biāo)位置確定時(shí),存在一定的誤判可能。
由于目前我國(guó)智能手機(jī)的持有率相當(dāng)高,本系統(tǒng)在設(shè)計(jì)時(shí)考慮到另一客戶群——盲人家屬的用戶需求,在此基礎(chǔ)上設(shè)計(jì)了移動(dòng)客戶端APP。[6]用戶可以隨時(shí)隨地下載APP,結(jié)合移動(dòng)網(wǎng)絡(luò)和無(wú)線網(wǎng)絡(luò),實(shí)時(shí)獲得盲人當(dāng)前位置信息、報(bào)警信息等,全方位保障盲人的安全。移動(dòng)客戶端APP的主要功能模塊有:手杖位置獲取與顯示模塊、遠(yuǎn)程一鍵報(bào)警模塊、語(yǔ)音信息模塊等。
采用上述技術(shù)方案后,本設(shè)計(jì)在應(yīng)用時(shí)可利用樹(shù)莓派3代B+型的強(qiáng)大網(wǎng)絡(luò)功能,自動(dòng)連接WIFI(無(wú)線上網(wǎng))或者手機(jī)熱點(diǎn),使得手杖能實(shí)現(xiàn)家屬手機(jī)的遠(yuǎn)程連接,家屬能根據(jù)GPS模塊的定位信息隨時(shí)獲取位置,進(jìn)而對(duì)盲人進(jìn)行導(dǎo)航,避免因?qū)Ш较到y(tǒng)錯(cuò)誤而造成盲人無(wú)法到達(dá)目的地。當(dāng)盲人遇到緊急情況時(shí),也可按下緊急按鈕,通過(guò)網(wǎng)絡(luò)遠(yuǎn)程報(bào)警。
在盲人行路過(guò)程中,利用超聲波測(cè)距模塊實(shí)時(shí)檢測(cè)前方障礙物距離,通過(guò)語(yǔ)音提示給盲人。另外由舵機(jī)間歇調(diào)整超聲波測(cè)距的角度,測(cè)量下方與地面的距離是否有突變,從而提醒盲人避開(kāi)坑洼和注意向下臺(tái)階。同時(shí)利用攝像頭拍攝盲人行路過(guò)程中的路面情況和行人狀況,再由圖像處理軟件分析判定,語(yǔ)音提示盲人,全方位地保護(hù)行走的盲人。同時(shí),樹(shù)莓派的端口多,可安裝操作系統(tǒng),編程語(yǔ)言豐富,在今后使用中也可根據(jù)用戶需要,在不改變產(chǎn)品基本結(jié)構(gòu)的前提下即可自主增加一些簡(jiǎn)單的功能,可擴(kuò)展性強(qiáng),應(yīng)用靈活。
(1)利用樹(shù)莓派強(qiáng)大的網(wǎng)絡(luò)通信功能,能通過(guò)WIFI或手機(jī)熱點(diǎn)與手機(jī)終端連接,實(shí)現(xiàn)遠(yuǎn)程控制功能,使手杖的應(yīng)用較為人性化,易于家屬監(jiān)控;
(2)利用樹(shù)莓派的體積小、管腳多、功能大及使用靈活的特性使本新型手杖操作更為簡(jiǎn)單,不會(huì)增大手杖的體積,并能通過(guò)手機(jī)遠(yuǎn)程控制,使用更加直觀方便;
(3)利用樹(shù)莓派的端口多、編程語(yǔ)言豐富、可安裝操作系統(tǒng)的特性使得在未來(lái)使用時(shí)能根據(jù)用戶具體情況,在不改變產(chǎn)品主要電路結(jié)構(gòu)的情況下自主增加一些簡(jiǎn)單的功能,可擴(kuò)展性強(qiáng),應(yīng)用靈活;
(4)能對(duì)靜止障礙物、靠近的路人等多種情況進(jìn)行監(jiān)控。遇到困難時(shí)能夠得到家人或路人的及時(shí)幫忙,功能齊全并人性化,設(shè)計(jì)針對(duì)性強(qiáng),給盲人出行帶來(lái)方便。