Introduzione a Matlab

Documenti analoghi
Introduzione a Matlab

Introduzione a Matlab

Introduzione a Matlab

Introduzione a Matlab

Operatori nel dominio dello spazio

Introduzione a Matlab

Image Processing Toolbox. Imaging Digitale a.a. 2015/2016

Laboratorio di Elaborazione di Dati, Segnali e Immagini Biomediche (Parte 6)

Equalizzazione di istogrammi

Image Processing Toolbox. Imaging Digitale a.a. 2014/2015 Silvia Corchs

L istogramma. Interazione & Multimedia 2

HISTOGRAM MATCHING Di Raimondo Graziano - Nicolosi Salvatore Multimedia A.A

Elaborazione di immagini. Trasformare e migliorare. Scopi dell elaborazione. Tipi di elaborazione

Elaborazione di immagini digitali: trasformare e migliorare

Istogramma dei livelli di grigio

Elaborazioni nel dominio spaziale (1)

Trasformare e migliorare

Tecniche di restauro delle immagini digitali

FONDAMENTI DI SEGNALI E TRASMISSIONE 5 Laboratorio

AL DI LA DELLE IMMAGINI

Elaborazione di immagini. I filtri Digital Image Processing

Operazioni puntuali. Tipi di elaborazioni Operatori puntuali Look Up Table Istogramma

Elaborazioni nel dominio spaziale (1)

Laboratorio di Calcolo B 68

2. Introduzione alla probabilità

Elementi di grafica raster

Filtraggio spaziale Soluzioni

Le immagini digitali. Introduzione

Fondamenti di Segnali e Trasmissione Quarto laboratorio

Algoritmi per il riconoscimento dell iride

COLORI. Nozioni di base, Sintesi additiva, Modo RGB, Canali e Istogramma. EDI II Colori, RGB, Canali, Istogramma 1

Ciclo di seminari: Metodi Computazionali per la Finanza

Statistica. Lezione : 17. Variabili casuali

UN OCCHIO MATEMATICO SUL QUOTIDIANO

Immagini binarie. Binarizzazione di immagini a livelli di grigio

Classificazione di immagini aeree. Annalisa Franco

Elaborazione dei dati. pkt /9

Corso di Laurea a Distanza in Ingegneria Elettrica Corso di Comunicazioni Elettriche Teoria della probabilità A.A

Teoria della probabilità Variabili casuali

Fondamenti di Informatica

Introduzione a Matlab

Generazione di Numeri Casuali- Parte 2

INFORMAZIONI. p. 1/23

Elaborazione dei dati

LA DISTRIBUZIONE NORMALE o DI GAUSS

Trasformazioni di Intensità e Filtraggio Spaziale

Laboratorio di Calcolo B 67

Scuola di Calcolo Scientifico con MATLAB (SCSM) 2017

Laboratorio di Calcolo I. Applicazioni : Metodo Monte Carlo

Corso di Fondamenti di Segnali e Trasmissione - Recupero del 10 Settembre 2004

Corso di Visione Artificiale. Immagini digitali. Samuel Rota Bulò

Operatori locali su immagini digitali

Esercizi di Calcolo delle Probabilità

Digital Imaging Esercitazione TTC 12/11/2015

Restauro di immagini. Prof. Filippo Stanco. Multimedia

Elementi di MATLAB. Definizione di matrice

Page 1. Elettronica delle telecomunicazioni 2003 DDC 1. Politecnico di Torino Facoltà dell Informazione. Contenuti del Gruppo C

Stima del valore di una costante in presenza di rumore esponenzialmente correlato. Carlo Fisicaro

Corso di Laurea a Distanza in Ingegneria Elettrica Corso di Comunicazioni Elettriche Teoria della probabilità A.A

L2 Elaborazione di immagini in C/C++

Generazione di distribuzione di probabilità arbitrarie

Richiami sul calcolo delle probabilità

Laboratorio di Segnali e Sistemi A. A. 2009/ Lezione 5: Immagini

LEZIONI IN LABORATORIO Corso di MARKETING L. Baldi Università degli Studi di Milano. Strumenti statistici in Excell

Soluzioni prova scritta di Complementi di Probabilità e Statistica (29/06)

Introduzione alla probabilità. Renato Mainetti

MICROSOFT EXCEL FORMULE E FUNZIONI

SOMMARIO DELLE MISURE DIRETTE

Corso di laurea magistrale in Informatica Multimedia - Prof. F.Stanco. Segmentazione. A cura di Andrea Tambone

Corso di Multimedia A.A 2013/2014

ELABORAZIONE DELLE IMMAGINI:

Istogramma dei livelli di grigio

Corso di Visione Artificiale. Matlab per Visione. Samuel Rota Bulò

ESERCITAZIONE N. 5 corso di statistica

Elaborazione di immagini a colori Soluzioni

ELABORAZIONE E CODIFICA DI IMMAGINI BITONALI

Simulazione dei dati

Statistica Inferenziale

Filtri e convoluzioni

Probabilità classica. Distribuzioni e leggi di probabilità. Probabilità frequentista. Probabilità soggettiva

Filtri e convoluzioni

Corso INFORMATICA ED ELEMENTI DI INFORMATICA MEDICA

Frequenza relativa e probabilità

Università degli studi di Catania Corso di Laurea in Informatica COMPUTER FORENSICS 2010/2011. Prof. S.Battiato. Relazione del progetto:

Lezione 1: Organizzare i dati in grafici e istogrammi

Il contrasto. La percezione del contrasto. Contrasto e filling-in. Il contrasto simultaneo. Le distribuzioni di luminanza (ii)

Esercitazione 4: Filters

Operatori locali su immagini digitali

Probabilità e Statistica

Analisi dei Processi Chimici e Biotecnologici Matlab

MATLAB - Programmazione - 2. Antonino Polimeno

Algoritmi in C++ (prima parte)

Introduzione alla progettazione grafica

Laboratorio di Chimica Fisica. Analisi Statistica

FONDAMENTI DI SEGNALI E TRASMISSIONE 4 Laboratorio

Le variabili casuali o aleatorie

Computazione per l interazione naturale: fondamenti probabilistici (2)

Esercizi. 2. [Conteggio diretto] Due dadi vengono lanciati in successione. a) Qual è la probabilità che la somma dei due risultati faccia 7?

Transcript:

Introduzione a Matlab Contrasto, Soglia, Rumore Fondamenti di Visione Artificiale a.a. 2015/2016 07/04/16 Introduzione a Matlab 1

Istogramma di un immagine Conta il numero di occorrenze di ciascuna tonalità, all interno dell immagine. Bianco 255 Nero 0 Count: 0 1 255 h = imhist(i); 07/04/16 Introduzione a Matlab 2

Contrast Stretching (1) 07/04/16 Introduzione a Matlab 3

Contrast Stretching (2) Max (A) Min (A) h = imhist(uint8(a)); A = double(imread( Trees.tif ) ) + 20; minimo = min(min(a)) massimo = max(max(a)) Nota: double(a) converte in double i valori contenuti in A. uint8(a) converte in unsigned char (8 bit) i valori contenuti in A. 07/04/16 Introduzione a Matlab 4

Contrast Stretching (2) Sottraiamo ad A il suo valore minimo: A = A minimo; Ora il minimo di A è zero. 07/04/16 Introduzione a Matlab 5

Contrast Stretching (3) Dividiamo A per la dimensione dell intervallo [minimo,massimo] : A = 255*(A-minimo)/(massimo-minimo) A = A / (massimo minimo); Ora il massimo di A è uno. A(i,j) [0,1] i,j Moltiplichiamo A per 255 e otteniamo valori in [0, 255] 07/04/16 Introduzione a Matlab 6

Contrast Stretching (4) E possibile aggiustare il contrasto di una immagine attraverso le funzioni fornite per il corso (che vi passerò durante la/le lezione/i): B = operazione_contrasto(a); imshow(uint8(b)); imhist(uint8(b)); 07/04/16 Introduzione a Matlab 7

La funzione imcontrast La funzione imcontrast apre una finestra in cui è possibile gestire interattivamente i parametri per il contrast stretching. imcontrast imcontrast(h) hfigure = imcontrast(...) 07/04/16 Introduzione a Matlab 8

La funzione imadjust La funzione imadjust effettua il contrast stretching sull immagine passata come input. I = imread('pout.tif'); J = imadjust(i); imshow(i), figure, imshow(j) 07/04/16 Introduzione a Matlab 9

La funzione imadjust Con la funzione imadjust è possibile specificare quale intervallo dell istogramma dell immagine in input [low_in, high_in] deve essere distribuito sull intervallo dell immagine di output [low_out, high_out]. Gli estremi iniziali vengono determinati dalla funzione: LOW_HIGH = stretchlim(i) RGB1 = imread('football.jpg'); RGB2 = imadjust(rgb1,[.2.3 0;.6.7 1],[]); imshow(rgb1), figure, imshow(rgb2) 07/04/16 Introduzione a Matlab 10

La funzione histeq La funzione histeq modifica la distribuzione dei toni di grigio di un immagine I, in modo che il suo istogramma h I diventi simile ad uno dato h O. I = imread('pout.tif'); J = imread('tire.tif'); h = imhist(i); K=histeq(J, h); figure, imshow(i); figure, imshow(j); figure, imshow(k); 07/04/16 Introduzione a Matlab 11

La funzione adapthisteq La funzione adapthisteq partiziona l immagine in sottoregioni disgiunte ed equalizza l istogramma per ciascuna di esse. Successivamente compensa le discrepanze lungo i bordi delle sottoregioni [Contrastlimited Adaptive Histogram Equalization (CLAHE)]. I = imread('tire.tif'); A=adapthisteq(I,'clipLimit',0.02,'Distribution','rayleigh'); figure, imshow(i); figure, imshow(a); 07/04/16 Introduzione a Matlab 12

Aritmetica delle immagini: Somma Un esempio è il seguente: Date due immagini A e B, C = operazione_somma(a,b) crea una nuova immagine data dalla somma delle immagini in input. 07/04/16 Introduzione a Matlab 13

Aritmetica delle immagini: Negativo In alcuni casi è utile rendere scuri i toni chiari e viceversa. Questa operazione prende il nome di negativo: B = operazione_negativo(a) crea una nuova immagine data un immagine in input 07/04/16 Introduzione a Matlab 14

Estrazione di Caratteristiche: Soglia Semplice A = imread( Monete.tif ); h = imhist(a); Le monete sono scure (primo picco) e lo sfondo è chiaro (secondo picco) Come separare le monete dallo sfondo? 07/04/16 Introduzione a Matlab 15

Estrazione di Caratteristiche: Soglia Semplice B = operazione_soglia(a, 155); C = operazione_negativo(255*b); D = operazione_prodotto(a,c); 07/04/16 Introduzione a Matlab 16

Estrazione di Caratteristiche: Soglia Semplice B = operazione_soglia(a); C = operazione_negativo(b); D = operazione_prodotto(a,c); 07/04/16 Introduzione a Matlab 17

Estrazione di Caratteristiche: Soglia Semplice B = operazione_soglia_intervallo(a, 60, 200); D = operazione_prodotto(a,c); 07/04/16 Introduzione a Matlab 18

Applicazione del rumore Peggiorare la qualità di un immagine intenzionalmente intuitivamente non ha senso. Conoscere la tipologia e la quantità di rumore presente in un immagine ci permette di mettere a confronto i diversi filtri. Filtri diversi hanno prestazioni differenti a seconda del tipo di rumore. 07/04/16 Introduzione a Matlab 19

Rumore Casuale La distribuzione dei pixel rumore non segue alcuna legge. I pixel rumore sono distribuiti sull immagine in maniera uniforme e casuale: ogni pixel dell immagine ha la stessa probabilità di essere rumore o informazione. L unico parametro che abbiamo a disposizione è la densità del rumore. Una densità alta implica un rumore più fitto, una densità bassa è indice di un rumore rado. 07/04/16 Introduzione a Matlab 20

Rumore Casuale %carichiamo e visualizziamo l immagine sorgente I = imread('eight.tif'); subplot(2,1,1); hold on; imshow(i); rand(n) genera una matrice di dimensioni n riempita con valori x [0,1]. I valori x [0,1] sono equiprobabili ed equidistribuiti. % generiamo la matrice contenente il rumore con densità delta Casuale = rand( size(i) ) ; % annulliamo tutti i valori con valre minore di delta Casuale = Casuale > delta; 07/04/16 Introduzione a Matlab 21

Rumore Casuale % riportiamo I valori nell intervallo [0,255] Casuale = 255*Casuale; % sommiamo il rumore generato all immagine sorgente I = operazione_somma(i, Casuale); % visualizziamo l immagine con rumore Subplot(2,1,2); hold on; Imshow(uint8(I)); 07/04/16 Introduzione a Matlab 22

Rumore Casuale 07/04/16 Introduzione a Matlab 23

Rumore Casuale % questo stesso risultato si ottiene con la funzione per il rumore casuale I = imread('eight.tif'); subplot(2,1,1); hold on; imshow(i); I = rumore_casuale(i, delta); subplot(2,1,2); hold on; imshow(i); 07/04/16 Introduzione a Matlab 24

Rumore Gaussiano % il rumore gaussiano può essere aggiunto mediante l omonima funzione I = imread('eight.tif'); subplot(2,1,1); hold on; imshow(i); Funzione Gaussiana: I = rumore_gaussiano(i, media, varianza); subplot(2,1,2); hold on; imshow(i); 07/04/16 Introduzione a Matlab 25

Rumore Gaussiano (1) 07/04/16 Introduzione a Matlab 26

Rumore Sale e Pepe % il rumore gaussiano può essere aggiunto mediante l omonima funzione I = imread('eight.tif'); subplot(2,1,1); hold on; imshow(i); I = rumore_salepepe(i, intensita); subplot(2,1,2); hold on; imshow(i); 07/04/16 Introduzione a Matlab 27

Rumore Sale e Pepe 07/04/16 Introduzione a Matlab 28