Folder contains code used for the experiments in the paper:
V. Risojevic and Z. Babic, "Unsupervised Quaternion Feature Learning for Remote Sensing Image Classification", IEEE Journal of Selected Topics on Applied Earth Observations and Remote Sensing, vol. 9, no. 4, pp. 1251-1531, 2016.

Script do_all.m calls the four modules:
- doPatchQPCA, computes the QPCA basis for image patches, needed if ZCA whitening of patches is used
- makeQCodebook, computes dictionary for image representation. conf.dictLearning set in get_conf.m is used for choosing the method for dictionary construction
- extract_qpca_features, used for computation of descriptors for all images
- classify_bow_auto, trains and tests SVM classifier for multiple random dataset splits

All parameters are set in get_conf.m. conf.imageDir is the path to the images, and conf.workDir is the path to the working folder, etc.

This code uses Quaternion toolbox for MATLAB (https://sourceforge.net/projects/qtfm/). It needs to be installed in order for our code to work.

--------------------------------------------------------------------------------

