我是靠谱客的博主 玩命小刺猬,最近开发中收集的这篇文章主要介绍笔记:错误记录- 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,输出相同错误结果错误描述解决办法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(66)

评论列表共有 0 条评论

立即
投稿
返回
顶部