作者注:本案例基于武汉大学提供的 WHU-Hi-HanChuan 高光谱遥感数据集,结合 Python 中的 PCA、LLE 及 t-SNE 等降维算法,演示如何通过降维可视化技术,理解遥感影像中各地物类别的特征分布与聚类结构。本教程包含完整代码,可直接用于科研辅助分析、可视化展示与教学示例。
一、t-SNE 在遥感影像中的意义
遥感影像(尤其是高光谱影像)拥有数十甚至上百个光谱波段,这种高维特征虽然蕴含丰富信息,但也存在维度灾难、可视化困难与冗余特征干扰等问题。
t-SNE(t-Distributed Stochastic Neighbor Embedding) 是一种非线性降维方法,擅长保留局部结构信息,在高维特征空间中发现并呈现聚类趋势与类别边界,在遥感分类、样本分析、伪样本筛选等环节具有重要作用。
二、数据说明与目标
本实验数据集为 WHU-HI-HanChuan:
- 下载地址:https://rsidea.whu.edu.cn/resource_WHUHi_sharing.htm
- 图像尺寸:Height × Width × Bands
- 标签说明:像素标签范围1-16,0表示无标签区域。
- 参考文献:
Zhong et al., “WHU-Hi: UAV-borne hyperspectral with high spatial resolution (H2) benchmark datasets and classifier for precise crop identification…”, Remote Sens. Environ., 2020.
Zhong et al., “Mini-UAV-borne hyperspectral remote sensing: From observation and processing to applications”, IEEE GRSM, 2018.
主要目标:
- 使用 PCA 和 LLE 提取低维特征
- 利用 t-SNE 将其进一步压缩到二维
- 比较不同特征提取方法下,地物类别的聚类效果
三、Python代码实现
以下为完整的 Python 实现流程:
数据加载与预处理
import os
import numpy as np
import scipy.io
import matplotlib.pyplot as plt
import matplotlib
# 中文字体与负号显示
matplotlib.rcParams['font.family'] = 'SimHei'
matplotlib.rcParams['axes.unicode_minus'] = False
# 数据路径
data_dir = r"your_path"
x_path = os.path.join(data_dir, "WHU_Hi_HanChuan.mat")
y_path = os.path.join(data_dir, "WHU_Hi_HanChuan_gt.mat")
# 读取数据
def load_data
474




被折叠的 条评论
为什么被折叠?



