Syntesis images noise detection using CNN approach

jbuisine aec48f4928 Merge branch 'release/v0.0.5' il y a 6 ans
img_train a22b32b71a First CNN model version il y a 6 ans
img_validation a22b32b71a First CNN model version il y a 6 ans
modules 67c2a0d3a5 Creation of modules for models il y a 6 ans
.gitignore 67c2a0d3a5 Creation of modules for models il y a 6 ans
README.md a900315b27 Update of SVD model il y a 6 ans
RESULTS.md 2c8ad26c6b Add of model using SVD of images il y a 6 ans
classification_cnn_keras.py 67c2a0d3a5 Creation of modules for models il y a 6 ans
classification_cnn_keras_cross_validation.py 67c2a0d3a5 Creation of modules for models il y a 6 ans
classification_cnn_keras_svd.py a900315b27 Update of SVD model il y a 6 ans
generate_dataset.py 2c8ad26c6b Add of model using SVD of images il y a 6 ans
requirements.txt 2c8ad26c6b Add of model using SVD of images il y a 6 ans

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.