使用NDWI提取水体详细流程

2024-04-26 23:48

本文主要是介绍使用NDWI提取水体详细流程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

以高分二号影像为例,介绍使用ENVI计算NDWI提取水体,最后生成shpfile文件输出

1. 在ENVI中加载影像

2.计算NDWI:在菜单栏中依次选择:Basic Tools->Band Math,然后在 enter an expression中输入表达式:

( float(b2)-float(b4) )/(b2+b4)

水体指数NDWI计算方式有多种,上面的是其中一种,基于绿波段与近红外波段的归一化比值指数

3. 点击OK,接下来是选择波段,b2表示绿波段,b4表示近红外,这个需要根据自己的影像来

4. 接下来选择导出位置,我暂时选择保存到内存memory

5. 这样就得到了水体指数影像

6. 接下来就是区分开水体和非水体,在菜单栏中依次选择:Classification->Decision Tree->Build New Decision Tree,如下图

7. 点击Node 1,在expression中输入计算公式 b1 GT 0.2

8. 点击ok后会弹出一个框,让选择b1,点击b1,选择刚刚生成的NDWI影像,效果如下,此时可以点击hide,也可以放着

9. 这个时候node1变成了下面这样,意思是:如果值大于0.2就是类别1,否则就是类别0

10. 还是在决策树这个界面,选择execute,如下图

11.选择输入位置后即可得到二值化结果:水体即为白色

12. 接下来是将水体导出成矢量

在菜单栏中选择:classification->post classification->classification to vector,然后选择刚刚生成的二值化结果,接下来是导出参数设置,选择class 1,选择输出路径,即可得到evf矢量水体

13.evf转shpfile,在available vector lists窗口中,选择 file->export layers to shpfile,,就可以把evf转成shpfile了

这篇关于使用NDWI提取水体详细流程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/938996

相关文章

jdk21下载、安装详细教程(Windows、Linux、macOS)

《jdk21下载、安装详细教程(Windows、Linux、macOS)》本文介绍了OpenJDK21的下载地址和安装步骤,包括Windows、Linux和macOS平台,下载后解压并设置环境变量,最... 目录1、官网2、下载openjdk3、安装4、验证1、官网官网地址:OpenJDK下载地址:Ar

使用Apache POI在Java中实现Excel单元格的合并

《使用ApachePOI在Java中实现Excel单元格的合并》在日常工作中,Excel是一个不可或缺的工具,尤其是在处理大量数据时,本文将介绍如何使用ApachePOI库在Java中实现Excel... 目录工具类介绍工具类代码调用示例依赖配置总结在日常工作中,Excel 是一个不可或缺的工http://

Java之并行流(Parallel Stream)使用详解

《Java之并行流(ParallelStream)使用详解》Java并行流(ParallelStream)通过多线程并行处理集合数据,利用Fork/Join框架加速计算,适用于大规模数据集和计算密集... 目录Java并行流(Parallel Stream)1. 核心概念与原理2. 创建并行流的方式3. 适

SpringBoot集成图片验证码框架easy-captcha的详细过程

《SpringBoot集成图片验证码框架easy-captcha的详细过程》本文介绍了如何将Easy-Captcha框架集成到SpringBoot项目中,实现图片验证码功能,Easy-Captcha是... 目录SpringBoot集成图片验证码框架easy-captcha一、引言二、依赖三、代码1. Ea

linux环境openssl、openssh升级流程

《linux环境openssl、openssh升级流程》该文章详细介绍了在Ubuntu22.04系统上升级OpenSSL和OpenSSH的方法,首先,升级OpenSSL的步骤包括下载最新版本、安装编译... 目录一.升级openssl1.官网下载最新版openssl2.安装编译环境3.下载后解压安装4.备份

如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件

《如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件》本文介绍了如何使用Docker部署FTP服务器和Nginx,并通过HTTP访问FTP中的文件,通过将FTP数据目录挂载到N... 目录docker部署FTP和Nginx并通过HTTP访问FTP里的文件1. 部署 FTP 服务器 (

MySQL 日期时间格式化函数 DATE_FORMAT() 的使用示例详解

《MySQL日期时间格式化函数DATE_FORMAT()的使用示例详解》`DATE_FORMAT()`是MySQL中用于格式化日期时间的函数,本文详细介绍了其语法、格式化字符串的含义以及常见日期... 目录一、DATE_FORMAT()语法二、格式化字符串详解三、常见日期时间格式组合四、业务场景五、总结一、

C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)

《C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)》本文主要介绍了C#集成DeepSeek模型实现AI私有化的方法,包括搭建基础环境,如安装Ollama和下载DeepS... 目录前言搭建基础环境1、安装 Ollama2、下载 DeepSeek R1 模型客户端 ChatBo

Python中配置文件的全面解析与使用

《Python中配置文件的全面解析与使用》在Python开发中,配置文件扮演着举足轻重的角色,它们允许开发者在不修改代码的情况下调整应用程序的行为,下面我们就来看看常见Python配置文件格式的使用吧... 目录一、INI配置文件二、YAML配置文件三、jsON配置文件四、TOML配置文件五、XML配置文件

Go使用pprof进行CPU,内存和阻塞情况分析

《Go使用pprof进行CPU,内存和阻塞情况分析》Go语言提供了强大的pprof工具,用于分析CPU、内存、Goroutine阻塞等性能问题,帮助开发者优化程序,提高运行效率,下面我们就来深入了解下... 目录1. pprof 介绍2. 快速上手:启用 pprof3. CPU Profiling:分析 C