29
Image segmentation Mihkel Heidelberg Karl Tarbe

Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Image segmentation

Mihkel HeidelbergKarl Tarbe

Page 2: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Image segmentation

Page 3: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Image segmentation

ThresholdingWatershed Region splitting and mergingMotion segmentationMuud meetodid

Page 4: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Thresholding

LihtneIntuitiivneÜks kesksemaid tööriistu

Üldistatuna võib vaadelda nagu kontrolli funktsiooni: vastu, kus thresholdiga segmenteeritud pildi saame

Page 5: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Thresholding

Vastavalt sellest mis argumente me tegelikult kasutame saame jagada erinevateks meetoditeks

ainult f(x,y) - globalf(x,y) ja p(x,y) - localkasutades ka ka x ja y - dynamic, adaptive.

Page 6: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Basic Binary Thresholding

Page 7: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Optimal Global and Adaptive Thresholding

Naiivne algoritm:

Vea minimeerimine eeldades Gaussi jaotust:

Kui standardhälbed on võrdsed siis lihtsutub:

Servade kasutamine parema histogrammi saamiseks.

Page 8: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Basic Adaptive Thresholding

Pikslit võrreldakse tema ümbruse keskmistatud väärtusega. Aitab näiteks siis kui pildi valgustus ja toon sujuvalt muutuvad, aga meid huvitavad objektid ja taust on lokaalselt alati selgesti eristatavad.

Page 9: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

More Adaptive Thresholding

Saab ka teha palju huvitavamaid asju, kui p(x,y) panna kirjeldama muid ümbruskonna omadusi.

Kombinatsioon eelnevast töötlusest ja tavalisest Adaptive thresholdist.

Page 10: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Multispectral thresholding

Kombineeritakse mitme kanali info.Vaadatame värviruumi mitmedimensionaalselt ja lõikame sealt vajalikud osad välja. Malli demo

Page 11: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Region growing

Võtame mingid alguspunktid.Defineerime mingi tingimuse, millele vastates on regioon sama.

Siis hakkame vaikselt nendest alguspunktidest regioone kasvatama. Niikaua kasvatame, kuni regioon vastab ikka veel sellele tingimusele, mille me alguses defineerisime.

Page 12: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Region splitting and merging

Olgu meil mingi tingimus, mida pilt peab rahuldama, et teda saaks thresholdida. Olgu see näiteks P(Ri), kus Ri on pildi mingi regioon. 1. Kui P(R) ei ole tõene, siis jagada pilt väiksemateks osadeks2. Kui rohkem jagada ei ole vaja, siis ühendada need osad,

mis on lähestikku ja mis koos vastavad tingimusele P().3. Kui rohkem ühendada ei saa, siis ongi pilt regioonideks

jagatud.

Page 13: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Watershed Segmentation

Koondab enda alla ka hulk sarnaseid meetmeid.Kõige lihtsam:Vaatame ühekanalist pilti kui kõrguskaarti

Page 14: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Watershed SegmentationIdeaalne juht

Page 15: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Watershed Segmentationnatuke reaalsem variant.

Page 16: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Watershed Segmentation

Selleks, et watershedi kasutada tehakse kas palju eeltöötlust:SilutakseVõetakse gradientMääratakse markerid, või eemaldatakse ebaolulised miinimumidTeisendatakse nii, et valitud markerid jääksid ainukesteks miinimumideks

Saab ka pärast watershedi tegemist tulemust parandada saadud segmente kombineerides ja ühendades

Page 17: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Watershed Segmentationhttp://cmm.ensmp.fr/~beucher/wtshed.html

Page 18: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Opencv watershed

Kasutab ainult 3 kanalist pilti.Peab ette andma markerid.

Page 19: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Motion segmentation

Page 20: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Motion segmentation

Liikumine tähendab, et meil tuleb võrrelda vähemalt kahte kaadrit. Kõige kergem viis selleks on võrrelda pikslite väärtusi.

Nii saame erinevuste pildi defineerida järgmiselt: f(x,y)=|ft-1(x,y)-ft(x,y)|, kus f(x,y) on erinevuste pilt ja ft-1(x,y) ja ft(x,y) on erinevatel ajahetkedel võetud kaadrid.

Selle omadused?

Page 21: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Motion segmentation

Parem lahendus on koguda erinevused kokku K kaadri pealt: Tähistame vanima pildi R(x,y) ja kaadrid f(x,y,k):Siis saab defineerida järgnevad kolm ADI (Accumulated Difference Image) järgmiselt:

Page 22: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Motion segmentation

Võib ka teistmoodi teha:

OpenCV-s on selline funktsioon, mis salvestab samuti liikumise ajalugu.

Eelis: ei pea hoidma meeles kogu ajaloo jagu kaadreidMiinus: ei ole meeles eelmised kaadrid

Page 23: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Motion segmentation

Sama konseptsiooni võib rakendada ka keerulisematele asjadele ( ääred, nurgad, jooned ).

Lisaks avaldub mingi asi sagedusdomeenis.

Page 24: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Hough transformatsioon

Algselt tehtud sirgete leidmiseks. Kuid hiljem on seda üldistatud.

Üldine idee:1. Viia läbi transformatsioon parameetrite ruumi2. Koguda kokku (akkumuleerida) erinevate punktide jaoks

parameetrid.3. Leida parameetrite ruumist sobivad kohad (tavaliselt

lokaalne maksimum)4. Teisendada tulemus parameetrite ruumist tagasi pildiruumi

Page 25: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Hough lines

Sirgjoon:y=kx+b

Pildiruumis on: x ja y => parameetrite ruumis: k ja b

Iga punkti kohta, tehakse parameetrite ruumi üks joon, kus on esindatud kõik seda punkti läbida võivad sirged. (Parameetrite ruumi lisatakse kaar)

Kaarte ristumiskohad vastavad punktidele, milliste parameetritega sirged meil pildil on.

Page 26: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Hough lines

Page 27: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Hough circles

Ringi saab parameetrite ruumis kujutada kolme omaduse abil: keskpunkti koordinaadid ja raadius.

Tekib kolmemõõtmeline parameetrite ruum.

Presidendi demo

Page 28: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Täname kuulamast

Küsimusi?

Page 29: Mihkel Heidelberg Karl Tarbe - Arvutiteaduse instituut...Karl Tarbe Image segmentation Image segmentation Thresholding Watershed Region splitting and merging Motion segmentation Muud

Lingid:

Opencv http://opencv.willowgarage.com/wiki/Watershed transformhttp://cmm.ensmp.fr/~beucher/wtshed.htmlHough-transformhttp://www.local-guru.net/blog/2010/01/19/line-detection-with-hough-transform