Updated 01 May 2020
Color augmentation method using white balance emulation. It improves the results of models for different computer vision tasks, such as image classification and image semantic segmentation.
This is the implementation of our paper: What Else Can Fool Deep Learning? Addressing Color Constancy Errors on Deep Neural Network Performance. International Conference on Computer Vision (ICCV), 2019.
1. Run `install_.m`
2. Try our demos:
* `demo_single_image.m to process signle image
* demo_batch.m to process an image directory
* demo_WB_color_augmentation.m to process an image directory and repeating the corresponding ground truth files for our generated images
* demo_GUI (located in `GUI` directory) for a GUI interface
3. To use the WB augmenter inside your code, please follow the following steps:
* Either run install_() or addpath to code/model directories:
%or use install_()
* Load our model:
load('synthWBmodel.mat'); %load WB_emulator
* Run the WB emulator:
out = WB_emulator.generate_wb_srgb(I, NumOfImgs);
* Use the generated images:
new_img = out(:,:,:,i); %access the ith generated image
Please cite our paper if you use this code.
Mahmoud Afifi and Michael S. Brown. What Else Can Fool Deep Learning? Addressing Color Constancy Errors on Deep Neural Network Performance. International Conference on Computer Vision (ICCV), 2019.