A quality-aware image is created by extracting certain features of the original (high-quality) image and embedding them into the image as invisible hidden messages. Such an image can be aware of its own quality degradation because when a distorted version of the image is received, users can decode the hidden messages and use them to provide an objective measure of the quality of the distorted image. The advantages of this approach include:
1) It makes the image quality assessment task easier than no-reference methods (referring to those methods that do not use any information about the original image).
2) It makes the image quality assessment task feasible as compared to full-reference methods (referring to those methods that require full access to the original image). Here we have assumed that the users do not have any other access to the original image.
3) It does not affect the conventional usage of the image data because the data embedding process causes only invisible changes to the image.
4) It allows the image data to be stored, converted and distributed using any existing or user-defined formats without losing the functionality of “quality-awareness”, provided the hidden messages are not corrupted during lossy format conversion. Note that this is an advantage over the idea of adding image features into the image header, which may be lost during format conversion.
5) It provides the users with a chance to partially “repair” the received distorted image by making use of the embedded features.
The concept of quality-aware image was first introduced in
Here we provide an implementation published in the above paper. The implementation employs 1) a reduced-reference image quality assessment algorithm based on a statistical model of natural images, and 2) a quantization watermarking-based data hiding technique in the wavelet transform domain. You can download the software for free, change it as you like and use it anywhere, but please refer to its original source.