Praktické využití metod digitálního zpracování obrazu



Podobné dokumenty
POÍTAOVÁ PODPORA DETEKCE ZAJÍMAVÝCH OBRÁZK

Analýza a zpracování digitálního obrazu

Operace s obrazem II

Matematická morfologie

DETEKCE HRAN V BIOMEDICÍNSKÝCH OBRAZECH

Roman Juránek. Fakulta informačních technologíı. Extrakce obrazových příznaků 1 / 30

HLEDÁNÍ HRAN. Václav Hlaváč. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání.

POPIS TESTOVACÍHO PROSTEDÍ 1 ZÁLOŽKA PARSER

Jasové transformace. Karel Horák. Rozvrh přednášky:

2.1 Pokyny k otev eným úlohám. 2.2 Pokyny k uzav eným úlohám. Testový sešit neotvírejte, po kejte na pokyn!

GYMNÁZIUM CHEB SEMINÁRNÍ PRÁCE

2010 Josef Pelikán, CGG MFF UK Praha

Pravdpodobnost výskytu náhodné veliiny na njakém intervalu urujeme na základ tchto vztah: f(x)

Cykly Intermezzo. FOR cyklus

PÍRUKA A NÁVODY PRO ÚELY: - RUTINNÍ PRÁCE S DATY

Operace s obrazem I. Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno. prezentace je součástí projektu FRVŠ č.

Každý datový objekt Pythonu má minimáln ti vlastnosti. Identitu, datový typ a hodnotu.

Algoritmy a struktury neuropočítačů ASN P9 SVM Support vector machines Support vector networks (Algoritmus podpůrných vektorů)

OCR (optical character recognition) - rozpoznávání textu v obraze

ÚSTAV AUTOMATIZACE A MICÍ TECHNIKY Fakulta elektrotechniky a komunikaních technologií Vysoké uení technické v Brn

Grafika na počítači. Bc. Veronika Tomsová

R O V N O B Ž N Í K (2 HODINY)

GYMNÁZIUM CHEB. SEMINÁRNÍ PRÁCE Grafy funkcí sbírka ešených úloh. Radek HÁJEK, 8.A Radka JIROUŠKOVÁ, 8.A Cheb, 2006 Petr NEJTEK, 8.

SIFT: Scale Invariant Feature Transform Automatické nalezení korespondencí mezi dvojicí obrázků

Základy zpracování obrazů

Pídavný modul rozvaha lze vyvolat z hlavní nabídky po stisku tlaítka Výkazy / pídavné moduly.

Diskrétní 2D konvoluce

Digitalizace a zpracování obrazu

MENÍ TEPLOTNÍHO POLE BIMETALOVÉHO SENZORU S VYUŽITÍM ANALÝZY OBRAZU

Správa obsahu ízené dokumentace v aplikaci SPM Vema

M E T O D Y R O Z P O Z NÁNÍ OB J E K T Ů V O B R A Z U

VYSOKÉ UENÍ TECHNICKÉ V BRN BRNO UNIVERSITY OF TECHNOLOGY

Obr. 1: Elektromagnetická vlna

Promnné. [citováno z

DISKRÉTNÍ FOURIEROVA TRANSFORMACE P I NELINEÁRNÍ ULTRAZVUKOVÉ SPEKTROSKOPII

27. asové, kmitotové a kódové dlení (TDM, FDM, CDM). Funkce a poslání úzkopásmových a širokopásmových sítí.

KUSOVNÍK Zásady vyplování

Úvod do optimalizace, metody hladké optimalizace

MATEMATIKA MATEMATIKA

Aditivní barevný model RGB pidává na erné stínítko svtla 3 barev a tak skládá veškeré barvy. Pi použití všech svtel souasn tak vytvoí bílou.

4 - Architektura poítae a základní principy jeho innosti

Zamení fasády stavebního objektu

Hledání hran. Václav Hlaváč. České vysoké učení technické v Praze

Hledání hran. Václav Hlaváč. České vysoké učení technické v Praze

TSO NEBO A INVARIANTNÍ ROZPOZNÁVACÍ SYSTÉMY

Strojové učení Marta Vomlelová

Definice : Jsou li povrchové pímky kolmé k rovin, vzniká kolmá kruhová válcová plocha a pomocí roviny také kolmý kruhový válec.

Operace s obrazem. Biofyzikální ústav LF MU. Projekt FRVŠ 911/2013

Stanovení požadavk protismykových vlastností vozovek s ohledem na nehodovost

VYUŽITÍ PROGRAMOVÝCH PROSTEDK MATLAB PRO ROZODOVÁNÍ ZA PRÁVNÍ NEJISTOTY

1. Exponenciální rst Spojitý pípad. Rstový zákon je vyjáden diferenciální rovnicí

Ing. Jaroslav Halva. UDS Fakturace

Pedání smny. Popis systémového protokolování. Autor: Ing. Jaroslav Halva V Plzni Strana 1/6

LABORATORNÍ CVIENÍ Stední prmyslová škola elektrotechnická

Píkazy pro kreslení.

Digitální ortofoto. struná teorie

13 Barvy a úpravy rastrového

Efektivní hodnota proudu a nap tí

Autocad ( zdroj )

Kybernetika a umělá inteligence, cvičení 10/11

Mikroskopická obrazová analýza

ROZ I. CVIČENÍ V. Morfologické operace v obraze teorie & praxe

Fakulta informačních technologíı. Extrakce obrazových příznaků 1 / 39

DOPRAVNÍ INŽENÝRSTVÍ

Prbh funkce Jaroslav Reichl, 2006

Neuronové sítě v DPZ

DUM. Databáze - úvod

5. Umělé neuronové sítě. Neuronové sítě

IV. CVIENÍ ZE STATISTIKY

Digitální pekreslení leteckého snímku

Úvod do zpracování obrazů. Petr Petyovský Miloslav Richter

NPGR032 CVIČENÍ III. Šum a jeho odstranění teorie&praxe. Adam Novozámský (novozamsky@utia.cas.cz)

PRÁCE S GRAFICKÝMI VÝSTUPY SESTAV

Lepení plexi v bonici pružnými lepidly

L I C H O B Ž N Í K (2 HODINY) ? Co to vlastn lichobžník je? Podívej se napíklad na následující obrázky:

Klasifikace a rozpoznávání. Lineární klasifikátory

Zbytky zákaznického materiálu

Pokročilé operace s obrazem

Metodický materiál Ma

Jaroslav Tuma. 8. února 2010

Tabulkový procesor Excel

P. Petyovsk", MAPV Aplikace po"íta"ového vid#ní v dopravních úlohách2, Virtualizovaná realita

MATEMATICKÁ KARTOGRAFIE

Základní pojmy klasického sudoku hlavolamu. Techniky odkrývání bunk. Technika Naked Single. Technika Hidden Single

1 Píklady popisu typických konstrukcí

DOPRAVNÍ INŽENÝRSTVÍ

Odečítání pozadí a sledování lidí z nehybné kamery. Ondřej Šerý

VYTVÁENÍ VÝBROVÝCH DOTAZ

METODY OCEOVÁNÍ PODNIKU DEFINICE PODNIKU. Obchodní zákoník 5:

1 Jasové transformace

Dokumentaní píruka k aplikaci. Visor: Focení vzork. VisorCam. Verze 1.0

Zpracování digitalizovaného obrazu (ZDO) - Segmentace II

Rzné algoritmy mají rznou složitost

Elcometer 6075/1 SP 60

POTRUBNÍ SYSTÉMY PROGRAMU INVENTOR PROFESSIONAL V REALIZACI ISTÍRNY ODPADNÍCH VOD

Datový typ POLE. Jednorozmrné pole - vektor

VLASTNOSTI KOMPONENT MICÍHO ETZCE -ÍSLICOVÁÁST

Obraz matematický objekt. Spojitý obraz f c : (Ω c R 2 ) R

Zpracování digitalizovaného obrazu (ZDO) - Segmentace


Transkript:

STEDOŠKOLSKÁ ODBORNÁ INNOST obor 01 Praktické využití metod digitálního zpracování obrazu Vypracoval: Ondej Mikšík Oktáva B Gymnázium Kromíž Masarykovo nám. 496 2007 1

Obsah 1. Úvod... 3 2. Digitální obraz... 4 2.1. Pedzpracování obrazu... 4 Histogram... 4 Ekvalizace histogramu... 5 Prahování... 6 Filtrace šumu v obraze... 7 2.2. Matematická morfologie... 9 Binární dilatace... 9 Binární eroze... 10 Binární otevení... 10 Binární uzavení... 10 Hit or miss... 11 Skeleton... 11 2.3. Edge detection... 13 Diskrétní konvoluce... 15 Robertsv operátor... 16 Operátor Prewittové... 17 Sobelv operátor... 17 Kirschv operátor... 18 Laplacev operátor... 19 LoG, DoG... 20 Cannyho hranový detektor... 21 Další metody... 22 2.4. Segmentace... 23 Region growing (connected component labeling)... 23 Štpení a spojování oblastí... 24 2.5. Popis segmentovaného obrazu... 24 Velikost... 24 Smr... 24 etzové kódy... 25 Kompaktnost... 26 Výstednost... 26 Podlouhlost... 27 Pravoúhlost... 27 RTS invariant moments... 27 Další metody... 29 2.6. Klasifikace... 29 Rozhodovací stromy... 29 Support vector machines (SVM)... 30 Umlé neuronové sít... 31 3. ešení ukázkové úlohy... 33 4. Praktická aplikace... 37 5. Závr... 40 Píloha A Program SmartCalib... 41 Seznam literatury... 42 2

1. Úvod Práce se zabývá teoretickými základy digitálního zpracování obrazu a jejich aplikací pi ešení konkrétního technického zadání. Pvodním zámrem autora byla úast v soutži autonomních robotických vozítek. Tato autíka získávají informace o svém okolí pomocí nejrznjších idel, jako jsou kamery, infraervené senzory, ultrazvukové dálkomry. Tyto údaje jsou vyhodnocovány a vozítko na n vhodným zpsobem reaguje. Klíovým nástrojem pi ešení této problematiky jsou metody digitálního zpracování obrazu. Tento rozsáhlý obor na rozhraní matematiky a pokroilé výpoetní techniky autora zaujal natolik, že veškeré úsilí nakonec vnoval teoretickému ešení problematiky a sestrojení pvodn zamýšleného robotického vozítka penechal jiným nadšencm. Metody, jimiž se autor zabýval, si však cestu do praxe nakonec stejn našly. Další ást práce popisuje ešení konkrétního technického požadavku zpesnní kalibrace pístroj pro výzkum živé pírody. Závrená kapitola shrnuje výsledky, kterých se pi ešení problematiky digitálního zpracování obrazu podailo dosáhnout. 3

2. Digitální obraz Digitální obraz chápeme jako snímek sejmutý kamerou, scannerem, nebo jiným zaízením a definujeme jej jako obrazovou funkci f(x, y), jejíž hodnoty odpovídají mené veliin (napíklad jasu). Pi poítaovém zpracování obraz pracujeme s digitalizovanými obrazy. Obrazová funkce f(x, y) je poté pedstavována maticí, jejíž prvky nazýváme pixely (obrazové elementy). Tyto obrazové elementy, jsou nejmenšími, dále nedlitelnými jednotkami, což je dležité napíklad pi mení vzdáleností v obraze - nepohybujeme se v Euklidovském prostoru, ale v rastru (tvercový, hexagonální, ) [2]. Obr. 1. Testovací dráha pokusného vozítka Cílem první ásti práce je nalézt polohu patník, které pedstavují svtla nalevo od chodníku v obr1. Nyní se budeme vnovat metodám, které vedou k ešení tohoto problému. 2.1. Pedzpracování obrazu Pedzpracování obrazu je operace, kterou musíme provést u každého zpracovávaného obrazu. Vtšinou se nám totiž nepodaí získat kvalitní obraz, který má vysoký kontrast, neobsahuje šum, je ostrý, Cílem operací provádných pi pedzpracování je obraz upravit tak, aby následná lokalizace a rozpoznávání objekt bylo co nejpesnjší a nejrychlejší. Vtšina operací provádných pi pedzpracování je protichdná. Pi odstranní šumu se snažíme obraz vyhladit, což zpsobuje rozmazání tenkých ar a hran, které jsou dležité. Naopak pi ostení obrazu (zvýraznní vyšších frekvencí) dochází zárove k zvtšení podílu obrazového šumu (protože ten je také vysokofrekvenní). Proto je vtšina provádných operací závislá na hledání kompromisu. Histogram Jednou z nejjednodušších pomcek pi digitálním zpracování obrazu je histogram obrazu, který je ve stupních šedi [2]. Tato funkce sumarizuje hodnoty úrovn šedi v obrázku. Každý obraz má pouze jeden histogram, ale jeden histogram mže odpovídat více obrazm 4

(když posuneme objekt v obraze ped konstantním pozadím, nebude to mít na výsledný histogram vliv). Histogram úrovn šedé je funkce, která obsahuje pro každou úrove šedi (intensitu jasu), poet pixel (bod) v obraze, které dané úrovni odpovídají, ale nedává nám žádné informace o tom, kde se tyto body v obraze vyskytují. Histogram osmibitového obrazu tedy obsahuje 256 rzných úrovní šedi. Matematicky jej mžeme definovat jako N 255 k0 kde h k je celkový poet pixel, které odpovídají úrovni šedi k. h k (1) Ekvalizace histogramu Ekvalizace histogramu [2] je algoritmus, který zmní výskyt jasových úrovní v obraze tak, aby intenzity jasu byly zastoupeny v co nejširším rozmezí a pokud možno se stejnou etností. Ekvalizací zvýšíme kontrast obrazu. Nové hodnoty jasu spoítáme jako J ii I h( i) xy ii 0 (2) Kde I je maximální hodnota jasu v pvodním obraze, xy je poet pixel pvodního obrazu, I 0 je nejnižší hodnota jasu v pvodním obrazu a h(i) je poet pixel odpovídajících této hodnot. Obr. 2. Špatné rozložení jas v obraze Obr. 3. Obraz po ekvalizaci Stejn je možné provádt ekvalizaci histogramu barevných obraz. Tu mžeme provést nkolika zpsoby, napíklad ekvalizací každé barevné složky zvláš. To však mže vést ke zmn pomr barev v obraze, což nemusí být vždy vhodné. Další možností je provést ekvalizaci v nkterém alternativním barevném prostoru, napíklad YIQ, ve kterém Y nese informace o hodnot jasu daného pixelu a tudíž pi ekvalizaci nedojde ke zkreslení barev. 5

Obr. 4. Špatné rozložení jas v barevném obraze Obr. 5. Barevný obraz po ekvalizaci Ekvalizací histogramu zvýšíme kontrast obrazu, což nám usnadní odlišit jednotlivé objekty od sebe. Prahování asto potebujeme odlišit objekty zájmu od pozadí. Nejastji používanou metodou pro tuto operaci je prahování (thresholding) [1]. Prosté prahování funguje tak, že máme vstupní obraz a práh. Potom a[ i, j] T a[ i, j] 1 f ( i, j) a[ i, j] T a[ i, j] 0 (3) Výsledkem této funkce je binární obraz, kde pixely, které mají jas vtší nebo roven prahu jsou oznaeny jako 1 neboli popedí a pixely, jejichž jas je menší než práh jsou oznaeny jako 0 neboli pozadí. Metoda, pi které používáme pouze jeden práh, je užitená pouze ve velmi jednoduchých aplikacích a i tak skýtá mnohá úskalí pi volení prahu. Mezi nejastji používané metody volby automatického prahu patí metoda standardního histogramu, metoda p-procentního prahu nebo metody váženého/vysokého gradientu. Obr. 6. Bimodální histogram s automaticky voleným prahem 6

Filtrace šumu v obraze Pi filtrování šumu z jediného obrazu nám bohužel nezbývá, než se spolehnout na pebytenost informací v obraze (obraz nemáme s ím porovnat). Budeme vycházet z toho, že sousední pixely v obraze jsou tvoeny pevážn stejnými, nebo podobnými hodnotami jas. Proto se nová hodnota pixelu odhaduje z jeho malého okolí (asto tverec s lichým potem ádk/sloupc). Bohužel pi tchto filtracích se rozmazávají hranice objekt, což stžuje jejich následnou identifikaci a pesnou lokalizaci [3]. Jedním z nejbžnjších filtr je prosté prmrování. Pi použití tohoto filtru je obraz systematicky procházen napíklad po ádcích (princip konvoluce) a nová hodnota pixelu je vypotena jako aritmetický prmr pixel, které jsou pokryty filtraní maskou (kernelem). Jak již bylo zmínno, tento filtr velmi nií linie, ale na druhou stranu je dobe použitelný pro filtraci rozsáhlých homogenních ploch a je velmi rychlý. n m 1 f ( i, j) f ( i k, j l) (2n1)(2m 1) k n l m (4) Obr. 7. Obraz s pidaným umlým šumem Obr. 8. Prosté prmrování (5x5) Dalším asto používaným filtrem je medián. Medián je íslo, které se po uspoádání nachází uprosted posloupnosti. Jeho nalezení zjednoduší vhodn zvolená velikost zkoumaného okolí (opt tverec s lichým potem ádk/sloupc). Navíc není poteba vytvoit posloupnost, ale staí hodnoty ásten uspoádat. Jeho nevýhody jsou, že poškozuje jemné áry a ostré rohy v obraze. 88 95 80 68 100 56 82 75 60 56, 60, 68, 75, 80, 82, 88, 95, 100 Tabulka 1. Píklad použití mediánu 7

Obr. 9. Obraz s pidaným umlým šumem Obr. 10. Iterativn použit medián (3x3) Gaussv filtr (Gaussian blur) má podobné vlastnosti jako prosté prmrování, ale konvoluní maska se spoítá z 2D tvaru Gaussiánu. Od prostého prmrování se odlišuje tím, že se poítá vážený prmr oblasti se zvýraznním stedu. G( x, y) 1 2 x y e ( x ) 2 2 x 2 ( y ) 2 2 y 2 (5) Obr. 11. 2D tvar Gaussiánu, =2,5 8

Obr. 12. Obraz s pidaným umlým šumem Obr. 13. Gaussv filtr (5x5), =2,5 Nejvtším problémem pi filtrování Gaussiánem je volba správného a okolí v kterém Gaussv filtr reaguje. Pi zvolení píliš malého nebo okolí, je filtrace nevýrazná, ale zase nepoškozuje hrany. Pi zvolení vyšších hodnot a filtrovaného okolí je filtrace výrazná, ale lokalizace hran pestává být pesná, popípad nkteré mén výrazné hrany zaniknou úpln. Samozejm, že filtrovacích metod existuje celá ada. Mezi zde nezmínné, ale pomrn asto používané patí napíklad Rotující maska, Binomický filtr 2.2. Matematická morfologie Pvodní využití matematické morfologie spoívalo v úprav binárních obraz, ale dnes se morfologie využívá i pi úprav obraz ve stupních šedi. Morfologii [5], [6], [7] chápeme pi digitálním zpracování obraz jako nástroj pro pedzpracování a segmentaci obraz. Jedná se o množinu metod, pomocí kterých mžeme zkoumat tvar, kostru nebo konvexní obal. Výsledek morfologických metod je závislý pouze na rozložení pixel v obraze a není závislý na jejich hodnotách. Základem matematické morfologie je fakt, že obrazy lze modelovat pomocí bodových množin. Morfologické operace jsou vtšinou založeny na zvtšování a zeštíhlování zkoumaných tvar. Mezi základní morfologické operace pi binární morfologii patí Dilatace a Eroze. Binární dilatace Binární dilatace se používá k zaplnní malých dr v objektech. Výsledkem binární dilatace je objekt, který je vtší, než byl objekt pvodní. Pi binární dilataci sítáme množinu X s množinou X, která je od množiny X posunuta o strukturní element B (druhá, vtšinou menší množina). X B p p x b x X b B 2 { E :, } (6) 9

Což mžeme vyjádit Minkowského soutem (sjednocení posunutých množin): X B X bb b (7) Binární eroze Binární eroze je duální morfologickou transformací k dilataci. Pi binární erozi skládáme dv množiny pomocí Minkowského rozdílu. Erozi také mžeme vyjádit jako prnik všech posun obrazu X o vektory b B X B X bb b (8) Binární eroze se používá ke zjednodušení objektu. Objekty, které jsou menší než strukturní element, z obrazu zmizí. Výsledkem binární eroze je objekt, který je menší než pvodní Binární otevení Jedná se o erozi následovanou dilatací. Pi binárním otevení odstraníme z obrazu malé objekty. X B ( X B) B (9) Pokud se obraz X po otevení strukturním elementem B nezmní, íkáme, že obraz X je otevený vzhledem ke strukturnímu elementu B. Binární uzavení Jedná se o dilataci následovanou erozí. Pi binárním uzavení odstraníme z obrazu malé díry. X B ( X B) B (10) Pokud se obraz X po uzavení strukturním elementem B nezmní, íkáme, že obraz X je uzavený vzhledem ke strukturnímu elementu B. Dležitou vlastností dilatace a eroze je idempotence. To znamená, že po jednom otevení/uzavení je již obraz oteven/uzaven, takže nemá smysl je provádt vícekrát. 10

Hit or miss Hit or miss (tref i mi) transformace se používá k hledání zvláštních ástí objekt jako jsou napíklad rohy, nebo ke ztenování i zvýraznní hran. Tato transformace používá složený strukturní element, pro který platí B ( B1, B2 ) a zárove B1 B2, piemž B 1 testuje objekty (popedí) a B 2 testuje pozadí. Transformaci hit or miss mžeme vyjádit také pomocí erozí X B ( X B ) ( X B ) C 1 2 (11) Jak již bylo uvedeno, transformaci hit or miss mžeme použít k nalezení roh konvexních obal objekt. Roh mže být tvoen tymi variantami uspoádaných pixel, proto nadefinujeme následující tyi masky (1 reprezentuje objekt, 0 reprezentuje pozadí a * reprezentuje libovolný pixel). * 1 * 0 1 1 0 0 * * 1 * 1 1 0 * 0 0 * 0 0 1 1 0 * 1 * 0 0 * 0 1 1 * 1 * (12) Obr. 14. Píklad použití transformace Hit or miss V pípad, že maska se shoduje s okolím zkoumaného pixelu, je daný pixel oznaen jako 1, jinak je oznaen jako 0. Skeleton adu objekt má smysl reprezentovat pouze jejich kostrou. Toto zobrazení má využití napíklad u sledování pohyb lovka. Kostra musí být tlustá jeden pixel, mla by vést stedem objektu a musí zachovávat jeho tvar. Kostru lze také definovat pomocí tzv. maximálních kruh (nebo v prostoru pomocí koulí). Maximální kruh je takový, který je vepsaný do objektu a dotýká se jeho hran ve dvou nebo více bodech. Kostra objektu je potom tvoena sjednocením sted maximálních kruh. 11

Obr. 15. Kostra obdélníku Pi zpracování digitálního obrazu se zpravidla nepohybujeme v euklidovském prostoru, proto mají kruhy podobu práv takového prostoru v jakém se zrovna pohybujeme (D E, D 4, D H, D 8 ) [2]. Obr. 16. Kruhy v rzných prostorech zleva: Euklidovský prostor, 4-okolí, hexagonální prostor, 8-okolí Protože je ale tvoení kostry pomocí maximálních kruh výpoetn nároné, používají se jiné algoritmy jako je koutková reprezentace (objekt je nejdíve bezeztrátov zkomprimován a poté se do nj vpisují maximální obdélníky), sekvenní ztenování nebo vzdálenostní transformace. Abychom mohli používat sekvenní ztenování/ztlušování, musíme nejdíve zavést jednoduché ztenování/ztlušování. Ztenování mžeme popsat jako odetení ásti ztenované oblasti urené složeným strukturním elementem B ( B1, B2 ) od objektu X B X ( X B) (13) Ztlušování je duální transformací k ztenování a mžeme popsat jako sjednocení s ástí pozadí urenou strukturním elementem. X B X ( X B) (14) Sekvenní ztenování mžeme popsat také pomocí posloupnosti strukturních element. X { B } ((( X B ) B )... B ) ( i) (1) (2) ( n) (15) 12

Analogicky mžeme popsat sekvenní ztlušování X{ B } ((( X B ) B )... B ) ( i) (1) (2) ( n) (16) Existuje ada rzných posloupností strukturních element, my si ukážeme ty, které jsou popsané v tzv. Golayov abeced pro oktagonální (D 8 ) mížku (rastr). Jednika opt reprezentuje objekt, 0 reprezentuje pozadí a * reprezentuje libovolný pixel. 0 0 0* 0 01 * 01 1 * 1 1 1* 1 10 * 10 0 * * 1 * 1 1 0 1 1 0 1 1 0 * 1 * 0 1 1 0 1 1 0 1 1 1 1 1 1 1 * 1 * 0 * 0 0 0 0 0 0 0 * 0 * 1 * 1 1 L1 L2 L3 L4 L5 L6 L7 L8 (17) Následn mžeme obraz sekvenn ztenovat/ztlušovat až dosáhneme idempotence. Podobn existují strukturní elementy pro další typy mížek (rastr). 2.3. Edge detection Neurofyziologické a psychologické výzkumy ukazují, že nejdležitjšími místy v obraze pro vnímání vyšších živoich jsou místa, kde se prudce mní hodnota jasu. Tato místa se nazývají hrany. Protože tato místa obsahují více informací o obsahu obrazu, pokusíme se je pi rozpoznávání obsahu obrazu detekovat. Hrany jsou do jisté míry invariantní vi zmn osvtlení, nebo pohledu [1], [2], [8], [9]. Hrana v obraze je dána vlastnostmi obrazového elementu a jeho okolí a je urena tím, jak náhle se mní hodnota obrazové funkce f ( x, y ). Zmnu funkce dvou promnných zkoumáme pomocí parciálních derivací. Zmnu funkce popisuje její gradient, což je dvousložková vektorová funkce. První složkou je velikost gradientu (modul) a druhá složka udává úhel, pod kterým hrana bží (smr hrany mžeme definovat také jako kolmý na smr gradientu). Hranou nazýváme body, které mají velké hodnoty modulu gradientu. Gradient spojité funkce n promnných spoítáme jako vektor parciálních derivací. f ( x1,..., xn )!,..., " x1 xn f f # $ (18) 13

Obr. 17. Souvislost hrany s gradientem Modul gradientu pro n = 2 spoítáme jako f f f ( x, y)! "! " # x$ # y$ 2 2 (19) a smr gradientu f f % arctan! / " # y x$ (20) Obraz je ale diskrétní jasová funkce, proto nejsme schopni obrazové derivace spoítat pesn. Tyto derivace ale mžeme aproximovat pomocí diferencí. Kde n je malé celé íslo, vtšinou 1. Digitální gradient poté spoítáme jako & g( x, y) g( x, y) g( x n, y) x & g( x, y) g( x, y) g( x, y n) y 2 2 G Gx Gy (21) (22) Pro urychlení výpotu mžeme uvažovat pouze souet absolutních hodnot G G G x y (23) 14

Smr digitálního gradientu spoítáme jako: Gy % arctan! " # Gx $ (24) Pro detekci hran používáme detektory založené na hledání maxim první derivace, nebo na hledání prchod nulou (zero crossing) druhé derivace, což je jednodušší. Obr. 18. Hrana, první derivace, druhá derivace Diskrétní konvoluce Konvoluce je matematický operátor zpracovávající dv funkce. Nás bude zajímat diskrétní konvoluce, protože zpracováváme diskrétní jasovou funkci (obraz). ik jk f ( x, y)* h( x, y) f ( x i, y j). h( i, j) i k j k (25) f(x,y) je vstupní obraz a h(i,j) je konvoluní maska (konvoluní jádro) Pi diskrétní konvoluci si lze jako konvoluní jádro pedstavit matici, kterou systematicky pikládáme na píslušný pixel v obrazu. Hodnotu jasu každého pixelu pekrytého touto maticí vynásobíme hodnotou v píslušné buce matice, seteme a vynásobíme celkovým koeficientem konvoluní masky (napíklad pro konvoluní masku o rozmrech 3x3 je to 0.11 = 1/9). Takto dostaneme novou hodnotu jasu pro jeden pixel. Pouhou zmnou konvoluní masky lze nadefinovat adu operací (filtrace šumu, detekce hran, ), protože koeficienty uvnit konvoluní masky udávají vliv hodnoty pixelu 15

pod nimi. Vtšinou používáme konvoluní masky s lichým potem ádk a sloupc, protože potom leží reprezentativní pixel ve stedu masky a také mžeme dát stedu vtší váhu (zvýraznit jej). ím je konvoluní maska vtší, tím je odolnjší vi šumu v obraze, ale zárove je výsledný obraz více rozosten a výpoet je pomalejší. Robertsv operátor Robertsova konvoluní maska má rozmry jen 2x2. Nejastji se používá na obrazy ve stupních šedi, její výpoet je velmi rychlý, ale také je velmi náchylný k oznaení náhodného šumu v obraze za hranu. Velikost gradientu se spoítá jako G f ( x, y) f ( x1, y1) f ( x 1, y) f ( x, y 1) (26) Konvoluní matice poté mají následující tvary 1 0 0 1 0 1 1 0 G x G y (27) Tyto matice dobe detekují hrany, které bží pod úhly 45 a 135. U dalších filtr postaí uvést pouze konvoluní masky. Obr. 19. Detekce hran Robertsovým filtrem 16

Operátor Prewittové Operátor Prewittové o rozmrech matice 3x3 pro detekci horizontálních hran: 1 1 1 0 0 0 1 1 1 (28) Operátor Prewittové o rozmrech matice 5x5 pro detekci svislých hran (transponovaná matice vi matici pro detekci horizontálních hran): 2 1 0 1 2 2 1 0 1 2 2 1 0 1 2 2 1 0 1 2 2 1 0 1 2 (29) Další matice (pro detekci šikmých hran) opt dostaneme pootoením matice. Obr. 20. Detekce hran pomocí Operátoru Prewittové Sobelv operátor Sobelv operátor se asto používá pro detekci vodorovných a svislých hran. Jeho základní tvar reprezentují tyto dv matice: 1 2 1 0 0 0 1 2 1 G x 1 0 1 2 0 2 1 0 1 G y 17

Klidn ale mžeme chtít detekovat hrany pouze ve vodorovném smru, potom tyto matice modifikujeme: (30) 1 2 1 0 0 0 1 2 1 1 2 1 0 0 0 1 2 1 (31) Když matici pootoíme, mžeme detekovat šikmé hrany: 0 1 2 1 0 1 2 1 0 0 1 2 1 0 1 2 1 0 2 1 0 1 0 1 0 1 2 2 1 0 1 0 1 0 1 2 (32) Obr. 21. Detekce hran Sobelovým filtrem Kirschv operátor Kirschv operátor definuje velikost gradientu jako maximum, po aplikaci všech 8 možných smrových kombinací konvoluní masky. 5 3 3 5 0 3 5 3 3 (33) 18

Obr. 22. Detekce hran Kirschovým filtrem Laplacev operátor Maximm prvních parciálních derivací diskrétní jasové funkce odpovídají prchody nulou druhé parciální derivace. K tomu se výhodn používá Laplacián. f x f y 2 2 2 f ( x, y) 2 2 (34) Všesmrový lineární Laplacev operátor (Laplacián) je vhodné použít v pípad, že chceme detekovat hrany v obraze, ale nezajímá nás smr hrany. Tento operátor udává stejnou odezvu pro všechny smry, proto nelze získat informaci o smru hran. Lze jej využít pi ostení obrazu. Mezi jeho nevýhody patí velká citlivost na šum a dvojitá odezva na tenké linie. 0 1 0 0 1 0 2 1 2 1 2 1 1 4 1 1 8 1 1 4 1 2 4 2 0 1 0 0 1 0 2 1 2 1 2 1 (35) Rzné matice pro Laplacev operátor (pro 4-okolí, 4-okolí s vtší vahou prostedního pixelu, pro 8-okolí, 8-okolí s vtší vahou prostedního pixelu) 19

Obr. 23. Detekce hran Laplaceovým filtrem LoG, DoG Protože Laplacev operátor je velmi citlivý na šum, je teba vstupní obraz nejdíve vyhladit od šumu a až poté se v nm snažit detekovat hrany. Pipustíme tedy rozmazání obrazu Gaussiánem a pro odhad druhé derivace použijeme všesmrový Laplacián. Tento postup se oznauje jako LoG operátor (Laplacian of Gaussian). Protože používáme lineární filtry, je možno zamnit poadí operací. 2 2 ' ' ( G( x, y, ) f ( x, y)) ( G( x, y, )) f ( x, y) (36) Obr. 24. Detekce hran LoG operátorem, =2 Hodnoty derivace Gassiánu mžeme pedpoítat, protože nezávisí na vstupním obraze. LoG operátor mžeme aproximovat pomocí diference dvou obraz vyhlazených Gaussiánem o rzném. Tento operátor se nazývá DoG (Difference of Gaussians). Nevýhodou tchto operátor je, že rozmazávají ostré tvary (rohy objekt) a mají snahu spojovat hrany do uzavených útvar. Dalším problémem je opt vhodné nastavení hodnot. 20

Obr. 25. Detekce hran DoG operátorem, 1 =1, 2 =2,5 Cannyho hranový detektor Obr. 26. DoG Cannyho hranový detektor je algoritmus, který zahrnuje nkolik krok k dosažení co nejlepšího výsledku pi detekci hran v obraze. Mezi základní požadavky patí spolehlivá detekce (tak, aby bylo nalezeno co nejvíce existujících hran), pesná lokalizace hrany (tak, aby byly pozice hrany ureny co nejpesnji) a jednoznanost (aby nebyly detekovány neexistující hrany). Pi detekci hran Cannyho hranovým detektorem vtšinou postupujeme následovn: nejdíve eliminujeme šum v obraze (vtšinou pomocí Gaussova filtru, ale mžeme použít i jiný filtr), poté nalezneme pibližné smry gradientu a pro každý pixel derivaci ve smru gradientu pomocí vhodné konvoluní masky. V dalším kroku nalezneme lokální maxima tchto derivací a hrany získáme pomocí prahování s hysterezí. V posledním kroku (který se ale vtšinou nepoužívá) se slouí hrany, které jsme získali pi rzn velkých vyhlazeních. Pi použití Cannyho hranového detektoru vzniká nkolik problém. Musíme vhodn zvolit pi použití Gaussova filtru, protože když bude hodnota píliš malá, detektor bude detekovat i nevýznamné detaily (snažíme se jakoby o pohled z vtší dálky), když bude 21

hodnota píliš velká, ztíží nám to detekci hran, jejich lokalizaci a také tím více slabých hran zanikne. Dalším problémem je zvolení vhodné konvoluní masky pro urení velikosti a smru gradientu. Vtšinou se používá Sobelv operátor, protože není píliš citlivý na šum a vrací nejen velikost gradientu, ale i jeho smr. Pi prahování se snažíme potlait krátké/slabé bezvýznamné hrany (ponecháme pouze ty, které jsou souástí hran silnjších). Tohoto nelze dosáhnout prahováním s jedním prahem, proto volíme prahy dva (minimální T 1 a maximální T 2 ) mezi kterými mže hodnota gradientu kolísat (napíklad vlivem šumu). V pípad, že gradient posuzovaného pixelu se nachází mezi zvolenými prahy, je oznaen jako hrana pouze v pípad, že sousedí s bodem, který již byl uznán jako hrana. Další metody Obr. 27. Detekce hran Cannyho detektorem, =1,35, T 1=20, T 2 =100 Výše rozebraný pístup k rozpoznávání obrazu založený na detekci hran není pochopiteln jediný. Mezi další významné metody patí napíklad Detektory roh v obraze. Mezi tyto detektory patí napíklad Moravec corner detector, který je základem dalších detektor jako jsou Stephens-Harris detector nebo Kanade-Lucas-Tomasi (KLT) detector. Tyto detektory lze dobe využít napíklad pi automatickém vytváení panoramatických fotografií. Více viz [18], [19], [20], [21], [22]. V pípad, že vstupní obraz je velmi zašumn a potebujeme detekovat pímky v obraze, je velmi vhodné použít Houghovu transformaci, která je založena na transformaci z Kartézského souadnicového systému do polárního. Tato transformace byla zobecnna a je využitelná i pro detekci složitjších objekt. Více viz [10]. Další významnou skupinou jsou metody založené na Diskrétní Fourierov transformaci, zejména na její poítaov optimalizované podob (FFT). Tyto metody obecn umožují pevést asové (plošné) prbhy signál na frekvenní a zpt. Signál ve frekvenní domén lze poté zpracovat pomocí propustí a jiných typ filtr jejichž popis pesahuje rozsah této práce, viz [11]. 22

Využití FFT bylo v minulosti limitováno znanou poetní nároností, která však vedla k rozvoji specializovaného hardware jako jsou signálové procesory (DSP). Velkým píslibem do budoucna jsou hradlová pole Xilinx Virtex s desítkami zabudovaných DSP ez umožujících paralelní zpracování. 2.4. Segmentace Segmentace obrazu [1], [2], [3] je jeho dlení na oblasti, jejichž vlastnosti jsou v uritých ohledech stejnorodé. Typickou úlohou segmentace je odlišit objekty zájmu od sebe a také od zbývajících objekt nebo pozadí. Existuje ada metod, které lze pi segmentaci využít. Mezi základní patí metody založené na zkoumání histogramu (k urení prahu pi prahování), další zkoumají podobnost, nebo shodu pixel v okolí zkoumaného pixelu (tzv. region growing), nebo naopak rozdíly mezi sousedícími pixely. Region growing (connected components labeling) Pi obarvování objekt (neboli obohacování obrazu o pseudobarvy) máme na vstupu binární pedzpracovaný, který postupným procházením pomocí obarvovací masky rozdlíme, v tomto pípad obarvíme, na jednotlivé objekty. Obarvovací maska má mže mít rzné tvary (záleží na rastru a povolených smrech pohybu po rastru). Obr. 28. Obarvovací masky pro 4-okolí a 8-okolí Pi obarvování mže nastat problém pi uritých tvarech objekt (napíklad písmena U, V). Proto je poteba segmentovaný obraz projít znovu a zkontrolovat správnost segmentace. Obr. 29. Problém u nkterých tvar Obarvováním oblastí také automaticky poítáme objekty v obraze. Poet objekt je roven nejvyšší hodnot použité pi obarvování. 23

Obr. 30. Obraz obohacený o pseudobarvy Štpení a spojování oblastí Pi implementaci tohoto algoritmu musíme obraz rozdlit do skupin a poté zkoumáme, zdali jsou sousedící oblasti stejnorodé. K tomu mžeme použít napíklad zkoumání podobnosti jas píslušných segmentu. V pípad, že jasy sousedících segment jsou stejné, mžeme je spojit dohromady v jeden. V pípad, že uvnit segmentu je rozdílný jas, znamená to že segment prochází pes rozhraní dvou oblastí a proto jej rozštpíme. 2.5. Popis segmentovaného obrazu Ped dalším zpracováním obrazu se musíme pokusit co nejlépe popsat objekty zájmu. K charakterizaci získaných objekt mžeme použít adu primitivních metod popisujících jejich tvar, velikost, texturu a další vlastnosti [1]. Velikost Spoítáme jako sumu všech pixel zkoumané oblasti. n v i0, i( P i (37) Smr Smr urujeme pro podlouhlé objekty a urujeme jej podle delší strany opsaného obdélníka. 24

etzové kódy etzové (Freemanovy) kódy se skládají z úseek jednotkové délky. Tyto úseky jsou oznaeny ísly, podle toho, jak jsou orientovány. Pi reprezentaci objekt pomocí etzových kód vyjdeme z jednoho uritého bodu a pohybujeme se po hranici objektu. Tento pohyb poté zaznamenáváme pomocí ady ísel (etzový kód). Výhodné je tento kód derivovat, protože poté se stává nezávislým na natoení tlesa, což mžeme využít pi srovnávání. Obr. 31. Matice pro 4-okolí, 8-okolí a vzorový obrazec etzový kód: 1110101030333032212322 Derivace: 1003131331300133031130 Derivace etzového kódu se vypote jako první diference kódu mod 4 nebo 8 a udává nám kolikrát je nutné obraz otoit o 90 respektive o 45 vlevo, abychom mohli pokraovat v pohybu. etzové kódy mohou být dobe uplatnny pi výpotu délky hranice objektu (zde je teba mít na pamti, že délka hranice v D 4 je u stejného objektu vždy vtší než délka v D 8 ). Nkdy se tvar ásti hranice opakuje. V tchto pípadech je výhodné popisovat hranici etzovým kódem po tchto stejných ástech. etzový kód: C, B, E, C, B, D, B, A, B Obr. 32. Popis obrazce pomocí Letter codes 25

Kompaktnost Kompaktnost se spoítá jako podíl druhé mocniny velikosti hranice a velikosti zkoumané oblasti. Nejkompaktnjší tvar má kruh. c 2 B a (38) Obr. 33. Nekompaktní tvar Obr. 34. Kompaktní tvar Výstednost Výstednost, neboli excentricita je pomr délek nejdelších na sebe kolmých ttiv objektu. e max max A B (39) Obr. 35. Excentricita 26

Podlouhlost Podlouhlost vyjaduje pomr mezi délkou a šíkou obdélníku opsaného objektu. Ze všech možných obdélník se vybere ten s nejmenším obsahem. Pro urychlení výpotu ale obdélník natáíme po vtších krocích (napíklad 15 ). el b a (40) Obr. 36. Podlouhlý tvar Obr. 37. Nepodlouhlý tvar Pravoúhlost Pi pravoúhlosti opisujeme stejn jako u podlouhlosti objektu obdélník, ale jako míru podlouhlosti oznaíme maximální hodnotu F k. Hodnoty F k vypoteme jako podíl velikosti zkoumané plochy a plochy opsaného obdélníku. F k a a r (41) RTS invariant moments Jasová funkce obrazu se interpretuje jako hustota pravdpodobnosti dvourozmrné náhodné veliiny. Její vlastnosti mžeme vyjádit pomocí statistických charakteristik moment. Momenty mžeme použít pro popis jak šedých obraz, tak binárních. Obecn moment definujeme jako mpq ) ) ** ) ) p q x y f ( x, y) dxdy (42) 27

Kde f(x, y) je jeden pixel obrazu a p + q je ád momentu. Protože obraz je diskrétní jasová funkce, poítáme se sumami. m pq ) ) i ) j ) p q i j f ( i, j) (43) Obecné momenty ale nejsou invariantní vi posunutí, zmn mítka nebo natoení. Vi posunutí jsou invariantní centrální momenty. ) ) p q ( i x ) ( j y ) f ( i, j) pq c c i ) j ) Kde x c a y c jsou souadnice stedu objektu (centroid) a spoítáme je jako x c m m 10 00 y c m m 01 00 (44) (45) Pokud se jedná o binární obraz, m 00 reprezentuje poet pixel tvoících popisovaný objekt. Momenty mohou být rozšíeny i o invariantnost vi zmn mítka., pq pq + ( 00) + p q 1 2 (46) (47) Dále mohou být momenty rozšíeny o invariantnost vi natoení. Druhé momenty jsou definovány jako - 1, 20, 02 2 - (,, ) 4, 2 20 02 11 (48) Dalších pt moment je známo pro tetí smíšené momenty. Pro vtšinu spoítaných hodnot chybí interpretace, pouze charakterizují popisovaný objekt. Výhodné je využít jejich invariantních vlastností ke klasifikaci objekt. Pro charakterizaci objekt používáme momenty nižších ád. Pi použití moment vyšších ád dochází ke zkreslení, protože jsou velmi citlivé na šum. 28

Další metody Uvedené možnosti popisu rozpoznávaného objektu samozejm nejsou jediné. Za zmínku jist stojí popis pomocí jas, B-spline kivek, i aktivních kontur. Více viz [1], [2], [3]. 2.6. Klasifikace Poté, co se nám podailo oddlit objekty zájmu od pozadí, lokalizovat je a popsat pomocí jejich vhodných elementárních vlastností, nutn dospjeme do fáze, kdy dané objekty potebujeme rozpoznat, neboli klasifikovat [12], [13], [14]. Klasifikace je proces, pi kterém zaazujeme objekty na základ uritého rozhodovacího pravidla do (vtšinou) pedem známých tíd. Objekty které jsou obsažené v jedné tíd jsou si mnohem podobnjší než mezi jednotlivými tídami navzájem. Klasifikátory dlíme do dvou základních skupin píznakové a strukturální. U píznakových rozpoznáváme pomocí píznak, což je skupina íselných charakteristik kterými je rozpoznávaný objekt popsán. Strukturní rozpoznávání je založeno na kvalitativním popisu rozpoznávaného objektu. Vlastní rozpoznávání je poté založeno na syntaktické analýze nadefinované gramatiky. Rozhodovací stromy Rozhodovací stromy (Decision trees) [16] patí mezi nejjednodušší a nejoblíbenjší klasifikátory. Jejich nejvtší výhoda je v rychlosti algoritmu (strom, který procházíme pomocí booleovské logiky), dále v jejich pehlednosti, jednoduchosti a snadné rozšiitelnosti. Rozhodovací pravidla jsou uena na základ trénovaní množiny, která zahrnuje informace o výsledné tíd. Jedná se tedy o uení s uitelem. Pi vytváení rozhodovacích strom mžeme využít algoritm ID3 a C4.5. barva svtla na semaforu zelená oranžová ervená ne vidíš policistu? ano je stj Obr. 38. Píklad rozhodovacího stromu: bžné chování na kižovatce 29