Syntesis images noise detection using CNN approach

Jérôme BUISINE 5eb44c311a Use of modules for data augmentation 1 year ago
modules @ 670ff4f4b9 5eb44c311a Use of modules for data augmentation 1 year ago
.gitignore 7b3768132f Add of new reconstruction metric 1 year ago
.gitmodules 630b46743f Add of static transformation 1 year ago
LICENSE f80a4942e7 Creation of dataset file script added 1 year ago
README.md 630b46743f Add of static transformation 1 year ago
display_simulation_curves.py f4f4555442 3D CNN model added; Add of simulation curves for 2D and 3D models; 1 year ago
generate_dataset.py 5eb44c311a Use of modules for data augmentation 1 year ago
generate_reconstructed_data.py 630b46743f Add of static transformation 1 year ago
predict_noisy_image.py e88e2afb76 Add of prediction script; Add of simulation script 1 year ago
predict_seuil_expe_curve.py f4f4555442 3D CNN model added; Add of simulation curves for 2D and 3D models; 1 year ago
requirements.txt 630b46743f Add of static transformation 1 year ago
run.sh f4f4555442 3D CNN model added; Add of simulation curves for 2D and 3D models; 1 year ago
run_maxwell_simulation_custom.sh 0d651ec858 Create generate dataset 3D 1 year ago
train_model.py f4f4555442 3D CNN model added; Add of simulation curves for 2D and 3D models; 1 year ago

README.md

Noise detection project

Requirements

git clone --recursive https://github.com/prise-3d/Thesis-NoiseDetection-CNN.git XXXXX
pip install -r requirements.txt

How to use

Generate reconstructed data from specific method of reconstruction (run only once time or clean data folder before):

python generate_reconstructed_data.py -h

Generate custom dataset from one reconstructed method or multiples (implemented later)

python generate_dataset.py -h

Reconstruction parameter (--params)

List of expected parameter by reconstruction method:

  • svd_reconstruction: Singular Values Decomposition
    • Param definition: interval data used for reconstruction (begin, end)
    • Example: "100, 200"
  • ipca_reconstruction: Iterative Principal Component Analysis
    • Param definition: number of components used for compression and batch size
    • Example: "30, 35"
  • fast_ica_reconstruction: Fast Iterative Component Analysis
    • Param definition: number of components used for compression
    • Example: "50"
  • static Use static file to manage (such as z-buffer, normals card...)
    • Param definition: Name of image of scene need to be in {sceneName}/static/xxxx.png
    • Example: "img.png"

Example:

python generate_dataset.py --output data/output_data_filename --metrics "svd_reconstruction, ipca_reconstruction, fast_ica_reconstruction" --renderer "maxwell" --scenes "A, D, G, H" --params "100, 200 :: 50, 10 :: 50" --nb_zones 10 --random 1

Then, train model using your custom dataset:

python train_model --data data/custom_dataset --output output_model_name

Modules

This project contains modules:

  • modules/utils/config.py: Store all configuration information about the project and dataset information
  • modules/utils/data.py: Usefull methods used for dataset
  • modules/models/metrics.py: Usefull methods for performance comparisons
  • modules/models/models.py: Generation of CNN model
  • modules/classes/Transformation.py: Transformation class for more easily manage computation

All these modules will be enhanced during development of the project

License

MIT