一種gnss坐標與高速公路樁號的轉換方法
【技術領域】
[0001]本發明涉及高速公路信息化領域,具體涉及一種GNSS坐標與高速公路粧號的轉換方法。
【背景技術】
[0002]GNSS的全稱是全球導航衛星系統(Global Navigat1n Satellite System),它是泛指所有的衛星導航系統,包括全球的、區域的和增強的,如美國的GPS、俄羅斯的Glonass、歐洲的Galileo、中國的北斗衛星導航系統,以及相關的增強系統,如美國的WAAS(廣域增強系統)、歐洲的EGNO S (歐洲靜地導航重疊系統)和日本的M SA S (多功能運輸衛星增強系統)等,還涵蓋在建和以后要建設的其他衛星導航系統。GNSS系統的建立極大地提高了地球社會的信息化水平,有力地推動了數字經濟的發展。近年來高速公路的快速發展形成了龐大的路網體系系統及交通信息資源,高速公路和GNSS導航系統的結合使其更好的服務于社會。為了在地圖上更好的將高速公路的服務設施、路況資訊等展現給廣大用戶,GNSS坐標和高速公路粧號的相互轉換是必不可少的。
【發明內容】
[0003]本發明要解決的技術問題是提供一種轉換效率和轉換精度均很高的GNSS坐標與高速公路粧號的轉換方法。
[0004 ]為解決上述技術問題,本發明所采取的技術方案是:
一種GNSS坐標與高速公路粧號的轉換方法,包括:
S 1.基礎數據生成
Sl-1.采集高速公路起點、結束點的粧號和GNSS經瑋度;
S1-2.使用高德導航功能,設置導航起點、結束點的GNSS坐標為高速公路起點、終點坐標,調用導航功能,獲取導航路徑坐標集合和導航里程;
S1-3.根據導航里程和實際粧號里程計算偏差系數;
S1-4.根據導航路徑坐標集合中坐標點之間的距離和里程偏差系數計算出每個坐標點對應的里程粧號;
S1-5.將導航路徑坐標集合中距離超過I千米的兩點之間插入細分節點,并計算細分節點的粧號;
51-6.將包括細分節點在內的導航路徑坐標集合中的相鄰兩點作為一組,將每組信息保存到數據庫中作為本方法的基礎數據;每組信息包括高速名稱、起點經度、起點瑋度、起點粧號、結束點經度、結束點瑋度和結束點粧號;
S2.根據高速名稱、粧號獲取GNSS經瑋度坐標
52-1.從數據庫保存的基礎數據中查詢輸入高速名稱等于數據條目中高速名稱且輸入粧號位于起點粧號和結束點粧號之間的條目;
S2-2.如果輸入粧號等于查詢到條目的起點粧號,則輸出GNSS經瑋度坐標等于條目起點的GNSS坐標;
S2-3.如果輸入粧號等于查詢到條目的結束點粧號,則輸出GNSS經瑋度坐標等于條目結束點的GNSS坐標;
52-4.如果輸入粧號在查詢到條目的起點粧號與結束點粧號之間,根據下面公式計算: 偏移比例=(輸入粧號-起點粧號)+ (結束點粧號-起點粧號)
輸出GNSS經度=起點經度+(結束點經度-起點經度)X偏移比例輸出GNSS瑋度=起點瑋度+(結束點瑋度-起點瑋度)X偏移比例;
S3.根據GNSS經瑋度坐標獲取高速名稱及粧號
53-1.根據搜索半徑計算GNSS經瑋度坐標差值:
GNSS經度差值=搜索半徑+ (111195 X cos (輸入經度X PI +180))
GNSS瑋度差值=搜索半徑+ 111195 所述搜索半徑的單位為米;
S3-2.計算要搜索的GNSS經瑋度坐標范圍:
(1)要搜索的GNSS經度范圍:
Min經度=輸入經度-GNSS經度差值 Max經度=輸入經度+ GNSS經度差值
(2)要搜索的GNSS瑋度范圍:
Min瑋度=輸入瑋度-GNSS瑋度差值 Max瑋度=輸入瑋度+ GNSS瑋度差值
S3-3.根據GNSS經瑋度坐標范圍查詢滿足下述條件的細分路段:
Min經度〈細分路段端點經度〈Max經度 Min瑋度〈細分路段端點瑋度〈Max瑋度
S3-4.查找與搜索點距離最近的細分路段:
根據海倫公式計算搜索點到每個細分路段的距離,從中找到距離最近的細分路段;
S3-5.計算搜索點和最近細分路段組成的三角形各邊的長度:搜索點到最近細分路段起點的距離PA,搜索點到最近細分路段終點的距離PB,最近細分路段起點到終點的距離AB;
S3-6.計算高速粧號:
(1)如果PA〈1,則輸出粧號=最近細分路段起點粧號;
(2)如果PB〈1,則輸出粧號=最近細分路段終點粧號;
(3)如果AB〈1,則輸出粧號=最近細分路段起點粧號;
(4)如果PAXPA> I3BXI3B + ABXAB,則搜索點在最近細分路段終點外側,進一步的: 計算偏移比例Scale = Sqrt (PA X PA-PH X PH)+AB
輸出粧號=起點粧號+(終點粧號-起點粧號)* Scale;
如果I3BXI3B > PAXPA + ABXAB,則搜索點在最近細分路段起點外側,進一步的: 計算偏移比例Scale = Sqrt (PB X PB-PH X PH)+AB 輸出粧號=終點粧號-(終點粧號-起點粧號)* Scale;
否則,搜索點在最近細分線段兩側,進一步的:
計算偏移比例Scale = Sqrt (PA X PA-PH X PH)+AB輸出粧號=起點粧號+(終點粧號-起點粧號)* Scale。
[0005]進一步的,S3-6中,如果輸出粧號〈0,則輸出粧號=0。
[0006]采用上述技術方案所產生的有益效果在于:
本發明的轉換方法實現了GNSS經瑋度坐標與高速公路粧號之間的高效及高精度相互轉換,能夠根據GNSS經瑋度坐標獲取高速名稱及粧號,也能夠根據高速名稱及粧號獲取GNSS經瑋度坐標。
【具體實施方式】
[0007]實施例:一種GNSS坐標與高速公路粧號的轉換方法,包括:
S1.基礎數據生成
Sl-1.采集高速公路起點、結束點的粧號和GNSS經瑋度;
S1-2.使用高德導航功能,設置導航起點、結束點的GNSS坐標為高速公路起點、終點坐標,調用導航功能,獲取導航路徑坐標集合和導航里程;
S1-3.根據導航里程和實際粧號里程計算偏差系數:
實際粧號里程=結束點粧號-起點粧號偏差系數Rl =實際粧號里程+導航里程;
S1-4.根據導航路徑坐標集合中坐標點之間的距離和里程偏差系數計算出每個坐標點對應的里程粧號:
導航路徑坐標集合中,坐標點η到前一坐標點的距離為dn;
坐標點η到導航路徑起點的距離Dn = dl+d2+d3+…+dn;
坐標點η的里程粧號=起點粧號+ Dn X偏差系數Rl;
S1-5.將導航路徑坐標集合中距離超過I千米的兩點之間插入細分節點,并計算細分節點的粧號;
51-6.將包括細分節點在內的導航路徑坐標集合中的相鄰兩點作為一組,將每組信息保存到數據庫中作為本方法的基礎數據;每組信息包括高速名稱、起點經度、起點瑋度、起點粧號、結束點經度、結束點瑋度和結束點粧號;
52.根據高速名稱、粧號獲取GNSS經瑋度坐標
52-1.從數據庫保存的基礎數據中查詢輸入高速名稱等于數據條目中高速名稱且輸入粧號位于起點粧號和結束點粧號之間的條目;
S2-2.如果輸入粧號等于查詢到條目的起點粧號,則輸出GNSS經瑋度坐標等于條目起點的GNSS坐標;
S2-3.如果輸入粧號等于查詢到條目的結束點粧號,則輸出GNSS經瑋度坐標等于條目結束點的GNSS坐標;
52-4.如果輸入粧號在查詢到條目的起點粧號與結束