当前位置: 首页 > news >正文

【WRF数据准备】MODIS静态地理数据下载及制备

【WRF数据准备】MODIS静态地理数据下载及制备

  • MODIS数据介绍
  • 数据下载
  • 数据拼接
    • MRT工具介绍
    • 基于MRT软件完成数据拼接
  • 格式转换:tif文件转二进制格式
  • 编写INDEX
  • 修改GEOGRID.TBL以及namelist.wps
    • 修改GEOGRID.TBL
    • 修改namelist.wps
  • 参考

MODIS数据介绍

MODIS-MCD12Q1 v061

  • 时间范围:2001-2022,年尺度数据
  • 空间分辨率:500m
    在这里插入图片描述

数据下载

1、点击【Access Data】,如下:
在这里插入图片描述
2、筛选数据
在其中选择对应时间、矩形选择方式并框选所需要的范围(以下示例中国大部分区域) (稍等片刻加载时间选择下载全部)
第一步:选择时间范围
在这里插入图片描述
第二步:选择空间范围
网格范围:经度(106 120.58) 纬度(16.626 29.748)
SW:16.626,106
NE:29.748,120.58
在这里插入图片描述
确定后,界面如下:
在这里插入图片描述
登录账号后,下载数据。
在这里插入图片描述
需下载Earthdata Download软件进行数据下载,界面如下:
在这里插入图片描述
Earthdata Download中数据下载界面如下:
在这里插入图片描述

数据拼接

MRT工具介绍

采用MRT(MODIS Reprojection Tool) 进行数据拼接,MRT软件的下载及安装参见另一博客-【MODIS处理工具】MRT(MODIS Reprojection Tool) 下载及安装。

安装完成后,打开MRT的安装路径文件夹,打开bin文件夹,双击ModisTool.bat或者ModisTool.jar即可进 入MRT的GUI界面:
在这里插入图片描述
GUI界面如下:
在这里插入图片描述

基于MRT软件完成数据拼接

1、导入并查看数据
点击【Open Input File】,导入下载的hdf文件,如下:
在这里插入图片描述
可以使用【View Selected Tile】来查看所下载的数据的大致位置,如果有出现在另一半球可以在此时删掉(最终效果如下,很奇怪,15个文件就是有一个一直没下载好,这会导致后续处理失败,数据拼接要求导入的数据必须得是可以拼接起来的相邻影像):
在这里插入图片描述
重新下载了所需的数据,数据范围如下:
在这里插入图片描述
2、 设置输出路径、文件格式、重采样方法
1)Specify Output File:设置输出文件路径。
2)Output File Type:设置输出文件的格式,格式有 GEOTIFF、HDFEOS、RAW BINARY三种,常用 GEOTIFF 格式。
3)Resampling Type:设置重采样方法,有最邻近Nearest Neighbor、双线性插值Bilinear、三次卷积Cubic Convolution三种方法
在这里插入图片描述
3、设置投影、空间分辨率
1)Output Projection Type中可以选择多种投影方式,大家根据自己的需要来即可。此处笔者选择通用横墨卡托格网系统UTM。在Edit Projection Parameters中可以选择投影分带,如果研究区正好在该分带中,可以在UTM Zone中填入对应带号;若研究区跨度很大,可以不必填写。在Datum中选择WGS84坐标。
2)Output Pixel Size中设置输出影像的空间分辨率,单位是m;在填写分辨率时,最好升尺度,不要降尺度;比如说原影像分辨率为1000m,那可以填1000、5000等等,不要填500、250等小于原分辨率的数值。

其中:波段使用LC_TYPE1,重采样方式为Bilinear,投影类型为Geographic,像素分辨率为0.004991576420597609,投影参数点进去选择WGS84
补充: 在WGS84(地理坐标系)中,分辨率通常以经纬度表示。MCD12Q1产品的原始分辨率是500米,而0.004991576420597609度在赤道附近大约相当于500米的地面距离。
在这里插入图片描述
4、选择导出的数据集
本文利用的是MCD12Q1 v061数据,该数据中包含多种数据集。但我若想只提取其中某一数据集该如何做?
1)首先,将在 Selected Bands中的所有数据集通过 “ << ” 符号全部移入 Avaliable Bands 栏中。
2)将所需要的数据集通过 “ >> ” 符号再次导入到 Selected Bands栏中。
在这里插入图片描述
5、保存批处理的prm文件
点击Save Parameters file,得到保存的prm文件。prm文件可以应用于后续的批处理。
在这里插入图片描述

6、Run运行
点击Run运行,在弹出的窗口中看到Finished processing便表明运行完成啦。可以在所设置的路径中找到处理完成的影像和prm文件。到此,需要处理单次MODIS数据的步骤就完成了。

格式转换:tif文件转二进制格式

生成的TIF使用以下python程序处理成二进制格式,Python代码如下:

import rasterio as ra
from osgeo import gdaltifPath = r"C:/Users/NING\Desktop/modis2017/拼接/pinjie.LC_Type1.tif"
rasterDataset = ra.open(tifPath)xstart = "00001"
ystart = "00001"
xend = str(rasterDataset.width).zfill(5)
yend = str(rasterDataset.height).zfill(5)outputFile = xstart + "-" + xend + "." + ystart + "-" + yenddata = rasterDataset.read(1)[::-1]
data.tofile(r"C:/Users/NING\Desktop/modis2017/拼接/" + outputFile)#INDEX数据提取
def get_tif_info(tif):dataset = gdal.Open(tif)band = dataset.GetRasterBand(1)xsize = band.XSizeysize = band.YSizemaxmin = band.ComputeRasterMinMax()geo = dataset.GetGeoTransform()print('地理变换6元素:', geo)print('栅格矩阵的列数:', xsize, '栅格矩阵的行数:', ysize)print('最小最大值:', maxmin)if __name__ == '__main__':get_tif_info(tifPath)

编写INDEX

以上程序一同生成数据要素:使用GetGeoTransform()输出tiff文件的地理信息六要素。

type=categorical
category_min=1
category_max=21
projection=regular_ll
dx=0.004491576420597609
dy=0.004491576420597609
known_x=1.0
known_y=11130.0
known_lat=60.00009587599426
known_lon=30.462848532138274
wordsize=1
tile_x=33291
tile_y=11130
tile_z=1
units="category"
description="MODIS2017 landuse"
mminlu="MODIFIED_IGBP_MODIS_NOAH"
iswater=17
islake=21
isice=15
isurban=13

各项参数含义:

  • type:为文件描述类型
  • category_min:分类代码的最小值
  • category_max:分类代码的最大值
  • projection:投影类型
  • dx:横向格点间的间隔,即栅格影像的横向分辨率
  • dy:纵向格点间的间隔,即栅格影像的纵向分辨率
  • known_x:指定一个标记点的横轴坐标
  • known_y:指定一个标记点的纵轴坐标
  • known_lat:标记点横向坐标的纬度
  • known_lon:标记点纵向坐标的经度
  • tile_x:横向格点数
  • tile_y:纵向格点数
  • units:格点值的单位
  • description:文件描述
  • iswater:水体类别的编号
  • islake:湖泊类别的编号
  • isice:冰川类别的编号
  • isurban:城市类别的编号

修改GEOGRID.TBL以及namelist.wps

修改GEOGRID.TBL

修改namelist.wps

参考

1、CSDN博客-制作MODIS静态地理数据并在WRF模式中使用
2、CSDN博客-MRT工具下载、安装、批处理MODIS数据

相关文章:

【WRF数据准备】MODIS静态地理数据下载及制备

【WRF数据准备】MODIS静态地理数据下载及制备 MODIS数据介绍数据下载数据拼接MRT工具介绍基于MRT软件完成数据拼接 格式转换&#xff1a;tif文件转二进制格式编写INDEX修改GEOGRID.TBL以及namelist.wps修改GEOGRID.TBL修改namelist.wps 参考 MODIS数据介绍 MODIS-MCD12Q1 v061…...

MySQL数据库——索引

目录 什么是索引&#xff08;Index&#xff09;&#xff1f; 怎样加索引&#xff1f; 索引的特点 索引类型 主键索引(Primary Key) 辅助索引&#xff08;二级索引&#xff09; 聚集索引和非聚集索引 聚集索引 非聚集索引 单列索引和联合索引 单列索引 联合索引 创…...

【SpringCloud】服务注册/服务发现-Eureka

服务注册/服务发现-Eureka 1. 背景1.1 问题描述1.2 解决思路1.3 什么是注册中⼼1.4 CAP理论1.5 常⻅的注册中⼼ 2. Eureka 介绍3. 搭建Eureka Server 1. 背景 1.1 问题描述 上个章节的例⼦中可以看到, 远程调⽤时, 我们的URL是写死的 String url "http://127.0.0.1:90…...

让你的Github Profile高大时尚!

目录 前言 正文 GitHub Profile 特点&#xff1a; GitHub Actions 核心概念&#xff1a; 应用场景&#xff1a; RSS RSS的主要特点&#xff1a; 使用场景&#xff1a; RSS的工作原理&#xff1a; 关于Github Readme Card 关于Github贡献的3D图 关于个人最新博文的获取 关于代码…...

ElasticSearch备考 -- Multi match

一、题目 索引task有3个字段a、b、c&#xff0c;写一个查询去匹配这三个字段为mom&#xff0c;其中b的字段评分比a、c字段大一倍&#xff0c;将他们的分数相加作为最后的总分数 二、思考 通过题目要求对多个字段进行匹配查询&#xff0c;可以考虑multi match、bool query操作。…...

滚雪球学Oracle[2.5讲]:数据库初始化配置

全文目录&#xff1a; 前言一、配置文件的高级参数设置1.1 open_cursors&#xff1a;游标打开数量限制案例演示 1.2 session_cached_cursors&#xff1a;会话缓存游标数量案例演示 1.3 pga_aggregate_target与sga_target&#xff1a;内存分配优化案例演示 二、内存管理模式的选…...

Java - Spring框架 (ios+aop)

Spring 简介 Spring框架是为了解决企业应用开发的复杂性&#xff0c;使用基本的JavaBean代替EJB&#xff0c;并提供了更多的企业应用功能&#xff0c;Spring是一个轻量级控制反转(IOC)和面向切面(AOP)的容器框架。 Spring优点 Spring是一个开源的免费的框架(容器) Spring是一…...

计算机网络(十) —— IP协议详解,理解运营商和全球网络

目录 一&#xff0c;关于IP 1.1 什么是IP协议 1.2 前置认识 二&#xff0c;IP报头字段详解 三&#xff0c;网段划分 3.1 IP地址的构成 3.2 网段划分 3.3 子网划分 3.4 IP地址不足问题 四&#xff0c;公网IP和私有IP 五&#xff0c;理解运营商和全球网络 六&#xff…...

速速收藏!这些2024年上映的AI电影与短剧,申请加入你的国庆假期宅家计划!

2024年上映的AI电影 01 科幻惊悚电影《致命AI Afraid》 导演&#xff1a;克里斯韦兹上映日期:2024-08-30(美国)片长:84分钟剧情简介&#xff1a;Curtis一家被选中去测试一种革新性的居家设备&#xff1a;数字家庭助手AIA&#xff0c;包括各种感应设备和摄像头等&#xff0c;…...

23.2 prometheus为k8s做的4大适配工作

本节重点介绍 : k8s监控中的4大采集类型总结prometheus为k8s监控做的4大适配工作 k8s关注指标分析 在监控每个细分的领域时&#xff0c;我们都要先思考下到底需要关注哪些方面的指标。k8s中组件复杂&#xff0c;我们主要专注的无外乎四大块指标&#xff1a;容器基础资源指标…...

1、如何查看电脑已经连接上的wifi的密码?

在电脑桌面右下角的如下位置&#xff1a;双击打开查看当前连接上的wifi的名字&#xff1a;ZTE-kfdGYX-5G 按一下键盘上的win R 键, 输入【cmd】 然后&#xff0c;按一下【回车】。 输入netsh wlan show profile ”wifi名称” keyclear : 输入完成后&#xff0c;按一下回车&…...

循环链表和双向链表

一、 带尾指针的循环链表的合并 算法步骤&#xff1a; p存表头结点——pTa->next;Tb表头连接到Ta表尾——Ta->nextTb->next->next;释放Tb表头结点——delate Tb->next;修改指针——Tb->nextp; LinkList Connect(LinkList Ta,LinkList Tb){pTa->next; …...

【Linux庖丁解牛】—Linux基本指令(中)!

&#x1f308;个人主页&#xff1a;秋风起&#xff0c;再归来~&#x1f525;系列专栏&#xff1a; Linux庖丁解牛 &#x1f516;克心守己&#xff0c;律己则安 目录 1、rmdir与rm指令 2、man指令 3、cp指令 4、mv指令 5、cat与tac指令 6、重定向 7、more指令 8、…...

【电路笔记】-运算放大器微分器

运算放大器微分器 文章目录 运算放大器微分器1、概述2、运算放大器微分器的表示2.1 理想微分器2.2 输出公式2.3 交流分析3、实际微分器3.1 理想配置的局限性3.2 带串联电阻的伪微分器3.3 具有并联电容器的伪微分器4、总结1、概述 在我们之前关于积分器运算放大器的文章中,我们…...

【Unity踩坑】使用内购时获取Google Play license key

在Unity中使用了IAP&#xff08;内购&#xff09;后&#xff0c;需要设置Google Play license key。 这个key需要在Google Play Console中&#xff08;https://play.google.com/console&#xff09;&#xff0c;找到相应的应用&#xff0c;在左侧“创收设置”里可以找到license…...

华为OD机试真题-数组拼接-2024年OD统一考试(E卷)

最新华为OD机试考点合集:华为OD机试2024年真题题库(E卷+D卷+C卷)_华为od机试题库-CSDN博客 每一题都含有详细的解题思路和代码注释,精选c++、JAVA、Python三种语言解法。帮助每一位考生轻松、高效刷题。订阅后永久可看,发现新题及时跟新。 题目描述 现在有多组整数数…...

【Android 14源码分析】Activity启动流程-2

忽然有一天&#xff0c;我想要做一件事&#xff1a;去代码中去验证那些曾经被“灌输”的理论。                                                                                  – 服装…...

ubuntu 18.04 cuda 11.01 gpgpu-sim 裸机编译

1&#xff0c;环境 ubuntu 18.04 x86_64 cuda 11.01 gpgpu-sim master commit 90ec3399763d7c8512cfe7dc193473086c38ca38 2&#xff0c;预备环境 一个比较新的 ubuntu 18.04&#xff0c;为了迎合 cuda 11.01 的版本需求 安装如下软件&#xff1a; sudo apt-get instal…...

【Kubernetes】常见面试题汇总(五十二)

目录 116. K8S 集群服务暴露失败&#xff1f; 117.外网无法访问 K8S 集群提供的服务&#xff1f; 特别说明&#xff1a; 题目 1-68 属于【Kubernetes】的常规概念题&#xff0c;即 “ 汇总&#xff08;一&#xff09;~&#xff08;二十二&#xff09;” 。 题目 69-…...

o1-preview 在 IMO 2024 第一题的实测表现

相关博客&#xff1a;Learning to Reason with LLMs 以及 Introducing OpenAI o1-preview 测试了 IMO 2024 的第一题&#xff0c;OpenAI-o1-preview 的解题过程包括两部分&#xff1a;思考和推理。 正确答案是全体偶数&#xff0c;o1-preview 的 **思考方向正确&#xff0c;推…...

conda相比python好处

Conda 作为 Python 的环境和包管理工具&#xff0c;相比原生 Python 生态&#xff08;如 pip 虚拟环境&#xff09;有许多独特优势&#xff0c;尤其在多项目管理、依赖处理和跨平台兼容性等方面表现更优。以下是 Conda 的核心好处&#xff1a; 一、一站式环境管理&#xff1a…...

【网络】每天掌握一个Linux命令 - iftop

在Linux系统中&#xff0c;iftop是网络管理的得力助手&#xff0c;能实时监控网络流量、连接情况等&#xff0c;帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...

CTF show Web 红包题第六弹

提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框&#xff0c;很难让人不联想到SQL注入&#xff0c;但提示都说了不是SQL注入&#xff0c;所以就不往这方面想了 ​ 先查看一下网页源码&#xff0c;发现一段JavaScript代码&#xff0c;有一个关键类ctfs…...

Oracle查询表空间大小

1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...

Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级

在互联网的快速发展中&#xff0c;高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司&#xff0c;近期做出了一个重大技术决策&#xff1a;弃用长期使用的 Nginx&#xff0c;转而采用其内部开发…...

06 Deep learning神经网络编程基础 激活函数 --吴恩达

深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...

安卓基础(aar)

重新设置java21的环境&#xff0c;临时设置 $env:JAVA_HOME "D:\Android Studio\jbr" 查看当前环境变量 JAVA_HOME 的值 echo $env:JAVA_HOME 构建ARR文件 ./gradlew :private-lib:assembleRelease 目录是这样的&#xff1a; MyApp/ ├── app/ …...

【堆垛策略】设计方法

堆垛策略的设计是积木堆叠系统的核心&#xff0c;直接影响堆叠的稳定性、效率和容错能力。以下是分层次的堆垛策略设计方法&#xff0c;涵盖基础规则、优化算法和容错机制&#xff1a; 1. 基础堆垛规则 (1) 物理稳定性优先 重心原则&#xff1a; 大尺寸/重量积木在下&#xf…...

02.运算符

目录 什么是运算符 算术运算符 1.基本四则运算符 2.增量运算符 3.自增/自减运算符 关系运算符 逻辑运算符 &&&#xff1a;逻辑与 ||&#xff1a;逻辑或 &#xff01;&#xff1a;逻辑非 短路求值 位运算符 按位与&&#xff1a; 按位或 | 按位取反~ …...

密码学基础——SM4算法

博客主页&#xff1a;christine-rr-CSDN博客 ​​​​专栏主页&#xff1a;密码学 &#x1f4cc; 【今日更新】&#x1f4cc; 对称密码算法——SM4 目录 一、国密SM系列算法概述 二、SM4算法 2.1算法背景 2.2算法特点 2.3 基本部件 2.3.1 S盒 2.3.2 非线性变换 ​编辑…...