Hörn- och Blobdetektering
Hörndetektering
Hörndetektering används för att identifiera skarpa intensitetsförändringar där två kanter möts. Det är användbart för funktionsmatchning, objektspårning och strukturigenkänning.
Populära metoder:
Harris-hörndetektor (
cv2.cornerHarris
): detekterar hörn baserat på gradientförändringar;
Shi-Tomasi-hörndetektor (
cv2.goodFeaturesToTrack
): väljer de starkaste hörnen i en bild;
Blobdetektering
Blobdetektering hittar områden med liknande intensitet i en bild, användbart för objektdetektering och spårning.
En av de populära metoderna för blobdetektering är SimpleBlobDetector
cv2.SimpleBlobDetector
: detekterar nyckelpunkter som representerar blobbar baserat på storlek, form och intensitet.
Swipe to start coding
Du har fått bilder av en fabrik (factory
) och solrosor (sunflowers
):
- Konvertera bilden
factory
till gråskala och spara i variabelngray_factory
; - Konvertera bilden
sunflowers
till gråskala och spara i variabelngray_sunflowers
; - För Harris-detektorn är det nödvändigt att konvertera bildmatrisen till
float32
, gör detta och spara igray_float
; - Applicera Harris-hörndetektering och spara i
harris_corners
(rekommenderade parametrarblockSize=2, ksize=3, k=0.04
); - Använd
dilate()
för att förbättra synligheten avharris_corners
; - Applicera Shi-Tomasi-hörndetektering på bilden och spara i
shi_tomasi_corners
(rekommenderade parametrargray_factory, maxCorners=100, qualityLevel=0.01, minDistance=10
) - Skapa ett
SimpleBlobDetector_Params
-objekt för att initiera parametrarna och spara iparams
; - Skapa en blobdetektor med angivna parametrar och spara i
detector
; - Detektera blob-nyckelpunkter och spara i
keypoints
.
Lösning
Tack för dina kommentarer!