histogram and region based processing c. andrés méndez 20/03/2013
TRANSCRIPT
Histogram and region based processing
C. Andrés Méndez20/03/2013
Where to find the presentations?
http://profs.sci.univr.it/~mendezguerrero
Intensity Transformation Functions
• Esercizio 1• Caricare l’immagini pout.tif e tire.tif
– Visualizzare l’immagine e il suo istogramma
• Regolare l’intensità– funzione imadjust (help imadjust)– imadjust(f,[low_in high_in], [low_out high_out], gamma)
negative
b=imadjust(pout,[0 1],[1 0]);figure,imshow(b)
Istogramma
• L’istogramma è la rappresentazione grafica della quantità di pixel presenti nell’immagine per ciascun livello di grigio.– L’asse orizzontale X rappresenta i valori dei
grigi. L’asse verticale Y rappresenta il numero di pixel per ogni livello.
0
200
400
600
800
1000
1200
1400
1600
0 50 100 150 200 250
Equalizzazione dell’istogramma
• E’ una tecnica che mira a modificare la forma dell’istogramma redistribuendo i valori dei livelli di grigio in modo che l’istogramma sia quanto più uniforme possibile.
• L’obiettivo è quello di migliorare l’immagine a debole contrasto.
• Tuttavia, un’equalizzazione non porta necessariamente ad un miglioramento dell’immagine (Es. immagine con istogramma bimodale).
Equalizzazione dell’istogramma• L’operazione di equalizzazione ha lo scopo di
ottenere per l’istogramma un andamento praticamente costante.– Per fare ciò si sostituisce al valore x di livello di grigio
un valore y dato dalla seguente trasformazione:
– dove T è il numero complessivo dei pixel dell’immagine, L è il valore massimo dei livelli di grigi Ni è il numero di pixel che hanno un livello di grigio uguale a i, ovvero H(i)
Equalizzazione dell’istogramma
0
1000
2000
3000
0 100 200
0
1000
2000
3000
0 100 200
Equalizzazione dell’istogramma
• Esercizio 2• Caricare l’immagini pout.tif e tire.tif
– Visualizzare l’immagine e il suo istogramma (imhist)
• Equalizzare l’istogramma– Visualizzare l’immagine equalizzata e il
suo istogramma (histeq)
Equalizzazione dell’istogramma
• A volte, l’equalizzazione dell’istogramma non produce i migliori risultati o il contrasto che aspettiamo.– Esempio, presso da Digital Image Processing, Using
MATLAB, by Rafael C. Gonzalez,
adapthisteqhisteq
original
0
1
2
3
4
5
6
x 104
0 50 100 150 200 250
equalized
0
1
2
3
4
5
6
x 104
0 50 100 150 200 250
adaptive
0
1
2
3
4
5
6x 10
4
0 50 100 150 200 250
Equalizzazione dell’istogramma
• Esercizio 3• >>help adapthisteq (Contrast-limited adaptive
histogram equalization )
• Load deathstar.jpg• Show original, equalized and adaptive-equalized
images with their respective histograms
original
0
1
2
3
4
5
6
x 104
0 50 100 150 200 250
equalized
0
1
2
3
4
5
6
x 104
0 50 100 150 200 250
adaptive
0
1
2
3
4
5
6x 10
4
0 50 100 150 200 250
Equalizzazione dell’istogramma
• Esercizio 3 (continuation)
• >>doc adapthisteq (open documentation)• Load deathstar.jpg• Modify parameters>
– ‘NumTiles’ ( for example 'NumTiles', [16 16])– ‘ClipLimit’
• Show image and histograms,• Compare the results (also with POUT.tif and TIRE.tif)
Funzioni per la Trasformazione di Intensità
• Le elaborazioni nel dominio spaziale possono essere espresse come:
g(x,y)= T[f(x,y)]
• essendo f l’immagine di ingresso alla elaborazione, g quella di uscita e T un operatore su f, definito in un intorno di (x,y). La dimensione dell’intorno di (x,y) definisce il carattere della elaborazione: – puntuale(l’intorno coincide con il pixel stesso); – locale(per esempio una piccola regione quadrata centrata
sul pixel); – globale(l’intorno coincide con l’intera f).
Bimodal histogram• Esercizio 4• Create a 400x400 image with
normally distributed pixels. – Normal dist., mean=100, std=25– Matlab: (randn)
• In the previous image insert a 250x250 square with pixels following the distribution: – normal dist., mean =170, std=20
• Visualize the image and its histogram– imshow – hist (better in this case than imhist)
0
200
400
600
800
1000
1200
1400
1600
1800
2000
0 50 100 150 200 250
Bimodal Histogram, optimal threshold
• Esercizio 5• How to automatically select the best
threshold value for segmentation?
• Implement the following automatic procedure 1. Choose initial threshold (e.g. randomly)2. Segment the image into object and
background3. Compute mean intensity of object
(mean1 ) and background (mean2 )4. Set new threshold to (mean1+mean2 )/25. Repeat from Step 2 until convergence
• Apply the procedure to the previous image
• Generate a new combination of two distributions and apply the method
0
200
400
600
800
1000
1200
1400
1600
1800
2000
0 50 100 150 200 250