python 读 tiff高光谱
时间: 2023-09-29 15:10:20 浏览: 401
要使用Python读取tiff高光谱图像,可以使用GDAL库来实现。首先需要导入GDAL库,并使用`gdal.Open()`函数打开tiff文件。代码中的`path_image`变量用于指定tiff文件的路径。然后,使用`GetRasterBand()`函数获取图像的各个波段,并使用`ReadAsArray()`函数将波段数据读取为数组。接着,可以将读取的波段数据存储到三维数组中,以便进一步处理和分析。具体的代码如下所示:
```python
import gdal
import numpy as np
# 使用GDAL读取tif文件
gdal.UseExceptions()
ds = gdal.Open(path_image)
# 获取图像的波段数量和尺寸
nrows = ds.RasterYSize
ncols = ds.RasterXSize
bandnum = ds.RasterCount
# 创建一个三维数组来存储波段数据
features = np.zeros((nrows, ncols, bandnum), dtype='float32')
# 逐个读取波段数据并存储到数组中
for i in range(1, bandnum + 1):
band = ds.GetRasterBand(i)
band_data = band.ReadAsArray()
features[:, :, i-1 = band_data
# 打印数组的尺寸
print(features.shape)
```
上述代码将读取tiff文件中的高光谱波段数据,并将其存储在名为`features`的三维数组中。数组的大小为`(nrows, ncols, bandnum)`,其中`nrows`和`ncols`表示图像的行数和列数,`bandnum`表示波段的数量。通过这种方式,我们可以方便地对高光谱图像进行处理和分析。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [利用python GDAL库读写geotiff格式的遥感影像方法](https://download.csdn.net/download/weixin_38613173/12865932)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [python读取高光谱数据为数组](https://blog.csdn.net/soderayer/article/details/128607424)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文