Skip to content
/ ENIQA Public

Entropy-based No-reference Image Quality Assessment

Notifications You must be signed in to change notification settings

jacob6/ENIQA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 

Repository files navigation

ENIQA: Entropy-based No-reference Image Quality Assessment

framework

Abstract

This paper presents a high-performance general-purpose no-reference (NR) image quality assessment (IQA) method based on image entropy. The image features are extracted from two domains. In the spatial domain, the mutual information between the color channels and the two-dimensional entropy are calculated. In the frequency domain, the two-dimensional entropy and the mutual information of the filtered sub-band images are computed as the feature set of the input color image. Then, with all the extracted features, the support vector classifier (SVC) for distortion classification and support vector regression (SVR) are utilized for the quality prediction, to obtain the final quality assessment score. The proposed method, which we call Entropy-based No-reference Image Quality Assessment (ENIQA), can assess the quality of different categories of distorted images, and has a low complexity.

Authors

Xiaoqiao Chen, Qingyi Zhang, Manhui Lin, Guangyi Yang*, and Chu He, Member, IEEE

Experiments

All experiments are carried out on Matlab R2016a on 64-bit Windows 7 and the detailed results are given in the paper. The codes are also testified on Ubuntu 16.04 with Matlab R2016b and work well.

Two IQA datasets, LIVE and TID2013, are used in out experiments.

This table shows the SROCC values of ENIQA and several classical NR and FR IQA methods on the LIVE dataset

Method JP2K JPEG WN GBlur FF All
PSNR 0.9053 0.8866 0.9844 0.8120 0.8981 0.8850
SSIM 0.9517 0.9671 0.9631 0.9306 0.9404 0.9255
VIF 0.9160 0.9482 0.9435 0.9600 0.9617 0.9287
BIQI 0.8401 0.8425 0.9362 0.8924 0.7383 0.8340
DIIVINE 0.9363 0.9051 0.9692 0.9478 0.8778 0.9261
BLIINDS-II 0.9389 0.9449 0.9596 0.9447 0.8653 0.9362
BRISQUE 0.9349 0.9480 0.9725 0.9616 0.8821 0.9411
NIQE 0.9171 0.9094 0.9697 0.9678 0.8715 0.9142
ILNIQE 0.9199 0.9335 0.9730 0.9526 0.8991 0.9219
SSEQ 0.9355 0.9509 0.9689 0.9554 0.8943 0.9349
ENIQA 0.9255 0.9515 0.9762 0.9481 0.8491 0.9378

For details of the experiments, please see the paper.

Usage

For evaluating, we provide two ways:

You can first load the RGB image and then calculate the score by

img = imread(img_path);
score = ENIQA(img);

or simply input the path of the image

score = ENIQA(img_path);

The range of the output score is expected to be [0,1] and a lower score represents higher quality.

For training a new model on LIVE, try crossValidationOnLIVE

For cross-database evaluation, try testOnTID2013

To do this, you have to prepare a model pretrained on another dataset.

Pretrained models

We have trained a model on the whole LIVE dataset and you can find it in ENIQA_release/model.

Dependencies

libSVM, explicitly the mex files, is required to perform the classification and regression. You can download it from here.


Change Log for Version 0.1.0

  • There were a couple of serious flaws in the former version and now we have fixed them in v0.1.0.

  • The script to test the model on CLIVE is available.

  • Code refactoring to accelerate feature extraction.

About

Entropy-based No-reference Image Quality Assessment

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages