380 likes | 518 Views
Edge detection and sharpening. Analisi di Immagini e Dati Biologici. L7. 38. Bordi. In un'immagine grayscale i bordi di un oggetto sono determinati da una transizione di luminosità I cambiamenti di intensità avvengono lungo la direzione localmente ortogonale localmente al bordo
E N D
Edge detection and sharpening Analisi di Immagini e Dati Biologici L7 38
Bordi • In un'immagine grayscale i bordi di un oggetto sono determinati da una transizione di luminosità • I cambiamenti di intensità avvengono lungo la direzione localmente ortogonale localmente al bordo • Più rapido è il cambiamento più grande è la sua evidenza (forza)
Bordi e Derivate • Il concetto matematico dietro alla variazione locale di una grandezza è quello di derivata • La distribuzione dell'intensità di un immagine è discretizzata dalla matrice di pixel • Approssimiamo la derivata con una differenza centrata nel punto
Gradiente di luminosità • Gradiente • Vettore di variazione dell'intensità lungo una direzione qualsiasi • Le 2 componenti del vettore sono le proiezioni lungo gli assi del vettore di massima variazione di intensità luminosa
Gradiente di Luminosità • Rappresenta un vettore che indica • la direzione di massimo cambimento di intensità luminosa • Rapidità di variazione unitaria
Gradiente di luminosità • La forza di un bordo è data dalla magnitudine del vettore gradiente
Gradiente di luminosità • L'orientamento è l'angolo (misurato rispetto all'asse orizzontale) della direzione di massima intensità
Matrici di Gradiente • Matrici di Prewitt • Stimano la derivata lungo un asse eseguendo allo stesso tempo una media sull'asse ortogonale per ridurre l'influenza del rumore • La funzione fspecial di Octave può generare la matrice di Prewitt orizzontale
Matrici di Gradiente • Matrici di Sobel • Funzionano come quelle di Prewitt, ma usano una media pesata sulla dimensione ortogonale • La funzione fspecial di Octave può generare la matrice di Sobel orizzontale
Funzione edge di Octave • La funzione edge ritorna un'immagine binaria dei bordi individuati con vari metodi • Ammette parametri di controllo • Nel caso di Sobel e Prewitt il parametro opzionale indica la soglia da applicare al modulo della derivata octave:2> borders=edge(disco,"prewitt"); octave:3> imshow(borders) octave:4> [borders,threshold]=edge(disco,”prewitt”); octave:5> borders=edge(disco,”prewitt”,1.1*threshold); octave:6> imshow(borders)
Matrici di Roberts • Un caso semplice sono le matrici di Roberts • massimizzano le variazioni di luminosità che avvengono lungo le direzioni diagonali
Compass Operators • Matrici che massimizzano il modulo del gradiente all'interno di un quadrante • Le 8 matrici del metodo sono state ideate in modo generare un vettore gradiente con modulo che diventa massimo quando la variazione di intensità in un punto avviene in uno di otto quadranti in cui l'angolo giro è suddiviso • Di 8 matrici devono essere calcolati solo 4 gradienti (essendo il modulo degli altri quadranti uguale, ma cambiando il verso del vettore gradiente)
Laplacian of Gaussian (GoL) • Modello bordo con andamento 'smooth' può essere assimilato ad una funzione sigmoidale • Si assume che il bordo sia dove la funzione pendenza cambia di concavità. • Si cerca quindi i punti dove la derivata seconda cambia di segno (quindi dove in qualche punto attraversa lo zero)
Laplacian of Gaussian (GoL) • Immagine di cellule osservate con microscopia ottica
Laplacian of Gaussian (GoL) • LoG 5x5,9x9 • Dispersione 1.5
Laplacian of Gaussian (GoL) • Implementato nella funzione edge • Ammette 2 parametri di controllo: soglia e dispersione della gaussiana
Metodo di Canny • Metodo analitico basato sull'ipotesi di modello gaussiano del rumore • Minimizza l'errore di localizzazione del bordo • Minimizza i falsi positivi • Minima ridondanza della localizzazione • Implementato da edge
Metodo di Canny • Octave offre un'implementazione del Metodo di Canny
Edge Sharpening • Il riconoscimento dei contorni permette di costruire immagini binarie di regioni di un immagine • L'organizzazione dei contorni favorisce la percezione delle strutture • La forza di un bordo è il fattore determinante per suo riconoscimento • L'edge sharpening mira al miglioramento della forza dei bordi e dei contorni
Edge Sharpening • Strategia: aumentare le differenze di intensità dove ci sono bordi • All'immagine da migliorare viene sottratta una quota (controllata da un parametro)
Edge Sharpening • Operatore di Laplace
Edge Sharpening • Operatore di Laplace in forma discreta
Operatore di Laplace • Applicazione dell'operatore di Laplace per esaltazione dei bordi ('*' è l'operatore di convoluzione implementato dalla funzione imfilterdi Octave
Unsharp Masking • L'unsharp masking viene costruito in 2 fasi • Si crea una immagine smoothed che viene sottratta all'immagine originale. Questo costituisci la 'maschera' (mask) • La maschera viene di nuovo aggiunta all'originale usando un parametro di controllo