This is a reproduction of Learning and Transferring Deep Joint Spectral-Spatial Features for Hyperspectral Classification.
- pytorch 1.3
- scikit-learn
- scipy
- visdom
The model was tested on three benchmark data sets: PaviaU, Salinas and KSC. The experiment is divided into three groups, with the sample size of each category being 10, the sample size of each category being 50, and the sample size of each category being 100. In order to reduce errors, each set of experiments was conducted 10 times, and the final accuracy was taken as the average of 10 experiments. The source domain and target domain pairs are respectively:Pavia-PaviaU, Indian pines-Salinas, Indian pines-KSC。
In The accuracy (%) on the PaviaU data set is shown in the following table:
PaviaU | |||||
10 | 50 | 100 | |||
mean | std | mean | std | mean | std |
78.61 | 1.88 | 90.69 | 0.71 | 94.76 | 0.45 |
The learning curve is as follows:
The accuracy (%) on the Salinas data set is shown in the table below:
Salinas | |||||
10 | 50 | 100 | |||
mean | std | mean | std | mean | std |
77.54 | 1.24 | 87.01 | 0.97 | 90.25 | 0.45 |
The learning curve is as follows:
The accuracy (%) on the KSC data set is shown in the following table:
KSC | |||||
10 | 50 | 100 | |||
mean | std | mean | std | mean | std |
82.29 | 1.48 | 96.61 | 0.67 | 99.15 | 0.34 |
The learning curve is as follows:
Pre-trained model python train.py --name xx --epoch xx --lr xx
Fine-tuning python CrossTrain.py --name xx --epoch xx --lr xx