psnr计算matlab代码
时间: 2023-11-03 10:06:03 浏览: 50
以下是用MATLAB计算PSNR的示例代码:
```matlab
% 读取原始图像和压缩后的图像
originalImage = imread('original.png');
compressedImage = imread('compressed.png');
% 计算MSE
mse = mean(mean((double(originalImage) - double(compressedImage)).^2));
% 计算PSNR
if mse > 0
psnr = 10*log10(255^2/mse);
else
psnr = 99;
end
% 打印结果
fprintf('PSNR值为 %.2f dB\n', psnr);
```
该代码假定原始图像和压缩后的图像都保存在本地磁盘上,并且使用相同的文件名“original.png”和“compressed.png”。在实际应用中,您需要替换这些文件名以适应您的数据。
相关问题
小波变换中PSNR计算matlab代码
在小波变换中,PSNR(Peak Signal-to-Noise Ratio)是一种常用的评估图像质量的指标。下面是使用MATLAB计算PSNR的示例:
```matlab
% 假设原始图像为A,重建图像为B
A = imread('原始图像路径'); % 读取原始图像
B = imread('重建图像路径'); % 读取重建图像
% 计算MSE(Mean Squared Error)
mse = mean((A(:) - B(:)).^2);
% 计算最大像素值
max_value = double(max(A(:)));
% 计算PSNR
psnr = 10 * log10((max_value^2) / mse);
% 显示PSNR结果
fprintf('PSNR值为:%f dB\n', psnr);
```
请将代码中的"原始图像路径"和"重建图像路径"替换为你实际的图像路径。运行代码后,将会输出PSNR的值,单位为dB。
psnr的matlab代码
下面是计算图像 PSNR 值的 Matlab 代码:
```matlab
function psnr = calculate_psnr(img1, img2)
% 将图像转成double类型
img1 = double(img1);
img2 = double(img2);
% 计算均方误差
mse = mean(mean((img1 - img2).^2));
% 计算最大像素值
max_pixel = max(max(img1));
% 计算 PSNR 值
psnr = 10*log10(max_pixel^2/mse);
end
```
其中,`img1` 和 `img2` 分别为两幅图像,可以使用 `imread` 函数读取图像文件,例如:
```matlab
img1 = imread('lena.png');
img2 = imread('lena_noise.png');
psnr = calculate_psnr(img1, img2);
disp(['PSNR value: ', num2str(psnr)]);
```
注意,此代码只适用于灰度图像,对于彩色图像需要进行通道分离和计算 PSNR 值后再求平均。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)