Feature List
This is a rough list of the major capabilities the Gerbil framework encompasses.
Input/Output
- Support of a wide range of image formats, including ENVI, FITS, ESRI, TIFF, JPEG2k
- Custom file format for easy import of data from Matlab, etc.
- Processing of image data that does not fit into system memory
- Reading and writing of label files, writing of spectral plots
Data Processing
Data reduction
- Region-of-interest selection, spatial masking
- Band range selection
- Interpolation, binning in the spectral domain
Normalization
- Data range calculation and histogramming
- Automatic, manual data normalization and range clamping
- Illuminant exchange
Preprocessing
- Flipping/transposition/rotation
- Apply logarithm, L2 normalization
- gaussian kernel denoising
Feature extraction
- Spectral gradient computation
- Pricipal Component Analysis (PCA)
- Spectral Angle Mapper, Spectral Information Divergence, SIDSAM computation
Label manipulation tools
- Find labels via supervised segmentation
- Create and manipulate labels via thresholding
- Edit labels with various label brushes
- Merge, delete etc. labels in a separate view
Visualization
Spectral Plots
- Interactive Parallel-coordinates based spectral plots
- Display distribution in feature spaces including:
- Raw image data
- L2-normalized spectra
- Spectral gradient
- Principal Component Analysis
- Color-coding based on labels or true color/false color
- Configurable drawing quality
Spatial Plots
- Display of image bands, spectral gradient bands with label overlay
- True-color display via CIE XYZ
- False-color display via PCA, Self-organizing Map (SOM)
Zoom/pan in all views, export views to file
Algorithms
- Dimensionality reduction via SOM
- Edge detection via RCMG, SOM
- Segmentation
- Supervised (seeded) segmentation via Graph Cuts, Power Watersheds
- Superpixel segmentation
- Material clustering via fast-adaptive mean shift (FAMS)
- Accelerated clustering via superpixel-based FAMS
- Accelerated clustering via SOM pre-processing
Interface
- Powerful GUI interface using hardware-accelerated drawing on all major desktop platforms
- Command-line interface for batch processing and automated evaluation
- Internal C++-API for image data access and incorporation of new methods
- Modularized build and command framework that makes it easy to expose new functionality through GUI and CLI