Skip to content

kifakh/Bayesian-CNN-for-HSI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hyperspectral Image Classification using Bayesian CNN

Accuracy improvment

This repository contains Python code for the classification of Hyperspectral Images (HSI) using Bayesian Convolutional Neural Networks (CNN). The project focuses on leveraging Bayesian techniques to provide uncertainty estimates in the classification process. The dataset used for experimentation is the Pavia University dataset.

Dataset

The Pavia University dataset consists of hyperspectral images captured by remote sensing devices. It contains high-dimensional spectral data with spatial information. The images are labeled with different classes representing different land cover types.

Bayesian CNN

Bayesian CNNs extend traditional CNNs by incorporating uncertainty estimates into the classification process. This allows for more robust predictions and quantification of prediction uncertainty, which is particularly useful in remote sensing applications where uncertainty assessment is crucial.

Techniques Applied

The project applies the following techniques for Bayesian CNN-based classification:

  • Bayesian Inference: Bayesian techniques are used to estimate the posterior distribution of model parameters, allowing for uncertainty estimation in predictions.
  • Variational Inference: Variational methods are employed to approximate complex posterior distributions and make the training process tractable.

Results

The detailed block diagram of the work using 3 approaches:

ALT TEXT

Comparing the results of the best methods

Noting the effectiveness of Bayesian CNN for the small-size classes. ALT TEXT

Results of BCNN

ALT TEXT ALT TEXT

Conclusion

This project demonstrates the application of Bayesian CNNs for the classification of Hyperspectral Images (HSI) using Python. The incorporation of Bayesian techniques enables uncertainty-aware classification, which is valuable for decision-making in remote sensing applications.