function testdenoising
%main program to test the schemes 
clf reset
clc
clear all;
close all;
echo off

%input signal
input_s=1;
if input_s==1              %Shannon-Bild
    a=imread ('Shannon_2.jpg');
	b=a(1:256,1:256);
	f=double(b);
	%f=a/256;
elseif input_s==2          %Paprika-Bild 
    a= imread ('pepper.jpg');
	b=a(1:254,1:254);
	f=double(b);
    %f=a/256;
end

% Ausgabe des Originalbildes
figure,imagesc(f); axis image
set(gca,'FontSize',20);
colormap(gray);
ra=f;

% Erzeuge das gestšrte Bild.
rho =1.5;% Signal to noise ratio
init = 2055615866; 
randn('seed', init); 
sig = std(ra(:));
sigma = sig / rho
f = ra + sigma * randn(size(ra));

% Ausgabe des gestšrten Bildes
figure,imagesc(f);  axis image
colormap(gray);
set(gca,'FontSize',20);title(sprintf('SNR = %.2f dB',SNR1(ra,f)),'FontSize',24);

tic;               %computational time

%===Verschiedene Entstšrungsverfahren===% 

t=0.25; iteration=10; f2=linearDiffusion(f,t,iteration);
%t=0.05; f2=PeronaMalikDiffusion(f,t,20);
toc;

% Ausgabe des Bildes nach Anwendung der Entstšrung
figure,imagesc(f2);axis image
set(gca,'FontSize',20);title(sprintf('SNR = %.2f dB',SNR1(ra,f2)),'FontSize',24);
colormap(gray); 
SNR1(ra,f2)
figure,imagesc(f2-f); axis image
colormap(gray);
