本申請涉及計算機(jī)技術(shù)領(lǐng)域,具體涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及基于電子地圖的歷史行車軌跡顯示方法和裝置。
背景技術(shù):
受車載導(dǎo)航儀自身精度和周邊環(huán)境的影響,其通過全球衛(wèi)星導(dǎo)航系統(tǒng)直接得到的定位結(jié)果往往不在車輛實(shí)際所行駛的道路上,需要依靠地圖匹配技術(shù)實(shí)時或者通過后處理的方法將獲取的地理信息點(diǎn)(經(jīng)緯度坐標(biāo))歸算到路徑上,以進(jìn)行歷史行車軌跡的顯示。
現(xiàn)有的地圖匹配技術(shù)多采用增量地圖匹配方法或全局地圖匹配方法。增量地圖匹配方法通常是計算最新獲取的地理信息點(diǎn)的所有候選點(diǎn)和上一個地理信息點(diǎn)之間的關(guān)系來選擇獲得最大概率的候選點(diǎn)作為匹配點(diǎn),然后再以這個匹配點(diǎn)與下一個地理信息點(diǎn)的所有候選點(diǎn)之間的關(guān)系來進(jìn)行下一個匹配點(diǎn)的選擇,以此往復(fù),最后將所選取的匹配點(diǎn)所形成的路線作為歷史行車軌跡。全局地圖匹配方法則通常采用組合路徑上所有軌跡點(diǎn)的所有候選點(diǎn),來計算每一種組合的發(fā)生概率,進(jìn)而選擇概率最大的候選點(diǎn)組合,將候選點(diǎn)組合中的每一個候選點(diǎn)作為匹配點(diǎn),將各匹配點(diǎn)所形成的路線作為歷史行車軌跡。
然而,現(xiàn)有的用于確定歷史行車軌跡的方法通常只采用一種地圖匹配技術(shù)(例如增量地圖匹配方法或全局地圖匹配方法),從而存在著匹配效率低或歷史行車軌跡準(zhǔn)確度低的問題。
技術(shù)實(shí)現(xiàn)要素:
本申請的目的在于提出一種改進(jìn)的基于電子地圖的歷史行車軌跡顯示方法和裝置,來解決以上背景技術(shù)部分提到的技術(shù)問題。
第一方面,本申請?zhí)峁┝艘环N基于電子地圖的歷史行車軌跡顯示方法,該方法包括:獲取地理信息點(diǎn)序列;從上述地理信息點(diǎn)序列中選取預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn);組合所選取的預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn)的候選點(diǎn),計算每一種組合的概率以選取概率最大的候選點(diǎn)組合,并將上述候選點(diǎn)組合中的每一個候選點(diǎn)作為匹配點(diǎn),其中,候選點(diǎn)為位于上述電子地圖中的道路上的點(diǎn),并且地理信息點(diǎn)與其候選點(diǎn)之間的直線距離是地理信息點(diǎn)距離其候選點(diǎn)所在道路的最短距離;確定上述地理信息點(diǎn)序列中是否還有待選取的地理信息點(diǎn);響應(yīng)于上述地理信息點(diǎn)序列中還有待選取的地理信息點(diǎn),則對于上述待選取的地理信息點(diǎn)中的每一個地理信息點(diǎn),執(zhí)行以下處理步驟來確定與該地理信息點(diǎn)對應(yīng)的匹配點(diǎn):將該地理信息點(diǎn)作為當(dāng)前地理信息點(diǎn),確定上述當(dāng)前地理信息點(diǎn)與前一個地理信息點(diǎn)之間的直線距離是否小于閾值;若是,則選取上述當(dāng)前地理信息點(diǎn)的位于與前一個匹配點(diǎn)相同的道路上的候選點(diǎn)作為匹配點(diǎn);將所確定的匹配點(diǎn)繪制成路線作為歷史行車軌跡進(jìn)行顯示。
在一些實(shí)施例中,上述處理步驟還包括:響應(yīng)于確定上述直線距離不小于上述閾值,則以上述當(dāng)前地理信息點(diǎn)為中心設(shè)定搜索半徑,在上述搜索半徑范圍內(nèi)查找上述當(dāng)前地理信息點(diǎn)的候選點(diǎn);響應(yīng)于在上述搜索半徑范圍內(nèi)查找到上述當(dāng)前地理信息點(diǎn)的候選點(diǎn),則進(jìn)一步確定所查找到的候選點(diǎn)中是否存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn);若是,則從所確定的與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)中選取一個候選點(diǎn)作為匹配點(diǎn)。
在一些實(shí)施例中,上述處理步驟還包括:響應(yīng)于在上述搜索半徑范圍內(nèi)未查找到上述當(dāng)前地理信息點(diǎn)的候選點(diǎn),或響應(yīng)于確定所查找到的候選點(diǎn)中不存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn),則在上述搜索半徑不超出搜索半徑閾值的情況下,基于預(yù)置步長不斷增大上述搜索半徑直至查找到上述當(dāng)前地理信息點(diǎn)的至少一個候選點(diǎn);確定上述至少一個候選點(diǎn)中是否存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn);若是,則從所確定的與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)中選取一個候選點(diǎn)作為匹配點(diǎn)。
在一些實(shí)施例中,上述處理步驟還包括:響應(yīng)于確定上述至少一個候選點(diǎn)中不存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn),則在上述地理信息點(diǎn)序列中從上述當(dāng)前地理信息點(diǎn)開始重新選取預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn),以根據(jù)重新選取的預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn)的候選點(diǎn)來確定預(yù)定數(shù)目個匹配點(diǎn);確定上述地理信息點(diǎn)序列中是否還有待選取的地理信息點(diǎn),若是,則對于所確定的每一個待選取的地理信息點(diǎn),執(zhí)行上述處理步驟來確定與該地理信息點(diǎn)對應(yīng)的匹配點(diǎn)。
在一些實(shí)施例中,上述從所確定的與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)中選取一個候選點(diǎn)作為匹配點(diǎn),包括:如果所確定的與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)只有一個,則直接將該候選點(diǎn)作為匹配點(diǎn)。
在一些實(shí)施例中,上述從所確定的與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)中選取一個候選點(diǎn)作為匹配點(diǎn),包括:如果所確定的與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)為多個,則計算上述多個候選點(diǎn)中的每一個候選點(diǎn)的概率,選取概率最大的候選點(diǎn)作為匹配點(diǎn)。
第二方面,本申請?zhí)峁┝艘环N基于電子地圖的歷史行車軌跡顯示裝置,該裝置包括:獲取單元,配置用于獲取地理信息點(diǎn)序列;選取單元,配置用于從上述地理信息點(diǎn)序列中選取預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn);第一處理單元,配置用于組合所選取的預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn)的候選點(diǎn),計算每一種組合的概率以選取概率最大的候選點(diǎn)組合,并將上述候選點(diǎn)組合中的每一個候選點(diǎn)作為匹配點(diǎn),其中,候選點(diǎn)為位于上述電子地圖中的道路上的點(diǎn),并且地理信息點(diǎn)與其候選點(diǎn)之間的直線距離是地理信息點(diǎn)距離其候選點(diǎn)所在道路的最短距離;確定單元,配置用于確定上述地理信息點(diǎn)序列中是否還有待選取的地理信息點(diǎn);第二處理單元,配置用于響應(yīng)于上述地理信息點(diǎn)序列中還有待選取的地理信息點(diǎn),則對于上述待選取的地理信息點(diǎn)中的每一個地理信息點(diǎn),執(zhí)行以下處理步驟來確定與該地理信息點(diǎn)對應(yīng)的匹配點(diǎn):將該地理信息點(diǎn)作為當(dāng)前地理信息點(diǎn),確定上述當(dāng)前地理信息點(diǎn)與前一個地理信息點(diǎn)之間的直線距離是否小于閾值;若是,則選取上述當(dāng)前地理信息點(diǎn)的位于與前一個匹配點(diǎn)相同的道路上的候選點(diǎn)作為匹配點(diǎn);顯示單元,配置用于將所確定的匹配點(diǎn)繪制成路線作為歷史行車軌跡進(jìn)行顯示。
在一些實(shí)施例中,上述第二處理單元還包括:第一查找子單元,配置用于響應(yīng)于確定上述直線距離不小于上述閾值,則以上述當(dāng)前地理信息點(diǎn)為中心設(shè)定搜索半徑,在上述搜索半徑范圍內(nèi)查找上述當(dāng)前地理信息點(diǎn)的候選點(diǎn);第一處理子單元,配置用于響應(yīng)于在上述搜索半徑范圍內(nèi)查找到上述當(dāng)前地理信息點(diǎn)的候選點(diǎn),則進(jìn)一步確定所查找到的候選點(diǎn)中是否存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn);若是,則從所確定的與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)中選取一個候選點(diǎn)作為匹配點(diǎn)。
在一些實(shí)施例中,上述第二處理單元還包括:第二查找子單元,配置用于響應(yīng)于在上述搜索半徑范圍內(nèi)未查找到上述當(dāng)前地理信息點(diǎn)的候選點(diǎn),或響應(yīng)于確定所查找到的候選點(diǎn)中不存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn),則在上述搜索半徑不超出搜索半徑閾值的情況下,基于預(yù)置步長不斷增大上述搜索半徑直至查找到上述當(dāng)前地理信息點(diǎn)的至少一個候選點(diǎn);第二處理子單元,配置用于確定上述至少一個候選點(diǎn)中是否存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn);若是,則從所確定的與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)中選取一個候選點(diǎn)作為匹配點(diǎn)。
在一些實(shí)施例中,上述第二處理單元還包括:第三處理子單元,配置用于響應(yīng)于確定上述至少一個候選點(diǎn)中不存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn),則在上述地理信息點(diǎn)序列中從上述當(dāng)前地理信息點(diǎn)開始重新選取預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn),以根據(jù)重新選取的預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn)的候選點(diǎn)來確定預(yù)定數(shù)目個匹配點(diǎn);第四處理子單元,配置用于確定上述地理信息點(diǎn)序列中是否還有待選取的地理信息點(diǎn),若是,則對于所確定的每一個待選取的地理信息點(diǎn),執(zhí)行上述處理步驟來確定與該地理信息點(diǎn)對應(yīng)的匹配點(diǎn)。
在一些實(shí)施例中,上述第一處理子單元或第二處理子單元進(jìn)一步配置用于:
如果所確定的與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)只有一個,則直接將該候選點(diǎn)作為匹配點(diǎn)。
在一些實(shí)施例中,上述第一處理子單元或第二處理子單元進(jìn)一步配置用于:如果所確定的與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)為多個,則計算上述多個候選點(diǎn)中的每一個候選點(diǎn)的概率,選取概率最大的候選點(diǎn)作為匹配點(diǎn)。
本申請?zhí)峁┑幕陔娮拥貓D的歷史行車軌跡顯示方法和裝置,通過從所獲取的地理信息點(diǎn)序列中選取預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn),以從所選取的預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn)的候選點(diǎn)中確定預(yù)定數(shù)目個匹配點(diǎn);而后對于地理信息點(diǎn)序列中的每一個待選取的地理信息點(diǎn),通過采用上述處理步驟來確定與該待選取的地理信息點(diǎn)對應(yīng)的匹配點(diǎn);之后將所確定的匹配點(diǎn)繪制成路線作為歷史行車軌跡進(jìn)行顯示,從而有效利用了根據(jù)預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn)的候選點(diǎn)確定匹配點(diǎn),以及對上述處理步驟的采用,提高了對歷史行車軌跡進(jìn)行確定的高效準(zhǔn)確性。
附圖說明
通過閱讀參照以下附圖所作的對非限制性實(shí)施例所作的詳細(xì)描述,本申請的其它特征、目的和優(yōu)點(diǎn)將會變得更明顯:
圖1是本申請可以應(yīng)用于其中的示例性系統(tǒng)架構(gòu)圖;
圖2是根據(jù)本申請的基于電子地圖的歷史行車軌跡顯示方法的一個實(shí)施例的流程圖;
圖3是根據(jù)本申請的基于電子地圖的歷史行車軌跡顯示方法的一個應(yīng)用場景的示意圖;
圖4是與圖2所示的實(shí)施例中的處理步驟對應(yīng)的流程圖;
圖5是根據(jù)本申請的基于電子地圖的歷史行車軌跡顯示裝置的一個實(shí)施例的結(jié)構(gòu)示意圖;
圖6是適于用來實(shí)現(xiàn)本申請實(shí)施例的服務(wù)器的計算機(jī)系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對本申請作進(jìn)一步的詳細(xì)說明??梢岳斫獾氖?,此處所描述的具體實(shí)施例僅用于解釋相關(guān)發(fā)明,而非對該發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與有關(guān)發(fā)明相關(guān)的部分。
需要說明的是,在不沖突的情況下,本申請中的實(shí)施例及實(shí)施例中的特征可以相互組合。下面將參考附圖并結(jié)合實(shí)施例來詳細(xì)說明本申請。
圖1示出了可以應(yīng)用本申請的基于電子地圖的歷史行車軌跡顯示方法或基于電子地圖的歷史行車軌跡顯示裝置的實(shí)施例的示例性系統(tǒng)架構(gòu)100。
如圖1所示,系統(tǒng)架構(gòu)100可以包括終端設(shè)備101、102、103,網(wǎng)絡(luò)104和服務(wù)器105。網(wǎng)絡(luò)104用以在終端設(shè)備101、102、103和服務(wù)器105之間提供通信鏈路的介質(zhì)。網(wǎng)絡(luò)104可以包括各種連接類型,例如有線、無線通信鏈路或者光纖電纜等等。
用戶可以使用終端設(shè)備101、102、103通過網(wǎng)絡(luò)104與服務(wù)器105交互,以接收或發(fā)送消息等。終端設(shè)備101、102、103上可以安裝有各種通訊客戶端應(yīng)用,例如地圖工具、歷史行車軌跡查詢應(yīng)用、網(wǎng)頁瀏覽器應(yīng)用、搜索類應(yīng)用、即時通信工具等。
終端設(shè)備101、102、103可以是具有顯示屏的各種電子設(shè)備,包括但不限于智能手機(jī)、平板電腦膝上型便攜計算機(jī)和臺式計算機(jī)等等。
服務(wù)器105可以是提供各種服務(wù)的服務(wù)器,例如對終端設(shè)備101、102、103提供支持的查詢服務(wù)器。查詢服務(wù)器可以對接收到的歷史行車軌跡查詢請求等數(shù)據(jù)進(jìn)行分析等處理,并將處理結(jié)果(例如歷史行車軌跡)向終端設(shè)備進(jìn)行展示。
需要說明的是,本申請實(shí)施例所提供的基于電子地圖的歷史行車軌跡顯示方法一般由服務(wù)器105執(zhí)行,相應(yīng)地,基于電子地圖的歷史行車軌跡顯示裝置一般設(shè)置于服務(wù)器105中。
應(yīng)該理解,圖1中的終端設(shè)備、網(wǎng)絡(luò)和服務(wù)器的數(shù)目僅僅是示意性的。根據(jù)實(shí)現(xiàn)需要,可以具有任意數(shù)目的終端設(shè)備、網(wǎng)絡(luò)和服務(wù)器。
繼續(xù)參考圖2,示出了根據(jù)本申請的基于電子地圖的歷史行車軌跡顯示方法的一個實(shí)施例的流程200。該基于電子地圖的歷史行車軌跡顯示方法,包括以下步驟:
步驟201,獲取地理信息點(diǎn)序列。
在本實(shí)施例中,基于電子地圖的歷史行車軌跡顯示方法運(yùn)行于其上的電子設(shè)備(例如圖1所示的服務(wù)器105)可以接收用戶終端(例如圖1所示的終端設(shè)備101、102、103)發(fā)送的用于查詢歷史行車軌跡的查詢指令,之后可以根據(jù)上述查詢指令包含的時間范圍來獲取地理信息點(diǎn)序列。這里,地理信息點(diǎn)可以為全球?qū)Ш叫l(wèi)星系統(tǒng)在車輛行駛過程中所采集的經(jīng)緯度坐標(biāo);地理信息點(diǎn)序列中的各地理信息點(diǎn)按照采集時間先后順序排序??蛇x地,上述車輛可以為無人駕駛車輛或者現(xiàn)有的需要駕駛員駕駛的車輛,上述車輛上可以設(shè)置有全球?qū)Ш叫l(wèi)星系統(tǒng)。
可選地,上述電子設(shè)備可以從本地數(shù)據(jù)庫或與上述電子設(shè)備遠(yuǎn)程通信連接的數(shù)據(jù)庫獲取地理信息點(diǎn)序列。
步驟202,從地理信息點(diǎn)序列中選取預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn)。
在本實(shí)施例中,上述電子設(shè)備可以從上述地理信息點(diǎn)序列中的排序最靠前的地理信息點(diǎn)開始選取預(yù)定數(shù)目個(例如5個)連續(xù)的地理信息點(diǎn)。其中,預(yù)定數(shù)目可以是人為設(shè)置的,可根據(jù)實(shí)際需求進(jìn)行調(diào)整。
步驟203,組合所選取的預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn)的候選點(diǎn),計算每一種組合的概率以選取概率最大的候選點(diǎn)組合,并將上述候選點(diǎn)組合中的每一個候選點(diǎn)作為匹配點(diǎn)。
在本實(shí)施例中,上述電子設(shè)備可以采用業(yè)界成熟的全局地圖匹配方法(例如基于隱馬爾可夫模型的方法)組合所選取的預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn)的候選點(diǎn),計算每一種組合的概率,選取概率最大的候選點(diǎn)組合,并將上述候選點(diǎn)組合中的每一個候選點(diǎn)作為匹配點(diǎn)。其中,候選點(diǎn)為位于電子地圖中的道路上的點(diǎn),并且地理信息點(diǎn)與其候選點(diǎn)之間的直線距離是地理信息點(diǎn)距離其候選點(diǎn)所在道路的最短距離。作為示例,預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn)為“A”、“B”,“A”的候選點(diǎn)為“C”和“D”,“B”的候選點(diǎn)為“E”和“F”,則可以產(chǎn)生4種候選點(diǎn)組合,分別為“C”和“E”、“C”和“F”、“D”和“E”以及“D”和“F”;上述電子設(shè)備可以在上述各候選點(diǎn)組合分別形成的路線中確定與地理信息點(diǎn)“A”和“B”所形成的路線最接近的路線,例如確定最接近的路線為候選點(diǎn)“C”和“E”所形成的路線,則上述電子設(shè)備可以將候選點(diǎn)“C”和“E”作為匹配點(diǎn)。
這里,電子地圖(Electronic map),即數(shù)字地圖,是利用計算機(jī)技術(shù),以數(shù)字方式存儲和查閱的地圖。電子地圖可用于顯示車輛的歷史行車軌跡。
隱馬爾可夫模型(Hidden Markov Model,HMM)是統(tǒng)計模型,它用來描述一個含有隱含未知參數(shù)的馬爾可夫過程。隱馬爾可夫模型是馬爾可夫鏈的一種,它的狀態(tài)不能直接觀察到,但能通過觀測向量序列觀察到,每個觀測向量都是通過某些概率密度分布表現(xiàn)為各種狀態(tài),每一個觀測向量是由一個具有相應(yīng)概率密度分布的狀態(tài)序列產(chǎn)生。所以,隱馬爾可夫模型是一個雙重隨機(jī)過程----具有一定狀態(tài)數(shù)的隱馬爾可夫鏈和顯示隨機(jī)函數(shù)集。
需要說明的是,上述全局地圖匹配方法是目前廣泛研究和應(yīng)用的公知技術(shù),在此不在贅述。
步驟204,確定地理信息點(diǎn)序列中是否還有待選取的地理信息點(diǎn)。
在本實(shí)施例中,待選取的地理信息點(diǎn)可以為地理信息點(diǎn)序列中的排序位于上述預(yù)置數(shù)目個連續(xù)的地理信息點(diǎn)之后的地理信息點(diǎn)。如果地理信息點(diǎn)序列中有待選取的地理信息點(diǎn),則上述電子設(shè)備可以執(zhí)行步驟205。
步驟205,對于待選取的地理信息點(diǎn)中的每一個地理信息點(diǎn),執(zhí)行以下處理步驟來確定與該地理信息點(diǎn)對應(yīng)的匹配點(diǎn)。
在本實(shí)施例中,上述電子設(shè)備可以采用增量地圖匹配方法來確定與上述待選取的地理信息點(diǎn)中的每一個地理信息點(diǎn)對應(yīng)的匹配點(diǎn)。具體地,上述電子設(shè)備可以執(zhí)行以下處理步驟來確定與上述待選取的地理信息點(diǎn)中的每一個地理信息點(diǎn)對應(yīng)的匹配點(diǎn):將該地理信息點(diǎn)作為當(dāng)前地理信息點(diǎn),確定當(dāng)前地理信息點(diǎn)與前一個地理信息點(diǎn)之間的直線距離是否小于閾值;若是,則選取當(dāng)前地理信息點(diǎn)的位于與前一個匹配點(diǎn)相同的道路上的候選點(diǎn)作為匹配點(diǎn)。這里,上述閾值可以根據(jù)全球?qū)Ш叫l(wèi)星系統(tǒng)的采樣間隔時間進(jìn)行設(shè)置,例如采樣間隔時間為10秒,則可以設(shè)置上述閾值為5米。
步驟206,將所確定的匹配點(diǎn)繪制成路線作為歷史行車軌跡進(jìn)行顯示。
在本實(shí)施例中,上述電子設(shè)備可以在上述電子地圖中將所確定的匹配點(diǎn)繪制成路線,并作為歷史行車軌跡展示給用戶終端。
繼續(xù)參見圖3,圖3是根據(jù)本實(shí)施例的基于電子地圖的歷史行車軌跡顯示方法的應(yīng)用場景的一個示意圖。圖3中實(shí)心圓點(diǎn)表示地理信息點(diǎn),空心圓點(diǎn)表示候選點(diǎn)。在圖3的應(yīng)用場景中,用戶可以通過終端設(shè)備向查詢服務(wù)器發(fā)送歷史行車軌跡查詢指令;之后,查詢服務(wù)器可以后臺獲取地理信息點(diǎn)序列,其中,地理信息點(diǎn)序列可以包括地理信息點(diǎn)P1、P2、P3和P4,P1有位于道路2上的候選點(diǎn)A,P2有位于道路2上的候選點(diǎn)B以及位于道路1上的候選點(diǎn)C,P3有位于道路2上的候選點(diǎn)D和位于道路2上的候選點(diǎn)E,P4有位于道路3上的候選點(diǎn)G和位于道路2上的候選點(diǎn)F;然后,上述查詢服務(wù)器可以在地理信息點(diǎn)序列中選取排序最靠前的3個連續(xù)的地理信息點(diǎn)P1、P2和P3;然后,上述查詢服務(wù)器可以將候選點(diǎn)A、B和C以及D和E進(jìn)行組合,進(jìn)而可以選取出概率最大的候選點(diǎn)組合A、C和E,并將候選點(diǎn)A、C和E作為匹配點(diǎn);接著,對于地理信息點(diǎn)P4,上述電子設(shè)備可以確定P4與P3之間的直線距離(例如直線距離為3米)是否小于閾值(例如閾值為5米),響應(yīng)于上述直線距離小于上述閾值,則上述電子設(shè)備可以將P4的位于與候選點(diǎn)E相同道路上的候選點(diǎn)F作為匹配點(diǎn);最后,上述電子設(shè)備可以將匹配點(diǎn)A、C、E和F繪制成路線(如標(biāo)號301所示)作為歷史軌跡進(jìn)行顯示。
本實(shí)施例的上述實(shí)施例提供的方法通過混合采用全局地圖匹配方法和增量地圖匹配方法,提高了對歷史行車軌跡進(jìn)行確定的高效準(zhǔn)確性。
進(jìn)一步參考圖4,其示出了與圖2所示的實(shí)施例中的處理步驟對應(yīng)的流程400。該流程400,包括以下步驟:
步驟401,對于每一個待選取的地理信息點(diǎn),將該地理信息點(diǎn)作為當(dāng)前地理信息點(diǎn),確定當(dāng)前地理信息點(diǎn)與前一個地理信息點(diǎn)之間的直線距離是否小于閾值。
在本實(shí)施例中,上述閾值可以根據(jù)全球?qū)Ш叫l(wèi)星系統(tǒng)的采樣間隔時間進(jìn)行設(shè)置,例如采樣間隔時間為10秒,則可以將上述閾值設(shè)置為5米。如果上述直線距離小于上述閾值,則上述電子設(shè)備可以執(zhí)行步驟402;如果上述直線距離不小于上述閾值,則上述電子設(shè)備可以執(zhí)行步驟403。
步驟402,選取當(dāng)前地理信息點(diǎn)的位于與前一個匹配點(diǎn)相同的道路上的候選點(diǎn)作為匹配點(diǎn)。
在本實(shí)施例中,響應(yīng)于當(dāng)前地理信息點(diǎn)與前一個地理信息點(diǎn)之間的直線距離小于閾值,則上述電子設(shè)備可以選取當(dāng)前地理信息點(diǎn)的位于與前一個匹配點(diǎn)相同的道路上的候選點(diǎn)作為匹配點(diǎn)。
步驟403,以當(dāng)前地理信息點(diǎn)為中心設(shè)定搜索半徑,在搜索半徑范圍內(nèi)查找上述當(dāng)前地理信息點(diǎn)的候選點(diǎn)。
在本實(shí)施例中,響應(yīng)于當(dāng)前地理信息點(diǎn)與前一個地理信息點(diǎn)之間的直線距離不小于閾值,則上述電子設(shè)備可以以當(dāng)前地理信息點(diǎn)為中心設(shè)定搜索半徑(例如搜索半徑為50米),上述電子設(shè)備可以在搜索半徑范圍內(nèi)查找當(dāng)前地理信息點(diǎn)的候選點(diǎn)。如果上述電子設(shè)備在搜索半徑范圍內(nèi)查找到當(dāng)前地理信息點(diǎn)的候選點(diǎn),則上述電子設(shè)備可以執(zhí)行步驟404;如果上述電子設(shè)備在搜索半徑范圍內(nèi)未查找到當(dāng)前地理信息點(diǎn)的候選點(diǎn),則上述電子設(shè)備可以執(zhí)行步驟405。
步驟404,確定所查找到的候選點(diǎn)中是否存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)。
在本實(shí)施例中,響應(yīng)于上述電子設(shè)備在搜索半徑范圍內(nèi)查找到當(dāng)前地理信息點(diǎn)的候選點(diǎn),則上述電子設(shè)備可以確定所查找到的候選點(diǎn)中是否存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)。如果所查找到的候選點(diǎn)中不存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn),則上述電子設(shè)備可以執(zhí)行步驟405。如果所查找到的候選點(diǎn)中存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn),則上述電子設(shè)備可以執(zhí)行步驟407。需要指出的是,最短路徑可以為兩個點(diǎn)在一定交通規(guī)則的情況下能夠得到的最短沿道路路線;預(yù)置合理值可以是人為設(shè)置的,可以根據(jù)實(shí)際需求進(jìn)行設(shè)定。作為示例,如果車輛行駛速度最高不超過35米每秒,全球?qū)Ш叫l(wèi)星系統(tǒng)的采樣間隔時間是10秒,則預(yù)置合理值可設(shè)定為35×10,即350米針對10秒采樣間隔。
步驟405,在搜索半徑不超出搜索半徑閾值的情況下,基于預(yù)置步長不斷增大搜索半徑直至查找到當(dāng)前地理信息點(diǎn)的至少一個候選點(diǎn)。
在本實(shí)施例中,響應(yīng)于上述電子設(shè)備在所設(shè)定的搜索半徑范圍內(nèi)未查找到當(dāng)前地理信息點(diǎn)的候選點(diǎn),或在所設(shè)定的搜索半徑范圍內(nèi)查找到當(dāng)前地理信息點(diǎn)的候選點(diǎn)并且所查找到的候選點(diǎn)中沒有與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn),則在搜索半徑不超出搜索半徑閾值(例如200米)的情況下,上述電子設(shè)備可以基于預(yù)置步長(例如50米)不斷增大搜索半徑直至查找到當(dāng)前地理信息點(diǎn)的至少一個候選點(diǎn)。之后,上述電子設(shè)備可以執(zhí)行步驟406。這里,上述搜索半徑閾值和預(yù)置步長可以是人為設(shè)置的,可以根據(jù)實(shí)際需求進(jìn)行調(diào)整。
步驟406,確定上述至少一個候選點(diǎn)中是否存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)。
在本實(shí)施例中,上述電子設(shè)備可以將上述至少一個候選點(diǎn)中的每一個候選點(diǎn)與上一個匹配點(diǎn)之間的最短路徑與預(yù)置合理值進(jìn)行比較,如果上述至少一個候選點(diǎn)中存在與上一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn),則上述電子設(shè)備可以執(zhí)行步驟407;如果上述至少一個候選點(diǎn)中不存在與上一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn),則上述電子設(shè)備可以執(zhí)行步驟408。
步驟407,從所確定的與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)中選取一個候選點(diǎn)作為匹配點(diǎn)。
在本實(shí)施例中,如果所確定的與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)只有一個,則上述電子設(shè)備可以直接將該候選點(diǎn)作為匹配點(diǎn);如果所確定的與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)為多個,則上述電子設(shè)備可以計算上述多個候選點(diǎn)中的每一個候選點(diǎn)的概率,選取概率最大的候選點(diǎn)作為匹配點(diǎn)。這里,候選點(diǎn)的概率主要包括測量概率和轉(zhuǎn)移概率。測量概率度量的是地理信息點(diǎn)距離候選點(diǎn)的距離,即認(rèn)為候選點(diǎn)距離地理信息點(diǎn)距離越小,越有可能為匹配點(diǎn)。地理信息點(diǎn)與候選點(diǎn)的距離與概率之間符合高斯分布(Gaussian distribution)。轉(zhuǎn)移概率度量的是從上一個匹配點(diǎn)到當(dāng)前候選點(diǎn)的通行可能性,即認(rèn)為車輛在通行時,總是傾向于使用兩點(diǎn)之間最短的符合交通行駛規(guī)則路徑,其概率值通過比較最短直線距離與最短路徑之間的關(guān)系進(jìn)行衡量,兩者之間越接近,其對應(yīng)的轉(zhuǎn)移概率越高。
步驟408,在地理信息點(diǎn)序列中從當(dāng)前地理信息點(diǎn)開始重新選取預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn),以根據(jù)重新選取的預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn)的候選點(diǎn)來確定預(yù)定數(shù)目個匹配點(diǎn)。
在本實(shí)施例中,響應(yīng)于上述電子設(shè)備確定上述至少一個候選點(diǎn)中不存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn),則上述電子設(shè)備可以在地理信息點(diǎn)序列中從當(dāng)前地理信息點(diǎn)開始重新選取預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn),以根據(jù)重新選取的預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn)的候選點(diǎn)來確定預(yù)定數(shù)目個匹配點(diǎn);之后,上述電子設(shè)備可以確定地理信息點(diǎn)序列中是否還有待選取的地理信息點(diǎn),若是,上述電子設(shè)備可以轉(zhuǎn)到步驟401;若否,上述電子設(shè)備可以結(jié)束判斷流程。
從圖4中可以看出,本實(shí)施例突出了對與每一個待選取的地理信息點(diǎn)對應(yīng)的匹配點(diǎn)進(jìn)行確定的步驟。由此,本實(shí)施例描述的方案可以確定更準(zhǔn)確的匹配點(diǎn),進(jìn)而可以進(jìn)一步提高對歷史行車軌跡進(jìn)行確定的高效準(zhǔn)確性。
進(jìn)一步參考圖5,作為對上述各圖所示方法的實(shí)現(xiàn),本申請?zhí)峁┝艘环N基于電子地圖的歷史行車軌跡顯示裝置的一個實(shí)施例,該裝置實(shí)施例與圖2所示的方法實(shí)施例相對應(yīng),該裝置具體可以應(yīng)用于各種電子設(shè)備中。
如圖5所示,本實(shí)施例的基于電子地圖的歷史行車軌跡顯示裝置500包括:獲取單元501、選取單元502、第一處理單元503、確定單元504、第二處理單元505和顯示單元506。其中,獲取單元501配置用于獲取地理信息點(diǎn)序列;選取單元502配置用于從上述地理信息點(diǎn)序列中選取預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn);第一處理單元503配置用于組合所選取的預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn)的候選點(diǎn),計算每一種組合的概率以選取概率最大的候選點(diǎn)組合,并將上述候選點(diǎn)組合中的每一個候選點(diǎn)作為匹配點(diǎn),其中,候選點(diǎn)為位于上述電子地圖中的道路上的點(diǎn),并且地理信息點(diǎn)與其候選點(diǎn)之間的直線距離是地理信息點(diǎn)距離其候選點(diǎn)所在道路的最短距離;確定單元504配置用于確定上述地理信息點(diǎn)序列中是否還有待選取的地理信息點(diǎn);第二處理單元505配置用于響應(yīng)于上述地理信息點(diǎn)序列中還有待選取的地理信息點(diǎn),則對于上述待選取的地理信息點(diǎn)中的每一個地理信息點(diǎn),執(zhí)行以下處理步驟來確定與該地理信息點(diǎn)對應(yīng)的匹配點(diǎn):將該地理信息點(diǎn)作為當(dāng)前地理信息點(diǎn),確定上述當(dāng)前地理信息點(diǎn)與前一個地理信息點(diǎn)之間的直線距離是否小于閾值;若是,則選取上述當(dāng)前地理信息點(diǎn)的位于與前一個匹配點(diǎn)相同的道路上的候選點(diǎn)作為匹配點(diǎn);而顯示單元506配置用于將所確定的匹配點(diǎn)繪制成路線作為歷史行車軌跡進(jìn)行顯示。
基于電子地圖的歷史行車軌跡顯示裝置500中:獲取單元501、選取單元502、第一處理單元503、確定單元504、第二處理單元505和顯示單元506可參看圖2對應(yīng)實(shí)施例中的步驟201、步驟202、步驟203、步驟204、步驟205和步驟206的實(shí)現(xiàn)方式的相關(guān)描述,在此不再贅述。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,上述第二處理單元505還包括:第一查找子單元(圖中未示出),配置用于響應(yīng)于確定上述直線距離不小于上述閾值,則以上述當(dāng)前地理信息點(diǎn)為中心設(shè)定搜索半徑,在上述搜索半徑范圍內(nèi)查找上述當(dāng)前地理信息點(diǎn)的候選點(diǎn);第一處理子單元(圖中未示出),配置用于響應(yīng)于在上述搜索半徑范圍內(nèi)查找到上述當(dāng)前地理信息點(diǎn)的候選點(diǎn),則進(jìn)一步確定所查找到的候選點(diǎn)中是否存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn);若是,則從所確定的與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)中選取一個候選點(diǎn)作為匹配點(diǎn)。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,上述第二處理單元505還包括:第二查找子單元(圖中未示出),配置用于響應(yīng)于在上述搜索半徑范圍內(nèi)未查找到上述當(dāng)前地理信息點(diǎn)的候選點(diǎn),或響應(yīng)于確定所查找到的候選點(diǎn)中不存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn),則在上述搜索半徑不超出搜索半徑閾值的情況下,基于預(yù)置步長不斷增大上述搜索半徑直至查找到上述當(dāng)前地理信息點(diǎn)的至少一個候選點(diǎn);第二處理子單元(圖中未示出),配置用于確定上述至少一個候選點(diǎn)中是否存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn);若是,則從所確定的與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)中選取一個候選點(diǎn)作為匹配點(diǎn)。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,上述第二處理單元505還包括:第三處理子單元(圖中未示出),配置用于響應(yīng)于確定上述至少一個候選點(diǎn)中不存在與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn),則在上述地理信息點(diǎn)序列中從上述當(dāng)前地理信息點(diǎn)開始重新選取預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn),以根據(jù)重新選取的預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn)的候選點(diǎn)來確定預(yù)定數(shù)目個匹配點(diǎn);第四處理子單元(圖中未示出),配置用于確定上述地理信息點(diǎn)序列中是否還有待選取的地理信息點(diǎn),若是,則對于所確定的每一個待選取的地理信息點(diǎn),執(zhí)行上述處理步驟來確定與該地理信息點(diǎn)對應(yīng)的匹配點(diǎn)。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,上述第一處理子單元或第二處理子單元進(jìn)一步配置用于:如果所確定的與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)只有一個,則直接將該候選點(diǎn)作為匹配點(diǎn)。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,上述第一處理子單元或第二處理子單元進(jìn)一步配置用于:如果所確定的與前一個匹配點(diǎn)之間的最短路徑不超過預(yù)置合理值的候選點(diǎn)為多個,則計算上述多個候選點(diǎn)中的每一個候選點(diǎn)的概率,選取概率最大的候選點(diǎn)作為匹配點(diǎn)。
下面參考圖6,其示出了適于用來實(shí)現(xiàn)本申請實(shí)施例的服務(wù)器的計算機(jī)系統(tǒng)600的結(jié)構(gòu)示意圖。
如圖6所示,計算機(jī)系統(tǒng)600包括中央處理單元(CPU)601,其可以根據(jù)存儲在只讀存儲器(ROM)602中的程序或者從存儲部分608加載到隨機(jī)訪問存儲器(RAM)603中的程序而執(zhí)行各種適當(dāng)?shù)膭幼骱吞幚?。在RAM 603中,還存儲有系統(tǒng)600操作所需的各種程序和數(shù)據(jù)。CPU 601、ROM 602以及RAM 603通過總線604彼此相連。輸入/輸出(I/O)接口605也連接至總線604。
以下部件連接至I/O接口605:包括鍵盤、鼠標(biāo)等的輸入部分606;包括諸如陰極射線管(CRT)、液晶顯示器(LCD)等以及揚(yáng)聲器等的輸出部分607;包括硬盤等的存儲部分608;以及包括諸如LAN卡、調(diào)制解調(diào)器等的網(wǎng)絡(luò)接口卡的通信部分609。通信部分609經(jīng)由諸如因特網(wǎng)的網(wǎng)絡(luò)執(zhí)行通信處理。驅(qū)動器610也根據(jù)需要連接至I/O接口605。可拆卸介質(zhì)611,諸如磁盤、光盤、磁光盤、半導(dǎo)體存儲器等等,根據(jù)需要安裝在驅(qū)動器610上,以便于從其上讀出的計算機(jī)程序根據(jù)需要被安裝入存儲部分608。
特別地,根據(jù)本公開的實(shí)施例,上文參考流程圖描述的過程可以被實(shí)現(xiàn)為計算機(jī)軟件程序。例如,本公開的實(shí)施例包括一種計算機(jī)程序產(chǎn)品,其包括有形地包含在機(jī)器可讀介質(zhì)上的計算機(jī)程序,上述計算機(jī)程序包含用于執(zhí)行流程圖所示的方法的程序代碼。在這樣的實(shí)施例中,該計算機(jī)程序可以通過通信部分609從網(wǎng)絡(luò)上被下載和安裝,和/或從可拆卸介質(zhì)611被安裝。在該計算機(jī)程序被中央處理單元(CPU)601執(zhí)行時,執(zhí)行本申請的方法中限定的上述功能。
附圖中的流程圖和框圖,圖示了按照本申請各種實(shí)施例的系統(tǒng)、方法和計算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個方框可以代表一個模塊、程序段、或代碼的一部分,上述模塊、程序段、或代碼的一部分包含一個或多個用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實(shí)現(xiàn)中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個接連地表示的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或操作的專用的基于硬件的系統(tǒng)來實(shí)現(xiàn),或者可以用專用硬件與計算機(jī)指令的組合來實(shí)現(xiàn)。
描述于本申請實(shí)施例中所涉及到的單元可以通過軟件的方式實(shí)現(xiàn),也可以通過硬件的方式來實(shí)現(xiàn)。所描述的單元也可以設(shè)置在處理器中,例如,可以描述為:一種處理器包括獲取單元、選取單元、第一處理單元、確定單元、第二處理單元和顯示單元。其中,這些單元的名稱在某種情況下并不構(gòu)成對該單元本身的限定,例如,獲取單元還可以被描述為“獲取地理信息點(diǎn)序列的單元”。
作為另一方面,本申請還提供了一種非易失性計算機(jī)存儲介質(zhì),該非易失性計算機(jī)存儲介質(zhì)可以是上述實(shí)施例中上述裝置中所包含的非易失性計算機(jī)存儲介質(zhì);也可以是單獨(dú)存在,未裝配入終端中的非易失性計算機(jī)存儲介質(zhì)。上述非易失性計算機(jī)存儲介質(zhì)存儲有一個或者多個程序,當(dāng)上述一個或者多個程序被一個設(shè)備執(zhí)行時,使得上述設(shè)備:獲取地理信息點(diǎn)序列;從上述地理信息點(diǎn)序列中選取預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn);組合所選取的預(yù)定數(shù)目個連續(xù)的地理信息點(diǎn)的候選點(diǎn),計算每一種組合的概率以選取概率最大的候選點(diǎn)組合,并將上述候選點(diǎn)組合中的每一個候選點(diǎn)作為匹配點(diǎn),其中,候選點(diǎn)為位于上述電子地圖中的道路上的點(diǎn),并且地理信息點(diǎn)與其候選點(diǎn)之間的直線距離是地理信息點(diǎn)距離其候選點(diǎn)所在道路的最短距離;確定上述地理信息點(diǎn)序列中是否還有待選取的地理信息點(diǎn);響應(yīng)于上述地理信息點(diǎn)序列中還有待選取的地理信息點(diǎn),則對于上述待選取的地理信息點(diǎn)中的每一個地理信息點(diǎn),執(zhí)行以下處理步驟來確定與該地理信息點(diǎn)對應(yīng)的匹配點(diǎn):將該地理信息點(diǎn)作為當(dāng)前地理信息點(diǎn),確定上述當(dāng)前地理信息點(diǎn)與前一個地理信息點(diǎn)之間的直線距離是否小于閾值;若是,則選取上述當(dāng)前地理信息點(diǎn)的位于與前一個匹配點(diǎn)相同的道路上的候選點(diǎn)作為匹配點(diǎn);將所確定的匹配點(diǎn)繪制成路線作為歷史行車軌跡進(jìn)行顯示。
以上描述僅為本申請的較佳實(shí)施例以及對所運(yùn)用技術(shù)原理的說明。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,本申請中所涉及的發(fā)明范圍,并不限于上述技術(shù)特征的特定組合而成的技術(shù)方案,同時也應(yīng)涵蓋在不脫離上述發(fā)明構(gòu)思的情況下,由上述技術(shù)特征或其等同特征進(jìn)行任意組合而形成的其它技術(shù)方案。例如上述特征與本申請中公開的(但不限于)具有類似功能的技術(shù)特征進(jìn)行互相替換而形成的技術(shù)方案。