Syntesis images noise detection using CNN approach

jbuisine 325b764f58 Update of script nn order 6 gadi atpakaļ
img_train a22b32b71a First CNN model version 6 gadi atpakaļ
img_validation a22b32b71a First CNN model version 6 gadi atpakaļ
modules b69fde4c72 Update of metric and add of run script 6 gadi atpakaļ
.gitignore 67c2a0d3a5 Creation of modules for models 6 gadi atpakaļ
README.md 394af0dcca Generate database script updated 6 gadi atpakaļ
RESULTS.md 2c8ad26c6b Add of model using SVD of images 6 gadi atpakaļ
classification_cnn_keras.py c1bfd6ee47 Update of generate dataset and add of config file 6 gadi atpakaļ
classification_cnn_keras_cross_validation.py c1bfd6ee47 Update of generate dataset and add of config file 6 gadi atpakaļ
classification_cnn_keras_svd.py 325b764f58 Update of script nn order 6 gadi atpakaļ
config.json c1bfd6ee47 Update of generate dataset and add of config file 6 gadi atpakaļ
generate_dataset.py 394af0dcca Generate database script updated 6 gadi atpakaļ
requirements.txt 2c8ad26c6b Add of model using SVD of images 6 gadi atpakaļ
run.sh 325b764f58 Update of script nn order 6 gadi atpakaļ

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 variable or using parameter.

python generate_dataset.py --nb xxxx

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

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

python classification_cnn_keras_svd.py --directory xxxx --output xxxxx --batch_size xx --epochs xx --img xx (or --image_width xx --img_height xx)

A config file in json is available and keeps in memory all image sizes available.

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.