function quantisierung2D
%Hauptprogramm zur skalaren Quantisierung
clf reset
clc
clear all;
close all;
echo off


%input image
input_s=0;

if input_s==0              %Shannon-Bild
    a=imread ('Shannon_2.jpg');
	b=a(1:338,1:267);
	a=double(b);
	f=a/256;
[N1,N2] = size(f)
elseif input_s==1          %Duisburger UniversitŠt
    a= imread ('duisburg.jpg');
	b=a(1:400,1:300);
    a=double(b);
    f=a/256;
end

figure,imagesc(f); axis image
set(gca,'FontSize',15);
colormap(gray);

% skalare gleichmŠ§ige Quantisierung
m1=floor(min(min(f)))
m2=ceil(max(max(f)))
[N1,N2]=size(f)
A=2 % Anzahl der Quantisierungsintervalle
h=(m2-m1)/A
for i=1:N1
   for j=1:N2
      g(i,j)=(floor((f(i,j)-m1)/h)+0.5)*h+m1;
   end;	  
end;
 
figure,imagesc(g); axis image
set(gca,'FontSize',15);
title(sprintf(' % GGraustufen',A), 'FontSize',15);
colormap(gray);

