文章目录
1. HDF格式文件
1.1 使用会 ‘h5py’ 库的 ‘File方法’ 读取
# 中国地区卫星数据hdf文件
f = h5py.File('FY4A-_AGRI--_N_REGC_1047E_L1-_FDI-_MULT_NOM_20200606094500_20200606094917_4000M_V0001.HDF')
1.2 查看HDF文件中的 keys
r = list(f.keys())
r
1.3 查看HDF文件中的每个键所对应的数据信息
for i in r:
print(f[i])
1.4 对图像数据进行展示以及更改保存图像时像素设置
count = 1
# 提取通道01
for i in r[r.index('NOMChannel01'):r.index('NOMChannel14')]:
try:
x = f[i]
x= np.array(x)
x[x > 4000] = 0
plt.imshow(x, cmap="gray_r")
plt.savefig(i + '.png', dpi=1500)
plt.show()
count+=1
except:
print('错误数据:', i)
print(x)
print('读取数量为:{0}'.format(count))
1.5 运行结果
2. 完整代码
import h5py
import matplotlib.pyplot as plt
import numpy as np
# 中国地区卫星数据hdf文件
f = h5py.File('FY4A-_AGRI--_N_REGC_1047E_L1-_FDI-_MULT_NOM_20200606094500_20200606094917_4000M_V0001.HDF')
r = list(f.keys())
count = 1
# 提取通道01
for i in r[r.index('NOMChannel01'):r.index('NOMChannel14')]:
try:
x = f[i]
x= np.array(x)
x[x > 4000] = 0
plt.imshow(x, cmap="gray_r")
# 默认保存的图像像素过低
#这里设置dpi参数,可以得到高清图
plt.savefig(i + '.png', dpi=1500)
plt.show()
count+=1
except:
print('错误数据:', i)
print(x)
print('读取数量为:{0}'.format(count))