Soluzioni degli esercizi ESM - Quantizzazione
08.05.071 Quantizzazione uniforme
Di seguito trovate il codice per realizzare la quantizzazione uniforme:
function XQ=qu(X,N);
% QU Quantizzatore uniforme
% XQ=qu(X,N) quantizza i dati X su N livelli di risoluzione
xmin=min(X(:)); xmax=max(X(:))+1; % Range
t=xmin:((xmax-xmin)/N):xmax; % Soglie di decisione
y=(t(1:N)+t(2:N+1))/2; % Livelli di quantizzazione
I=zeros(size(X)); % Selezione intervalli di quantizzazione
for i=1:N,I=I+((t(i)<=X)&(X<t(i+1)))*i;end;
XQ=y(I); % Selezione livelli di quantizzazione
Funzioni di distorsione
Per calcolare la distorsione introdotta dalla quantizzazione si possono usare le seguenti funzioni che valutano MSE, SNR e PSNR, rispettivamente:
function d = mse(x,y);
% Calcola MSE tra le immagini X e Y
% che devono avere la stessa dimensione.
if isequal(size(x), size(y)),
err = x(:)-y(:);
d = mean(err.^2);
else
error(’DIST: gli ingressi devono avere le stesse dimensioni’);
end
-
Elaborazione segnali
-
Elaborazione dei segnali
-
Elaborazione dei segnali multimediali - Esercizi
-
Elaborazione dei segnali multimediali - Esercizi risolti