ICESat-2点云数据读取与简单处理(ATL03和ATL08)

目录

一、数据下载

1、数据介绍

2、数据下载

二、数据读取

1、利用网站查看文件结构

2、利用MATLAB读取点云数据

3、利用Python读取点云数据

4、用软件读取点云数据

三、数据处理

1、DBSCAN算法

2、根据数据质量筛选


一、数据下载

1、数据介绍

ICESat-2 是 NASA 系列任务中的第三项,ICESat-2通过接收发射的激光光子来获得地表信息(高程),理想情况下,其高程精度可以达到亚米级(0.1m),是研究冰川高程、植被覆盖、地表坡度的重要数据。其中,ATL03是L2A级别数据,ATL08是L3A级别数据。(关于详细的数据介绍可以访问官网:ICESat-2 (nsidc.org)

2、数据下载

官网(Data | National Snow and Ice Data Center (nsidc.org))提供了好几种下载方式,在这里,我演示从NASA官网(Earthdata Search | Earthdata Search (nasa.gov))下载。

首先,①进入网站先登陆账号(右上角Login);②选择目标数据的时间和空间范围(在这里我筛选从2019-01-01到2019-12-31的河北保定区域的数据);③搜索栏检索“ATL03”;④可以看到右侧出现了目标数据集,点击该数据集。

可以将鼠标放在感兴趣的数据上,右侧就会出现绿色高光显示该数据的空间位置,也可以观察数据的预览图查看数据的完整性(有时候,虽然数据空间上与研究区重合,但在研究区范围内会因为地形、大气等因素存在数据缺失的情况,表现为预览图上数据的不连续),点击下载数据(ATL08的数据下载同理,只是检索的时候将“ATL03”替换为“ATL08”)。

二、数据读取

ICESat-2的点云数据是存储在HDF5文件中的,Hierarchical Data Format(HDF)是一种针对大量数据进行组织和存储的文件格式,HDF5文件可以组织成类似于文件系统的层次结构,所以在读取数据前需要找到正确的“路径”。

1、利用网站查看文件结构

myHDF5 是欧洲同步辐射光源ESRF(European Synchrotron Radiation Facility)开发和维护的在线HDF5文件查看服务,其界面如下图所示,选择下载的ICESat-2文件上传。打开文件可以看到其中有gt1l、gt1r、gt2l、gt2r、gt3l、gt3r(后面用 gtx 指代),分别对应了ICESat-2 ATLAS探测的6个光子轨道,点击 gtxl\heights\h_ph 就可以看到高程数据,也可以点击 gtxl\geophys_corr\dem_h

关于 h_ph 和 dem_h 两种高程的区别,可以查看官方文档(Documents),里面对每个数据集进行了详细的说明。

2、利用MATLAB读取点云数据

利用MATLAB读取三维点云数据,即包含经纬度坐标的 h_ph 高程信息的光子,其中经度存储在 gtx\heights\lon_ph,纬度存储在 gtx\heights\lat_ph,高程信息则在 gtx\heights\h_ph(gtx为gt1l、gt1r、gt2l、gt2r、gt3l、gt3r),在这里用MATLAB读取轨道gt1l的点云数据,代码如下(其它轨道的类似):

### 处理 ICESAT-2ATL03 数据产品提供了全球范围内的高精度激光测距观测,这些数据可以用于多种应用,包括植被结构分析。为了从 ATL03 数据中计算或提取叶面积指数(LAI),通常需要经过一系列预处理算法实现。 #### 预处理阶段 在开始 LAI 计算之前,必须先对原始的 ATL03 数据文件进行必要的预处理操作: 1. **读取 HDF5 文件** 使用 Python 中的 `h5py` 库来加载 ATL03 数据集中的变量[^1]。 ```python import h5py with h5py.File('path_to_atl03_file.h5', 'r') as f: # 获取所需的数据字段 pass ``` 2. **筛选有效测量点** 排除无效或低质量的回波信号,保留那些具有较高置信度的高度测量值[^2]。 3. **地理配准** 将所有的高度测量转换到统一的空间参考系下,以便后续其他辅助数据源相结合使用[^3]。 #### 提取冠层特征参数 基于上述准备好的高质量点云数据,下一步就是识别并量化森林或其他植被类型的垂直结构特性。这一步骤对于最终估算 LAI 至关重要。 - 利用统计学方法或是机器学习模型区分地面返回植物冠层反射之间的差异; - 构建 canopy height profile(CHP),即不同海拔区间内单位体积内的粒子密度分布情况图表; #### 实现 LAI 估计 目前存在几种主流的方法可用于由 LiDAR 类型的数据推导出 LAI 值: - **直接法**: 如果有其他传感器获取的同时期光学影像资料,则可以直接通过比较两者间的关系建立回归方程来进行预测[^4]。 - **间接法(推荐)**: 更常用的方式是采用辐射传输理论模拟光子路径长度概率函数(PDF),进而求解得到平均单次散射距离——也就是所谓的“有效径向尺度”,最后将其转化为实际意义上的 LAI 数值[^5]。 ```matlab % MATLAB 示例代码片段展示如何利用经验公式近似计算 LAI function lai = estimate_lai(chm, k) % chm 是冠层高度模型矩阵; k 表示消光系数 leaf_area_index = zeros(size(chm)); for i=1:length(chm(:)) if ~isnan(chm(i)) && chm(i)>0 leaf_area_index(i) = log((chm(i)+k)/k); end end lai = mean(leaf_area_index,'omitnan'); end ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值