Transforms

class TlseHypDataSet.utils.transforms.GaborFilters(n_frequencies: int = 4, n_thetas: int = 6)

Like-wise torchvision.transforms class to compute Gabor filters

class TlseHypDataSet.utils.transforms.SpectralIndices(wv: numpy.ndarray)

Like-wise torchvision.transforms class to compute spectral indices

class TlseHypDataSet.utils.transforms.GaussianFilter(bbl: numpy.ndarray, sigma: float)

Like-wise torchvision.transforms class to apply 1D Gaussian filters on the spectral dimension

class TlseHypDataSet.utils.transforms.Concat(transforms_)

Concatenate several data transformations

class TlseHypDataSet.utils.transforms.Stats

Like-wise torchvision.transforms class to compute statistics (mean, standard deviation, first and third quartiles, first and last deciles, minimum and maximum) over a 2D image

The example below shows how data transformations were combined to qualitatively compare the Toulouse Hyperspectral Data Set to other data sets (see comparison at www.toulouse-hyperspectral-data-set.com).

import torch
from torchvision import transforms
from TlseHypDataSet.tlse_hyp_data_set import TlseHypDataSet
from TlseHypDataSet.utils.transforms import GaussianFilter, SpectralIndices,\
                                            GaborFilters, Concat, Stats

dataset = TlseHypDataSet('/path/to/dataset/', pred_mode='patch', patch_size=64)
dataset.transform = transforms.Compose([
                GaussianFilter(dataset.bbl, sigma=1.5),
                Concat([
                    SpectralIndices(dataset.wv[dataset.bbl]),
                    GaborFilters()
                    ]),
                Stats()
            ])