笔记:错误记录- gdal读取哨兵1雷达数据分贝化数据归一化计算极值为nan,输出相同错误结果
Posted 空中旋转篮球
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了笔记:错误记录- gdal读取哨兵1雷达数据分贝化数据归一化计算极值为nan,输出相同错误结果相关的知识,希望对你有一定的参考价值。
错误描述
数据
哨兵1雷达数据分贝化数据
数据极值
arcgis读取显示如下:
对该数据做极值归一化处理的时候,读取的数据最大值和最小值均为nan,归一化的结果都是0值或者无法写入。
for i in range(1, dim_z+1):
band = ds.GetRasterBand(i)
# band_array = band.ReadAsArray()
band_array = band.ReadAsArray()
print(band_array[4590][6500])
print("Image Shape:",band_array.shape)
print("开始计算第波段".format(i))
# data = np.array(band_array) # 转化为numpy数组
data = np.array(band_array,dtype='float') # 转化为numpy数组
print(data[4590][6500])
#直接读取极值归一化
print(data.min())
print(data.max())
以下是随机抽取图像中间位置的像元读取出来的值并不为nan或者0值,即用于判别读取的数组中不全是0值或者nan值。
print(band_array[4590][6500])
上述代码中读取的最大值和最小是均为nan。
解决办法
鉴于以上问题,这个数据可能是由于影像中的nan值引起的,我们将nan值替换为0值。
加一行代码:
data[np.isnan(data)] = 0 # 替换nan为0
这样就能正确读取到极值了。
以上是关于笔记:错误记录- gdal读取哨兵1雷达数据分贝化数据归一化计算极值为nan,输出相同错误结果的主要内容,如果未能解决你的问题,请参考以下文章
笔记:错误记录- gdal读取哨兵1雷达数据分贝化数据归一化计算极值为nan,输出相同错误结果
Python遥感图像处理应用篇(十五):GDAL 读取多光谱数据做归一化处理
Python遥感图像处理应用篇(十五):GDAL 读取多光谱数据做归一化处理
Python遥感图像处理应用篇(十六):GDAL 将归一化处理csv数据转化为遥感影像