【wrf-python】将modis土地利用分类按照wrf可识别的格式制作静态数据集

发布时间:2024年01月16日

?下载modis数据后,可以按照gdal_translate -of ENVI -co INTERLEAVE=BSQ xxx1.tif output2001.bin命令处理tif数据,也可以按照下面的python语句处理tif数据。

import os
from osgeo import gdal

# 输入 TIF 文件路径
input_file =  r"J:\modis_china_2001_landcover.tif"

# 输出二进制文件路径
output_file = "output2001.bin"

# 打开输入文件
dataset = gdal.Open(input_file)

if dataset is not None:
    # 获取栅格数据的宽度和高度
    width = dataset.RasterXSize
    height = dataset.RasterYSize
    
    # 获取数据类型
    data_type = dataset.GetRasterBand(1).DataType

    # 创建输出二进制文件
    with open(output_file, "wb") as f:
        # 从左下角到右上角遍历每个像素
        for row in range(height - 1, -1, -1):
            for col in range(width):
                for band in range(dataset.RasterCount):
                    # 读取当前像素的值
                    band_data = dataset.GetRasterBand(band + 1).ReadRaster(col, row, 1, 1)
                    
                    # 将像素值写入文件
                    f.write(band_data)
                    
    # 关闭数据集
    dataset = None
else:
    print("Failed to open input file.")

得到的.bin格式的数据可以直接命名为00001-xxxxx.00001-xxxxx的二进制数据。

后面可以参考本文继续处理:WRF替换静态地理数据中的土地利用数据(WRF替换下垫面数据)_landmask处理wrf-CSDN博客

文章来源:https://blog.csdn.net/A18040554844/article/details/135637094
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。