python坐标转换脚本并没有给出svy21到wgs84的准确读数

xn1cxnb4  于 2021-09-08  发布在  Java
关注(0)|答案(1)|浏览(269)

我想将我的svy21坐标数据集转换为wgs84坐标。
我目前正在使用我发现的这个回购协议中的脚本,但这个脚本会产生不准确的结果,误差高达0.04,因此我转换的坐标最终位于同一个国家完全不同的地理位置。
我想知道是否有人可以帮助我编写一个脚本,将大型数据集从svy21转换为wgs84?
e、 g我想转换

38816.0396118, 34379.9602051

但是我得到了

1.36728713070321, 103.890645888016

我应该什么时候回家

1.327235496598071, 103.93042021823591

我会在那些在线转换器上做,但是我的文件大小相当大(可以达到几个GB),所以最好在本地计算机上运行脚本,而不是使用Python或C++或任何其他可以工作的替代方案。此外,大多数在线转换器对文件大小也有限制。
这是一个精确的转换器链接:https://dominoc925-pages.appspot.com/webapp/calc_svy21/default.html 但它不接受我的文件大小。
感谢您的帮助:d谢谢~!

sqserrrh

sqserrrh1#

你可能把坐标搞错了。考虑以下事项:

import pyproj

xfm = pyproj.Transformer.from_crs('EPSG:3414', 'EPSG:4326')
x, y = 38816.0396118, 34379.9602051

print(xfm.transform(x, y))

# prints: (1.3673123058118237, 103.89064694097199)

print(xfm.transform(y, x))

# prints: (1.3271927478890677, 103.93050656742128)

仍然有大约万分之一的偏差,但我不知道在这种情况下pyproj的坐标空间定义有多好。

相关问题