Hjørne- og Blobdeteksjon
Hjørnedeteksjon
Hjørnedeteksjon brukes til å identifisere skarpe endringer i intensitet der to kanter møtes. Dette hjelper med funksjonsmatching, objektsporing og strukturidentifikasjon.
Populære metoder:
Harris hjørnedetektor (
cv2.cornerHarris
): oppdager hjørner basert på gradientendringer;
Shi-Tomasi hjørnedetektor (
cv2.goodFeaturesToTrack
): velger de sterkeste hjørnene i et bilde;
Blob-deteksjon
Blob-deteksjon finner områder med lignende intensitet i et bilde, nyttig for objektdeteksjon og sporing.
En av de populære metodene for blob-deteksjon er SimpleBlobDetector
cv2.SimpleBlobDetector
: oppdager nøkkelpunkter som representerer blobs basert på størrelse, form og intensitet.
Swipe to start coding
Du har fått bildene av fabrikk (factory
) og solsikker (sunflowers
):
- Konverter
factory
-bildet til gråtoner og lagre i variabelengray_factory
; - Konverter
sunflowers
-bildet til gråtoner og lagre i variabelengray_sunflowers
; - For Harris-detektoren er det nødvendig å konvertere bildematriksen til
float32
, gjør dette og lagre igray_float
; - Bruk Harris hjørnedeteksjon og lagre i
harris_corners
(anbefalte parametere:blockSize=2, ksize=3, k=0.04
); - Bruk
dilate()
for å forbedre synligheten avharris_corners
; - Bruk Shi-Tomasi hjørnedeteksjon på bildet og lagre i
shi_tomasi_corners
(anbefalte parametere:gray_factory, maxCorners=100, qualityLevel=0.01, minDistance=10
) - Opprett et
SimpleBlobDetector_Params
-objekt for å initialisere parameterne og lagre iparams
; - Opprett en blob-detektor med de angitte parameterne og lagre i
detector
; - Oppdag blob-nøkkelpunkter og lagre i
keypoints
.
Løsning
Takk for tilbakemeldingene dine!