Funzioni > Elaborazione immagini > Ricerca limiti > Esempio: rilevamento dei bordi tramite convoluzione
Esempio: rilevamento dei bordi tramite convoluzione
Utilizzare le funzioni freichen, sobel, prewitt e roberts per rilevare i bordi in un'immagine eseguendo la convoluzione di diversi kernel in sequenza sulla matrice. Il rilevamento dei bordi consente di migliorare la leggibilità dell'immagine per determinati tipi di caratteristiche che dipendono dai bordi.
Per informazioni sull'utilizzo di questo esempio, fare riferimento a Esempi di elaborazione delle immagini.
freichen
Questa funzione convolve una matrice di immagini con i due kernel indicati di seguito.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
1. Leggere un'immagine.
Fare clic per copiare questa espressione
2. Applicare la funzione freichen all'immagine.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
3. Confrontare le due immagini.
(brain.bmp)
(brain_fre.bmp)
Il rilevamento dei bordi freichen è utile per le immagini in cui sono presenti numerosi livelli di intensità che definiscono i diversi bordi nell'immagine. Tali kernel mostrano una sensibilità maggiore ai valori di pixel relativi, indipendentemente dalla luminosità.
sobel
Questa funzione convolve una matrice di immagini con i due kernel indicati di seguito.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Applicare la funzione sobel all'immagine di input.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
(brain_sob.bmp)
Il kernel sobel consente un rilevamento dei bordi uniforme, anche se conferisce maggiore peso ai pixel ortogonali rispetto ai pixel diagonali.
prewitt
Questa funzione convolve una matrice di immagini con i due kernel indicati di seguito.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Applicare la funzione prewitt all'immagine di input.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
(brain_pre.bmp)
Il kernel prewitt considera le differenziali dei pixel ortogonali e diagonali in modo equivalente.
roberts
Questa funzione convolve una matrice di immagini con i due kernel indicati di seguito.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Applicare la funzione roberts all'immagine di input.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
(brain_rob.bmp)
Il kernel roberts considera solo le differenziali dei pixel diagonali e benché ciò consenta di enfatizzare gli angoli più chiaramente, può combinare in modo confuso piccole caratteristiche orizzontali o verticali.
È stato utile?