Psnr Calculation In Matlab For Mac
- Psnr Calculation In Matlab For Machine Learning
- Matlab For Mac Student
- Psnr Calculation In Matlab For Mac Free
After 6 years, I imagine so. But since then, lucky for you, they've introduced the psnr function into the Image Processing Toolbox so you can just simply use that, after using imresize of course to make the image sizes match. It will be a scalar (a single number). Mse = sum(sum(squaredErrorImage)) / (rows. columns);% Calculate PSNR (Peak Signal to Noise Ratio) from the MSE according to the formula. Peaksnr = psnr (A,ref) calculates the peak signal-to-noise ratio (PSNR) for the image A, with the image ref as the reference. Peaksnr = psnr (A,ref,peakval) calculates the PSNR of image A using the peak signal value peakval. peaksnr,snr = psnr also returns the simple signal-to-noise ratio, snr.
The PSNR block computes the peak signal-to-noise ratio, in decibels, between two images. This ratio is used as a quality measurement between the original and a compressed image. The higher the PSNR, the better the quality of the compressed, or reconstructed image.
Evaluation of PSNR Lin Zhang, Dept. Computing, The Hong Kong Polytechnic University |
Introduction
PSNR (Peak Singal-to-Noise Ratio) index is a traditional IQA metric.
Source Code
We used the PSNR implementation provided by Dr. Zhou Wang, which can be downloaded here https://ece.uwaterloo.ca/~z70wang/research/iwssim/psnr_mse.m.
Usage Notes
1. This implementation can only deal with gray-scale images. So, you need to convert the RGB image to the grayscale version, which can be accomplished by rgb2gray in Matlab.
Evaluation Results
The results (in Matlab .mat format) are provided here. Each result file contains a n by 2 matrix, where n denotes the number of distorted images in the database. The first column is the PSNR values, and the second column is the mos/dmos values provided by the database. For example, you can use the following matlab code to calculate the SROCC and KROCC values for PSNR values obtained on the TID2008 database:
%%%%%%%%%%%%%%%
matData = load('PSNROnTID.mat');
PSNROnTID= matData.PSNROnTID;
PSNR_TID_SROCC = corr(PSNROnTID(:,1), PSNROnTID(:,2), 'type', 'spearman');
PSNR_TID_KROCC = corr(PSNROnTID(:,1), PSNROnTID(:,2), 'type', 'kendall');
%%%%%%%%%%%%%%%
The source codes to calculate the PLCC and RMSE are also provided for each database. This needs a nonlinear regression procedure which is dependant on the initialization of the parameters. We try to adjust the parameters to get a high PLCC value. For different databases, the parameter initialization may be different. The nonlinear fitting function is of the form as described in [1].
Evaluation results of PSNR on seven databases are given below. Besides, for each evaluation metric, we present its weighted-average value over all the testing datasets; and the weight for each database is set as the number of distorted images in that dataset.
Database | Results | Nonlinear fitting code | SROCC | KROCC | PLCC | RMSE |
TID2008 | PSNROnTID | NonlinearFittingTID | 0.5531 | 0.4027 | 0.5734 | 1.0994 |
CSIQ | PSNROnCSIQ | NonlinearFittingCSIQ | 0.8058 | 0.6084 | 0.8000 | 0.1575 |
LIVE | PSNROnLIVE | NonlinearFittingLIVE | 0.8756 | 0.6865 | 0.8723 | 13.3597 |
IVC | NonlinearFittingIVC | 0.6884 | 0.5218 | 0.7196 | 0.8460 | |
Toyama-MICT | 0.6132 | 0.4443 | 0.6429 | 0.9585 | ||
A57 | 0.6189 | 0.4309 | 0.7073 | 0.1737 | ||
WIQ | 0.6257 | 0.4626 | 0.7939 | 14.1381 | ||
Weighted-Average | 0.6874 | 0.5161 | 0.7020 |
Reference
[1] H.R. Sheikh, M.F. Sabir, and A.C. Bovik, 'A statistical evaluation of recent full reference image quality assessment algorithms', IEEE Trans. on Image Processing, vol. 15, no. 11, pp. 3440-3451, 2006.
Psnr Calculation In Matlab For Machine Learning
Created on: May. 08, 2011
Matlab For Mac Student
Last update: Aug. 04, 2011