Estratto del documento

Soluzioni dell’esercitazione 1

L. Verdoliva, M. Cagnazzo

30.03.07

Caricamento di immagini in formato grezzo

Ecco il codice che consente di caricare e visualizzare un’immagine in formato grezzo. Si noti che le prime righe della funzione costituiscono l’help in linea: in altre parole, digitando da linea di comando help vediraw, verranno visualizzate le prime righe di commento consecutive presenti nel file vediraw.m.

Convenzionalmente, la prima riga di help contiene il nome in maiuscolo della funzione e una descrizione sintetica. Questo perché il comando lookfor effettua la ricerca di una funzionalità desiderata leggendo solo la prima riga di help (cioè la prima riga di commento) di ogni funzione nel path. È allora consigliabile seguire sempre questa convenzione quando si scrivono le proprie funzioni.

Ancora, la seconda riga presenta un esempio di chiamata della funzione. Se sono possibili diverse sintassi (per esempio, se è possibile specificare un diverso numero di parametri d’ingresso o di uscita), la convenzione è di descrivere prima la sintassi più semplice e via via quelle più complesse.

function y = vediraw(nomefile,R,C,tipo);

%VEDIRAW carica visualizza un’immagine in formato grezzo

% Y = VEDIRAW(NOMEFILE,R,C,TIPO) carica l’immagine contenuta

% nel file "NOMEFILE"; R e C sono il numero di righe e di

% colonne; TIPO è il formato di dato, espresso secondo la

% convenzione di MATLAB: può essere ’uint8’, ’double’, ecc.

fid = fopen(nomefile,’r’);

if fid<0, %il file non esiste

fprintf(’Il file %s non esiste!\n’,nomefile);

else

y= fread(fid,[C R], tipo);

fclose(fid);

y=y’;

figure; imagesc(y); axis equal; colormap(gray(256));

end

Bitplane slicing

Il bitplane slicing si può ottenere utilizzando le funzioni bitget e bitset. Tuttavia, una soluzione più veloce ed elegante si ottiene utilizzando le operazioni di resto modulo 2 e di divisione intera (cioè floor e divisione).

(i−1)

Se consideriamo la rappresentazione in binario dei livelli di luminanza, la divisione intera per 2 equivale ad uno shift right di i-1 posizioni. Prendendo il resto modulo 2, se ne ricava il bit meno significativo, cioè 1

Anteprima
Vedrai una selezione di 1 pagina su 1
Elaborazione dei segnali multimediali - Esercizi risolti Pag. 1
1 su 1
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Ingegneria industriale e dell'informazione ING-INF/03 Telecomunicazioni

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher Fra.M di informazioni apprese con la frequenza delle lezioni di Elaborazione dei segnali multimediali e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli studi di Napoli Federico II o del prof Verdoliva Luisa.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community