Compression project.
 Compression project (most info is in Russian) >> About
In English: Video >> Public filters | Com. filters | Video Codecs Comparisons |
Our Video Codecs | Video Quality Metrics     ||     New: Compression Catalog!

  Personal (English) >> V.Yoockin | A.Ratushnyak
In Russian: "Compression Methods" book | Arctest | Download | FIDO | Forum | Links
---------------------------------------------------------
Hot news:
* Call for H.264 codecs!
* Video Quality Metric 2.6 released!
* 3D Displays Video
* 5-th H.264 comparison!
* Cartoon Restore now x5-10 faster!
If you find a spelling error, please select an incorrect text and press Ctrl+Enter. Thank you!
Compression project >> Video Area Home  
RUSSIAN

MSU Quality Measurement Tool: Metrics information

MSU Graphics & Media Lab (Video Group)

 

PSNR

This metric, which is used often in practice, called peak-to-peak signal-to-noise ratio — PSNR.

,

where MaxErr - maximum possible absolute value of color components difference, w - video width, h - video height. Generally, this metric is equivalent to Mean Square Error, but it is more convenient to use because of logarithmic scale. It has the same disadvantages as the MSE metric.
In MSU VQMT you can calculate PSNR for all YUV and RGB components and for L component of LUV color space.
In MSU VQMT there are four PSNR implementations. "PSNR" and "APSNR" use the correct way of PSNR calculation and take maximum possible absolute value of color difference as MaxErr. But this way of calculation gives an unpleasant effect after color depth conversion. If color depth is simply increased from 8 to 16 bits, the "PSNR" and "APSNR" will change, because MaxErr should change according to maximum possible absolute value of color difference (255 for 8 bit components and 255 + 255/256 for 16 bit components). Thus "PSNR (256)" and "APSNR (256)" are implemented. They would not change because they use upper boundary of color difference as MaxErr. The upper boundary is 256. This approach is less correct but it is used often because it is fast. Here are the rules of MaxErr definition:

  • "PSNR" and "APSNR" - MaxErr varies on color components bits usage:
    • 255 for 8 bit components
    • 255 + 3/4 for 10 bit components
    • 255 + 63/64 for 14 bit components
    • 255 + 255/256 for 16 bit components
    • 100 for L component of LUV color space
    Notes
    1. If bits depth differs for two compared videos, then maximum bits usage is taken to select MaxErr.
    2. All color space conversions are assumed to lead to 8 bit images. It means that if, for example, you are measuring R-RGB PSNR for 14 bit YUV file, then 255 will be taken as MaxErr.
  • "PSNR (256)" and "APSNR (256)" - MaxErr is selected according to the next rules:
    • 256 for YUV and RGB color spaces
    • 100 for L component of LUV color space
The difference between "PSNR" and "APSNR" is the same as between "PSNR (256)" and "APSNR (256)" and is in the way of average PSNR calculation for a sequence. The correct way to calculate average PSNR for a sequence is to calculate average MSE for all frames (average MSE is arithmetic mean of the MSE values for frames) and after that to calculate PSNR using ordinary equation for PSNR:

This way of average PSNR calculation is used in "PSNR" and "PSNR (256)". But sometimes it is needed to take simple average of all the per frame PSNR values. "APSNR" and "APSNR (256)" are implemented for this case and calculate average PSNR by simply averaging per frame PSNR values.
The next table summarizes the differences:

Metric
MaxErr calculation
Average PSNR calculation

PSNR

correct

correct

PSNR (256)

256 (fast, inexact)

correct

APSNR

correct

averaging

APSNR (256)

256 (fast, inexact)

averaging

"PSNR" metric is recommended for PSNR calculation since it is implemented according to the original PSNR definition.

Original
Source
Processed
Processed
Y-YUV PSNR
Y-YUV PSNR

Colors, in order of PSNR growing: red, yellow, green, blue, black (Note: the bigger PSNR - the less the difference)

 

MSAD

The value of this metric is the mean absolute difference of the color components in the correspondent points of image. This metric is used for testing codecs and filters.

Original
Source
Processed
Processed
MSAD
MSAD

 

Delta

The value of this metric is the mean difference of the color components in the correspondent points of image. This metric is used for testing codecs and filters.

Original
Source
Processed
Processed
Delta
Delta

Red color Xij > Yij, green color Xij < Yij

 

MSU Blurring Metric

This metric allows you to compare power of blurring of two images. If value of the metric for first picture is greater, than for second it means that second picture is more blurred, than first one.

Original
Source
Processed
Processed
MSU Blurring Metric
MSU Blurring Metric

Red color - first image is more more sharp, than second. Green color - second image is more sharp, than first.

 

MSU Blocking Metric

This metric was created to measure subjective blocking effect in video sequence. For example, in contrast areas of the frame blocking is not appreciable, but in smooth areas these edges are conspicuous. This metric also contains heuristic method for detecting objects edges, which are placed to the edge of the block. In this case metric value is pulled down, it allows to measure blocking more precisely. We use information from previous frames to achieve better accuracy.

исходное
Source
MSU Blocking Metric
MSU Blocking Metric

 

SSIM Index

SSIM Index is based on measuring of three components (luminance similarity, contrast similarity and structural similarity) and combining them into result value.
Original paper

Original
Original
Compressed
Compressed
SSIM (fast)
SSIM (fast)
SSIM (precise)
SSIM (precise)

More bright areas corresponds to greater difference.

There are 2 implementation of SSIM in our program: fast and precise. The fast one is equal to our previous SSIM implementation. The difference is that the fast one uses box filter, while the precise one uses Gauss blur.
Notes:

  1. Fast implementation visualization seems to be shifted. This effect originates from the sum calculation algorithm for the box filter. The sum is calculated over the block to the bottom-left or up-left of the pixel (depending on if the image is bottom-up or top-down).
  2. SSIM metric has 2 coefficients. They depend on the maximum value of the image color component. They are calculated using the following equations:
    • C1 = 0.01 * 0.01 * video1Max * video2Max
    • C1 = 0.03 * 0.03 * video1Max * video2Max
    where video1Max is the maximum value of a given color component for the first video, video2Max is the maximum value of the same color component for the second video. Maximum value of a color component is calculated in the same way as for PSNR:
    • videoMax = 255 for 8 bit color components
    • videoMax = 255 + 3/4 for 10 bit color components
    • videoMax = 255 + 63/64 for 14 bit color components
    • videoMax = 255 + 255/256 for 16 bit color components

 

VQM

VQM uses DCT to correspond to human perception.
Original paper

source
Source
processed
Processed
VQM
VQM

More bright blocks corresponds to greater difference.

 

MSE

Original
Source
Processed
Processed
Y-YUV MSE
Y-YUV MSE

 

Information About YUV <=> RGB Tables

 

REC.601

This table is default YUV <=> RGB table in AVISynth.
{R [0...255], G [0...255], B [0...255]} => {Y [16...235], U [16...240], V [16...240]}
RGB to YUV

    Y = (0.257 * R) + (0.504 * G) + (0.098 * B) + 16 

    U = -(0.148 * R) - (0.291 * G) + (0.439 * B) + 128 

    V =  (0.439 * R) - (0.368 * G) - (0.071 * B) + 128 
        
YUV to RGB
    R = 1.164 * (Y - 16) + 1.596 * (V - 128)

    G = 1.164 * (Y - 16) - 0.391 * (U - 128) - 0.813 * (V - 128)

    B = 1.164 * (Y - 16) + 2.018 * (U - 128)
        

 

PC.601

{R [0...255], G [0...255], B [0...255]} => {Y [0...255], U [-128...128], V [-128...128]}
RGB to YUV

    Y = 0.299 * R + 0.587 * G + 0.114 * B

    U = -(0.147) * R - 0.289 * G + 0.436 * B

    V = 0.615 * R - 0.515 * G - 0.100 * B
        
YUV to RGB
    R = Y + 1.14 * V

    G = Y - 0.395 * U - 0.581 * V
                                         
    B = Y + 2.032 * U
        

 

YUV Files

YUV files form a variety of "raw data" files. Now MSU Video Quality Measurement Tool supports different types of them, but if you use .yuv files in your comparison note that

  1. We assumed, that U and V values in YUV files are positive.
  2. If you use any YUV<=>RGB table for creating YUV files from AVI (or AVI from YUV) in your program you must choose this table in the settings of MSU Video Quality Measurement Tool.

 

Download

 

MSU Video Quality Measurement Tools

e-mail: 

 

Other resources

Video resources:

MSU Video Quality Measurement Tool 2.6 released!
CALL FOR MPEG4-AVC/H.264 CODECS!

Public MSU video filters
Here are available VirtualDub and AviSynth filters. For a given type of digital video filtration we typically develop a family of different algorithms and implementations. Generally there are also versions optimized for PC and hardware implementations (ASIC/FPGA/DSP). These optimized versions can be licensed to companies. Please contact us for details via video(at)graphics.cs.msu_ru.
MSU/YUVsoft filters for companies
We are working with Intel, Samsung, RealNetworks and other companies on adapting our filters other video processing algorithms for specific video streams, applications and hardware like TV-sets, graphics cards, etc. Some of such projects are non-exclusive. Also we have internal researches. Please let us know via video(at)graphics.cs.msu_ru if you are interested in acquiring a license for such filters or making a custom R&D project on video processing, compression, computer vision.
Codecs comparisons
Objective and subjective quality evaluation
tests for video and image codecs
Ext. link: x264 parameters efficiency comparison
MSU Video Quality Measurement tools
Programs with different objective and subjective video quality metrics implementation
Video codecs projects
Different research and development
projects on video codecs
Other
Other information

Bookmark this page:   Add to Del.icio.us Add to Del.icio.us     Digg It Digg It     reddit reddit


 
Last updated: 28-April-2009

Search (Russian):
Server size: 7996 files, 1068Mb (Server statistics)

Project updated by
Server Team and MSU Video Group


Project sponsored by YUVsoft Corp.

Project supported by MSU Graphics & Media Lab

 
---------------------------------------------------------
  Send your comments to compression_##_graphicon.ru
  © Dr. D.Vatolin, Dr. M.Smirnov, A.Ratushnyak, V.Yoockin, content, 2001-2008
  © A.Andreev, pictures, 2002

Rambler's Top100 Рейтинг@Mail.ru Система Orphus

This document available from http://www.compression.ru/video/quality_measure/info_en.html