Skip to content

Latest commit

 

History

History
199 lines (134 loc) · 8.48 KB

README-cn.md

File metadata and controls

199 lines (134 loc) · 8.48 KB

基于Python的数字高程模型处理

image image image image

English Version | 中文版

基于Python实现的变换、投影、转换和可视化数字高程模型并且读取其中给定位置的海拔值。

目录

专业术语和缩略词

专业术语 缩略词 备注
Digital Elevation Model 数字高程模型 DEM -
Geographic Coordinate System 地理坐标系 GCS 三维椭球面,[经度,纬度,海拔]
Projected Coordinate System 投影坐标系 PCS 二维平面,[横坐标,纵坐标,海拔]
Georeferenced Tagged Image File Format GeoTIFF 数字高程模型的文件格式
European Petroleum Survey Group EPSG EPSG代码用于识别不同GCS和PCS
1984 World Geodetic System WGS-84 GCS, EPSG-4326, 参考椭球面位于地球
Pseudo Mercator (Web Mercator) - PCS of WGS-84, EPSG-3857
1936 Ordnance Survey Great Britain OSGB-36 GCS, EPSG-4277, 参考椭球面位于英国
British National Grid BNG PCS of OSGB-36, EPSG-27700
1989 European Terrestrial Reference System ETRS-89 GCS, EPSG-4258, 参考椭球面位于地球
Lambert Azimuthal Equal-Area LAEA PCS of ETRS-89, EPSG-3035

功能

  • 变换地理坐标系下DEM至其他地理坐标系(例如,由WGS-84变换至OSGB-36)。

  • 投影地理坐标系下的DEM至对应的投影坐标系(例如,由OSGB-36投影至BNG)。

  • 转换投影坐标系下的DEM至对应的地理坐标系(例如,由LAEA转换至ETRS-89)。

  • 可视化投影坐标系下的DEM为二维图像。

  • 读取地理坐标系下的DEM中给定位置的海拔值。

数字高程模型数据

ASTERGDEM

EUDEM

依赖项

  • gdal (osgeo) 1.11.3
  • matplotlib 3.0.2
  • numpy 1.15.4
  • pandas 0.23.4

下述GDAL安装步骤(1-2)总结自mothergeo

  1. 在终端安装GDAL Development Libraries并将环境变量导出至编译器。
$ sudo apt-get install libgdal-dev

$ export CPLUS_INCLUDE_PATH=/usr/include/gdal
$ export C_INCLUDE_PATH=/usr/include/gdal
  1. 在终端安装GDAL Python Libraries
$ pip install GDAL

如果出现错误cpl_vsi_error.h: No such file or directory,请尝试下述步骤。

  1. 在终端查看GDAL Python Libraries所需的版本。
$ gdal-config --version
  1. 下载对应GDAL版本(例如,1.11.3)的源文件(例如,gdal-1.11.3.tar.gz)自这里

  2. 在终端手动安装GDAL Python Libraries

$ cd path/of/downloaded/gdal/package

~$ tar -xvzf gdal-{VERSION}.tar.gz
# 例如, ~$ tar -xvzf gdal-1.11.3.tar.gz

~$ cd extracted/gdal/folder
# 例如, ~$ cd gdal-1.11.3

~$ cd swig
~$ cd python
# setup.py存在于该目录下。

~$ python setup.py build_ext --include-dirs=/usr/include/gdal/
~$ python setup.py install
  1. 在Python中运行>>> from osgeo import gdal。如果没有报错,则安装完成。

ASTERGDEM处理流程图

使用方法

原始DEM文件的目录列表如下。


└── Data/
    ├── DATA_ASTGDEMv20/
    │   └── EPSG4326_s/
    │       ├── ASTGTM2_N51W001_dem.tif
    │       └── ASTGTM2_N51E000_dem.tif
    └── DATA_EUDEMv11/
        └── EUDEMv11_EPSG3035.tif

ASTERGDEM的使用方法

  1. 下载DEM文件ASTGTM2_N51W001_dem.tifASTGTM2_N51E000_dem.tif这里

  2. 复制DEM文件到文件夹DATA/DATA_ASTGDEMv20/EPSG4326_s/

  3. 运行run_DEM_ASTGDEMv20.pyrun_DEM_ASTGDEMv20_ipy.ipynb,以处理ASTERGDEMv2.0的数字高程模型。

  4. 运行run_DEM_ASTGDEMv20.py的日志可以参见Log_run_DEM_ASTGDEMv20.txt

EUDEM的使用方法

  1. 下载DEM文件eu_dem_v11_E30N30.tif这里

  2. 复制DEM文件到文件夹DATA/DATA_EUDEMv11/并重命名为EUDEMv11_EPSG3035.tif

  3. 运行run_DEM_EUDEMv11.pyrun_DEM_EUDEMv11_ipy.ipynb,以处理EUDEMv1.1的数字高程模型。

  4. 运行run_DEM_EUDEMv11.py的日志可以参见Log_run_DEM_EUDEMv11.txt

结果

伦敦数字高程模型图像

  • Pseudo Mercator投影坐标系下的ASTERGDEMv2.0图像

  • BNG投影坐标系下的ASTERGDEMv2.0图像

  • LAEA投影坐标系下的ASTERGDEMv2.0图像

伦敦海拔

  • 伦敦24个位置的海拔值(米)
No. of Location 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
ASTGDEMv20_WD 18 18 38 40 65 26 35 31 17 79 13 41 62 82 9 13 31 31 15 22 24 40 8 40
ASTGDEMv20_UK 14 14 36 25 60 37 33 40 20 68 12 25 62 59 15 18 22 22 15 21 14 33 8 47
ASTGDEMv20_EU 18 18 38 40 65 26 35 31 17 79 13 41 62 82 9 13 31 31 15 22 24 40 8 40
EUDEMv11_WD 12 12 37 30 61 25 29 36 11 66 11 31 64 79 7 27 25 25 14 15 13 32 5 36
EUDEMv11_UK 12 12 37 26 58 30 32 35 11 71 8 30 66 78 8 26 24 24 8 16 13 32 9 35
EUDEMv11_EU 12 12 37 30 61 25 29 36 11 66 11 31 64 79 7 27 25 25 14 15 13 32 5 36

参考

[1] EPSG 4326 vs EPSG 3857 (projections, datums, coordinate systems, and more!)

[2] Coordinate systems and projections for beginners

[3] CSDN博客


如果您对该项目有任何问题,请报告issue,我将会尽快回复。

如果该项目对您有帮助,请为其加星支持哈,非常感谢。^_^