Noise detection using recursive feature elimination of attributes
Jérôme BUISINE 0907c658bc Merge tag 'v0.0.3' into develop | 5 lat temu | |
---|---|---|
analyses | 5 lat temu | |
data_processing | 5 lat temu | |
display | 5 lat temu | |
generate | 5 lat temu | |
modules | 5 lat temu | |
others | 5 lat temu | |
prediction | 5 lat temu | |
run | 5 lat temu | |
simulation | 5 lat temu | |
.gitignore | 5 lat temu | |
.gitmodules | 5 lat temu | |
LICENSE | 5 lat temu | |
README.md | 5 lat temu | |
custom_config.py | 5 lat temu | |
data_attributes.py | 5 lat temu | |
models.py | 5 lat temu | |
requirements.txt | 5 lat temu | |
train_model.py | 5 lat temu |
Noise detection on synthesis images with 26 attributes obtained using few filters.
Filters list:
and then complexity value from image obtained using std(Sobel(X))
.
pip install -r requirements.txt
Generate all needed data for each features (which requires the whole dataset. In order to get it, you need to contact us).
python generate/generate_all_data.py --feature all
You have to create a symbolic link to your own database which respects this structure:
Create your symbolic link:
ln -s /path/to/your/data dataset
modules/config/global_config.py
run/runAll_*.sh
script.model_comparisons.csv
file used for store models performance.Remark: Note here that all python script have --help command.
python generate_data_model.py --help
Parameters explained:
data
folder.This is an example of how to train a model
python train_model.py --data 'data/xxxx' --output 'model_file_to_save' --choice 'model_choice'
Now we have a model trained, we can use it with an image as input:
python prediction/predict_noisy_image_rfe.py --image path/to/image.png --interval "x,x" --model saved_models/xxxxxx.joblib --feature 'filter_statistics' --mode 'svdn' --custom 'min_max_filename'
The model will return only 0 or 1:
All SVD features developed need:
custom_config.py
file.data_attributes.py
file.Now we have a model trained, we can use it with an image as input:
python prediction_scene.py --data path/to/xxxx.csv --model saved_model/xxxx.joblib --output xxxxx --scene xxxx
Remark: scene parameter expected need to be the correct name of the Scene.
All scripts with names display/display_*.py are used to display data information or results.
Just use --help option to get more information.
All scripts named prediction/predict_seuil_expe*.py are used to simulate model prediction during rendering process. Do not forget the custom parameter filename if necessary.
Once you have simulation done. Checkout your threshold_map/%MODEL_NAME%/simulation_curves_zones_*/ folder and use it with help of display_simulation_curves.py script.