dem文件如何读取
时间: 2023-07-18 15:19:22 浏览: 412
DEM(Digital Elevation Model)文件通常是一种二进制文件,它包含了地形高度信息。读取DEM文件的方法取决于DEM文件的格式。以下是一些常见的DEM文件格式及其读取方法:
1. USGS DEM格式:USGS DEM文件是一种ASCII格式的DEM文件。可以使用Python中的GDAL库来读取USGS DEM文件。例如,以下代码可以读取USGS DEM文件中的高程数据:
```
from osgeo import gdal
dem_file = 'path/to/dem/file'
ds = gdal.Open(dem_file)
band = ds.GetRasterBand(1)
elevation_data = band.ReadAsArray()
```
2. SRTM格式:SRTM(Shuttle Radar Topography Mission)是一种二进制格式的DEM文件,通常以.hgt扩展名结尾。可以使用Python中的numpy库来读取SRTM格式的DEM文件。例如,以下代码可以读取SRTM文件中的高程数据:
```
import numpy as np
dem_file = 'path/to/dem/file.hgt'
elevation_data = np.fromfile(dem_file, dtype='>i2').reshape((3601, 3601))
```
其中,'>i2'是指高位在前的16位整数,因为SRTM文件是大端字节序。
3. GeoTIFF格式:GeoTIFF是一种常见的栅格数据格式,可以包含DEM数据。可以使用Python中的GDAL库来读取GeoTIFF格式的DEM文件。例如,以下代码可以读取GeoTIFF文件中的高程数据:
```
from osgeo import gdal
dem_file = 'path/to/dem/file.tif'
ds = gdal.Open(dem_file)
band = ds.GetRasterBand(1)
elevation_data = band.ReadAsArray()
```
无论DEM文件的格式是什么,都可以使用GDAL库来读取。当然,也可以使用其他的DEM文件读取库来读取。
阅读全文