Syntesis images noise detection using CNN approach

jbuisine a900315b27 Update of SVD model 6 years ago
img_train a22b32b71a First CNN model version 6 years ago
img_validation a22b32b71a First CNN model version 6 years ago
modules 67c2a0d3a5 Creation of modules for models 6 years ago
.gitignore 67c2a0d3a5 Creation of modules for models 6 years ago
README.md a900315b27 Update of SVD model 6 years ago
RESULTS.md 2c8ad26c6b Add of model using SVD of images 6 years ago
classification_cnn_keras.py 67c2a0d3a5 Creation of modules for models 6 years ago
classification_cnn_keras_cross_validation.py 67c2a0d3a5 Creation of modules for models 6 years ago
classification_cnn_keras_svd.py a900315b27 Update of SVD model 6 years ago
generate_dataset.py 2c8ad26c6b Add of model using SVD of images 6 years ago
requirements.txt 2c8ad26c6b Add of model using SVD of images 6 years ago

README.md

Noise detection project

Requirements

pip install -r requirements.txt

How to use

Generate dataset (run only once time or clean data folder before) :

python generate_dataset.py

It will split scenes and generate all data you need for your neural network. You can specify the number of sub images you want in the script by modifying _NUMBER_SUBIMAGES variables.

There are 3 kinds of Neural Networks :

  • classification_cnn_keras.py : based on cropped images and do convolution
  • classification_cnn_keras_cross_validation.py : based on cropped images and do convolution. Data are randomly split for training
  • classification_cnn_keras_svd.py : based on svd metrics of image

Note that the image input size need to change in you used specific size for your croped images.

After your built your neural network in classification_cnn_keras.py, you just have to run it :

python classification_cnn_keras.py

Modules

This project contains modules :

  • modules/image_metrics : where all computed metrics function are developed
  • modules/model_helper : contains helpful function to save or display model information and performance

All these modules will be enhanced during development of the project

How to contribute

This git project uses git-flow implementation. You are free to contribute to it.