VISUAL NOISE TOOLBOX

Overview

This visual noise toolbox contains MATLAB/Octave compatibility scripts for the ISO and IEEE-SA CPIQ Visual Noise metrics. A conucious enough has been made to ensure the scripts while development using MATLAB run on Octave. To this end no MATLAB classes are used. Each function contains its own documentation inline with the code. This compatible with the MATLAB help function The validation was run on MATLAB R2013a and Octave 3.6.4 (MinGW). Below are links to function for each metric which generates a value for a single input patch.

  1. src/iso_visual_noise_patch.m
  2. src/cpiq_visual_noise_patch.m
Also included is the ISO, CPIQ and Aptina reference images and results. The function below are used by the functional test scripts to validate the values generated the code against the references results.
  1. src/iso_visual_noise_tool.m
  2. src/cpiq_visual_noise_tool.m
In addition the neutral patches for the CPIQ subjective experiments are included. The script below performs the analysis of this data
  1. src/analyse_subjective_patches.m

ZIP File Notes

The 4 top level folders in the ZIP file are listed below:

  1. docs - Documentation
  2. src - MATLAB / Octave compatible scripts
  3. unit_tests - Functional/Unit Tests
  4. images - reference images with reference results

References Images

Included in the ZIP file are 3 sets of reference images and results.

The Aptina 16-bit ICCLAB neutral 5 patch data was originally used for the training of the CPIQ Visual Noise metric. The patches were extracted form the images in the noise_target_icclab_16bit.zip file on http://www.aptina.com/ImArch/ The CPIQ OECF patches come from the OECF image reported in the paper published by Baxter and Murray at EI2012 The ISO set of patches come from the oecf20-00.JPG image supplied by Image Engineering for a previous correlation exerise for the ISO Visual Noise implementations The CPIQ Subjective patches are the neutral patches for the Macbeth Charts with the same processing applied as the noisy images used in the subjective experiments.

Functional Tests

The above 3 sets of images and results are used in functional tests.

The test_all.m scripts runs all of the functional tests implemented so far, The ISO Visual Noise tests are complete but the CPIQ Visual Noise tests are still work in progress.

References

Below are the key references

  1. Aoyama, K., Enomoto H., and. Hung, P.C, "An evaluation of scanner noise based upon a human visual model", IS&T's 49th Annual Conference, pp. 322-324,(1996)
  2. Johnson, G.M., and Fairchild, M., “A top down description of S-CIELAB and CIEDE2000”, Color Res. Appl. 28, 435-35 (2003)
  3. ISO 15739 WD#3 Oct 2010 Photography - Electronic still picture imaging - Noise measurements
  4. Aptina noise study archived data (December 2010), Readme.doc, http://www.aptina.com/ImArch/
  5. Keelan, B.W., Jin, E.W and Prokushkin, S., “Development of a perceptually calibrated object metric of noise”, Proc SPIE 7867, p786708 (2011).
  6. Baxter, D.J., and Murray, A., “Calibration and adaptation of ISO visual noise for I3A's Camera Phone Image Quality initiative”, Proc SPIE 8293, (2012)
  7. Baxter, D., Phillips, J., Denman, H., "The Subjective Importance of the noise spectral content", Proc. SPIE 9016, Image Quality and System Performance XI, 901603 (January 7, 2014);

License

The code is issued under a BSD license.
http://opensource.org/licenses/bsd-license.php

Revision History

Version Date Author Comments
0.1.0 29-June-2014 Donald BAXTER 1st Release
0.2.0 14-July-2014 Donald BAXTER Significant tidying up of code
1st Pass function commenting/help complete
Unit tests now passing on Octave 3.6.4 (MinGW)
0.3.0 17-July-2014 Donald BAXTER Added neutral patches with same processing as subjective experiements
analyse_subjective_patches script add to process the new patches
0.5.0 22-Jan-2016 Donald BAXTER BSD License text added to all scripts
0.6.0 05-May-2016 Donald BAXTER BSD License updated to align with STMicroelectronics llegal requirements