编辑:我不爱机器学习

今天给大家分享一组用于遥感处理的 python 脚本。

作者使用基于无人机的智利中南部泥炭地的高光谱图像。该图像有 41 个波段(10 nm 宽),范围为 480-880 nm,像素大小为 10 cm。绿点对应于测量生物量、物种组成和碳储量信息的地块:

用于遥感数据处理的python脚本_点云

使用下述脚本,可以在几秒钟内首先提取绘图位置的光谱:

python ExtractValues.py -r peatland.tif -s plots.shp -i ID
  • 1.

查看输出:

用于遥感数据处理的python脚本_python_02

还可以对数据执行 MNF 转换。此函数有几个选项,例如应用 Savitzky Golay 滤波和光谱的亮度归一化。基本功能如下(示例中图像重采样为 2m):

python MNF.py -i peatland.tif
  • 1.

用于遥感数据处理的python脚本_点云_03

从图像中获取灰度共现矩阵 (GLCM) 纹理。这里,使用第一个 MNF 成分作为栅格输入,移动窗口为 5 X 5 像素(默认):

python GLCM.py -i peatland_MNF.tif
  • 1.

用于遥感数据处理的python脚本_无人机_04


最后,还可以基于本文提出的Canupo算法从点云(本例中基于无人机照相测量点云)中获取纹理信息,该算法也在CloudCompare LiDAR软件中实现:

python canupo.py -i lidar.txt -s 1 5 1 -r 1
# scales: 1,2,3,4,5 m; output resolution 1 m
  • 1.
  • 2.

用于遥感数据处理的python脚本_点云_05

链接:https://github.com/JavierLopatin/Python-Remote-Sensing-Scripts