我正在研究GSHHS数据库的光栅化,基本上是将海岸线多边形和河流线转换为栅格。
http://www.soest.hawaii.edu/pwessel/gshhg/
河流和海岸数据库是两个不同的文件。
我注意到河流和海岸之间有数百米的错位,显然应该对齐。我在自述文件中注意到的一件事是,海岸线数据库使用 WGS84 坐标,河流数据库是使用 WGS 72 从其他来源生成的。差异应在于本初子午线的偏移和地球主轴尺寸的差异。
我在互联网上搜索了两组之间的转换,但找不到。
我需要的答案:
- 如何在它们之间进行转换?
或者或者
- 如何解决 GSHHS 数据库中的错位问题?
以下是将 WGS 72 坐标转换为 WGS 84 坐标的公式和参数
公式
- Δφ" = (4.5 cos φ)/(一个正弦 1") + (Δf 正弦 2φ)/(正弦 1") (单位 = 弧秒)
- Δλ" = 0.554(单位 = 弧秒) Δh =
- 4.5 sin φ + a Δf sin2 φ - Δa + Δr (单位 = 米)
- Δφ =
- Δφ" x 1" (单位 = 弧度) Δλ =
- Δλ" x 1" (单位 = 弧度)
参数
- Δf = 0.3121057 x 10-7
- a = 6378135 m
- Δa = 2.0 m
- Δr = 1.4 m
- 1" = pi/(3600.0 * 180.0) rad
要获得 WGS 84 坐标,请将使用 WGS 72 坐标计算的 Δφ、Δλ、Δh 变化添加到 WGS 72 坐标(分别为 φ、λ、h)。纬度为正北,经度为正东(0°至180°)。
结果
- φ WGS84 = φ + Δφ λ
- WGS84 = λ + Δλ h
- WGS84 = h + Δh
文档 [p105-106]
> 您可以使用 proj4:https://trac.osgeo.org/proj/wiki/man_proj。支持许多椭圆体标识符。您可以使用 -le 选项开关获取列表。要从 wgs74 转换,您可以使用"拖曳84"选项开关。
一个权威来源是国家地理空间情报局(NGA)。 他们在 http://earth-info.nga.mil/GandG/geotrans/发布开源的Geotrans程序。这提供了 GUI、批处理。 我希望在内部有一个你可以作为开发人员调用的API。