李華蓉,潘國兵,趙 一,吳華玲
(1. 重慶交通大學(xué) 土木工程學(xué)院,重慶 400074;2. 重慶交通科研設(shè)計院,重慶 400067;3.東華理工大學(xué) 測繪工程學(xué)院,江西 南昌 330029)
基于Android平臺的室內(nèi)停車場智能尋車系統(tǒng)研究
李華蓉1,潘國兵1,趙 一2,吳華玲3
(1. 重慶交通大學(xué) 土木工程學(xué)院,重慶 400074;2. 重慶交通科研設(shè)計院,重慶 400067;3.東華理工大學(xué) 測繪工程學(xué)院,江西 南昌 330029)
為了解決車主在大型室內(nèi)停車場找車的難題,提出了一種室內(nèi)停車場反向?qū)ぼ囅到y(tǒng)技術(shù)方案。采用Android智能手機(jī)作為信息采集和處理終端,結(jié)合二維碼掃描定位技術(shù)、慣性傳感器的室內(nèi)導(dǎo)航技術(shù)、ArcGIS地圖服務(wù)和離線地圖包技術(shù),ArcGIS API for Android插件技術(shù)實現(xiàn)了車輛精確定位、反向查找、實時路徑引導(dǎo)等功能。并設(shè)計實現(xiàn)了軟件系統(tǒng),在某大型室內(nèi)停車場進(jìn)行了實施驗證,結(jié)果證明了技術(shù)方案的可行性。
交通運(yùn)輸工程;反向?qū)ぼ?;Android平臺;ArcGIS;二維碼
隨著經(jīng)濟(jì)的發(fā)展和科學(xué)技術(shù)的進(jìn)步,現(xiàn)代室內(nèi)停車場逐漸向大型化、多空間、多功能、智能管理的方向發(fā)展,相應(yīng)的智能反向?qū)ぼ囅到y(tǒng)應(yīng)運(yùn)而生。當(dāng)室內(nèi)停車場空間較大,樓層不單一,停車位較多時,車主返回停車場,面對相似的環(huán)境,很容易分不清楚車輛所停靠的位置,從而浪費(fèi)一些時間在尋找車輛上,同時也給停車場內(nèi)的行車安全帶來一定的隱患。智能反向?qū)ぼ囅到y(tǒng)通過二維碼掃描將車輛所停的位置信息記錄在車主的智能手機(jī)中,并提供路徑導(dǎo)航功能,從而方便車主尋車,提高車主的滿意度;同時加快停車場的車輛周轉(zhuǎn),提高使用率和收入,使停車服務(wù)做到安全、簡便、準(zhǔn)確。
目前,地下停車場智能反向?qū)ぼ嚨姆绞街饕?種[1-5]:基于讀卡器方式,基于車牌識別方式和基于無線電射頻技術(shù)(如RFID)方式。分析這3種方式,發(fā)現(xiàn)現(xiàn)有的反向?qū)ぼ囅到y(tǒng)存在兩個問題:需要在停車場設(shè)置額外的大型定位設(shè)備,設(shè)備的密集程度直接影響了定位精度;需要在出入通道設(shè)置固定的終端查詢機(jī),并且終端查詢機(jī)的多寡影響了查詢信息的便捷性,制約了其普及推廣。
在分析現(xiàn)有反向?qū)ぼ囅到y(tǒng)的基礎(chǔ)上,揚(yáng)長避短,提出了一種基于智能手機(jī)的停車場反向?qū)ぼ囅到y(tǒng)技術(shù)方案,采用車主隨身攜帶的智能手機(jī)為信息采集和處理終端,結(jié)合二維碼掃描定位技術(shù)、慣性傳感器的室內(nèi)導(dǎo)航技術(shù)、ArcGIS地圖服務(wù)和離線地圖包技術(shù),實現(xiàn)車輛精確定位、反向查找、實時路徑引導(dǎo)。系統(tǒng)總體框架如圖1。
圖1 系統(tǒng)總框架Fig. 1 System general framework
系統(tǒng)建立在IP網(wǎng)絡(luò)基礎(chǔ)設(shè)施環(huán)境之上,通過WiFi網(wǎng)絡(luò)或移動網(wǎng)絡(luò)為定位導(dǎo)航終端提供定位地圖數(shù)據(jù)下載和地圖服務(wù)。停車場內(nèi)在顯著位置張貼若干二維碼圖像,客戶端手機(jī)通過掃描二維碼,獲得服務(wù)器連接,下載當(dāng)前停車場的地圖數(shù)據(jù),同時獲得掃描點的空間位置信息。該位置信息提供了導(dǎo)航時的起訖點信息,結(jié)合下載的定位地圖,可以輕松實現(xiàn)路徑查詢功能,再結(jié)合客戶端手機(jī)自帶的慣性傳感器,進(jìn)行導(dǎo)航引導(dǎo)。
圖2 給出了該系統(tǒng)的工作流程,具體過程如下:
1)車輛停車入位后,車主掃描車位附近立柱上二維碼圖像。手機(jī)終端解讀二維碼信息,獲得停車場地圖下載鏈接、車輛定位信息,并在移動端數(shù)據(jù)庫中添加其車輛??啃畔?包括時間和位置信息)。
2)客戶取車時,車主掃描附近的二維碼圖像。手機(jī)終端解讀二維碼信息,獲得停車場地圖下載鏈接、車主定位信息,并在移動端數(shù)據(jù)庫中添加其車主位置信息(包括時間和位置信息)。
3)手機(jī)終端通過網(wǎng)絡(luò)將地圖數(shù)據(jù)下載到本地或獲取對應(yīng)的地圖服務(wù),根據(jù)移動端數(shù)據(jù)庫中獲得的起訖點信息,定位車輛位置,并進(jìn)行最短路徑的解算。
4)手機(jī)終端將路徑顯示在定位地圖上,并啟動慣性定位系統(tǒng),通過運(yùn)動檢測和路徑匹配來實現(xiàn)導(dǎo)航的實時引導(dǎo),帶領(lǐng)客戶找到自己的車輛。
圖2 系統(tǒng)工作流程Fig. 2 System’s workflow
2.1 室內(nèi)導(dǎo)航電子地圖的設(shè)計
室內(nèi)空間是一個三維空間。各樓層具有不同的高程信息,但因為是人造空間,幾何規(guī)則性強(qiáng),上下層結(jié)構(gòu)相似,其投影到平面上具有完全相同的平面坐標(biāo)信息,造成了高程信息的唯一可辨識性。同時,室內(nèi)空間具有更復(fù)雜的交通網(wǎng)絡(luò)。水平方向上,主要交通沿走廊布設(shè),但房間之間的連通,墻壁的限制等使得道路錯綜復(fù)雜;垂直方向上,多層建筑樓梯、電梯形成了樓層間復(fù)雜的道路連通關(guān)系。根據(jù)應(yīng)用背景和收集到的停車場原始數(shù)據(jù),使用ArcGIS軟件對數(shù)據(jù)進(jìn)行加工處理,制作室內(nèi)導(dǎo)航電子地圖,并采用ArcGIS for Android的插件技術(shù)對地圖數(shù)據(jù)進(jìn)行訪問和操作,實現(xiàn)導(dǎo)航功能。導(dǎo)航電子地圖的制作流程如圖3。
地圖表達(dá)采用二維平面圖與三維透視圖相結(jié)合的方法。并分別在這兩類視圖上實現(xiàn)定位導(dǎo)航功能。視圖的相互轉(zhuǎn)換采用比例尺控制:在小比例尺情況下,顯示室內(nèi)三維地圖,具有全局性,當(dāng)放大比例尺到閾值時,轉(zhuǎn)換為二維平面圖,通過當(dāng)前鼠標(biāo)所在位置來確定樓層并調(diào)入相應(yīng)的平面圖,具有局部細(xì)節(jié)性。
圖3 室內(nèi)導(dǎo)航電子地圖制作流程Fig. 3 Making process of in-door navigation electronic map
2.2 二維碼室內(nèi)定位技術(shù)
二維碼利用計算機(jī)的“0”,“1”比特流原理,按一定規(guī)律用特定的幾何圖形在黑白相間分布的圖形平面上記錄數(shù)據(jù)符號信息,具有信息密度高、信息容量大,獨(dú)立性強(qiáng)等特點。利用二維碼信息容量大的優(yōu)勢,將停車場名稱信息、車位地理位置(包括編號、地圖坐標(biāo)系下的三維坐標(biāo),一般為投影坐標(biāo))等信息編碼為二維碼圖形,并實現(xiàn)二維碼與導(dǎo)航地圖的一一位置對應(yīng)關(guān)系,即地圖匹配。分析室內(nèi)停車場的室內(nèi)環(huán)境,發(fā)現(xiàn)3~4個車位之間一般有立柱,因此將二維碼圖像張貼在立柱上,既便于用戶發(fā)現(xiàn)該二維碼。也能有效地實現(xiàn)定位功能。同時為了便于組織交通,在入口(如樓梯、電梯)處也要張貼二維碼,從而實現(xiàn)二維碼與導(dǎo)航地圖的匹配。
在導(dǎo)航應(yīng)用中,利用Android手機(jī)中的二維碼掃描功能,讀取二維碼圖像并對其進(jìn)行解碼操作,識別其中的信息,并分離出位置信息,為導(dǎo)航提供起訖點位置信息,從而實現(xiàn)室內(nèi)定位導(dǎo)航功能,流程如圖4。
圖 4 二維碼室內(nèi)定位技術(shù)Fig. 4 QR code for locating
2.3 最短路徑規(guī)劃
室內(nèi)停車場的路徑規(guī)劃要解決的是從車主當(dāng)前位置點到車輛??课恢命c之間如何到達(dá)的問題,是典型的最短路徑分析。為了簡化問題,便于計算機(jī)自動求解,需要將停車場內(nèi)的實際交通路線抽象為邊和結(jié)點,邊代表路段,結(jié)點表示路段的端點和交叉點,由此構(gòu)成有向加權(quán)圖G=(V,E)。形成網(wǎng)絡(luò)數(shù)據(jù)集,記錄任意兩個位置之間的可能路徑,如圖5。在此基礎(chǔ)上定義加權(quán)函數(shù)W∶E→R為從邊到權(quán)值的映射。路徑P=(V1,V2,…,Vk)。的權(quán)是指圖中所有邊的權(quán)值之和:
結(jié)點u到結(jié)點v之間的最短路徑權(quán)值可以定義為
則結(jié)點u到結(jié)點v之間的最短路徑定義為權(quán)W(P)=δ(u,v)的任意路徑。本研究中采用距離作為權(quán)值,研究的是從起點到終點的一條距離最短的路徑。在進(jìn)行路徑搜索時采用Dijkstra廣度優(yōu)先算法或A*啟發(fā)式算法。
圖 5 網(wǎng)絡(luò)數(shù)據(jù)集Fig. 5 Network Dataset
2.4 慣性定位引導(dǎo)
慣性定位的基本原理是運(yùn)動推算,在已知用戶當(dāng)前時刻的位置信息,根據(jù)用戶的運(yùn)動速度和運(yùn)動方向來推算出用戶下一時刻的位置。其實現(xiàn)的關(guān)鍵問題是起始位置的獲取、運(yùn)動速度的獲取和運(yùn)動方向的獲取[6]。利用用戶掃描的二維碼信息來獲得用戶的初始位置信息,具有精確性。
對于運(yùn)動速度,考慮到室內(nèi)停車場的應(yīng)用環(huán)境,一般為步行方式,因此可轉(zhuǎn)化為步長和步數(shù)的乘積。步長因人而異,但變化有限,可以取經(jīng)驗值(一般為60~80 cm)。步數(shù)可以通過Android移動終端上的加速度傳感器來檢測。當(dāng)用戶行走時,Z方向上的加速度會產(chǎn)生相應(yīng)的變化,并呈現(xiàn)周期性的規(guī)律,該周期數(shù)即為用戶行走的步數(shù)。
對于運(yùn)動方向,考慮到路徑引導(dǎo)的功能,因此用戶一般會沿著導(dǎo)航路徑進(jìn)行行走,因此將導(dǎo)航路徑作為用戶移動方向的先驗知識,使用Android移動端的電子羅盤設(shè)備進(jìn)行路徑匹配驗證。需要注意的是電子羅盤的定位精度有限,長時間的導(dǎo)航將存在累計誤差。為了避免誤差偏離過大,可以在路徑匹配算法中為方向設(shè)置一個閾值(如與導(dǎo)航路徑夾角不大于60°),在該閾值范圍內(nèi)時路徑匹配成功,用戶正在沿導(dǎo)航路徑行走,當(dāng)超過該閾值時,路徑匹配失敗,這時系統(tǒng)應(yīng)提示用戶掃描附近的二維定位碼,確定當(dāng)前位置,重新進(jìn)行定位導(dǎo)航。
終端查詢服務(wù)是系統(tǒng)的核心功能模塊,為反向?qū)ぼ嚥樵兊囊苿咏K端提供車輛定位、反向查詢服務(wù)、路徑導(dǎo)航服務(wù)等功能。系統(tǒng)基于谷歌Android操作系統(tǒng),使用JAVA語言編程,在Eclipse環(huán)境中加入Android開發(fā)插件和ArcGIS API for Android插件實現(xiàn)該應(yīng)用程序的開發(fā)[7]。移動客戶端的功能模塊設(shè)計如圖6。
3.1 移動端數(shù)據(jù)庫設(shè)計
Android提供了文件、數(shù)據(jù)庫和網(wǎng)絡(luò)方式來存取數(shù)據(jù)??紤]到移動手機(jī)的存儲空間有限,兼顧數(shù)據(jù)顯示和加載的速度,采用3種組合方式對數(shù)據(jù)進(jìn)行管理,服務(wù)器端放置地圖二維離線導(dǎo)航數(shù)據(jù)下載包、三維地圖服務(wù)數(shù)據(jù)。移動客戶端用文件形式存儲二維離線導(dǎo)航數(shù)據(jù)包,即切片地圖;用SQLite數(shù)據(jù)庫存儲用戶位置信息,它是一種表格數(shù)據(jù)結(jié)構(gòu),本系統(tǒng)中包含了兩個表:車輛停靠位置信息表和車主位置信息表,分別用來存儲車輛和車主的位置信息,表的結(jié)構(gòu)一致,如表1。
圖6 移動客戶端功能模塊Fig. 6 Design of main function module of mobile customer表1 位置信息Table 1 Structure of database table
字段類型是否為空備注ID自動生成date日期否自動獲取time日期否自動獲取X_coordinate雙精度否坐標(biāo)Y_coordinate雙精度否坐標(biāo)Z_coordinate雙精度否坐標(biāo)
3.2 二維碼掃描功能實現(xiàn)
目前,在自己的應(yīng)用程序中內(nèi)嵌二維碼掃描功能越來越普遍。然而,二維碼功能的實現(xiàn)還是比較復(fù)雜的,從零實現(xiàn)不太現(xiàn)實,比較好的做法是借助google公司提供的ZXing開源項目,對其進(jìn)行修改來滿足自己的需要。利用ZXing項目的方式一般有兩種。一種是直接在自己的應(yīng)用程序中調(diào)用二維碼應(yīng)用程序(如BarcodeScanner.apk)。此種方式程序的改動最小,只需在需要掃描二維碼的地方加入激活該應(yīng)用的代碼即可,代碼如下:
//構(gòu)建新的activity,激活zxing掃描的掃描功能
Intent intent=new Intent("com.google.zxing.client.android.SCAN");
//設(shè)置掃描模式和解碼模式
intent.putExtra("SCAN_MODE", "QR_CODE_MODE");
//打開掃描應(yīng)用,并獲得掃描結(jié)果
startActivityForResult(intent, 0)。
從代碼可以看出,這是一個簡單的調(diào)用,但具有很大的缺陷,即移動手機(jī)上必須安裝BarcodeScanner.apk這個應(yīng)用程序,否則就會出錯。顯然,這種方式不是真正的內(nèi)嵌。
要實現(xiàn)真正的內(nèi)嵌,要將ZXing的源代碼復(fù)制到自己的程序中,然后根據(jù)需要進(jìn)行修改化簡。本系統(tǒng)只用到了二維碼的解碼功能,因此簡化過后的二維碼解碼包如圖7(a),掃描界面如圖7(b)。
圖7 二維碼掃描包和二維碼掃描界面Fig. 7 Simplified QR code scanner package and scanning interface
3.3 尋車導(dǎo)航功能實現(xiàn)
尋車導(dǎo)航功能實現(xiàn)的核心模塊是最短路徑分析,其基于網(wǎng)絡(luò)數(shù)據(jù)集來實現(xiàn)。 ARCGIS API for Android提供了RouteTask接口來實現(xiàn)最短路徑功能。該接口下提供了createLocalRouteTask( )函數(shù)來裝載地理數(shù)據(jù)庫和網(wǎng)絡(luò)數(shù)據(jù)集,solve(RouteParameters parameters)函數(shù)來執(zhí)行路徑分析功能,其參數(shù)RouteParameters用來定義路徑分析所需要的??奎c、障礙點等信息,返回的結(jié)果為RouteResult類,包含了路徑行駛方向、行駛時間、路徑幾何形狀等屬性信息[8-9]。
基于上述設(shè)計與實現(xiàn)方案,本研究選取某大型室內(nèi)停車場,對二維碼布設(shè)方案和開發(fā)的軟件進(jìn)行了實施驗證。驗證方案為:車主先駕車從車行入口駛?cè)胪\噲觯瑢④囕v??吭谌我卉囄簧希冒惭b了反向?qū)ぼ囓浖闹悄苁謾C(jī)掃描附近立柱上的二維碼,離開停車場;隨后從另一人行通道進(jìn)入停車場,在入口處掃描二維碼,查找車輛位置信息并得到最短路徑。
上述驗證過程說明系統(tǒng)能夠準(zhǔn)確地定位車輛??康奈恢茫⒂寐窂叫问揭龑?dǎo)車主快速行走到車輛位置。與定位到區(qū)域的反向?qū)ぼ囅到y(tǒng)相比,定位精度顯著提高;采用用戶隨身攜帶的智能手機(jī)作為查詢終端,避免固定查詢端所導(dǎo)致的擁擠、非實時的缺點;二維碼室內(nèi)定位成本低廉、掃描識別率高,避免了車牌識別方式的錯誤率,同時也免除了安裝額外的大型設(shè)備的需要,大大降低了系統(tǒng)的成本,具有普遍推廣的意義。
[1] 北京紫光百會科技有限公司.一種反向?qū)ぼ囅到y(tǒng):201020554925.8[P].2011-05-18. Beijing Unisplendour Baihui Technology Co., Ltd..AnInverseVehicleTrackingSystem. China: 201020554925.8[P]. 2011-05-18.
[2] 廈門科拓通訊技術(shù)有限公司. 停車場智能車位綜合信息系統(tǒng):201020258248.5[P].2010-11-10. Xiamen KeyTop Communication Technology Co., Ltd..IntelligentParkingSpaceIntegratedInformationSystem. China: 201020258248.5 [P].2010-11-10. [3] 楊沁沁. 車庫尋車查詢系統(tǒng):200910237899.8[P].2010-06-09.YANG Qinqin.ASeekingVehicleSysteminGarage.China: 20091023789 9.8[P].2010-06-09.
[4] 技嘉科技股份有限公司. 停車場管理系統(tǒng):200910170092.7[P].2011-04-06. GIGABYTE Technology Co., Ltd..AParkingManagementSystem. China: 200910170092.7[P].2011-04-06.
[5] 上海聚庫信息技術(shù)有限公司. 智能尋車引導(dǎo)系統(tǒng).中國:201020608054.3[P].2011-09-07. Shanghai JOCOO Information Technology Co.,Ltd..IntelligentTrackingVehicleGuidanceSystem. China:201020608054.3 [P].2011-09-07.
[6] 盛慶, 鄧中亮, 徐連明,等. 基于Android的室內(nèi)導(dǎo)航定位系統(tǒng)設(shè)計與實現(xiàn)[J]. 北京聯(lián)合大學(xué)學(xué)報(自然科學(xué)版),2012,26(1):23-27. SHENG Qing,DENG Zhongliang,XU Lianming, et al. The design and the application of electronic maps of indoor location and navigation based on android[J] .JournalofBeijingUnionUniversity(NaturalScience) ,2012,26(1):23-27.
[7] 劉寒梅. 基于Android 平臺的交互式智能導(dǎo)游系統(tǒng)的設(shè)計與實現(xiàn)[D]. 廣州: 暨南大學(xué),2012:20-25. LIU Hanmei.TheDesignandImplementationofInteractiveandIntellectualGuidingSystemBasedonAndroidPlatform[D]. Guangzhou: Jinan University, 2012: 20-25.
[8] 陶嘉明.基于ArcGIS 的室內(nèi)地圖服務(wù)系統(tǒng)的設(shè)計與實現(xiàn)[D]. 北京: 北京郵電大學(xué),2011:36-38. TAO Jiaming.TheDesignandImplementationofIndoorMapServiceSystemBasedonArcGIS[D] .Beijing: Beijing University of Posts and Telecommunications,2011:36-38.
[9] Nossum A S. Indoor tubes a novel design for indoor maps[J].CartographyandGeographicalInformationScience,2011,33(2):192 -200.
Research on an Intelligent Vehicle Tracking System in Indoor Parking Based on Android Platform
LI Huarong1,PAN Guobing1,ZHAO Yi2,WU Hualing3
(1.School of Civil Engineering, Chongqing Jiaotong University, Chongqing 400074,P.R.China;2. Communications Research & Design Institute Co., Ltd. China Merchants, Chongqing 400067,P.R.China;3. Faculty of Geomatics, East China Institute of Technology, Nanchang 330029 Jiangxi,P.R.China)
In order to find a solution to the headache problem that it is difficult for car owners to locate their cars in a large indoor parking building, an intelligent car tracking system was put forward. These performances of accurate positioning of car, reverse tracking and real-time path leading were achieved by use of the technology of Android intelligent cellphone as information collecting and processing terminal, in combination with technology of QR code scan for positioning , the indoor navigating technology of inertial sensor, ArcGIS map service and offline map package, and the technology of ArcGIS API for Android .Software was designed and put into practice was proved in the large indoor parking building. The results of testing proved the feasibility of the technological solution.
traffic and transportation engineering; vehicle tracking; Android platform; ArcGIS; QR code
10.3969/j.issn.1674-0696.2016.04.22
2015-03-04;
2015-04-17
國家自然科學(xué)基金項目(41404026)
李華蓉(1980—),女, 湖北宜昌人, 講師,博士, 主要從事地圖學(xué)與地理信息系統(tǒng)方面的工作。E-mail:lihuarong.cat@yeah.net。
TP391
A
1674-0696(2016)04-112-04