This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

vision.PSNR System object

Package: vision

Compute peak signal-to-noise ratio (PSNR) between images


    Note:   The vision.PSNR System object will be removed in a future release. Use the psnr function with equivalent functionality instead.

The PSNR object computes the peak signal-to-noise ratio (PSNR) between images. This ratio is often used as a quality measurement between an original and a compressed image.

    Note:   Starting in R2016b, instead of using the step method to perform the operation defined by the System object™, you can call the object with arguments, as if it were a function. For example, y = step(obj,x) and y = obj(x) perform equivalent operations.


H = vision.PSNR returns a System object, H, that computes the peak signal-to-noise ratio (PSNR) in decibels between two images.

Code Generation Support
Supports MATLAB® Function block: Yes
System Objects in MATLAB Code Generation.
Code Generation Support, Usage Notes, and Limitations.


cloneCreate peak signal to noise ratio object with same property values
getNumInputsNumber of expected inputs to step method
getNumOutputsNumber of outputs from step method
isLockedLocked status for input attributes and non-tunable properties
release Allow property value and input characteristics changes
stepCompute peak signal-to-noise ratio


Compute the PSNR between an original image and its reconstructed image.

 hdct2d = vision.DCT;
 hidct2d = vision.IDCT;
 hpsnr = vision.PSNR;
 I = double(imread('cameraman.tif'));
 J = step(hdct2d, I); 
 J(abs(J) < 10) = 0;
 It = step(hidct2d, J);
 psnr = step(hpsnr, I,It)
 imshow(I, [0 255]), title('Original image');
 figure, imshow(It,[0 255]), title('Reconstructed image');


This object implements the algorithm, inputs, and outputs described on the PSNR block reference page. The object properties correspond to the block parameters.

Introduced in R2012a

Was this topic helpful?