天天看點

如何洞悉城市人群移動規律?DataV海量軌迹可視化實踐解析

軌迹資料和我們的生活息息相關:小到掃地機器人的室内清潔線路,大到跨省跨國跨洲的旅行,短到一次共享單車騎行,長到十年如一日的通信基站記錄。對城市治理而言,挖掘人群和車輛的移動規律,能幫助決策者更好地規劃城市交通、保障公共安全、響應突發事件,讓城市變得更智能、更高效。

經典軌迹展現方式的局限

軌迹資料描述了時空次元中,移動對象的空間位置和屬性随時間的變化。在這些移動對象(如人、車輛等)移動過程中,每隔一段時間,他們的位置及其他屬性會通過所攜帶的裝置(如手機、傳感器等)被記錄下來,形成了一個采樣點資料。對于一個移動對象而言,多個采樣點資料按時間順序排列,構成了該對象軌迹資料。

然而,軌迹資料來源諸多(包括但不限于手機信令資料、車輛GPS資料、Wifi-嗅探資料、簽到資料等)且時時刻刻有新資料産生,導緻軌迹資料體量十分巨大,造成嚴重的視覺混淆和渲染壓力。是以,我們借助可視分析技術,通過将軌迹資料轉化流場資料,不僅保留軌迹資料的主要特征,同時大大降低資料體量,進而更好地洞察城市中人群的移動規律。

在使用可視分析技術對軌迹資料進行分析和挖掘時,一個很重要的任務是将軌迹可視化在互動界面上,為使用者提供觀察和探索的空間。對于軌迹資料的表達方法,在這個領域已經有了一定的研究,傳統的方法有路徑連接配接法和飛線法。其中,路徑連接配接法将每個對象的軌迹資料中的采樣點按照時間順序進行連線,再使用其他的視覺通道,如顔色、寬度和線形等編碼對象的其他屬性。這種方法是最直覺的軌迹展現形式,它能夠清晰地展現移動對象途徑的空間位置,DataV在“基礎平面地圖”和“3D地圖”元件中“線熱力層”子元件采用的就是這種可視化形式。

飛線法和路徑連接配接法相似,不同之處在于,它通過動畫的形式模拟移動對象的移動,一般情況,使用一個帶有箭頭的線段來編碼移動對象,線段會按照時間順序在采樣點之間移動,這種方法能夠更加清晰地反映移動對象的運動方向,并且具有較為炫酷的視覺效果,DataV各地圖元件中的“飛線層”和“3D地圖”元件中的“弧線層”、“軌迹層”、“路網軌迹層”都是這種可視化方法的實作,去年雙十一驚豔亮相的“閃電圖”中的閃電特效同樣是采用飛線法實作的。

如何洞悉城市人群移動規律?DataV海量軌迹可視化實踐解析

路徑連接配接法應用:采用DataV中的“線熱力層”元件可視化全國物流幹網

如何洞悉城市人群移動規律?DataV海量軌迹可視化實踐解析

飛線法應用:采用DataV可視化杭州一天的計程車軌迹

如何洞悉城市人群移動規律?DataV海量軌迹可視化實踐解析

飛線法應用:DataV雙十一全國快遞“閃電”大屏,每條閃電模拟了寶貝沿着真實路網從賣家發向買家的過程

以上兩種可視化形式都是經典軌迹資料可視化方法,但它們也存在力不從心的時候,當針對海量軌迹資料應用這些方法時,由于資料體量驚人,原先直覺清晰的視覺表達出現了大量的遮擋和重疊,如果處理不當,會很大程度上影響使用者的觀察和探索。此外,資料體量的提升帶來了巨大的繪制壓力,使用者需要不斷地提升硬體裝置的性能才能應對,無形之中提高了軌迹分析的門檻。是以,針對海量軌迹資料,我們需要一種更為有效的可視化方法來洞察城市中移動對象的移動規律。

流場生成算法

經過研究,我們提出了一種針對海量軌迹資料的流場生成算法,能夠将特定時間片段内的軌迹資料轉化為流場資料,進而對“人流”、“車流”等進行表達和刻畫。這種方法的特點在于,它沒有直接對海量軌迹資料進行可視化,而是将軌迹資料進行一定的聚合,提取軌迹資料的主要特征,将軌迹資料轉化為流場資料,再對選擇合适的可視化方法對流場資料進行展現。由于流場資料保留了軌迹資料主要特征的同時大大降低了資料體量,是以能夠在消除視覺遮擋和減輕繪制壓力的同時,清晰直覺地反映城市中移動對象的移動的規律。

算法的主要流程如下圖所示:

如何洞悉城市人群移動規律?DataV海量軌迹可視化實踐解析

1)統計軌迹點向量

軌迹資料是由若幹個采樣點資料構成,采樣點資料包括軌迹點位置、時間及其他屬性資訊。我們首先根據所有采樣點資料統計出軌迹點的位置,再根據軌迹資料中兩兩采樣點之間的流入流出情況,計算每個軌迹點出入向量的方向和大小,其中大小又包括軌迹數量和移動對象的速度;

2)過濾軌迹點向量

對于上一步中所得到的軌迹點的所有出入向量,方法将根據自定義的軌迹數量門檻值對其進行過濾,篩選得到每個軌迹點的主要出入向量;

3)生成軌迹點主向量

在這一步中,方法根據使用者自定義的流場方向,對上一步得到的每個軌迹點所有的出入主向量按方向進行分類和聚合,在各個方向上生成至多一個主出向量和至多一個主入向量。在生成各個方向上的主向量的同時,需要統計各個方向内向量的平均速度、平均移動距離和平均差異角度;

4)擴散軌迹點主向量

接下來,将n*m的網格平鋪到使用者指定的區域内,将每個軌迹點在各個方向上的主向量按照一定條件和規則擴散到n*m的網格中。其中,在進行擴散時,擴散在網格内的向量,方向和速度保持不變,軌迹數量遞減,而隻有滿足以下條件,一個網格才會受到某主向量的輻射影響:

 ●  被擴散網格中心與軌迹點之間的距離不大于軌迹點的平均移動距離;

 ●  當擴散向量為入向量時,被擴散網格中心與軌迹點形成的向量與擴散主向量之間的角度應該處于[180-平均差異角度,180+平均差異角度]之間;當擴散向量為出向量時,被擴散網格中心與軌迹點形成的向量與擴散主向量之間的角度應該處于[-平均差異角度,+平均差異角度]之間。

5)計算網格主向量

在上一步中,同一個網格可能會受多個向量的輻射影響,産生多個擴散向量,是以,在這一步中,需要計算每個網格中各方向上的聚合向量(包含了流場方向、移動速度和軌迹數量),得到最終的流場資料。

在方法中,需要定義軌迹數量門檻值、流場方向和網格個數。軌迹數量門檻值主要用于過濾軌迹點向量,過濾是為了保留主要的軌迹,防止“噪聲”對結果準确性的幹擾;而對流場進行分向計算,則避免了相對方向上的移動抵消,進而能夠保留更多的細節資訊,使得最終結果更加準确;而在定義網格個數時,需要平衡個數較多所帶來的計算壓力和個數較少帶來的粗糙效果。為了使得方法具有一定的自适應性,我們在擴散向量時,并沒有采用固定的角度和距離,我們使用各方向上的平均移動距離和平均差異角度,使得擴散能夠适應不同的向量分布,結果更加合理。

軌迹流場案例

以上是我們提出的針對海量軌迹資料的流場生成算法的簡要流程,下圖是方法根據某市2017年8月14日早上8:00到8:10間的手機信令資料可視化的效果:

如何洞悉城市人群移動規律?DataV海量軌迹可視化實踐解析

在這個案例中,我們采用了粒子流動來表現流場資料,網格内粒子的數量即為軌迹數量(移動對象數量),粒子的移動方向代表移動對象的移動方向,粒子的顔色和速度均表示移動對象的移動速度,其中速度越大顔色越接近藍色,速度越小顔色越接近紅色。同時,我們提供了一些控件,用于調整流場方向、軌迹數量門檻值和網格個數等參數,用于互動查詢。通過這種方式,大大降低了繪制量并減少了視覺重疊,進而能夠清晰觀察城市内人群移動。

DataV不僅在資料大屏領域為各行各業的客戶提供支援和服務,在大資料的可視分析的研究上,也在進行積極的探索。無論是最近推出的智慧場館解決方案,還是海量軌迹的流場生成方法,都是新的嘗試,我們将不忘初心,繼續努力,為大家帶來更好的可視化産品。

原文釋出時間為:2018-10-22

本文作者:關會華

本文來自雲栖社群合作夥伴“

阿裡技術

”,了解相關資訊可以關注“

”。

繼續閱讀