Detekce hran, segmentace

Detekce hran

Edge detection

Hrany jsou místa kde sa prudce mění jas a dají sa využít na identifikaci důležitých oblastí (regionů) v obraze. Jsou vstupem mnoha algoritmů na detekci objektů v obraze, případně při segmentaci obrazu.

Defnice hrany:

Prudká změna jasu = hrana

Lokální změna jasu = jasová hrana

Globální změna = jasový hraniční segment

Vlastnosti: velikost, směr

Základní postupy při detekci

Filtrace obrazu − odstranění vzorkovacího či kvantovacího šumu, rozmazání, apod.

Diferenciace − zvýraznění oblastí s výraznou změnou intenzity

Hranový detektor

Hranový detektor

Vlastnosti

Odolnost vůči šumu

Lokalizace

Početnost odezvy

Aplikace konvolučního jádra (detekce směru hrany vyžaduje množinu jader korespondujících s určitými směry).

Detektory můžeme rozdělit podle detekcie hrany:

Operátory 1. derivace

Analýza malého okolí, konvoluce s jádrem hranového operátoru

Detekce směru hrany vyžaduje množinu jader korespondujících s určitými směry

Závislost na velikosti objektu v obraze, citlivost na šum

Roberts − malé okolí pro výpočet gradientu, vysoká citlivost na šum

Prewitt − více pixelů použito k výpočtu gradientu

Sobel − možné použít pouze dvě masky (detekce horizontálních a vertikálních hran)

Kirsch

Robinson

Operátory 2. derivácie

Hladají hranu při průchodu nulou v okolí. Nevýhodami jsou velké vyhlazení obrazu a ztráta ostrých rohů, případně dvojitá odezva na hrany.

Laplacián − invariantní vůči rotaci, normalizovaná odezva na čtyřokolí, osmiokolí

LoG (Marr-Hildreth) − laplacián na vyhlazeném obrazu Gaussem, velice stabilní, nebezpečí falešných hran

DoG − Rozdíl Gaussovek – aproximace LoG

Cannyho detektor − operátor první derivace Gaussovské funkce, non-maxima suppression, prahování s hysterezí (hystereze znamená závislost stavu na stavech předchozích; v tomto kontextu jde o to, že jsou ponechány jen ty nejsilnější hrany a slabé, pokud jsou spojeny s nějakou silější, velmi slabé jsou potlačeny)

Aktivní kontury − vnitřní (hladkost křivky) a vnější síly (tvarují konturu směrem ke hranám objektu)

Parametrické modely hran

Přesnější popis hran, náročné na výpočet, např. Houghova transformace.

Takto získané hrany je možné dále filtrovať (např. filtr s hysterzí)

Kvalita hranových detektorů

Dobrá detekce (odolnost vůči šumu)

Dobrá lokalizace (detekované hranové body co nejblíže středu hrany)

Jedinečná odezva (měla by existovat jen jedinečná odezva na skutečnou hranu)

Nejpoužívanější detektory

Cannyho detektor

Canny edge detector

Realizován tak, aby co nejlépe vyhověl požadavkům na kvalitu (zmíněno výše)

Realizován různými způsoby, které se snaží co nejlépe vyhovět stanoveným podmínkám

Operátor první derivace Gaussovské funkce + potlačením nemaximálních hodnot

Houghova transformace

Hough transform

Metoda pro nalezení parametrického popisu objektů v obraze

(Transformace z Kartézského souřadnicového systému do polárního … určitě?)

Výpočetně náročná, robustnost, není citlivá na porušená data nebo šum

Stejný princip se používá i pro hledání dalších křivek, které je možné popsat parametricky (kružnice, elipsa apod.)

Houghova transformace se dá použít i na detekci tvarů, které nejde přímo popsat parametricky

Body obrazu jsou prezentovány křivkami v parametrickém prostoru

Jedná-li se o kolineární body (z jedné přímky), pak křivky v parametrickém prostoru se protínají. Průnik reprezentuje parametry hledané křivky

Segmentace

Segmentation (image processing)

Co je to segmentace obrazu?

Proces rozdělování obrazu na významné části (regiony, např. obsahující jednotlivé objekty), které mají podobné vlastnosti (např. podobné barvy, tím sa dá např. oddělit obloha od trávy).

Objekt je zajímavá část obrazu, zbytek je tzv. pozadí (angl. background).

Segmentace je závislá na interpretaci obrazu!

Jeden z nejdůležitějších kroků analýzy obrazu!

Neexistuje univerzální metoda

Proč je segmentace složitá?

Výsledek je závislý na konkrétní aplikaci.

Velký vliv má proces snímání obrazu – proměnlivé osvětlení, šum, apod.

Struktura obrazu může být velmi složitá – komplexní tvary objektů, překrývající se objekty, stíny, …

Neexistuje univerzální metoda pro všechny typy obrazů.

Základní přístupy k segmentaci obrazu

Statistické metody

Orientovaná na regiony

Region based (porovnávání vnitřků)

Obrazové pyramidy – Nejvyšší úroveň je jeden pixel, redukce výpočetní náročnosti, segmentace – spojování oblastí, quad tree

Grafy sousednosti (Region Adjacency Graphs (RAGs)) – Vztahy mezi regiony

Region growing – 4-okolí, 8-okolí

Barvení oblastí – Barvi dokud práh, nutné dva průchody, není deterministická (Region Merging, Region Splitting)

Orientovaná na hrany

Edge based

Hrany mohou nést důležitou informaci o objektech

Často oddělují regiony v obraze.

Typický problém: porušené a nevýrazné hrany, zároveň mnoho nepodstatných hran.

Edge relaxation – zotavení hrany, mnoho heuristických algoritmů, často iterační, degraduje hrany

Spojování hran – Vytváří seřazené hrany

Prahování

Band

Dva a více prahů

Semi-thresholding

Mode based

Iterative

Adaptivní

Otsu's

Shluková analýza

Učení bez učitele, řazení do podobných shluků

k-means clustering, Shift, Fuzzy C-Means, nebo GMM

Hybridní metody

Metoda rozvodí

Watershed (image processing)

Morfologická metoda segmentace, obraz chápán jako terén nebo topografický reliéf, který je postupně zaplavován vodou.

Výsledný obraz rozdělen do povodí oddělených hrázemi.

Nepoužívá se přímo originální obraz, ale gradientní obraz.

Metoda produkuje velký počet regionů, nadměrně segmentovaný obraz → spojování segmentů

Znalostní metody (knowledge-based)

Nejčastěji detekce předdefinovaných vzorů v obraze (tzv. template matching)