Rilevamento di Angoli e Blob
Rilevamento degli angoli
Il rilevamento degli angoli viene utilizzato per identificare cambiamenti bruschi di intensità dove si incontrano due bordi. È utile per il matching delle caratteristiche, il tracciamento degli oggetti e il riconoscimento delle strutture.
Metodi popolari:
Rilevatore di angoli di Harris (
cv2.cornerHarris
): rileva gli angoli in base alle variazioni di gradiente;
Rilevatore di angoli di Shi-Tomasi (
cv2.goodFeaturesToTrack
): seleziona gli angoli più forti in un'immagine;
Rilevamento dei blob
Il rilevamento dei blob individua regioni di intensità simile in un'immagine, utile per il rilevamento e il tracciamento degli oggetti.
Uno dei metodi più diffusi per il rilevamento dei blob è SimpleBlobDetector
cv2.SimpleBlobDetector
: rileva keypoint che rappresentano i blob in base a dimensione, forma e intensità.
Swipe to start coding
Sono fornite le immagini di una fabbrica (factory
) e di girasoli (sunflowers
):
- Convertire l'immagine
factory
in scala di grigi e memorizzarla nella variabilegray_factory
; - Convertire l'immagine
sunflowers
in scala di grigi e memorizzarla nella variabilegray_sunflowers
; - È necessario, per il rilevatore di Harris, convertire la matrice dell'immagine in
float32
, eseguire la conversione e memorizzarla ingray_float
; - Applicare il rilevamento degli angoli di Harris e memorizzare il risultato in
harris_corners
(parametri consigliati:blockSize=2, ksize=3, k=0.04
); - Utilizzare
dilate()
per migliorare la visibilità diharris_corners
; - Applicare il rilevamento degli angoli di Shi-Tomasi all'immagine e memorizzare il risultato in
shi_tomasi_corners
(parametri consigliati:gray_factory, maxCorners=100, qualityLevel=0.01, minDistance=10
) - Creare un oggetto
SimpleBlobDetector_Params
per inizializzare i parametri e memorizzarlo inparams
; - Creare un rilevatore di blob con i parametri specificati e memorizzarlo in
detector
; - Rilevare i keypoint dei blob e memorizzarli in
keypoints
.
Soluzione
Grazie per i tuoi commenti!