This a testing ground for implementing deep learning models for hyperspectral data.
Datasets downloaded from here.
Dataset | # Bands | Image Size | # Classes | Sensor (spectral range) |
---|---|---|---|---|
Indian Pines | 200 | 145 x 145 | 16 | AVIRIS ( |
Salinas | 204 | 512 x 217 | 16 | AVIRIS |
Pavia Centre | 102 | 1096 x 1096 | 10 | ROSIS |
Pavia University | 103 | 610 x 610 | 10 | ROSIS |
- 1D CNN - Hu et al. "Deep Convolutional Neural Networks for Hyperspectral Image Classification", Journal of Sensors, 2015
- HSI-CNN - Luo et al. "HSI-CNN: A Novel Convolution Neural Network for Hyperspectral Image", ICALIP 2018
# clone project
git clone https://github.com/abigailstone/Hyperspectral-Zoo
cd Hyperspectral-Zoo
# create conda environment and install dependencies
conda env create -f environment.yaml -n myenv
# activate conda environment
conda activate myenv
Log in to Weights & Biases from the command line to set up W&B logging.
Train model with default configuration
# train on CPU
python src/train.py
# train using Salinas data
python src/train.py data=salinas
You can override any parameter from command line like this
python src/train.py trainer.max_epochs=20 data.batch_size=64
See Hydra docs for more info.