陽利鋒
(創(chuàng)輝達(dá)設(shè)計(jì)股份有限公司)
近年來,隨著我國社會(huì)經(jīng)濟(jì)的快速增長和城鎮(zhèn)化進(jìn)程的不斷加速,城市的規(guī)模不斷擴(kuò)大,人們生活水平不斷提高,機(jī)動(dòng)車擁有量迅速增加,交通供需矛盾日益突出,加劇了城市道路的擁堵程度。利用互聯(lián)網(wǎng)+大數(shù)據(jù)分析出的擁堵數(shù)據(jù),可快速查找出路網(wǎng)中的擁堵點(diǎn)及有銜接結(jié)構(gòu)性問題的路段,真正做到以問題和目標(biāo)為導(dǎo)向,提出針對性強(qiáng)、操作性強(qiáng)、見效顯著的解決方案。
在國內(nèi)導(dǎo)航領(lǐng)域占有率最高的是百度和高德,百度地圖和高德地圖都提供了交通路況數(shù)據(jù)的API接口,通過對比分析,兩者的路況都分為未知、暢通、緩行、擁堵、嚴(yán)重?fù)矶挛鍌€(gè)級別,但百度地圖返回的路況結(jié)果中并不包含路段的坐標(biāo)點(diǎn),無法把路況結(jié)果矢量化后利用GIS技術(shù)進(jìn)行空間分析,且高德的接口每日免費(fèi)調(diào)用額度為30000次,遠(yuǎn)高于百度的2000次。為了覆蓋大多數(shù)時(shí)間,需要申請多個(gè)許可,可以建立key表記錄每個(gè)key一天訪問的次數(shù),動(dòng)態(tài)分配key。
百度地圖和高德地圖均提供了實(shí)時(shí)路況圖層,兩者的路況圖層均進(jìn)行了加密,但是百度地圖額外提供了一個(gè)非加密的交通瓦片服務(wù)地址,調(diào)用該服務(wù)會(huì)返回一張256像素×256像素大小的瓦片,通過該服務(wù)可爬取指定區(qū)域的所有路況瓦片,再對瓦片進(jìn)行矢量化分析可提取路況數(shù)據(jù)。
數(shù)據(jù)爬取:高德地圖提供了交通態(tài)勢的API,首先需要申請AK,申請流程:進(jìn)入【高德地圖開放平臺】→注冊認(rèn)證成為開發(fā)者→【應(yīng)用管理】→【我的應(yīng)用】→【創(chuàng)建新應(yīng)用】→獲得AK。獲取AK后通過HTTP請示即可獲取矩形區(qū)域或圓形區(qū)域的交通狀況,請求參數(shù)“rectangle”為必填項(xiàng),表示左下右上頂點(diǎn)坐標(biāo)對,其中兩點(diǎn)矩形對角線不能超過10公里,兩個(gè)坐標(biāo)對之間用";"間隔,x坐標(biāo)、y坐標(biāo)之間用","間隔。由于高德地圖的坐標(biāo)系為加密的GCJ-02坐標(biāo)系統(tǒng)(火星坐標(biāo)),我們需要從高德的坐標(biāo)獲取系統(tǒng)中拾取目標(biāo)區(qū)域左下、右上兩個(gè)頂點(diǎn)的坐標(biāo),并按要求拼接成請求字符串,如“112.809244,28.313243;113.16218,28.004502”。返回的交通路況數(shù)據(jù)表字段如下:
序號 字段 數(shù)據(jù)類型 說明1 時(shí)間 時(shí)間 精確至秒,每十分鐘為一個(gè)數(shù)據(jù)周期2 道路名稱 文本3 路段名 文本4 路況 數(shù)字 0:未知;1:暢通;2:緩行;3:擁堵;4:嚴(yán)重?fù)矶? 方向描述 文本6 速度 數(shù)字 單位:km/h 7 車行角度 數(shù)字 以正東方向?yàn)?°,逆時(shí)針方向?yàn)檎?,取值范圍:[0,360]8 道路坐標(biāo)集 文本 經(jīng)度和緯度使用","分隔坐標(biāo)之間使用";"分隔。例如:x1,y1;x2,y2。
高德返回的道路坐標(biāo)集為火星坐標(biāo)系,為了便于后面的數(shù)據(jù)分析,在采集時(shí)需要利用轉(zhuǎn)換算法將火星坐標(biāo)系轉(zhuǎn)換為WGS84坐系。
數(shù)據(jù)爬?。喊俣嚷窙r瓦片的服務(wù)地址為:
http://its.map.baidu.com:8002/traffic/TrafficTileService,該服務(wù)需提交四個(gè)參數(shù),參數(shù)說明如下:
序號 參數(shù)名 字段說明1 time 時(shí)間點(diǎn),需要將時(shí)間轉(zhuǎn)化為13位數(shù)的整形2 v 版本號,默認(rèn)為“016”3 level 瓦片級別4 x 瓦片列號5 y 瓦片行號
通過爬蟲技術(shù)將百度的路況瓦片爬取之后,需要進(jìn)一步將瓦片中的路況信息提取出來并進(jìn)行矢量可視化,這個(gè)過程涉及兩個(gè)操作,一是根據(jù)瓦片中的顏色提取路況狀態(tài),二是將瓦片中的像素點(diǎn)轉(zhuǎn)換為經(jīng)緯度空間坐標(biāo)。路況瓦片中用四種顏色代表四種不同的路況,路況分別是:暢通,用顏色#4fd27d表示;緩行,用顏色#ffd045表示;擁擠,用顏色#e80e0e表示;嚴(yán)重?fù)矶?,用顏?b40000表示。
以單瓦片路況提取為例,從瓦片左上角(0,0)開始,以3像素為間隔循環(huán)提取瓦片中的顏色值,再與百度地圖的路況顏色進(jìn)行匹配,如匹配成功,則根據(jù)瓦片文件名中的級別、行號、列號以及該像素點(diǎn)在瓦片中的位置計(jì)算該像素點(diǎn)的實(shí)際空間位置,核心代碼如下:
百度地圖的18級,1個(gè)像素代表1m,17級,1個(gè)像素代表2m,16級代表4m,以此類推,在將瓦片像素點(diǎn)中的坐標(biāo)轉(zhuǎn)換為地理平面坐標(biāo)時(shí)利用18級作為參考即可算出。為了保密,百度地圖做了偏移處理,使用的是百度的BD-09坐標(biāo)系,在國家要求的火星坐標(biāo)系GCJ-02上做了進(jìn)一步的處理,因此GPS經(jīng)緯度定位會(huì)出現(xiàn)偏移。
在GIS中建立路網(wǎng)數(shù)據(jù)庫,在建立的數(shù)據(jù)庫中分層出道路網(wǎng)絡(luò)相關(guān)數(shù)據(jù),包括各等級道路網(wǎng)絡(luò)及屬性數(shù)據(jù)。利用緩沖區(qū)分析、疊加分析、線性參考分析、拓?fù)浞治龅榷喾N空間分析方法,自動(dòng)識別出各等級道路相交點(diǎn)、道路等級不匹配點(diǎn)并可視化顯示分析結(jié)果,再疊加互聯(lián)網(wǎng)+大數(shù)據(jù)分析出的擁堵數(shù)據(jù),可快速查找出路網(wǎng)中有銜接結(jié)構(gòu)性問題的路段。
本次研究的結(jié)果采集數(shù)據(jù)量較小,考慮到目前位于暑假、部分周邊道路由于施工等原因進(jìn)行了交通管制,不能全面的反映21個(gè)收費(fèi)站出口路段的長時(shí)間周期內(nèi)的擁堵情況,還需要收集長周期范圍內(nèi)相關(guān)路段的擁堵數(shù)據(jù)。同時(shí)高德地圖及百度地圖均在WGS84坐標(biāo)系的基礎(chǔ)上做了加密處理,為了將路況數(shù)據(jù)與路網(wǎng)數(shù)據(jù)等進(jìn)行疊加分析,需要對采集轉(zhuǎn)換后路況數(shù)據(jù)進(jìn)一步處理,統(tǒng)一坐標(biāo)系。