clear all
close all
clc
Io=imread('picture.jpg');% 读入一幅图像
% 选择一个颜色矩阵,并且变成双浮点型的,这一步没有可能报错.
if(ndims(Io) == 3)
Io = rgb2gray(Io);
end;
Io=double(Io);
% % % %%% Add noise %%% % % %
std_n=20; % 高斯噪声比准差
var_n=std_n^2; % 高斯噪声比准差
NI = randn(size(Io))*std_n; % 白色高斯噪声
In = Io + NI; % 把噪声加到原图上面
N =100; %迭代图像
dt=0.2; %网比(一般对于n维时,dt<= (1/2)^n这样子差分方程迭代才稳定)
lambda=0.01; %给lambda赋初值
tic
[Max_J1 Max_J2 Min_J3 ALLPSNR ALLSNR ALLMAE J] =TV(In,Io,dt,N,lambda,var_n);%调用函数
toc
[MaxPSNR, Index1]=max(ALLPSNR)
[MaxSNR, Index2]=max(ALLSNR)
[MinMAE, Index3]=min(ALLMAE)