Skip to content

Florian33850/PFE_Classification

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PFE_Classification

Table of Contents

  1. General Info
  2. Technologies
  3. Installation
  4. Usage
  5. Collaboration

General Info

This project is part of our Master 2 Computer Science final year project at the university of Bordeaux. It is a generic classification application allowing to perform pre-processing on a loaded database, data augmentation, launch classification model training and classify an image with a loaded pre-trained model.

Technologies

OpenCV : Version 3.2.0 Debian GNU/Linux 10 (buster) QT : Version 5.0

Installation

Retrieve the repository : $ git clone git@github.com:Florian33850/PFE_Classification.git

CMake is used to build the project. Create a build directory :

$ mkdir build
$ cd build
$ cmake ..
$ make

To obtain the project's code coverage execute the following command:

$ make && make gcov && make lcov && firefox lcoverage/index.html

Launch the application :

$ ./application_viewer

Usage

First tab :

  • Possibility to load one or more images with File > ImageSelection or a database as a folder with File > LymeDatabase
  • Addition of pre-processing which is carried out on the original images.
  • Save all images with active pre-processing.

Second tab:

  • Possibility to load images as before (if not already done in the previous tab).
  • Addition of one or more data increases. Each data augmentation preview is done separately from each other.
  • Currently saving the images is only done on the last data augmentation previewed.

Third tab:

  • Possibility to choose a classification method between deep learning and random forest.
  • Then you have to choose a python file (where it should be specified, according to the the following convention how the arguments needed in the application are passed): - DeepLearning: arg[1] = width of images, arg[2] = height of images, arg[3] = training set, arg[4] = testing set, arg[5] = number of epochs - RandomForest : arg[1] = width of images, arg[2] = height of images, arg[3] = training set, arg[4] = number of trees Arguments can be passed in the python code with the import sys and the method sys.argv[n°] prefixed with the desired type (int, str, ...).
  • Once the training start, a message is displayed to inform that a training is in progress and another message is displayed when it finished.
  • The standard output of the python file is displayed in the application.

Fourth tab :

  • Same method as for the previous tab, except that a prediction file must be passed as a parameter and should be already writtent in Python by the user.
  • Possibility of passing a pre-trained model (arg[1]), an image to be classified (arg[2]) and a label file (arg[3]) as parameters to the python file.

Collaboration

Florian Dayre, Elodie Gaudry, Hugo Lecomte, Hugo Trarieux.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •