大学是学GIS的,最近因为需要而搞起了遥感影像,不过GIS和RS不分家嘛!多了解学习没有坏处!针对学习过程中遇到的问题和获得的收获,特发文一篇以作记录,积累经验。

【1.数据下载】

首先需要下载数据,参考的文章使用的是哨兵2号卫星的遥感影像,所以我也使用相同的卫星影像。在欧空局(ESA)网站上(Sentinel-2 - Missions - Sentinel Online - Sentinel Online)可以下载到哨兵系列卫星的数据,还是比较方便的,从【Data Access】-【Access to sentinel data】可以进入影像下载页面。

Level-1C 是经过正射校正和几何精校正的大气表观反射率产品,并没有进行大气校正。

Level-2A 主要包含经过大气校正和辐射定标的大气底层反射率数据(Bottom-of-Atmosphere corrected reflectance)

下图为哨兵2号的波段介绍。

下载数据完成后,影像数据保存在[GRANULE]-[IMG_DATA]文件夹下

【2.数据处理】

在网上查了下,ENVI 5.3可以直接打开哨兵系列的影像(jp2格式),后续需要在envi里另存为envi支持的.dat格式,再用layer stacking工具进行波段合成就可以了。

为了方便,我选择将10m分辨率里的波段2,3,4,8一次性合成,后续进行波段运算的时候就比较方便。

[文件]-[另存为]-[另存为...(ENVI,NITF,TIFF)],选择想要转换的文件(我这里是用10m分辨率下的TCI影像,即True Colour Image为例,大家做的时候选择B02,B03,B04,B08即可),命名输出文件即可。

注意,图中NDBI应该改为NDBWI,当时没注意写错了。

将文件都转为.dat格式后,进行波段合成,该工具在envi工具箱的栅格数据管理文件夹下,叫波段组合,英文版自行对照...

将那四个波段import,会自动读取信息,命名输出文件即可。

波段融合完成。

【3.提取水体公式】

根据文章:基于python实现高分二号遥感影像水体提取与水质反演(黑臭水体与水体富营养化)_一只盒饭的博客-CSDN博客_遥感影像水体提取

得知可以通过光谱影像中的红绿波段来识别正常水体和黑臭水体 ,但是通过波段计算后发现,虽然最后结果能区分开水体和建筑和裸地,但是不能很好的区分开水体和植被,所以还需要计算一个NDVI指数来将植被剔除。

NDVI 的计算公式非常简单,为近红外(NIR)与红光(Red)之差与之和的比值,即:

NDVI = (NIR - Red) / (NIR + Red),对应到哨兵2号即为第八波段(NIR)和第四波段(Red)

此公式的结果介于 -1 和 +1 之间,如果红色通道的反射率较低,而近红外通道的反射率较高,则将产生较高的 NDVI 值;反之亦然。

【4.水体提取】

公式已经列出来了,现在就需要确定一个提取的阈值,来保证最后结果大部分都为水体,没有其他地物干扰。这一个阈值需要针对实际来确定,结合他人文章和自我判断,暂时将:

0<NDBWI<0.05

范围内的水体识别为黑臭水体,不正常水体。将:

NDBWI≥0.05

识别为正常水体。

注意,因为还没将水体和植被区分开,所以还需要添加一个条件:

NDVI≤0

来将植被和水体区分开。

最后的波段计算公式为:

不健康水体:

(((float(b8)-float(b4))/(float(b8)+float(b4)) le 0) and  ((float(b3)-float(b4))/(float(b3)+float(b4)) lt 0.05) and  ((float(b3)-float(b4))/(float(b3)+float(b4)) gt 0.00))*1.0

健康水体:

(((float(b8)-float(b4))/(float(b8)+float(b4)) le 0) and  ((float(b3)-float(b4))/(float(b3)+float(b4)) ge 0.05))*1.0

附:

 结果:

不健康水体

 健康水体

【5.补充】

1.按照网上查阅的资料加上自己的理解,曲线的数值是大气底层反射率(不知道能不能理解为地物反射率),但是在envi里被默认放大了10000倍。

2.对最终结果新建密度分割,想要输出密度分割结果为shp文件时,envi报错。

具体原因是啥不清楚,全英文路径也不行,最后是按照贴吧老哥的办法,新建了一个window账户,在该账户内操作才成功,比较麻烦,但是居然成功了,逆天操作。

在ArcMap里面打开:

附贴吧老哥链接:求助,辐射定标和导出shp文件都有这个问题【envi吧】_百度贴吧

3.由于本人非专业人士,若其中有错误或漏洞或本人理解有误的地方,还请各位不吝赐教,大家一起交流学习!

4.这位大佬写的哨兵系列的介绍很详细:2.Sentinel(哨兵系列)详细介绍以及下载方式 - 简书

5.另一位大佬的文章:哨兵系列卫星(哨兵1号-12号)介绍与下载教程 - 知乎

6.补充一个问题:就是识别出的水体还是有一部分零零散散的噪声点,这些是误差的点,目前还不知道怎么去除,ENVI里的图像平滑好像用不了。

ENVI 5.3 + 哨兵2号(Sentinel-2)L2A提取健康水体和不健康水体相关推荐

  1. 哨兵二号数据offline_科学网—利用ENVI 5.3读取哨兵2号(Sentinel-2)L1C数据 - 朱永超的博文...

    2016年12月6号,欧空局修改了哨兵2号(S2)数据的命名规则,这导致ENVI 5.3仅能打开此前获取的S2数据,而之后的数据仅能在ENVI最新版5.4中打开,参见:https://yceo.yal ...

  2. 哨兵2号Sentinel-2已经完成大气校正的L2A级遥感影像产品的下载方法

      本文介绍在Sentinel哨兵遥感影像数据官网中,下载已经经过大气校正的Sentinel-2 L2A级遥感影像产品的方法.   由欧洲航天局发射的Sentinel-2(哨兵2号)卫星的遥感影像具有 ...

  3. 哨兵1号(Sentinel-1)雷达SAR数据下载-几何辐射校正处理-精确配准

    一步一步写,后续会补充 哨兵1号(Sentinel-1)数据介绍 文件类型设置-FileType设置: Raw Level-0 data (特定情况下使用): SLC( Single Look Com ...

  4. 哨兵一号数据snap预处理_利用SNAP软件进行Sentinel-1A卫星微波影像的预处理

    利用SNAP软件对雷达影像进行预处理,主要包括热噪声去除.轨道文件校正.辐射定标.滤波校正.多普勒地形校正,最终获得入射角和后向散射信息. 数据:本次实验所用数据为哨兵一号(Sentinel-1A)干 ...

  5. Redis哨兵模式(sentinel)学习总结及部署记录(主从复制、读写分离、主从切换)

    Redis的集群方案大致有三种:1)redis cluster集群方案:2)master/slave主从方案:3)哨兵模式来进行主从替换以及故障恢复. 一.sentinel哨兵模式介绍 Sentine ...

  6. Sentinel-2 哨兵二号数据(Level-1C)下载及预处理教程

    目录 1 哨兵数据的下载 1.1 欧空局官网下载 1.2 USGS网址下载 2 哨兵处理软件下载-链接已更新 2.1 下载Sen2cor软件 2.2 下载SNAP软件 3 哨兵数据产品介绍 3.1 产 ...

  7. Sen2Cor对哨兵2号L1C数据的预处理

    1.哨兵2号卫星产品介绍: 产品级别: Level-0: 原始数据. Level-1A:包含元信息的几何粗校正产品. Level-1B:辐射率产品,嵌入经GCP优化的几何模型但未进行相应的几何校正. ...

  8. Sentinel-2(哨兵2号)SNAP预处理

    由SNAP进行处理,可存为ENVI或TIFF格式,即可用ENVI进行打开. 一.由SNAP打开下载好的Sentinel-2数据 由SNAP打开解压后MTD开头的XML文件 右键点击文件,选择Open ...

  9. 哨兵2号(sentinel-2)介绍、下载和预处理、批处理

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/qq_41718357/article/ ...

最新文章

  1. OpenCV中imread/imwrite与imdecode/imencode的异同
  2. mybatis 传递set集合
  3. 全球及中国多非利特行业规模预测与前景运营模式分析报告2022-2027年版
  4. 用MsgWaitForMultipleObjects代替WaitForSingleObject和WaitForMultipleObjects()
  5. Junit4常用注解
  6. HDU 2577(DP)
  7. 【BZOJ4025】二分图(可撤销并查集+线段树分治)
  8. 使用自定义功能构建Mamdani系统
  9. allwinner 全志uboot git网址 及其他相关链接
  10. JSR303数据校验
  11. macOS Sierra,Xcode 8配置openCV3
  12. 树莓派平台的ADXL345三轴加速度传感器编程
  13. 集合框架学习笔记(下)
  14. 苹果手机不和安卓手机比堆料的原因
  15. 字节跳动瞄准千亿互联网医疗蓝海,张一鸣想靠AI算法当“药神”?
  16. 企业实战, java、spingboot微信扫码支付,页面生成微信二维码,微信扫码付款,websocket通知,处理订单!复制粘贴代码直接开干
  17. 关于MobaXterm在4K屏幕下SSH显示软件分辨率不太正确的问题
  18. Mac下设置idea的代码提示快捷键
  19. 下载python的三个版本选择
  20. shp,sde,xmd的理解

热门文章

  1. 富人越富,穷人越穷,我为什么反对PoS
  2. 千亿级平台技术架构:为了支撑高并发,我把身份证存到了JS里
  3. 读懂波卡的“三把杀手锏”,跨链未来解决方案
  4. 快来帮你三分钟了解物联网
  5. DLL文件是什么?有几种调用方式?
  6. 安卓程序开发需要学习哪些语言
  7. 计算机配置好坏怎么看,查看电脑配置状况好坏的技巧
  8. 高级计算机网络 外文文献,计算机网络新技术外文文献翻译
  9. 初级前端工程师课程导航-姜威-专题视频课程
  10. Android开发之--(WIFI,蓝牙,电池,背光,SD卡,摄像头,按键,MIC,重力感应等)功能的简单使用