HyPreView is a MATLAB GUI for preprocessing hyperspectral images and visualizing the results of various preprocessing steps on the spectra. It provides an intuitive graphical interface for performing preprocessing operations and analyzing hyperspectral data.
- Import hyperspectral data
- Calibrate data using dark and white reference
- Apply spatial and spectral averaging
- Perform noise estimation and removal using HySime algorithm
- Visualize the results of preprocessing steps
Note: Preprocessing steps are applied over the entire image, so the .mat file can be saved from the MATLAB workspace after analysis
- Add Ground-Truth map
- Add more preprocessing options
- Allow custom window sizes for filtering
- Dynamic plot creation for additional preprocessing steps
- MATLAB
- Image Processing Toolbox
- Signal Processing Toolbox
- Clone the repository or download the project files to your local machine.
- Make sure you have MATLAB and the required toolboxes installed.
- Open the HyPreView MATLAB script.
- Run the script to launch the GUI.
- Use the "Load Data" button to import your hyperspectral data.
- Use the "Select Pixel" button to choose a specific pixel for analysis.
- Apply preprocessing methods using the dropdown menu and observe the results in the plots.
- Iterate through different preprocessing techniques to analyze their effects on the data.
spectraExtract
: Extracts spectral data, dark and white reference, and ground truth map from the input data.calibrate
: Calibrates raw hyperspectral data using dark and white reference.hysimeFunc
: Estimates noise in hyperspectral data using the HySime algorithm.spatial_avg
: Computes spatial average of the hyperspectral data using a specified window size.spectral_avg
: Computes spectral average of the hyperspectral data using a specified window size.selectProcess
: Applies selected preprocessing technique and updates the visualization.
Contributions to the HyPreView project are welcome! If you find any issues or have suggestions for improvement, please feel free to open an issue or submit a pull request.