Naturalness Image Quality Evaluator

No-Reference Quality Metrics

Description

The Natural Image Quality Evaluator (NIQE) metric makes only use of measurable deviations from statistical regularities observed in natural images, without training on human-rated distorted images, and, indeed without any exposure to distorted images. It is based on the construction of a quality aware collection of statistical features based on a simple and successful space domain natural scene statistic (NSS) model. These features are derived from a corpus of natural, undistorted images.

Interpretation

The lower the NIQE value, the better. A NIQE value of 0 is the best.

Limits

NIQE is trained with an image dataset so its performance and validity heavily depends on the training data.

Example

Images from a traffic surveillance camera in Germany is used to show the NIQE results.

Standard image with NIQE score 3.75

../_images/Reference_Image.png

Dark image with NIQE score 4.64

../_images/Image_Dark.png

Dark image with NIQE score 3.93

../_images/Image_Sunshine.png

Tools and Libraries

Python

There is one python repository implementing NIQE for grayscale images.

MATLAB

The MATLAB Image Processing Toolbox contains a function to calculate the NIQE score:

standard = imread('Reference_Image.png');
dark = imread('Image_Dark.png');
sun = imread('Image_Sunshine.png');

score = niqe(standard);
fprintf('\nThe NIQE score for the standard image %0.4f\n', score);

score = niqe(dark);
fprintf('\nThe NIQE score for the dark image %0.4f\n', score);

score = niqe(sun);
fprintf('\nThe NIQE score for the sunny image %0.4f\n', score);

A detailed description can be found at the Mathworks Website.

Literature

http://live.ece.utexas.edu/publications/2012/Asilomar_MicheleSaad.pdf