Skip to content

hiroyuki-kasai/ClassifierToolbox

Repository files navigation

ClassifierToolbox : A Matlab toolbox for classifier.


Authors: Hiroyuki Kasai

Last page update: Seo. 11, 2017

Latest library version: 1.0.7 (see Release notes for more info)

Introduction

This package provides various tools for classification, e.g., image classification, face recogntion, and related applicaitons.

List of algorithms


Folders and files

./ - Top directory. ./README.md - This readme file. ./run_me_first.m - The scipt that you need to run first. ./demo.m - Demonstration script to check and understand this package easily. |algorithm/ - Algorithms for classifcations. |auxiliary/ - Some auxiliary tools for this project. |demo_examples/ - Some demonstration files. |lib/ - 3rd party tools. |dataset/ - Folder where datasets are stored. 

First to do: configure path

Run run_me_first for path configurations.

%% First run the setup script run_me_first; 

Second to do: download datasets and external libraries

Run download for downloading datasets and external libraries.

%% Run the downloading script download; 
  • If your computer is behind a proxy server, please configure your Matlab setting. See this.

Usage example: ORL face dateset demo: 3 steps!

Now, just execute demo for demonstration of this package.

%% Execute the demonstration script demo; 

The "demo.m" file contains below.

%% load data load('./dataset/AR_Face_img_60x43.mat'); %% set option options.verbose = true; %% LSR [accuracy_lsr, ~, ~] = lsr(TrainSet, TestSet, train_num, test_num, class_num, 0.001, options); %% LRC accuracy_lrc = lrc(TrainSet, TestSet, test_num, class_num, options); %% show recognition accuracy fprintf('# LSR: Accuracy = %5.5f\n', accuracy_lsr); fprintf('# LRC: Accuracy = %5.5f\n', accuracy_lrc);

Let take a closer look at the code above bit by bit. The procedure has only 3 steps!

Step 1: Load data

First, we load datasets including train set and test set.

load('./dataset/AR_Face_img_60x43.mat');

Step 2: Perform solver

Now, you can perform optimization solvers, i.e., LSR and LRC with appropriate paramters.

%% LSR [accuracy_lsr, ~, ~] = lsr(TrainSet, TestSet, train_num, test_num, class_num, 0.001, options); %% LRC accuracy_lrc = lrc(TrainSet, TestSet, test_num, class_num, options);

Step 3: Show recognition accuracy

Finally, the final recognition accuracis are shown.

fprintf('# LSR: Accuracy = %5.5f\n', accuracy_lsr); fprintf('# LRC: Accuracy = %5.5f\n', accuracy_lrc);

That's it!


License

  • This toobox is free, non-commercial and open source.
  • The code provided in this toobox should only be used for academic/research purposes.

Third party tools, libraries, and packages.


Problems or questions

If you have any problems or questions, please contact the author: Hiroyuki Kasai (email: hiroyuki dot kasai at waseda dot jp)


Release Notes

  • Version 1.0.7 (Sep. 11, 2017)
    • Fix bugs.
  • Version 1.0.6 (Aug. 03, 2017)
    • Add R-DR, R-SRC, others.
  • Version 1.0.5 (July 27, 2017)
    • Add JDDRDL and others.
  • Version 1.0.4 (July 11, 2017)
    • Add and modify SSRC etc.
  • Version 1.0.3 (July 10, 2017)
    • Add and modify SDR-SLR etc.
  • Version 1.0.2 (July 07, 2017)
    • Add and modify RSR, SVM etc.
  • Version 1.0.1 (July 06, 2017)
    • Add and modify many items.
  • Version 1.0.0 (July 01, 2017)
    • Initial version.