DeepSeek进行坐标转换,我真的大写的服!

百科   2025-02-07 20:45   广东  

我们的互联网上获取的数据点位的坐标信息,
其实都是加了偏移的坐标,
例如高德的火星坐标(GCJ02)、百度的BD09等,
所以,直接加载点位数据后,
会有明显的偏移。


例如,我加载了一个居民点位数据,
可以看到明细偏差,
甚至都偏出了行政区界线!



于是我向DeepSeek发出了请求:


数据是高德火星坐标,写个在ArcGIS Pro中运行的python代码,实现高德火星坐标转为CGCS2000的地理坐标


DeepSeek进行了长时间的系统深度思考:


首先明确需求:

首先,高德使用的是GCJ-02坐标系,而CGCS2000类似于WGS84,但可能存在细微差别。不过通常转换时,可能直接当作WGS84处理。所以需要找到GCJ-02到WGS84的转换算法,或者是否有现成的库可以用。不过ArcGIS Pro的Python环境可能没有这些库,所以可能需要自己实现转换算法。

然后考虑可行性:

接下来,我需要确定转换算法的正确性。GCJ-02的加密算法是公开的吗?我记得有一些开源项目实现了逆向转换,比如在GitHub上的某些项目。可能需要查找相关的Python代码,将其集成到脚本中。比如,是否有现成的函数可以将GCJ-02转换为WGS84?或者是否需要使用第三方库如coordTransform_py?

但考虑到用户希望代码在ArcGIS Pro中运行,可能不希望安装额外的库,所以最好自己实现转换算法。这样用户不需要额外安装依赖,工具会更易用。




注意对细节的把控:

需要注意,转换后的坐标是地理坐标系(WGS84或CGCS2000),可能需要设置输出坐标系为CGCS2000的地理坐标系,例如EPSG:4490或EPSG:4326(虽然4326是WGS84,但4490是CGCS2000)。不过实际上,CGCS2000和WGS84在大部分情况下坐标差异很小,可能用户需要确认具体需求。这里可能需要明确转换后的坐标系参数。

另外,坐标转换可能涉及点、线、面等不同几何类型,所以脚本需要处理各种几何类型,递归转换每个顶点的坐标。

......

给了我一段代码:

我把这段代码直接放到了ArcGIS Pro里面运行,
于是,真的转换成功了:
点位实现了移动,
整体看上去,
都在行政区划里面了。



具体到某个点位来看下,
就会发现,
还是很准的,
我真是大写的服!










END
章来源

ArcGIS带你飞 

联系/合作 214979525(微信)
干货精选
页面底部→  关注  中测网

对话框发送对应【关键词】获取 精选内容

航测无人机作业流程、规范、案例
规范测量规范、常用Excel表格
GISArcGIS /MapGIS技巧、快捷键
资质测绘资质查询 /申办、甲级名单
定额测绘生产成本定额、勘察收费
地图奥维/谷歌地图  shp矢量数据
【CASS】快捷键、高手技巧、操作视频


行业甄选

测绘行业综合服平台

无人机

中国民航局CAAC执照,全国有考点

ASFC        ALPA        AOPA
民用无人机经营合格证,新办/转换
民用无人机 企业服务能力甲级资质
空域申请 代理服务,让飞行安全合法
测绘师
2024备考课件      金考典习题APP
注册测绘师 继续教育抵充20学时 课程

其   他

住建部门《测量工》   建协《测量员》
《工程测量员》技师 /高级技师(福州)
RTK       无人船       华测cors账号
求职/招聘信息发布    帮推广您的业务

中测网
中测网旗下公众号,内容涵盖业界重大新闻、测绘招聘、测绘仪器、测绘课程、图说测绘、注册测绘师等内容,感谢您的关注与支持。
 最新文章