This repository presents the experiments of the paper:
Uncertainty-aware Graph-based Hyperspectral Image Classification
Linlin Yu, Yifei Lou, Feng Chen
International Conference on Learning Representations (ICLR), 2024.
[paper]
To install requirements:
conda env create -f environment.yaml
conda activate uhsic
The experiments include three datasets: PaviaU, KSC and Houston2013.
- Download the raw files including the feature and classification ground-truth matrix and save them under the folder
raw_data/{dataset}/
; - Run an unsupervised unmixing model and get the endmember matrix as the prior knowledge for the proposed architecture; In our paper, we use the '[Blind Hyperspectral Unmixing Based on Graph Total Variation Regularization (https://ieeexplore.ieee.org/document/9200736)]' to generate the predicted abundance matrix and endmember matrix, and note that we need to run a permutation algorithm to match the endmember matrix with the material label (we provide sample code in the
data/find_perm
). The generated matrix should be saved under the folderdata/{dataset}/unmxing/
; Then we need to - Run
data/data_preprocess.py
, which will generate a folder underdata/{dataset}/raw
for required matrices; - For 'GKDE' based models, first run
alpha_prior_generation.py
andprobability_teacher_generation.py
, which will generate and save GKDE teacher and probability teacher tensors under folderteacher
; - For experiments related to misclassification detection, please execute the Python files that end with
clearngraph
. For out-of-distribution (OOD) detection experiments, run the Python files ending withoodgraph
. For experiments involving softmax graph convolutional networks (GCN), execute the Python files that begin withclassification
. For experiments on enhanced GCN (EGCN) models based on Gaussian Kernel Density Estimation (GKDE), run Python files starting withGKDE
. Lastly, for experiments related to 'GPN' based models, please run Python files beginning withGPN
.
Please cite our paper if you use the model or this code in your own work:
@inproceedings{
yu2024uncertaintyaware,
title={Uncertainty-aware Graph-based Hyperspectral Image Classification},
author={Linlin Yu and Yifei Lou and Feng Chen},
booktitle={The Twelfth International Conference on Learning Representations},
year={2024},
url={https://openreview.net/forum?id=8dN7gApKm3}
}