天天看點

網際網路地圖坐标偏移的解決方法

根據中國的相關法規,在國内發行的民用地圖産品不允許使用真實坐标,必須加入一定偏移(出于國家安全考慮)。由于是相對偏移,并不會影響使用者的使用。這種偏移是通過測繪部門的國家保密插件來實作的。

國家保密插件,也叫做加密插件或者加偏或者SM模組,其實就是對真實坐标系統進行人為地加偏處理,按照幾行代碼的算法,将真實的坐标加密成虛假的坐标,而這個加偏并不是線性的加偏,是以各地的偏移情況有所不同。所有電子地圖所有導航裝置,都需要加入國家保密插件。第一步,地圖公司測繪地圖,測繪完成後,送到國家測繪局,将真實坐标的電子地圖,加密成“保密坐标“,這樣的地圖才是可以出版和釋出的,然後才可以讓GPS公司處理。第二步,所有GPS公司,隻要需要汽車導航的,需要用到導航電子地圖的,統統需要在軟體中加入國家保密算法,将Com口讀出來的真實的坐标信号,加密轉換成國家要求的保密的坐标,這樣,GPS導航儀和導航電子地圖就可以完全比對,GPS也就可以正常工作。目前中國的幾家網際網路地圖公司(百度地圖、搜狗地圖、谷歌地圖、Mapbar等)也模仿國家加密的做法,在國家加密的基礎上又加入了自己的加密量,目的是防止競争對手抓取、分析自家的資料。地圖的偏移算法通常有幾種:一種是線性偏移,這種偏移算法容易被破解,使用不多;另一種非線性,在不同的區域,偏移的值和方向各有不通(如偏移字典)。是以破解地圖偏移最常見的一種做法是:同名點計算。即知道不同地圖上相同點的坐标,再計算這些點坐标之間的內插補點。這種方法就依賴于同名點數量和分布程度。去年我在一個項目中需要使用Gmap和GPS,就破解Gmap的坐标偏移,相關代碼請見 https://github.com/brightman/lbs  歡迎大家完善,将其它幾家網際網路地圖破解算法也包含進來 :)

繼續閱讀