This is a deep learning platform for hyperspectral classification by pytorch, integrated several classic HSIC models including CNN1D,A2S2KResNet,HybridSN,M3DCNN,SSUN,SSFCN SpectralFormer,VIT,GhostNet,FullyContNet,MobileNet,UNet. This is also an official implement of "SSRNet: A Lightweight Successive Spatial Rectified Network With Noncentral Positional Sampling Strategy for Hyperspectral Images Classification" and "A Multi-scale Convolutional Neural Network Based on Multilevel Wavelet Decomposition for Hyperspectral Image Classification"
Firstly conda create -n myenv python==3.7 conda activate myenv conda install pytorch==1.12.0 torchvision==0.13.0 torchaudio==0.12.0 cudatoolkit=11.3 -c pytorch conda install --file requirements.txt
We used visdom for visualizing experiments, so you should run visdom.server firstly.
python -m visdom.server
You also can just run the experiment without visdom by command line parameter --VISDOM 0
python main.py --MODEL SSRNet --VISDOM 0
You can easily run different hyperspectral models by command lines. For example:
python main.py --MODEL SSRNet --DATASET IP --RUNS 1 --DEVICE 0 --VISDOM 1
A2S2KResNet UP
CNN1D UH
FullyContNet
GhostNet
HybridSN
M3DCNN
MLWBDN
MobileNet
SSFCN
SSUN
UNet
SFormer_px
SFormer_pt
VIT
We also provide many basic parameters for training and test such as batchsize, epoch, learning rate and so on. You can see details in param file.
eecn/Hyperspectral-Classification