昨晚加班到凌晨两点,盯着屏幕上的点云图,眼睛酸得厉害。手里这堆从外业跑回来的数据,怎么弄都对不上底图。作为在geo行业摸爬滚打好几年的老鸟,这种崩溃时刻太常见了。今天不扯那些高大上的理论,就聊聊最近帮一个同行解决的一个arcgis geo坐标偏移问题,希望能给同样在坑里挣扎的你一点启发。
事情是这样的,朋友小王拿着几个GPS手持机采的点,想直接叠加到公司的GIS项目里。结果呢?点全飘在河对岸,差了几百米。小王急得直挠头,说是不是软件坏了。我让他把数据导出来,一看属性表,好家伙,经纬度格式乱成一锅粥,有的带度分秒,有的又是十进制,还有几个坐标轴搞反了。这就是典型的arcgis geo数据清洗没做干净。
很多人一遇到坐标不对,第一反应就是去改投影。其实这是误区。你得先确认源数据的坐标系到底是什么。小王用的手持机,默认可能是WGS84,但他项目底图用的是CGCS2000或者北京54。这时候如果你直接在ArcGIS里改投影定义,而不进行投影变换,数据位置是不会动的,只是标签变了。这就好比给一个北京人贴了个上海身份证,人还是在北京,但系统以为他在上海。
我让他先做了一步操作:在Catalog里右键数据,看Properties,确认Spatial Reference。如果显示Unknown,那就得手动指定。指定完之后,再使用Project工具,把源坐标系转成目标坐标系。这一步,才是解决arcgis geo坐标偏移的关键。别偷懒,别直接拖拽,要用工具。
还有个小细节,容易被人忽略。外业采集的时候,有些老GPS机,为了省电或者信号不好,会开启“坐标纠偏”或者“加偏”模式。这种数据直接进电脑,那是绝对对不上的。这时候你得先在外业端或者通过特定的算法把偏移量减回去,再进ArcGIS。不然你就算投影转得再对,也是歪的。
再说说数据本身的质量。有时候不是坐标系的问题,是数据录入的问题。比如XY轴搞反了,或者单位搞错了(米和度混用)。我在检查小王的数据时,发现有个点的Y坐标是负数,但那个区域明明在北方。一问才知道,录入的时候把经度和纬度填反了。这种低级错误,在geo行业里简直不要太多。所以,数据入库前,做个简单的统计,看看XY的范围,能省掉后面一半的排查时间。
处理完这些,小王的数据终于稳稳地落在了正确的位置上。他长舒一口气,说终于明白为什么之前总是对不上了。其实,GIS工作就是这样,细节决定成败。你稍微马虎一点,结果就能差之千里。
我也遇到过更离谱的,有人直接把CAD里的坐标当成经纬度用,CAD里的单位是米,经纬度是度,这能对上才怪。所以,拿到任何数据,先问三个问题:坐标系是什么?单位是什么?有没有经过特殊处理?这三个问题回答了,基本能解决80%的坐标问题。
最后想说,arcgis geo虽然功能强大,但它不会自动帮你纠错。它像个老实巴交的工人,你给它什么,它就干什么。你得是个聪明的工头,知道每一步该下什么指令。别指望一键解决所有问题,多花点时间在数据预处理上,后面会轻松很多。
希望这篇啰嗦的大白话,能帮到正在为坐标头疼的你。如果有其他奇葩的坐标问题,欢迎在评论区留言,咱们一起盘盘。毕竟,在这个行业,互相吐槽和分享经验,也是打发漫长加班夜的一种方式嘛。记得,数据无小事,哪怕是一个小数点,都可能让你白忙活一天。
本文关键词:arcgis geo