十分鐘了解地圖如何實現紅綠燈讀秒?
十一期間開車到五六線線城市,發現高德地圖的紅綠燈讀秒功能竟然依舊比較精準,之前在一二線城市了解地圖的讀秒是使用政府交通部門的數據,那五六線城市的數據應該是沒那么全,那怎么實現讀秒的呢?于是找到相關高德地圖專利,了解了一下原理。
高德地圖
原理
首先高德地圖有大量的導航數據,本身這些數據存在規律性,所以按照高德專利中的描述,原理如下:
(1)讀取目標樣本的數據;
(2)基于樣本車輛的軌跡數據,確定在所述目標時段的第一次啟動的起始的樣本車輛;
(3)將所述起始樣本車輛的啟動時間作為起始時間,確定所述目標時間段內其他樣本車輛的啟動時間距離所述起始時間的偏移時長;
(4)統計所述樣本車輛在所述偏移時長維度上的數量分布信息;
(5)基于所述數量分布信息的周期性特征確定所述目標紅綠燈的周期時長;
難點
從上述的流程可以看出,只需要足夠多的樣本數據就可以繪制出如下圖:
樣本圖
但是仍然有如下難點需要解決:
- 如何去除噪聲數據,由于地圖導航中有一些非機動車并不會按照紅綠燈執行;
- 如何解決車道的紅綠燈的讀秒,由于不同的車道可能紅綠燈不一樣,但是對車的定位精度不會特別準,這就導致不同車道的讀秒可能存在誤讀;
- 對于一些路口的車輛比較少的情況,樣本數據不足如何解決?
- 交通擁堵的情況下,大量車輛等待會導致后臺分析誤認為存在紅綠燈,如何剔除這種周期擁堵的數據?
- 如何區分單周期紅綠燈和多周期的紅綠燈,這樣紅綠燈存在同一天不同時段的等待時間不一樣;
- ...
從高德地圖技術細節可以找到一些解決方案:
(1)如何去除噪聲數據?
利用預先訓練的軌跡分類模型對軌跡數據進行分類,其分類結果可以是機動車軌跡和非機動車軌跡。
(2)解決多車道的問題?
在確定是否為在目標紅綠燈前停車并等待紅燈的樣本車輛,可以先將目標紅綠燈所連通的兩個連通路段關聯起來,也即該相關聯的兩個連通路段中,從第一路段通過紅綠燈可以行駛到第二路段,而針對同一目標紅綠燈,可以建立一組或多組相關聯的連通路段,每組包括兩個連通路段。
(3)如何區分交通擁堵?
通過將一天進行切片后得到多個時間段,針對每個時間段統計樣本車輛在目標紅綠燈前停車的時間,然后通過濾波算法(如離散傅立葉算法),這樣更容易找到穩定的周期,從而剔除擁堵的情況。
...
參考
(1)https://patentimages.storage.googleapis.com/75/d2/bd/e3acaa57437b92/CN114463969B.pdf