Syntesis images noise detection using CNN approach

Jérôme BUISINE 41760b8fd6 Add of DeepLearning submodule il y a 5 ans
modules @ e1fa425dac b93aa3448f Add of DeepLearning submodule il y a 5 ans
.gitignore 7b3768132f Add of new reconstruction metric il y a 5 ans
.gitmodules 630b46743f Add of static transformation il y a 5 ans
LICENSE f80a4942e7 Creation of dataset file script added il y a 5 ans
README.md 630b46743f Add of static transformation il y a 5 ans
display_simulation_curves.py f4f4555442 3D CNN model added; Add of simulation curves for 2D and 3D models; il y a 5 ans
generate_dataset.py 630b46743f Add of static transformation il y a 5 ans
generate_reconstructed_data.py 630b46743f Add of static transformation il y a 5 ans
predict_noisy_image.py e88e2afb76 Add of prediction script; Add of simulation script il y a 5 ans
predict_seuil_expe_curve.py f4f4555442 3D CNN model added; Add of simulation curves for 2D and 3D models; il y a 5 ans
requirements.txt 630b46743f Add of static transformation il y a 5 ans
run.sh f4f4555442 3D CNN model added; Add of simulation curves for 2D and 3D models; il y a 5 ans
run_maxwell_simulation_custom.sh 0d651ec858 Create generate dataset 3D il y a 5 ans
train_model.py f4f4555442 3D CNN model added; Add of simulation curves for 2D and 3D models; il y a 5 ans

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