本页使用了标题或全文手工转换

中华人民共和国测绘限制

维基百科,自由的百科全书
(重定向自GCJ-02
跳转至: 导航搜索

出于国家安全考虑,中国大陆对测绘有专门的限制。在使用中华人民共和国境内的数据之前,需要从国务院下属的国家测绘局(国测局)获得相应资质许可。[1]不经许可进行测绘者会被罚款,进行OpenStreetMap众包制图活动很可能就属于这类非法行为。

为防触犯法律,不少带有GPS的相机会在中国自动关闭照片地理标记英语geotagging的功能。除此之外,由于国测局要求地图商使用一种特别的国测局坐标,不少地图程序的卫星图与街道地图间存在偏移。[2]

法律规定[编辑]

按照《中华人民共和国测绘法》第7、26、40、42条,自2002年起私人测绘制图活动在中国大陆地区就属非法。此法禁止

擅自发布中华人民共和国领域和管辖的其他海域的重要地理信息数据。 — 中华人民共和国测绘法,41(2)

违者相应罚款最低10,000元,最高500,000元人民币。外国组织要进行测绘,必须和中华人民共和国有关部门、单位合作进行。[1]

2006到2011年期间,中华人民共和国当局处理了近40例非法测绘案件。[3]媒体也报道了一些非法测绘案件:

  • 2007年3月7日:日韩学者受罚款。威海一合资企业未经许可雇佣外国测绘人员。[4]
  • 2008年3月25日:国家测绘地理信息局取缔中国大陆境内共10000多地图网站中的某些地图网站,大多是因为擅自发布地图数据。[5]
  • 2009年1月6日:英国学生因“非法制图活动”受罚款。[6]
  • 2010年:大陆当局取缔其境内42000地图服务商中部分未经注册、非法运营的服务商,其注重点在于消除错误信息、保护国家机密。 新发布的地图服务标准要求地图服务商将储存地图数据的服务器置于中国境内。[7]
  • 2014年3月14日:可口可乐公司被指非法测绘。[8]

由于这一法规限制,松下、徕卡、富士胶片、尼康、三星等厂商的相机都限制记录中国境内的地理数据。[9]

众包世界地图OpenStreetMap也建议称“在中国境内私人测绘制图为非法行为”。[10]四川省测绘地理信息局于2016年八月警告称,未经许可使用测绘无人机可构成非法测绘。[11]

坐标系实现[编辑]

中国法规要求地图提供商使用一种称为GCJ-02的坐标系统。百度地图另外使用一种BD-09坐标系[12],似乎也是基于GCJ-02[13]

(禁止)未经批准,在测绘活动中擅自采用国际坐标系统 — 中华人民共和国测绘法,40 (1)
导航电子地图在公开出版、销售、传播、展示和使用前,必须进行空间位置技术处理。 — GB 20263―2006《导航电子地图安全处理技术基本要求》,4.1

GCJ-02[编辑]

GCJ-02(俗称火星坐标系国测局坐标,官方称地形图非线性保密处理算法[14])是一种基于WGS-84制定的大地测量系统 ,由中国国测局制定,国家科学技术进步奖一等奖得主李成名开发。[15][16]此坐标系所采用的混淆算法[17]会在经纬度中加入看似随机的偏移,号称可以促进国家安全。[13][18]

使用GCJ-02记录下的地点在GCJ-02的地图中会显示在正确的位置,然而换成WGS-84的地图或地点记录就可能造成100—700米不等的偏移。据测量,[2]Google.com的地图与真实坐标相差约50—500米,[8][a]而中国区的Google.cn地图则与卫星不带偏差。[b]雅虎地圖显示的街道图也与卫星偏差不大。[c]MapQuest地图与众包测绘、不受限制的OpenStreetMap重合。[d]

虽然GCJ-02坐标系统本身保密,但是目前已有C#[19]、C、Go、Java、JavaScript、PHP[20]、Python[21]、R[13]、Ruby[22][23]等多种语言的开源转换实现。这些实现似乎都基于某份泄露出的WGS到GCJ加偏代码实现。 [24]除了直接获取加偏算法,也有人通过对谷歌中国地图与卫星间的偏移做回归近似处理。[25]Wu Yongzheng使用傅里叶变换解出了与泄露代码类似的高频结构。[26]

根据泄露代码注释[19],GCJ-02在加偏时使用的是SK-42参考系统英语SK-42 reference system的椭球体参数。

BD-09[编辑]

BD-09百度地图使用的地理坐标系,其在GCJ-02上多增加了一次变换,号称“有助保护用户隐私”。[27][28]百度提供从WGS和GCJ坐标系转换到BD-09坐标系的API。[12]和GCJ-02的情况类似,虽然没有反向转换的官方API,但却存在R[13]等多种语言[20]写成的开源版本。

反向纠偏[编辑]

由于GCJ-02大量使用正弦函数制造高频噪音,形成了一个超越方程,导致基本不可能获得解析解。不过由于GCJ加偏前后的坐标相差并不太大,且其单调性和局部线性特性也较好[29],大部分开源实现都通过类似这样的算法实现反向纠偏:[13]

from typing import Callable
# 使用复数类型表示坐标,简化描述
coords = complex
# 描述一个输入坐标、输出坐标的函数
C2C = Callable[[coords], coords]

def rev_transform_rough(bad: coords, worsen: C2C) -> coords:
    """
    粗略地对“worsen”函数加偏后的坐标“bad”进行修正。

    由于``bad = worsen(good)``和``good``相差不远,
    可以使用``worsen(bad) - bad``近似``bad - good``。
    因此``bad - (worsen(bad) - bad)``约等于
    ``bad - (bad - good) = good``。

    粗略算法始见于eviltransform。
    """
    return bad - (worsen(bad) - bad)

def rev_transform(bad: coords, worsen: C2C) -> coords:
    """
    精确地对“worsen”函数加偏后的坐标“bad”进行修正。

    在``rev_transform_rough``的基础上更进一步,
    推广到使用``worsen(a) - worsen(b)``估计``a - b``。
    对于每一步迭代给出的估计wgs,都可以由
    ``wgs - (worsen(old) - bad))``估出一个更精确的原数值。
    当变化量小于eps时,即可认为迭代足够接近不动点,结果足够精确。

    始见于 geoChina/R/cst.R (caijun 2014)。
    不带粗略初始化的纯迭代版本始见于 fengzee-me/ChinaMapShift(2013年11月)。
    """
    eps = 1e-6
    wgs = rev_transform_rough(bad, worsen)
    old = bad
    dowhile = True

    while abs(wgs - old) > eps or dowhile:
        old = wgs
        wgs -= worsen(wgs) - bad
        dowhile = False
    return wgs

开源实现者称,“粗略”算法能提供1~2米的来回转换精度[20][30],而精确算法则可以在两个迭代内获得“厘米级”精度。[31][29]由于经纬度加偏坐标大多都具有前述的两个特性,这种纠偏方法适用于多种混淆方式。BD转回GCJ的代码正是在移除了20弧秒左右的固定经纬偏移后使用了类似于粗略算法的反向代入估计。[13]

中国地图偏移问题[编辑]

Google.com地图使用WGS-84卫星图、GCJ-02路网。

中国地图偏移问题指的是由GCJ-02WGS-84之间的偏差引致的一系列问题。GPS的经纬度坐标使用的是标准WGS-84,画到使用GCJ-02的中国路网图上时会造成距离在500m左右不等的显著偏移。国测局授权提供位置和地图服务的厂商,例如高德地图NavInfo,都需要特别购买一个“纠偏”算法,将GPS坐标转为和地图一致的坐标系。[32][14]Google.com和Bing的卫星图不受此影响。开放街图由用户通过GPS采集坐标(理论上属于非法行为),所以也不会出现偏移问题。

Here地图和百度地图等地图服务商选择将卫星图一同偏移,以和GCJ-02路网保持一致。[e]

谷歌自2006年以来就从高德公司处获取地图信息。[33]Google.cn(中国区)的地图对于街道[f]和卫星[g]图都使用GCJ-02坐标系。全球版的谷歌地图(Google.com)使用GCJ-02的街道图,但出于不明原因保留了普通的WGS-84卫星图。[h]谷歌地球的卫星图使用的是WGS-84坐标。[34]

在全球版(.com)Google地图上使用API将GPS轨迹和街道图重叠显示会造成一样偏差的问题,这是因为GPS轨迹所使用的路径点使用的都是WGS-84坐标,不同于街道图使用的GCJ-02。自2009年来,这个问题已由用户在Google的产品论坛上屡次报告,[35]现在也有用于修正错误的第三方应用程序。[36]在算法泄出之前,一度有人销售各大城市坐标偏移量的数据集。[37]这个问题最早于2008年发现,但当时原因未知。当时有人摸黑猜测说,可能是进口的GPS芯片被动过手脚。[38]

港澳特区[编辑]

由于一国两制规定,香港澳門这两个特别行政区的地图不受测绘法限制,因此没有偏移问题。然而在这两地和内地边境附近,网络地图提供的道路形状会因为偏移而互相断开。[39]这个问题给想跨境旅行的旅客带来了麻烦,对于不知道这个问题的人来说更是会感觉十分奇怪。

参考资料[编辑]

  1. ^ 1.0 1.1 中华人民共和国测绘法. 国家测绘局行管司. 
  2. ^ 2.0 2.1 Rabaza Bergua, Carlos S.; López-de-Larrínzar-Galdámez, Juan; Salvador Suárez, Iván; Usón Montesinos, Miguel; Muro Medrano, Pedro R. Restricciones al trabajo con información geográfica online en China (PDF). IV Jornadas Ibéricas de Infraestructuras de Datos Espaciales. Universidad de Castilla-La Mancha, Campus Tecnológico Fábrica de Armas, Toledo: JIIDE 2013. 2013-11-13 (西班牙文). 
  3. ^ Hvistendahl, M. Foreigners Run Afoul of China's Tightening Secrecy Rules. Science. 2013-01-24, 339 (6118): 384–385. PMID 23349263. doi:10.1126/science.339.6118.384. 
  4. ^ Dingding, Xin. Unlawful surveys to be dealt severely. 中国日报. 2007-03-07. 
  5. ^ Liang, Yan. China cracks down on illegal online map services to protect state security. Beijing. 新华社. 2008-03-25. 
  6. ^ China fines UK students for 'illegal map-making'. AFP. 2009-01-06. 
  7. ^ Wang, Guanqun. China issues new rules on Internet map publishing. Xinhua News Agency. 2010-05-19. 
  8. ^ 8.0 8.1 Pasternack, Alex. If You're a Foreigner Using GPS in China, You Could Be a Spy. Vice (雜誌). 2013-03-14. 
  9. ^ Doctorow, Cory. Why your camera's GPS won't work in China (maybe). 波音波音. 2015-05-23. (原始内容存档于2015-05-24). 
  10. ^ Legality. Project China. OpenStreetMap. [2015-04-07]. 
  11. ^ 赵汗青. 玩无人机的注意了非法测绘要遭起诉. uav.huanqiu.com. 四川日报. [2017-02-09]. (原始内容存档于2017-02-09). 
  12. ^ 12.0 12.1 坐标转换. 百度地图. [2015-04-07] (中文). 
  13. ^ 13.0 13.1 13.2 13.3 13.4 13.5 A package for geocoding, reverse geocoding and coordinate transformations between WGS-84, GCJ-02 and BD-09 coordinate systems. 2014-02-15. 
  14. ^ 14.0 14.1 科研要为祖国和人民服务――记中国测绘科学研究院地图学与地理信息系统研究所党支部书记、所长李成名. 中国共产党新闻网. 人民网(创先争优). [2017-03-30]. (原始内容存档于2011-08-04) (中文(中国大陆)‎). 然而,李成名及其团队作出决定:将“新地图”软件以只收取成本费用甚至免费的方式提供给各个城市。 
  15. ^ 周信炎. 宁静致远——记国家科技进步一等奖获得者李成名. 国家测绘地理信息局. [2016-05-03]. (原始内容存档于2016-05-03). 
  16. ^ 李成名:科学就是较真 数字城市/智慧城市就是跑马圈地. 南方数码. [2017-04-02]. (原始内容存档于2017-04-02). 
  17. ^ 手机地理轨迹取证步骤大解密. IT168. 
  18. ^ 国内常见的电子地图坐标介绍. 鲲鹏Web数据抓取. 
  19. ^ 19.0 19.1 EvilTransform.cs. 2013-02-02. 
  20. ^ 20.0 20.1 20.2 Lee, Googol. Transform coordinates between Earth (WGS-84) and Mars in China (GCJ-02). 
  21. ^ China GPS offset problem. SnapDragon Blog. 
  22. ^ MarsGeo. Omniref. 
  23. ^ EvilTransform Ruby gem. 
  24. ^ FENG, Zili. ChinaMapDeviation. 2015-04-06. (原始内容存档于2015-04-07). 
  25. ^ Guilbot, Maxime. ChinaMapDeviation. 2013-05-28. 
  26. ^ Wu, Yongzheng. The Deviation of China Map as a Regression Problem. GitHub Pages. [2016-02-01]. 
  27. ^ Baidu LBS Open Platform FAQ. Baidu Developer. [2016-12-19]. 
  28. ^ 坐标转换API [Coordinate Conversion API]. developer.baidu.com/map. Baidu. (原始内容存档于2017-03-28) (中文). 
  29. ^ 29.0 29.1 中国地图偏移算法. (原始内容存档于2017-02-21) (中文). 
  30. ^ Wang, Mingye. People Rectify Coordinates (35, 105). [2017-03-29] (英语). 
  31. ^ bewantbe. make gcj2wgs_exact() much faster, by using fixed…. GitHub. [2016-02-29]. 
  32. ^ Feng, Zili. The government charges Chinese companies for the "shift correction" feature. 2015-04-07. 
  33. ^ Lee, Mark. Apple Shares Google China Map Partner in Win for AutoNavi: Tech. Bloomberg. 2012-07-06. 
  34. ^ Could you please correct the offset in China due to GCJ-02 coordinate?. Google Earth. Google Product Forums. 2014-04-06. 
  35. ^ OFFSET MAPPING ISSUE IN CHINA. Google Product Forums. 2012-03-05. 
  36. ^ ABCMaps application to fix the China GPS offset. 2010-07-24. 
  37. ^ Pasden, John. A More Complete iOS Solution to the China GPS Offset Problem. 2014-12-23. 
  38. ^ Wang, Jian Shuo. All Maps in China are Transformed. (原始内容存档于2014-01-16). 
  39. ^ Google Maps near Hong Kong-Shenzhen border. Google Maps. [2016-12-19]. 

注释[编辑]

参见[编辑]