国行 iPhone 拍照,写入图片 Exif 中的 GPS 坐标是 GCJ-02,有没有办法使用 WGS84 - V2EX
vonsy

国行 iPhone 拍照,写入图片 Exif 中的 GPS 坐标是 GCJ-02,有没有办法使用 WGS84

  •  
  •   vonsy Sep 10, 2024 2589 views
    This topic created in 622 days ago, the information mentioned may be changed or developed.

    国行 iPhone 拍照,写入图片 Exif 中的 GPS 坐标是 GCJ-02,有没有办法使用 WGS84.

    验证方法,拍张照片,找个 online exif data viewer(例如:https://jimpl.com/),拍照位置与网站中差个几百米.

    图片中的坐标,在手机苹果地图, Google Maps 中和拍照位置一致(那就系统层面是 GCJ-02 ?)

    修改手机地区,语言无效.

    有解吗?

    11 replies    2024-09-12 10:56:00 +08:00
    aphorism
        1
    aphorism  
       Sep 10, 2024
    应该是没有办法,除非使用非中国地区发售的 iPhone 。
    LaoChen
        2
    LaoChen  
       Sep 10, 2024   1
    又多了一个不买国行的理由
    aphorism
        3
    aphorism  
       Sep 10, 2024   3
    有几个细节需要进一步澄清:
    1 、“拍照位置与网站中差个几百米”。这个网站的地图使用的是哪个数据源,是 Google Maps ,Bing Maps / Azure Maps 还是 OpenStreetMap ?上述地图服务对外提供的数据使用的都是非 GCJ - 02 坐标,因此会有个几百米的偏差。

    2 、“图片中的坐标,在手机苹果地图, Google Maps 中和拍照位置一致”,这是因为 EXIF 中的数据确实是 GCJ-02 的,同时手机苹果地图、手机谷歌地图中的矢量图层都是 GCJ-02 坐标的,所以看起来跟正确位置是对的。特别需要注意的是手机版 Google Maps 应用对中国的矢量数据和影像数据进行了配准,因此 GCJ - 02 坐标也可以正常显示。而在 Web 版本的 Google Maps 中,影像数据的坐标系统是 EPSG:900913 或者 EPSG:4326 的,因此与 GCJ-02 系统的矢量数据会存在偏差。

    3 、如果你需要在苹果手机上记录或导出真实的经纬度坐标,可以使用 MapMyRide 等记录轨迹的 App 来记录轨迹并转存下来,这些数据是真实地理坐标。
    LaoChen
        4
    LaoChen  
       Sep 10, 2024
    @aphorism 大佬专业!
    问几个问题,如何判断一张照片的 EXIF 是 GCJ-02 坐标,还是 WGS84 坐标?

    国行 iPhone 手机拿到海外用了,拍了当地的照片,还会有这个问题吗?
    aphorism
        5
    aphorism  
       Sep 10, 2024
    @LaoChen

    1 、问:如何判断一张照片的 EXIF 是 GCJ-02 坐标,还是 WGS84 坐标?

    答:准确地回答是比较难判断,因为都是地理坐标,没有其他的元数据的话是分辨不出来的。但是有一个较简单的法则,将这个数据输入到 Web 版本的 Google Maps 中在影像图层中查看,如果显示的位置与拍摄的位置一致,则是 GPS/WGS84 坐标系统的,否则就是 GCJ-02 坐标系统的。其实 GCJ 模块是在应用层面的,而不是系统层面的。GPS 芯片所解算出来的数据是 GPS 坐标的,只有需要在中国的矢量地图上叠加显示的时候才变换到 GCJ-02 坐标系。一般而言,如果一个 App 没有为中国做特别处理,那么其记录的数据应当就是真实的 GPS 坐标。例如苹果手表即使是中国发售的版本,其记录的轨迹数据也是 GPS 坐标的。


    2 、问:国行 iPhone 手机拿到海外用了,拍了当地的照片,还会有这个问题吗?

    答:没有实际地试验过,不能完全确定答案。但从常理来讲应该不存在这个问题,如上所述。该 EXIF 信息应当是由苹果的相册应用写入照片文件的,而 GCJ-02 的规则应当只在中国生效,其目的是为了解决 GeoTag 信息在中国的地图数据上匹配失准问题的。从逻辑上说,在中国以外的地区,这个额外的规则应当是不生效的,否则 GeoTag 信息同样会与该地的地理数据匹配失准。其实可以谨慎地怀疑,即使在中国拍摄的照片,其 EXIF 信息中可能也存在真实的 GPS 数据,只是不是按照 GeoTag 的标准来存储的,这就只有苹果自己的开发人员才能知道了。
    wushan
        6
    wushan  
       Sep 11, 2024   2
    @aphorism @vonsy 我是国行 iPhone ,区域美国,语言英语。国内拍摄照片 Exif 中的坐标似乎就是 WGS-84 坐标。复制坐标到 iOS 端谷歌地球、Web 端谷歌地图、Web 端谷歌地图里,卫星图定位正确,矢量图偏移。放到 iOS 端苹果地图、谷歌地图中卫星图和矢量图均有偏移,但从相册直接上滑显示的矢量图定位是正确的。海外拍摄的照片一切正常。
    YJMe
        7
    YJMe  
       Sep 11, 2024   1
    赞同楼上 @aphorism 的回答.

    OP 图片挂了. 我去 https://jimpl.com/ 这个网站传了一张照片.
    显示卫星地图时的定位是对的, 显示街道地图就偏差了大约 500 米.
    这应该就是 WGS84 和 GCJ-02 坐标系偏移的距离 ? 不知道哪个是哪个.
    感觉应该是卫星图使用 WGS84, 而普通街道地图使用 GCJ-02.

    此前, 我用国行和外版的 iPhone 在同一地点分别拍了照片, 发现 Exif 里的坐标数值几乎是一样的, 偏差可能在 10 米之内.
    YJMe
        8
    YJMe  
       Sep 11, 2024
    也同意楼上 @wushan 说的.
    aphorism
        9
    aphorism  
       Sep 11, 2024   2
    结合 @wushan @10RR 的回答,作一点更正说明:


    1 、iPhone 无论是中国发售的版本还是美、日等地发售版本,其照片文件的 EXIF 信息中附带的 Geotag 数据均为 GPS 坐标,并非 GCJ-02 坐标。

    2 、https://jimpl.com 网站使用的地图服务是 Google Maps ,而 Google Maps 的中国的矢量数据是 GCJ-02 坐标系统的,因此显示 GPS 坐标会出现匹配失准,切换到卫星影像就与实际位置没有偏差。

    3 、以下列举了几个常见的地图网站与其中国区域数据所用坐标系统
    (1) Google Maps Web 版,https://maps.google.com 中国区域的矢量数据为 GCJ-02 坐标,在中国区域的矢量地图上显示 GPS 坐标时会匹配失准,切换到卫星影像地图则匹配正确。显示世界其他地区地图时无此问题。
    (2)Bing Maps Web 版,https://bing.com/maps 中国区域的矢量数据为 GCJ-02 坐标,在中国区域的矢量地图上显示 GPS 坐标时会匹配失准,切换到卫星影像地图则匹配正确。显示世界其他地区地图时无此问题。
    (3)Apple Maps Web 版,https://beta.maps.apple.com 中国区域的矢量数据为 EPSG-3857 坐标,显示 GPS 坐标时匹配正确。
    (4)OpenStreetMap Web 版 https://www.openstreetmap.org 中国区域的矢量数据为 EPSG-3857 坐标,显示 GPS 坐标时匹配正确。
    (5)ArGIS Map Web 版 https://www.arcgis.com/home/webmap/viewer.html 中国区域的矢量数据为 EPSG-3857 坐标,显示 GPS 坐标时匹配正确。

    4 、该问题的根源在于中国主管部门允许商用的地理导航数据集必须是 GCJ-02 坐标系统的,因此所有采用该数据集的服务商都会存在与 GPS 坐标叠加显示时匹配失准的问题。GCJ-02 坐标系统说白了就是在真实地理坐标上加入噪声,而该噪声就是你看到的所谓”偏差“。目前最好的解决方案就是使用 OpenStreetMap 数据集,该数据集在中国区域内的详尽程度可能不如来自于百度、高德、四维图新等商业数据集,但其坐标系统是未经过加噪处理的,显示 GPS 坐标不会有失准的问题。
    LaoChen
        10
    LaoChen  
       Sep 12, 2024
    那如果 @aphorism 的最新回复信息是准确的,那可以推断 Apple 在 iOS 上街道数据说不定用的也是 EPSG-3857 坐标?那这个帖子的立论就不存在了。没任何问题了。

    我刚刚试了,把我国行 iPhone 在国内拍的照片,AirDrop 到我的纯血美国 iPhone 上,上滑看位置,除了城市名变成了拼音,没有一点毛病啊!

    Apple:你看我多牛逼,可以找到提供 EPSG-3857 的供应商,来解决东方大国的特色问题!
    LaoChen
        11
    LaoChen  
       Sep 12, 2024
    回到楼主 @vonsy 观察到的现象,合理解释是 https://jimpl.com/在街道层面使用了 GCJ-02 数据源?
    About     Help     Advertise     Blog     API     FAQ     Solana     3282 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 47ms UTC 11:41 PVG 19:41 LAX 04:41 JFK 07:41
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86