Home

Awesome

Graph Information Aggregation Cross-Domain Few-Shot Learning for Hyperspectral Image Classification

Update 07/2023: Gia-CFSL won the Highly Cited Paper.

<p align='center'> <img src='figure/ESI.png' width="800px"> </p>

Code for the paper: Graph Information Aggregation Cross-Domain Few-Shot Learning for Hyperspectral Image Classification.

<p align='center'> <img src='figure/Gia-CFSL.png' width="800px"> </p>

Abstract

Most domain adaptation (DA) methods in cross-scene hyperspectral image classification focus on cases where source data (SD) and target data (TD) with the same classes are obtained by the same sensor. However, the classification performance is significantly reduced when there are new classes in TD. In addition, domain alignment, as one of the main approaches in DA, is carried out based on local spatial information, rarely taking into account nonlocal spatial information (nonlocal relationships) with strong correspondence. A graph information aggregation cross-domain few-shot learning (Gia-CFSL) framework is proposed, intending to make up for the above-mentioned shortcomings by combining FSL with domain alignment based on graph information aggregation. SD with all label samples and TD with a few label samples are implemented for FSL episodic training. Meanwhile, intradomain distribution extraction block (IDE-block) and cross-domain similarity aware block (CSA-block) are designed. The IDE-block is used to characterize and aggregate the intradomain nonlocal relationships and the interdomain feature and distribution similarities are captured in the CSA-block. Furthermore, feature-level and distribution-level cross-domain graph alignments are used to mitigate the impact of domain shift on FSL. Experimental results on three public HSI datasets demonstrate the superiority of the proposed method.

Paper

Please cite our paper if you find the code or dataset useful for your research.

@ARTICLE{9812472,  
  author={Zhang, Yuxiang and Li, Wei and Zhang, Mengmeng and Wang, Shuai and Tao, Ran and Du, Qian},  
  journal={IEEE Transactions on Neural Networks and Learning Systems},   
  title={Graph Information Aggregation Cross-Domain Few-Shot Learning for Hyperspectral Image Classification},  
  year={2022},  
  volume={},  
  number={},  
  pages={1-14},  
  doi={10.1109/TNNLS.2022.3185795}}

Requirements

CUDA Version: 10.2

torch: 1.6.0

Python: 3.6.5

Dataset

The dataset directory should look like this:

datasets
├── Chikusei_imdb_128.pickle
├── IP
│   ├── indian_pines_corrected.mat
│   ├── indian_pines_gt.mat
├── salinas
│   ├── salinas_corrected.mat
│   └── salinas_gt.mat
└── paviaU
    ├── paviaU_gt.mat
    └── paviaU.mat

Usage

Take Gia-CFSL method on the Chikusei (Source Data) and Pavia University (Target Data) as an example:

1.Running the script Chikusei_imdb_128.py to generate preprocessed source domain data, where patch_length = 4 is used for 9*9 patch szie.

2.Running python train_Gia-CFSL.py --config config/paviaU.py

3.config/salinas.py and config/Indian_pines.py are used for Salinas data and Indian Pines data.