Fakulta dopravní ČVUT v Praze. Identifikace zóny zájmu v obraze



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

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

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

DETEKCE HRAN V BIOMEDICÍNSKÝCH OBRAZECH

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ /14

Operace s obrazem II

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

U Úvod do modelování a simulace systémů

7. Rozdělení pravděpodobnosti ve statistice

Omezení barevného prostoru

Práce na počítači. Bc. Veronika Tomsová

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

Světlo, které vnímáme, představuje viditelnou část elektromagnetického spektra. V

Zpracování obrazů. Honza Černocký, ÚPGM

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

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

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

Matematické modelování dopravního proudu

Zpracování obrazu a fotonika 2006

Digitalizace a zpracování obrazu

Pokročilé operace s obrazem

Úloha - rozpoznávání číslic

Přednáška kurzu MPOV. Barevné modely

13 Barvy a úpravy rastrového

OSA. maximalizace minimalizace 1/22

Úvod do modelování a simulace. Ing. Michal Dorda, Ph.D.

Analýza dat na PC I.

Automatické rozpoznávání dopravních značek

Teorie systémů TES 1. Úvod

ZPRACOVÁNÍ OBRAZU přednáška 4

Rozšíření bakalářské práce

Zpracování obrazu v FPGA. Leoš Maršálek ATEsystem s.r.o.

Zpracování náhodného výběru. Ing. Michal Dorda, Ph.D.

Algoritmy a struktury neuropočítačů ASN - P11

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

základní vlastnosti, používané struktury návrhové prostředky MATLAB problém kvantování koeficientů

Úvod do počítačové grafiky

Kde se používá počítačová grafika

CW01 - Teorie měření a regulace

Popisná statistika kvantitativní veličiny

Spektrální charakteristiky

Automatická detekce anomálií při geofyzikálním průzkumu. Lenka Kosková Třísková NTI TUL Doktorandský seminář,

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

12 Metody snižování barevného prostoru

GIS Geografické informační systémy

Metody zvýrazňování obrazu III. Vícepásmová zvýraznění. Spektrální příznaky. Příznakový prostor. Podstata vícepásmových zvýraznění

Náhodné (statistické) chyby přímých měření

Meo S-H: software pro kompletní diagnostiku intenzity a vlnoplochy

25. DIGITÁLNÍ TELEVIZNÍ SIGNÁL A KABELOVÁ TELEVIZE

Náhodné chyby přímých měření

OBRAZOVÁ ANALÝZA. Speciální technika a měření v oděvní výrobě

DIGITÁLNÍ FOTOGRAFIE

1. Vlastnosti diskretních a číslicových metod zpracování signálů... 15

Moderní technologie ve studiu aplikované fyziky CZ.1.07/2.2.00/ Množiny, funkce

2010 Josef Pelikán, CGG MFF UK Praha

PRINCIPY POČÍTAČOVÉ GRAFIKY

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

Základy popisné statistiky

Restaurace (obnovení) obrazu při známé degradaci

Úvod do zpracování signálů

Teorie systémů TES 3. Sběr dat, vzorkování

Ing. Petr Hájek, Ph.D. Podpora přednášky kurzu Aplikace umělé inteligence

Modelování a simulace Lukáš Otte

MATEMATIKA Maturitní témata společná část MZ základní úroveň (vychází z Katalogu požadavků MŠMT)

Návod k použití softwaru Solar Viewer 3D

Optika v počítačovém vidění MPOV

Bezpečnostní systémy - rychlostní kamery Identifikace SPZ a RZ.

Barevné modely, práce s barvou. Martin Klíma

7 Transformace 2D. 7.1 Transformace objektů obecně. Studijní cíl. Doba nutná k nastudování. Průvodce studiem

SIGNÁLY A LINEÁRNÍ SYSTÉMY

Zobrazování barev Josef Pelikán CGG MFF UK Praha.

Porovnání dvou výběrů

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

INOVACE ODBORNÉHO VZDĚLÁVÁNÍ NA STŘEDNÍCH ŠKOLÁCH ZAMĚŘENÉ NA VYUŽÍVÁNÍ ENERGETICKÝCH ZDROJŮ PRO 21. STOLETÍ A NA JEJICH DOPAD NA ŽIVOTNÍ PROSTŘEDÍ

VYUŽITÍ PRAVDĚPODOBNOSTNÍ METODY MONTE CARLO V SOUDNÍM INŽENÝRSTVÍ

Stanovení nejistot při výpočtu kontaminace zasaženého území

Návrh a vyhodnocení experimentu

Zobrazovací jednotky a monitory

Požadavky na konkrétní dovednosti a znalosti z jednotlivých tematických celků

Světlo. Podstata světla. Elektromagnetické záření Korpuskulární charakter. Rychlost světla. Vlnová délka. Vlnění, foton. c = ,8 km/h

Analýza pohybu. Karel Horák. Rozvrh přednášky: 1. Úvod. 2. Úlohy analýzy pohybu. 3. Rozdílové metody. 4. Estimace modelu prostředí. 5. Optický tok.

Detekce kartografického zobrazení z množiny

11 Zobrazování objektů 3D grafiky

Mgr. Ladislav Zemánek Maturitní okruhy Matematika Obor reálných čísel

Diplomová práce Prostředí pro programování pohybu manipulátorů

TÉMATICKÝ OKRUH Softwarové inženýrství

Projekční algoritmus. Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění. Jan Klíma

ZÁKLADY AUTOMATICKÉHO ŘÍZENÍ

GIS Geografické informační systémy

Číselné charakteristiky a jejich výpočet

Simulace zpracování optické obrazové informace v Matlabu. Petr Páta, Miloš Klíma, Jaromír Schindler

Cvičná bakalářská zkouška, 1. varianta

KOMPRESE OBRAZŮ. Václav Hlaváč, Jan Kybic. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání.

Teorie systémů TES 5. Znalostní systémy KMS

2. Množiny, funkce. Poznámka: Prvky množiny mohou být opět množiny. Takovou množinu, pak nazýváme systém množin, značí se

Číslicová filtrace. FIR filtry IIR filtry. ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Fakulta elektrotechnická

PRINCIPY POČÍTAČOVÉ GRAFIKY metodický list č. 1

DIGITÁLNÍ OBRAZ. Obrázky (popř. slajdy) převzaty od

Semestrální projekt. Vyhodnocení přesnosti sebelokalizace VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ. Fakulta elektrotechniky a komunikačních technologií

Neuronové časové řady (ANN-TS)

Transkript:

Fakulta dopravní ČVUT v Praze Bohumil Kovář Identifikace zóny zájmu v obraze 1998

Prohlášení Čestně prohlašuji, že jsem diplomovou práci vypracoval samostatně, s použitím uvedené literatury a za přispění vedoucího diplomové práce....

Fakulta dopravní ČVUT v Praze Identifikace zóny zájmu v obraze Bohumil Kovář 1998 Klíčová slova: počítačové vidění, zpracování obrazu, zóna zájmu, segmentace, autonomní vozidlo, dopravní značky, silnice Abstrakt Tato práce je součástí projektu Automatické rozpoznání a klasifikace dopravních značek RS 2. Cílem této diplomové práce je navrhnout vhodnou metodu pro řešení identifikace zóny zájmu v obraze. Zóna zájmu představuje tu oblast v obraze, kde je možné s velkou pravděpodobností očekávat svislé dopravní značení. Zóna zájmu je v obraze rozpoznána na základě segmentace silnice. V této práci jsou popsány základní segmentační techniky a jejich vhodnost pro řešení dané problematiky. Metoda identifikace zóny zájmu, popsaná v této práci, byla experimentálně ověřena na reálných datech dopravních scén. V závěru této práce je uveden vlastní algoritmus a jeho implementace.

Obsah 1 Úvod 11 2 Počítačové vidění 14 2.1 Základní pojmy................................ 14 2.2 Digitální obraz................................ 15 2.3 Operace předzpracování obrazu....................... 16 2.4 Popis objektů v obraze............................ 17 3 Zóna zájmu filosofie 18 3.1 Projekty autonomních vozidel........................ 19 3.1.1 Projekt CAPC............................ 20 3.1.2 Projekt VaMoRs........................... 22 4 Segmentace zóny zájmu 24 4.1 Segmentace - úvod.............................. 24 4.2 Segmentační algoritmy............................ 25 4.2.1 Segmentace prahováním....................... 25 4.2.2 Segmentace prostřednictvím hranové detekce........... 28 4.2.3 Barevná segmentace......................... 30 4.3 Algoritmus.................................. 38 4.3.1 Stanovení homogenity povrchu vozovky.............. 39 4.3.2 Segmentace silnice v dopravní scéně................ 41 4.3.3 Revize výsledku segmentace..................... 45 4.3.4 Geometrický model a stanovení zóny zájmu............ 46 5 Experimenty a výsledky 47 5.1 Výsledky................................... 48 6 Implementace 53 6.1 Objektově orientovaný přístup....................... 53 6.2 Aplikace Zone................................. 54 7 Závěr 56 8

Seznam obrázků 1.1 Systém automatické klasifikace dopravních značek RS 2.......... 12 3.1 Paralelní architektura systému VaMoRs.................. 23 4.1 Určení hodnoty prahu z histogramu jasu.................. 26 4.2 Histogram intenzit jasu celého obrazu a povrchu silnice.......... 27 4.3 Predikce okraje silnice............................ 28 4.4 Výsledky segmentace prahováním (obrázek 012.bmp a 041.bmp).... 29 4.5 Výsledky hranové detekce.......................... 29 4.6 Grafická reprezentace modelu RGB..................... 31 4.7 Grafická reprezentace modelu HSV..................... 32 4.8 Definice funkce s(p) a konstanty D pro S = 107.............. 34 4.10 Velikost a pozice testované oblasti..................... 39 4.9 Blokové schema algoritmu segmentace zóny zájmu v obraze....... 40 4.11 Zóna zájmu v obraze............................. 46 5.1 Příklad scén, ve kterých zóna zájmu nebyla stanovena.......... 48 5.2 Výsledky segmentace zóny zájmu v obraze neznačené silnice...... 49 5.3 Výsledky segmentace zóny zájmu v obraze značené silnice....... 50 5.4 Výsledky segmentace zóny zájmu v obraze město............ 51 5.5 Výsledky segmentace zóny zájmu v obraze město............ 52 6.1 Aplikace segmentace zóny zájmu Zone.................. 54 6.2 Ovládací panel programu Zone....................... 55 9

Seznam tabulek 3.1 Použité senzory a jejich funkce....................... 20 4.1 Popisné statistiky............................... 27 4.2 Tabulka základních barev v systému RGB................. 31 4.3 Vztah mezi hodnotou H a jménem barvy v modelu RGB......... 32 4.4 Úspěšnost segmentace při použití různých příznaků............ 35 10

Kapitola 1 Úvod Druhá etapa studia na Fakultě dopravní ČVUT je projektově orientovaná. To znamená, že skupina studentů v rámci výuky pracuje pod odborným vedením na konkrétním problému a tím získává teoretické, ale i praktické poznatky, které využije v závěru studia při vypracování diplomové práce. V roce 1995 jsem se zapojil projektu Zpracování obrazové informace v dopravě, společného projektu Katedry aplikované matematiky FD ČVUT a Katedry teorie obvodů FEL ČVUT. Projekt je podporován Grantovou agenturou ČVUT a firmou Texas Instruments Deutschland GmbH/Freising. V průběhu následujících dvou let jsem se seznámil s mnoha algoritmy zpracování obrazu a počítačového vidění. Na diplomové práci jsem pracoval od března roku 1997. Rozvoj výpočetní techniky v posledním desetiletí dvacátého století umožnil realizaci problémů a rozvoj technologií, které byly ještě před několika lety pro svou komplikovanost neuskutečnitelné. Tento rozvoj se samozřejmě týká i dopravy a je zvláště patrný v silniční dopravě. V Evropě existuje několik projektů podporovaných Evropskou unií, které mají zavedením nových technologií zvýšit bezpečnost automobilové dopravy a zároveň zvýšit propustnost infrastruktury, snížit zatížení životního prostředí a celkově zvýšit ekonomiku dopravy. Obdobné projekty probíhají i v Japonsku a USA. Projekt Zpracování obrazové informace začal na Fakultě elektrotechnické ještě před rokem 1995. V té době Tomáš Zikmund použil algoritmus založený na lokálních orientacích pro detekci geometrických tvarů, zvláště s ohledem na dopravní značky, v ploše obrazu. [12]. Tento algoritmus tvoří základ systému RS 2 Road Sign Recognition System. Systém RS 2 je možné rozložit na tři samostané subsystémy se společným rozhraním. Jedná se o Identifikace zóny zájmu v obraze tento subsystém ve vstupním obraze vyznačí regiony, ve kterých je možné s velkou pravděpodobností očekávat dopravní značky, Rozpoznání tvaru dopravních značek tento modul ve vstupním obraze nachází geometrické tvary shodné s dopravnímy značkami, a jejich polohu a velikost poskytuje poslednímu modulu, Klasifikace dopravních značek tento modul ověřuje, zda nalezený geometrický tvar reprezentuje dopravní značku. V kladném případě provede její úplnou klasifikaci. Cílem této diplomové práce je popsat vývoj algoritmů Identifikace zóny zájmu v obraze tak, jak jsou implementované v systému RS 2. Zónou zájmu rozumím ty oblasti, 11

Obrázek 1.1: Systém automatické klasifikace dopravních značek RS 2 12

kde se dle norem ČSN 01 8020, ČSN 73 6101 a ČSN 73 6110 může vyskytovat svislé dopravní značení. Dle normy ČSN 73 6101 se dopravní značky osazují: 1. na značkových sloupcích nebo konstrukcích umístěných na nezpevněných plochách nebo svazích tělesa silniční komunikace, 2. na portálových konstrukcích nad jízdnímy pásy, které musí respektovat průjezdné výšky a bezpečnostní vzdálenosti podle ČSN 73 6201. Přitom nesmí žádná jejich část zasahovat do volné (popř. do dílčí volné) šířky nebo volných výšek silniční komunikace. Při definování problému rozpoznávání dopravních značek byla problematika omezena na bod 1, na pravou část silniční komunikace. Algoritmy identifikace zóny zájmu byly navržené s ohledem na snadné rozšíření, tak aby pokryly celou problematiku osazování dopravních značek dle normy ČSN 73 6101. Zóna zájmu je definována na základě segmentace povrchu vozovky a geometrického modelu silnice v dopravní scéně. Ostatní projekty, které řeší problémy autonomních vozidel (kapitola 3.1) přistupují k rozpoznání silnice odlišně. Informace o poloze silnice v obraze je získána na základě hranové detekce vodícího proužku. Tím se problematika zužuje pouze na dobře značené silnice s nepoškozeným povrchem. Po prostudování již implementovaných metod jsem se rozhodl problematiku rozšířit o segmentaci neznačených silničních komunikací, s tím, že na povrch (texturu) vozovky nejsou kladeny žádné speciální požadavky 1. Vyvinuté algoritmy jsou natolik obecné, že je je možné po drobných úpravách použít i pro řešení dalších problémů autonomních vozidel (navigace, steering,... ). Všechny testované algoritmy popsané v kapitole 4.2, byly vyvíjené tak, aby jejich výpočetní nároky byly obdobné, nebo nižší, než v algoritmech použitých v konkurenčních projektech [14], [13]. Algoritmy, které tvoří systém RS 2, byly navrhovány s přihlédnutím k implementaci v reálném čase prostřednictvím signálového procesoru firmy Texas Instruments TMS320C80. Při vývoji byl pro dílčí simulace použit systém Matlab, vlastní implementace je provedena v jazyce C/C++ a to zejména pro relativně snadnou přenositelnost algoritmů do prostředí signálového procesoru. V současné době je dokončen vývoj algoritmů v programovacím jazyku C++ a probíhá paralelizace aplikace a implementace v prostředí signálového procesoru. 1 vlastní definice problému a omezení problematiky je uvedeno v kapitole 4.3 13

Kapitola 2 Počítačové vidění Cílem této kapitoly není globální výklad základních pojmů a algoritmů počítačového vidění, ale definování pojmů a elementárních algoritmů, které budou používané v následujících kapitolách. Detailní výklad počítačového vidění a zde popisovaných témat je možné získat např. v [3], [4], [7]. 2.1 Základní pojmy Počítačové vidění je disciplína, která se snaží technickými prostředky alespoň částečně napodobit lidské vidění. Zrak je pro člověka zdrojem převážné většiny informací o okolním světě. S tím souvisí i to, že vizuální informační komplex je nejsložitější ze všech smyslových komplexů lidského mozku ([25] str. 169-189). Teoreticky, ale i technicky jsou zvládnuty jen velmi jednoduché problémy. Postupy počítačového vidění jsou značně složité. Každý algoritmus zpracování a interpretace obrazu je obvykle možné dekomponovat na nižší a vyšší úroveň. Cílem nižší úrovně je analyzovat vstupní dvojrozměrná obrazová data číselného charakteru a najít kvalitativní informace potřebné pro algoritmy vyšší úrovně. Postupy nižší úrovně se používají například pro potlačení šumu v obraze, rozpoznávání jednoduchých obrazců v obraze apod. Pro nižší úroveň se často používá název zpracování obrazu (image processing). Postupy vyšší úrovně jsou typické použitím náročných algoritmů expertních systémů a technik umělé inteligence. Vyšší úroveň je označována jako počítačové vidění (computer vision). Postup zpracování a rozpoznání obrazu je možné dekomponovat do několika základních kroků. Jednotlivé úrovně zpracování obrazu spolu sovisejí a je možné říci, že bez kvalitních algoritmů nižší úrovně by nebylo možné provést postupy vyšší úrovně, zvláště pak porozumění obsahu obrazu. Základnímy kroky zpracování obrazu jsou: 1. snímání a digitalizace obrazu, 2. předzpracování 3. segmentace obrazu 4. popis objektů 5. porozumění obsahu obrazu. 14

Prvním krokem ve zpracování obrazu je snímání, digitalizace a uložení obrazu v číselné podobě do počítače. Při snímání se převádějí vstupní optické veličiny na elektrický signál spojitý v čase. Vstupní optickou veličinou může být jas, intenzita tepelného nebo jiného záření. Snímat je možné v jednom nebo více spektrálních pásmech. Digitalizací se převádí vstupní spojitý signál do diskrétní podoby. Vstupní signál je popsán funkcí f(i, j), jejíž funkční hodnota představuje velikost jasu (nebo jiné veličiny). Tento signál je vzorkován a kvantován a výsledkem je matice přirozených čísel, která popisuje obraz. Jednomu prvku této matice se říká obrazový element (picture element pixel). Druhým krokem je předzpracování obrazu. Cílem předzpracování je potlačit šum a jiné poruchy vzniklé při přenosu a digitalizaci. Předzpracováním je také možné zvýraznit pro nás zajímavé (pro další algoritmus důležité) rysy obrazu. Třetím a asi nejtěžším krokem postupu zpracování obrazu je segmentace, která umožňuje v obraze vyhledat objekty, které jsou pro nás z pohledu dalšího zpracování zajímavé. Při segmentaci se používá znalosti interpretovaného obrazu (semantika). Segmentaci a segmentačním algoritmům bude věnována kapitola 4.2. Čtvrtým krokem postupu je popis nalezených objektů v obraze. Lze je popsat kvantitativně za pomoci souboru číselných charakteristik nebo kvalitativně pomocí relací mezi jednotlivými objekty. Posledním krokem v tomto postupu je porozumění obsahu obrazu. Ve skutečnosti se většinou jedná pouze o klasifikaci segmentovaných objektů do několika tříd. Porozumění obrazu nebo proces rozhodování na základě informací obsažených v obraze je v současné době možný pouze u několika triviálních problémů (ve srovnání se schopnostmi člověka). 2.2 Digitální obraz Každý obraz může být popsán dvourozměrnou funkcí f(x, y) jejíž funkční hodnota popisuje hodnotu jasu nebo jiné optické veličiny na souřadnicích x a y. Funkci f(x, y) se obvykle říká obrazová funkce. V této práci bude digitální obraz reprezentován jako F P Q = [f(x, y)] P Q (2.1) kde P Q jsou rozměry obrazu a f(x, y) G L = {0, 1,..., L 1} je množina funkčních hodnot. Většina systémů pro digitální zpracování obrazu používá kvantování do L stejných intervalů. Pro reprezentaci informace o obrazovém elementu většinou postačuje použití 8 bitů (pro monochromatický obraz). Pak L = 2 8 = 256. Pouze při zpracování barevného obrazu se jeden vzorek reprezentuje 16, 24 nebo dokonce 32 bity. V případě, že byl vstupní obraz snímán v několika spektrálních pásmech (nejčastěji RGB) pak každé spektrální pásmo budeme popisovat obrazovou funkcí f i (x, y), kde i {R, G, B}. Důležitou informaci o digitálním obrazu udává vzdálenost mezi dvěma obrazovými elementy se souřadnicemi (i, j) a (k, l). Můžeme ji definovat několika způsoby na základě teorie metrických prostorů. Intuitivní a v matematice obvyklá Euklidova vzdálenost D E = (i k) 2 + (j l) 2 (2.2) je oproti ostatním metrikám výpočetně náročnější, ale její použití přináší lepší výsledky ve srovnání s definicemi D 8 = max{ i k, j l } (2.3) 15

D 4 = i k + j l (2.4) Významnou lokální informací o obrazu lze získat pomocí hran. Hrana je vlastností obrazového elementu a jeho lokálního okolí. Je určena velikostí a směrem. Velikost odpovídá modulu gradientu spojité obrazové funkce v příslušném pixelu a gradient ukazuje směr největšího růstu obrazové funkce (t.j. od černé k bílé). Za předpokladu, že objekty v obraze můžeme charakterizovat jako množiny obrazových elementů s přibližně stejným jasem, pak hranice objektů jsou v místech s významnou změnou jasu. Pro detekci hran v obraze slouží například gradientní operátory [3]. Základní představu o rozdělení jednotlivých jasových úrovní získáme pomocí histogramu. Histogram jasu je vektor (v případě barevného obrazu matice) jehož počet prvků je roven počtu jasových úrovní. Hodnota každého prvku odpovídá četnosti bodů příslušného jasu v obraze. Histogram bývá zobrazován jako sloupcový graf. Jedná se o nejsnažší metodu, pomocí které získáme přehled o rozložení jasu (případně barev) v obraze. Získané informace je možné využít v předzpracování obrazu, případně při segmentaci. 2.3 Operace předzpracování obrazu Předzpracování obrazu je společný název pro operace nižší úrovně. Cílem bývá zvláště potlačení šumu a zvýraznění informace, která je důležitá pro sémantický popis obrazu. Jednou z operací lokálního předzpracování je filtrace obrazu. Podle účelu je možné filtraci rozdělit na dvě skupiny vyhlazování obrazu (potlačení šumu) a gradientní operace (zvýrazňování hran). Lokální předzpracování přiřazuje výsledný jas bodu na základě výpočtů jasu v lokálním okolí. Tento výpočet (transformace) může být lineární nebo nelineární. Lineární kombinace počítají výslednou hodnotu jasu v bodě (i, j) jako lineární kombinaci jasů v okolí O vstupního obrazu g() s váhovými koeficienty h() f(i, j) = (m,n) O h(i m, j n)g(m, n). (2.5) Vztah (2.5) je dvojrozměrná diskrétní konvoluce s konvolučním jádrem h. Toto konvoluční jádro bývá někdy označováno jako konvoluční maska, v teorii filtrů jako impulsní odezva filtru. Výpočetně nejsnažší operací pro vyhlazování obrazu je prosté lokální průměrování. Filtrace průměrováním je příklad diskrétní konvoluce. Například pro lokální okolí 3 3 je konvoluční maska h = 1 9 1 1 1 1 1 1 1 1 1 (2.6) Hranice objektů v obraze (hrany) se vyznačují náhlými změnami jasové funkce. Operátory pro detekci a ohodnocení hran v digitálním obraze [4] vycházejí z parciálního diferenciálního operátoru. Velikost gradientu je dána vztahem ( f ) 2 grad f = + x ( ) f 2 (2.7) y 16

druhou složkou určující gradient je směr ( ) f φ = arctan x / f, y f y 0. (2.8) V digitálním obrazu jsou gradientní operátory aproximovány diskrétní konvolucí. Mezi nejčastěji používané operátory patří Robertsův operátor, Laplaceův operátor a Sobelův operátor. Konvoluční maska Sobelova operátoru pro dva z osmi směrů je dána konvolučními maticemi h 1 = 1 2 1 0 0 0 1 2 1, h 2 = 1 0 1 2 0 2 1 0 1. (2.9) V algoritmech zpracování obrazu se gradientní operátory používají zvláště na vyhledávání hran a ostření obrazu. Vhodný výběr konvolučního jádra bývá založen na experimentech, popř. znalosti kmitočtových vlastností obrazového signálu. Srovnání výpočetní náročnosti zde uvedených gradientních operátorů a dalších nejvíce používaných je možné nalézt v [5]. 2.4 Popis objektů v obraze Popis objektů 1 v obraze je důležitý pro následující algoritmy, zvláště pak pro rozpoznávání. Existuje řada metod, které je možné použít pro popis nalezených objektů. Mezi ně patří popis hranic objektů, popis oblasti (traru) a popis povrchu (textury). Hranice objektů je ve většině případů možné aproximovat pomocí úseček nebo polynomů. Tomuto popisu se říká vektorizace. K popisu hranic složitějších objektů se používají speciální abecedy s vlastní sematikou. Popis tvaru oblasti bývá velice důležitý pro klasifikaci objektů. K popisu tvaru se používají základní atributy objektu jako velikost, jasové vlastnosti, excentricita, podlouhlost, pravoúhlost, nekompaktnost a v případě statistického popisu momenty. Textura [6] představuje v obraze (nebo jeho části) relativní pravidelnost svázanou z elementů. Tyto elementy jsou nazývány texely texturní elementy. Pro popis textury se používají statistické metody a frekvenční analýza obrazové funkce. 1 Segmentačním algoritmům, které se používají pro extrakci objektů je věnována kapitola 4.2 17

Kapitola 3 Zóna zájmu filosofie Pro algoritmy počítačového vidění je typická jejich značná výpočetní náročnost. I velmi jednoduché aplikace svými požadavky často převyšují možnosti konvenčních počítačů. Například běžný monochromatický televizní signál digitalizovaný do obrazu o rozlišení 512 512 obrazových bodů při 256 jasových úrovních a 25 snímcích za sekundu představuje datový tok 6.5 MB/s. Kromě značného datového toku algoritmy počítačového vidění často obsahují operace jako je konvoluce a výpočty s rozsáhlými maticemi. Tyto operace jsou na konvenčních počítačích relativně pomalé a bez speciálních procesorů je velmi těžké programovat aplikace zpracování obrazu tak, aby pracovaly v reálném čase. I to je příčinou toho, že se v aplikacích počítačového vidění zpracovávají často jen statické obrazy. Snížení datového toku a tím i výpočetních nároků může být docíleno několika způsoby. Vhodnou metodou bývá podvzorkování obrazu a tím snížení rozlišení. Snížením rozlišení ovšem ztrácíme detaily, a tím zhoršujeme rozpoznávací schopnost dalších algoritmů, zvláště pak klasifikaci segmentovaných objektů. Dalším řešením tohoto problému může být použití pyramidální struktury pro reprezentaci obrazu. To znamená, že obraz je uchováván v několika rozlišeních, od nejvyššího získaného kamerou až po nejnižší, získané několikanásobným podvzorkováním původního obrazu. Algoritmy počítačového vidění probíhají na nejnižším možném rozlišení a pouze v případě nutnosti přecházejí na rozlišení vyšší. Příkladem může být segmentace na objekty v nízkém až středním rozlišení a poté klasifikace do tříd v nejvyšším rozlišení. Použití pyramidální struktury rovněž umožňuje rozpoznání objektů v libovolné velikosti (je tedy invariantní vůči velikosti) [15]. Z tohoto důvodu je pyramidální struktura použita při rozpoznávání geometrických tvarů v obraze v systému RS 2. Často používanou možností je provedení analýzy obrazu a tím získání dalších informací o scéně, které mohou být použity jako apriorní informace v dalších algoritmech systému. Tyto informace mohou být získány predikcí podobně jako v systému Va- MoRs (kapitola 3.1.2), nebo segmentací, tak jako v této diplomové práci. Zónou zájmu rozumím oblasti v obraze, získané pomocí rychlých algoritmů, ve kterých je možné s velkou pravděpodobností očekávat objekty, které se snažíme rozpoznat a klasifikovat objekty zájmu. Systém RS 2 se skládá ze tří částí. Cílem je implementace algoritmů v prostředí signálového procesoru a běh systémů v reálném čase. Subsystém Rozpoznání geometrických tvarů v obraze je velmi náročný na výpočetní výkon a kapacitu operační paměti počítače. Z tohoto důvodu jsme jsme se rozhodli systém rozšířit o segmentaci zóny zájmu a tím snížit výpočetní nároky systému. 18

3.1 Projekty autonomních vozidel Celosvětově probíhá několik projektů jejichž cílem je autonomní vozidlo automobil, který je schopný bez zásahu řidiče projet stanovenou trasu. Protože se jedná o velmi komplikovaný problém, jsou v současné době řešené dílčí problémy. V následujících kapitolách budou přiblíženy některé probíhající projekty a tím i problematika autonomního vozidla. Již nyní je vyvynuto několik subsystémů autonomního vozidla, které se často označují jako DSS 1. DSS si můžeme představit jako lidského spolujezdce v automobilu sleduje řidiče, automobil, oblast před a za vozidlem, naviguje a informuje řidiče o výskytu kritických situací. Velmi dobrých výsledků bylo dosaženo v rámci evropského EU- REKA projektu PROMETHEUS (PROgraMme for a European Traffic with Highest Efficiency and Unprecedented Safety, 1986 1994). Obdobné projekty byly realizovány i v Japonsku a USA (například IVHS Intelligent Vehicles Highway System). Všechny projekty autonomních vozidel používají ve velké míře algoritmy zpracování obrazu a počítačového vidění. Mezi základní operace počítačového vidění v systémech DSS je detekce, sledování silnice a objektů na ní. Je bezpodmínečně nutné, aby všechny systémy pracovaly v reálném čase. Toho je možné dosáhnout pouze za použití těch nejvýkonnějších pracovních stanic. I z těchto důvodů ještě nejsou DSS systémy založené na algoritmech zpracování obrazu součástí automobilů. DSS je možné dále rozdělit na několik subsystémů, které plní specifické, pro provoz autonomního vozidla nutné úlohy: 1. Základní navigace sledování vodícího proužku. V probíhajících projektech (viz. následující kapitoly) se osvědčilo vodící proužek v obraze rozpoznat pomocí hranové detekce v několika oknech (viz obr. 3.1). Okna jsou umístěna v těch místech, kde je výskyt vodícího proužku předpokládán. Optimální počet oken byl na základě praktických experimentů stanoven v rozmezí 3 až 10 [14]. 2. Rozpoznání křižovatek. V této problematice bylo provedeno pouze několik experimentů. Křižovatka je nejčastěji zjednodušeně definována jako přerušený vodící proužek případně jako stop čára napříč jízdním pruhem. 3. Rozpoznání vodorovných dopravních značek. Kromě vodících proužků obsahují jízdní pruhy další značení. Jedná se o směrové šipky, parkovací značky, značení pro cyklisty a autobusy atp. Zásadním problémem je, že vodorovné dopravní značení bývá částečně zakryto ostatními automobily. O této problematice zatím bylo publikováno velmi málo článků. 4. Dopravní značky. Dopravní značky a dopravní osvětlení je umís ováno v předem známých oblastech v obraze. Z tohoto důvodu je možné v obraze vymezit subregiony, ve kterých mohou být dopravní značky na základě tvaru a barvy rychle rozpoznány a klasifikovány. 5. Rozpoznání překážek. Překážky jsou detekovány jako významná porucha v textuře vozovky v místě, kde je silnice predikována, nebo pomocí výpočtu optického toku. První způsob je výpočetně méně náročný, ale počet skutečně detekovaných 1 Driver Support System 19

překážek je nízký a naopak počet nezprávných rozpoznání vysoký. Výhodné je překážky rozpoznat na základě výpočtu optického toku, zvláště pak při použití dvou kamer. 3.1.1 Projekt CAPC Jedná se o projekt podporovaný U.S. Army Tank Automative a firmou Ford Motor Company [13].V USA dochází k dopravním nehodám z jedné třetiny na dálnicích. Téměř třetina z těchto nehod je způsobena únavou, intoxikací nebo nemocí řidiče a projevuje se vyjetím automobilu z vozovky přejezdem bílého (žlutého) vodícího proužku krajnice. Systém CAPC 2 je podpůrný palubní varovný systém, který upozorní řidiče před nebezpečím vyjetí ze silnice a v případě nutnosti aktivním zásahem do řízení upraví dráhu vozidla. To znamená, že tento systém je moderním prvkem aktivní bezpečnosti. Systém je vybaven elektronikou podporovanou algoritmy počítačového vidění, které umožňují zpracovaní obrazu do vzdálenosti 100 m před automobilem. Výpočty jsou aktualizovány desetkrát za sekundu, probíhá výpočet predikce průběhu silnice. Po porovnání s geometrickým a kinematickým modelem je získán čas potřebný k vyjetí z vozovky při nezměněné rychlosti a směru jízdy. V případě, že je tento čas menší než stanovený práh, je aktivován varovný zvukový signál. V letošním roce probíhá implementace automatické podpory řízení realizovaná brzděním kol na levé a pravé straně automobilu. I v případě intervence systému do řízení má řidič plnou kontrolu nad vozidlem. Nejedná se tedy o systém autonomního vozidla, ale o prvek aktivní bezpečnosti, který upozorňuje na nebezpečné situace a pomáhá je v kooperaci s řidičem řešit. Senzor Měření Výpočet Kamera, B&W, digitální výstup geometrie vodícího proužku výpočet času potřebného pro vyjetí z vozovky, aktualizace polohy vozidla a predikce polohy vodícího proužku Akcelerometr zrychlení dynamický model vozidla Gyroskop úhlovou rychlost otáčení ω výpočet času potřebného pro vyjetí z vozovky, aktualizace polohy vozidla Rychlost otáčení kol (z instalovaného ABS) LVDT na přední nápravě rychlost vozidla úhel natočení kol Tabulka 3.1: Použité senzory a jejich funkce výpočet času potřebného pro vyjetí z vozovky, aktualizace polohy vozidla a predikce polohy vodícího proužku výpočet času potřebného pro vyjetí z vozovky, aktualizace polohy vozidla a predikce polohy vodícího proužku 2 Crewman s Associate for Path Control 20

Systém CAPC ja tvořen jak hardwarovými tak softwarovými prostředky. Aby nebylo nutné v počáteční fázi vývoje investovat příliš mnoho financí do speciálních zařízení byla přijata tato omezení: vozidlo jede po dálnici s bílým vodícím proužkem za nízkého provozu, mimo nájezdy nebo výjezdy z dálnice, v místech, kde je bílý vodící proužek nepřerušený, experimenty jsou prováděny za denního světla, bez stínů, povrch vozovky není tvořen dlažbou, povrch vozovky je ve velmi dobrém stavu, není pokryt vodou, sněhem nebo jinými nečistotami, okraje silnice neobsahují rušivé objekty alespoň do vzdálenosti šířky automobilu, ostatní automobily na silnici se nevyskytují blíže než 50 m před automobilem. Algoritmy počítačového vidění Algoritmus pro identifikaci vodícího proužku LMS 3 byl vyvinut v Environmental Research Institute of Michigan (ERIM) tak, aby splňoval požadavky systému CAPC: 1. rozpoznání vodícího proužku až 100 m před vozidlem, za podmínek stanovených v předchozí kapitole, 2. aktualizace dat popisujících vodící proužek každých 100 ms, 3. detekce polohy vodícího proužku každé dva metry v intervalu 6 20 m před vozidlem a každých deset metrů v intervalu 30 100 m před vozidlem, 4. přepočet získaných dat vzhledem k rychlosti automobilu a geometrickému modelu vozovky. LMS systém se skládá z digitální CCD kamery Pulnix 9701 (748 484), frame-grabberu MuTech MV-1000 PCI a počítače na bázi procesoru Intel Pentium 100 MHz. Tento počítač zpracovává všechny operace počítačového vidění. Kamera je napevno umístěna uvnitř automobilu. Vodící proužek je v obraze hledán ve vzdálenosti od 6 do 20 m před automobilem. Takto získaná data jsou extrapolována až do vzdálenosti 100 m. Z matice popisující obraz jsou vybrány vektrory v j, které reprezentují horizontální řezy obrazem ve vzdálenosti j = 6, 8, 10,..., 20 m před automobilem. V těchto vektorech jsou hledány krátké sekvence místa největšího gradientu jasu. V každé sekvenci je nalezeno místo s největším jasem I max (x) a následující hodnota s minimálním jasem I min (y). Za střed vodícího proužku je považována hodnota (x + y)/2. Touto metodou jsou v každém řezu získány až čtyři možné hodnoty polohy vodících proužků, ze kterých jsou dva správné vybrány na základě výsledků v předchozím řezu a porovnáním s geometrickým modelem. Z výše popsaného algoritmu je zřejmé, že je velmi jednoduchý a funkční pouze za podmínek, které autoři stanovili. Nejedná se tedy o univerzální metodu, která by se mohla stát součástí algoritmů autonomního vozidla. Těžiště práce autorů této metody však bylo ve stanovení dynamického modelu jízdy. 3 Lane mark sensor 21

3.1.2 Projekt VaMoRs Tento projekt probíhá od roku 1986 na technické univerzitě v Mnichově a je veden profesorem Dickmannem [14]. Projekt je podporován firmou Daimler Benz AG a jeho cílem je vývoj plně autonomního vozidla. Systém VaMoRs byl poprvé prezentován v roce 1991 v Torinu a již tehdy umožňoval: 1. rozpoznání vodícího proužku i v případě zhoršených podmínek (stíny od okolních stromů na silnici), 2. řízení v noci při použití běžných světel, 3. detekce překážek až do vzdálenosti 90 m před vozidlem, 4. výpočet vzdálenosti za pomoci pouze jedné kamery, 5. při rychlosti 50 km/h bezpečné zastavení před překážkou. Systém se skládá ze dvou CCD kamer, které jsou namontovány v oblasti zpětného zrcátka. Kamery jsou vybaveny objektivy s různými ohniskovými vzdálenostmi. c irokoúhlý obraz z jedné kamery se používá pro globální analýzu scény detekci vodícího proužku a aktualizaci geometrického modelu. Detailnější obraz z druhé kamery je použit zvláště pro detekci objektů a překážek na silnici. Zpracování obrazu v reálném čase je realizováno pomocí 14 paralelně pracujících počítačů. I při takto masivní paralelní architektuře je zpracováván obraz o rozlišení pouze 256 244 8 bit. Zpracování obrazu probíhá ve třech horizontálních úrovních a skládá se ze čtyř dílčích úkolů detekce vodícího proužku, rozpoznání překážek na silnici, aktualizace modelu a navigace (řízení). Použité rozlišení obrazu vyžaduje zpracování 1.6 MB dat za sekundu. Použitím zóny zájmu, osmi oken o rozlišení 48 48, je datový tok redukován přibližně na 0.5 MB/s. Informace obsažené v zóně zájmu jsou dále zpracovávány čtyřmi počítači a tím se datový tok sníží na 140 kb/s na jeden počítač. Použitím paralelní architektury zpracování dat a implementací zóny zájmu je dosaženo běhu systému v reálném čase. Algoritmy počítačového vidění Paralelní procesory (PP1 - PP10) jsou použity pro hranovou detekci. Takto získané informace o hranách a jejich orientacích jsou nejvýznamějšími příznaky pro detekci vodícího proužku a pro rozpoznání překážek na silnici. Hranové detektory jsou softwarově implementované na standardních procesorech 80386. Vstupem do hranového detektoru je nepředzpracovaný obraz. Dickmanns v [14] uvádí, že systém produkuje špatné výsledky, v případě špatného osvětlení, nepravidelné textury nebo silně zašumělého obrázku. Závěrem poznamenává, že tyto podmínky jsou v případě reálných scén velmi časté a proto je nutné algoritmus doplnit o co nejvíce apriorních informací a kvalitní geometrický model scény. Výsledkem hranové detekce je obvykle množina možných hran a jejich orientací. Interpretace výsledků hranové detekce probíhá v procesorech GPP1 a GPP2. Na základě predikce pozice hran a jejich orientací jsou z množiny možných hran vybrány ty, které skutečně reprezentují okraj silnice. Takto získané hrany jsou dále použity pro predikci 22

Obrázek 3.1: Paralelní architektura systému VaMoRs hran v následujícím okně. Pro extrakci orientací je použito 16 kanálů, tedy rozlišení je přibližně 11 stupňů. V každém okně mohou být rozlišeny až čtyři možné hrany, tedy je třeba analyzovat a interpretovat až 32 možných hran. Popis geometrického modelu a další podrobnosti jsou uvedeny v [14]. 23

Kapitola 4 Segmentace zóny zájmu 4.1 Segmentace - úvod Segmentace obrazu je jedním z nejdůležitějších kroků v algoritmech zpracování obrazu. Segmentováním rozumíme postup, který obraz rozčlení na segmenty části obrazu, které mají určitý vztah k objektům obsaženým v obraze. Výsledkem segmentace je množina vzájemně se nepřekrývajících oblastí. V případě, že tyto oblasti jednoznačně korespondují s objekty v obraze, pak mluvíme o kompletní segmentaci. Segmentace komplexních scén je velice složitá a kompletní segmentace není v této fázi zpracování obrazu dosažitelná bez použití postupů vyšší úrovně. Rozumným cílem může být částečná segmentace, ve které oblasti získané segmentací nemusí přesně souhlasit s objekty v obraze. Výsledky získané částečnou segmentací je možné dále zpřesňovat za pomoci algoritmů vyšší úrovně, zvláště pak semantické znalosti segmentovaného obrazu. Jedním z hlavních problémů segmentace je nejednoznačnost obrazových dat, která často obsahují šum. Obraz je segmentován do oblastí na základě kritéria stejnorodosti. Vlastnosti, které tvoří kritérium stejnorodosti mohou být různé. V nejjednodušších algoritmech se jedná o hodnoty jasu nebo barvy testovaného elementu, ve složitějších algoritmech o statistickou analýzu okolí testovaného bodu. Příkladem může být segmentace na základě textury. Nejabstraktnější vlastností může být sémantická příslušnost elementu k segmentovanému objektu. V literatuře je možné nalézt mnoho definic segmentace [3], [4], [8], [9]. To je způsobeno tím, že autoři definují segmentaci na základě aplikace, ve které byla použita (segmentace objekt pozadí, segmentace na objekty,... ). Jako obecnou definici segmentace můžeme uvést například tuto: Def 1: Nech X je množina všech obrazových bodů obrazu A a P (.) logický výrok definovaný na uzavřené množině pixelů. Potom segmentací rozumíme rozdělení množiny X na N disjunktních podmnožin X i tak, aby platilo: 1. N i=1 X i = X, 2. X i, i = 1,..., N jsou uzavřené množiny, 3. P (X i ) = 1, i = 1,..., N, 4. P (X i X j ) = 0, i j, kde X i a X j. 24

Výrok P definovaný ve třetí podmínce určuje vlastnost, případně vlastnosti, segmentované oblasti, které jsou použity při segmentaci (např. homogenní jas). Druhá podmínka říká, že segmentované oblasti musí být spojité, např. složené ze sousedních obrazových bodů. Tento předpoklad je velice důležitý, zvláště pro segmentaci narůstáním oblasti. Formulace výroku P ovlivňuje výsledek segmentace. V případě složité výrokové formule dochází velice často k podsegmentování a naopak v případě jednoduchých výroků k přesegmentování. Pro optimální stanovení segmentačního kritéria se používají optimalizační a adaptivní algoritmy založené na lokální analýze obrazu. 4.2 Segmentační algoritmy V literatuře jsou popsány stovky segmentačních algoritmů, ale neexistuje univerzální metoda, která by mohla být úspěšně použita pro všechny aplikace a typy obrazu. Je možné říci, že algoritmus vyvynutý pro jednu třídu obrazu (intenzitní monochromatický obraz) nelze použít pro třídy jiné. Existuje mnoho segmentačních přístupů (prahování, hranová detekce, narůstání oblasti, statistická analýza, Markovské řetězce, neuronové sítě, fuzzy logika,... ). Vhodnou metodu je možné vybrat na základě semantické informace v obraze, případně experimentálně. V následujících kapitolách budou popsány nejvíce používané segmentační algoritmy. U některých bude diskutována i jejich vhodnost pro segmentaci a analýzu dopravní scény. 4.2.1 Segmentace prahováním Prahování je jedna z nejstarších, nejjednodušších a hodně používaných segmentačních technik. Prahování může být založené na globální informaci (například histogram rozložení jasových úrovní) nebo na lokální informaci matice okolí segmentovaného elementu. V případě, že pro prahování použijeme pouze jednu hodnotu prahu (nehledě na globální nebo lokální informaci) pro celý obraz, pak tento typ segmentace nazýváme globální prahování. Pokud je obraz rozdělen do několika částí, nejlépe na základě kontextuální informace, a pro každou část je použita jiná hodnota prahu, pak mluvíme o lokálním prahování. Někteří autoři tento typ segmentace nazývají adaptivní prahování. Výsledkem segmentace při použití jednoho prahu je binární obraz, který obsahuje dvě oblasti objekt (černá barva) a pozadí (bílá barva). V případě, že obraz obsahuje několik objektů s různou charakteristikou povrchu, pak je vhodné použít prahování s více prahy. Obecně můžeme prahování definovat g(i, j) = { 1, f(i, j) T 0, f(i, j) > T a v případě prahování s více prahy g(i, j) = 0, f(i, j) M 0 1, f(i, j) M 1. n, f(i, j) M n (4.1) (4.2) Kde g(i, j) představuje segmentovaný obraz a f(i, j) vstupní obrazová data. Na segmentaci prahováním se také můžeme dívat jako na klasifikaci. Segmentace obrazu s jedním 25

prahem je v podstatě klasifikace obrazového bodu do dvou tříd objekt a pozadí. Na tomto základě a za předpokladu, že barvy objektu a pozadí mají normální rozdělení s určitým rozptylem, je možné poměrně snadno vypočítat hodnotu prahu. V případě, že je obraz tvořen několika regiony se shodnou intenzitou jasu, která je dostatečně odlišná od jasu pozadí, je možné hodnotu prahu určit na základě histogramu (obr. 4.1). Objekt a pozadí budou v histogramu znázorněny jako dva vrcholy. Hodnota prahu bude tedy logicky ležet mezi těmito vrcholy. Obrázek 4.1: Určení hodnoty prahu z histogramu jasu Segmentaci prahováním, tak jak je popsaná např. v [3], [4], není možné použít pro segmentaci silnice v dopravní scéně a to zejména z těchto důvodů: intenzita jasu povrchu vozovky není dostatečně odlišná od ostatních objektů v obraze a proto nelze použít metody výpočtu prahu popsané v [3], textura povrchu vozovky není homogenní. Povrch vozovky je tvořen nepravidelnými poruchami různých rozměrů a tvarů, bývá často pokryt listím a jinými nečistotami. V případě, že pro segmentaci silnice založené na prahování použijeme i sematickou informaci obsaženou v obraze, můžeme dosáhnout překvapivě dobrých výsledků. Při segmentaci dopravní scény známe přibližnou polohu silnice. Dále víme, že silnice bude v obraze začínat v jeho dolní části a směrem k horizontu se bude zužovat. Můžeme odhadnout podíl plochy obrazu, který obsahuje silnici. Na základě znalosti o přibližné poloze silnice je možné v obraze vymezit oblast O, která je s velkou pravděpodobností její součástí. Na této oblasti vypočteme základní popisné statistiky. Předpokládejme, že povrch vozovky je homogenní. Potom intenzita jasu povrchu silnice má normální rozdělení Y N(µ, σ), kde µ je parametr polohy a σ parametr měřítka. Parametr polohy µ je představován mediánem, t.j. střední hodnotou, náhodného výběru. Výpočet mediánu je poměrně náročný a v tomto případě je možné s přijatelnou chybou provést jeho náhradu výběrovým průměrem 1 µ = 1 n i,j O f(i, j) (4.3) 1 s roztoucím rozsahem výběru konverguje průměr ke střední hodnotě 26

kde n je rozsah výběru intenzity jasu všech obrazových bodů z oblasti O. Směrodatná odchylka σ vyjadřuje míru homogenity výběru a tím určuje, zda je možné pro tento obraz použít segmentaci prahováním. σ = n f(i, j) 2 ( f(i, j)) 2 n(n 1) (4.4) V dopravní scéně tvoří silnice značnou část obrazu. Za předpokladu, že je její povrch homogenní, je možné silnici v histogramu identifikovat jako významný vrchol. Jeho polohu určuje hodnota µ a prahy je možné určit na základě hodnoty σ. a) histogram obrázku 012.bmp c) histogram obrázku 015.bmp b) histogram povrchu vozovky na d) histogram povrchu vozovky na obrázku 012.bmp obrázku 015.bmp Obrázek 4.2: Histogram intenzit jasu celého obrazu a povrchu silnice Na obrázku 4.2 jsou zobrazeny histogramy intenzit jasu pro dva testovací obrázky. Na základě kontextuální informace jsou v obraze vyznačeny dostatečně velké regiony, které jsou s velkou pravděpodobností součástí povrchu silnice. V případě, že je směrodatná odchylka σ 15 pak je tento výběr dostatečně homogenní. V těchto případech je možné pro segmentaci povrchu vozovky použít segmentaci prahováním. Parametry polohy a měřítka těchto výběrů jsou shrnuty v tabulce 4.1. Pokud není krajnice vozovky označena vodícím proužkem, pak je nutné pro bezchybnou segmentaci použít predikci okraje silnice založené na apriorních pravděpodobnostech polohy silnice v obraze. Statistiky Obrázek 012.bmp Obrázek 015.bmp Výběrový průměr µ 167.00 136.00 Směrodatná odchylka σ 5.40 24.04 Rozsah výběru 1000 1000 Tabulka 4.1: Popisné statistiky 27

Vlivem perspektivní projekce se silnice v obraze zužuje. Pokud obraz rozdělíme do vrstev o šířce jednoho obrazového bodu, potom bude šířka silnice ve vrstvě i menší nebo rovna šířce silnice ve vrstvě i 1. Na základě tohoto předpokladu můžeme definovat apriorní pravděpodobnosti polohy silnice v obraze tak, jak je znázorněno na obrázku 4.3. Obrázek 4.3: Predikce okraje silnice V případě, že použijeme všechny výše popsané metody, je možné v řadě případů použít pro segmentaci silnice v obraze prahování. Jedná se o velmi jednoduchou a rychlou metodu, kterou je možné použít pouze pro silnice s homogenním povrchem vozovky. Na obrázku 4.4 jsou zobrazeny výsledky segmentace na dvou obrázcích, které splňují podmínku homogenity (viz. histogram na obrázku 4.2). Další podrobnosti o použití této metody pro segmentaci zóny zájmu budou uvedeny v kapitolách 4.3.2 a 5. 4.2.2 Segmentace prostřednictvím hranové detekce Jak bylo uvedeno v kapitole 2.3, hrany se vyznačují náhlými, výraznými změnami jasové funkce. Jednoduché gradientní operátory jako Robertsův reagují nejen na hrany v obraze, ale také na izolované body (šum). Z tohoto pohledu se jako výhodný gradientní operátor jeví Sobelův operátor, který je odolnější proti šumu v obraze, zvláště pokud zvětšíme konvoluční masku na velikost 5 5. Reálné obrázky dopravních scén obsahují kromě šumu také stíny od ostatních objektů v obraze, povrch silnice bývá velmi často porušen, případně pokryt různými nečistotami. V těchto případech získáme prostřednictvím gradientních operátorů velké množství možných hran, které nemusí popisovat okraj silnice. V případě, že okraj silnice není zvýrazněn vodícím proužkem, pak není možné ani za pomoci apriorní informace 28

012.bmp 041.bmp Obrázek 4.4: Výsledky segmentace prahováním (obrázek 012.bmp a 041.bmp) určit okraj silnice. Pro rozpoznání objektů v obraze je nutný strukturální popis, který sebou přináší zvýšené výpočetní a pamět ové nároky. Obrázek 4.5 znázorňuje výsledek Sobelova hranového detektoru (2.9) na třech obrázcích z testovací databáze. Obrázek 016.bmp obsahuje silnici bez dopravního značení, povrch vozovky je částečně poškozen a je mokrý. Výsledkem hranové detekce je velké množství nespojitých hran. Obrázek 033.bmp představuje typický příklad dobře značené silnice s nepoškozenou texturou vozovky. Výsledkem jsou výrazné, spojité hrany, které jsou vhodné pro segmentaci obrazu. 016.bmp 033.bmp Obrázek 4.5: Výsledky hranové detekce 29

Experimentálně jsem zjistil, že metoda segmentace silnice založená na hranové detekci je použitelná pouze pro třetinu obrázků z testovací databáze. Na základě experimentu se domnívám, že segmentace prostřednictvím hranové detekce není vhodnou metodou pro analýzu dopravní scény. Proto jsem vyvinul metodu založenou na barevné segmentaci, která je výpočetně obdobně náročná jako segmentace hranovou detekcí, ale použitelná pro většinu obrázků. Teoretická část bude popsána v následující kapitole, vlastní algoritmus pak v kapitolách 4.3. 4.2.3 Barevná segmentace V literatuře je popsáno mnoho algoritmů pro segmentaci barevných obrázků [9], ale jejich počet není ani zdaleka tak bohatý jako pro šedotónové obrázky. Tento nedostatek je patrný zvláště pro algoritmy založené na segmentaci narůstáním oblasti. Je možné použít několik kritérií, na jejichž základě rozhodujeme o tom, zda obrazový element náleží do segmentované oblasti. Tato kritéria mohou být definována na několika rozlišovacích úrovních lokální, regionální nebo globální. Při lokálním rozlišení rozhodujeme o tom, zda sousední pixely náleží do testovaného regionu. Při regionálním rozlišení o tom, zda testovaný region náleží do segmentované oblasti. Globální rozlišovací úroveň se používá zvláště pro stanovení segmentačních logických výroků v nižších rozlišeních. V případě, že implementujeme rozhodovací kritéria ze všech rozlišení, můžeme minimalizovat chybu segmentace na přijatelnou úroveň. Nemusíme tedy zvyšovat výpočetní nároky algoritmu dodatečnou analýzou hraničních oblastí, která bývá označována jako de-growing proces. Reprezentace barev Jedním z nejdůležitějších atributů, používaných při zpracování obrazu je barevná informace. Každá barva odpovídá určité frekvenci elektromagnetického vlnění v pásmu 10 8 MHz. Rozsah barev je od červené 430 nm až po fialovou 750 nm. V rámci viditelného spektra je člověk schopen rozlišit více než 4 10 5 barevných odstínů. Podle frekvence, které vysílá světelný zdroj je možné barvy rozdělit na achromatické barva tělesa je tvořena kombinací frekvencí odražených od tělesa. Pokud převládá frekvence z určité oblasti spektra, pak mluvíme o dominantní frekvenci. monochromatické barva tělesa je určena odrazem jen jedné frekvence - např. frekvencí zelené barvy. Mnoho fyziologických studií prokázalo, že barevná informace je třísložková. To znamená, že k popsání všech barevných odstínů je nutné použít tři proměnné. Libovolnou barvu tedy můžeme popsat vektorem v R 3. Jednotlivé barevné odstíny se odvozují od tří základních barev aditivním nebo subtraktivním mícháním. Existuje mnoho metod (barevných modelů), kterými se popisuje barevná informace a na jejich základě je možné každý barevný odstín dekomponovat na základní složky. Každý barevný model je popsán množinou základních barev, způsobem jejich míchání a pravidly pomocí kterých se mění barevné charakteristiky. 30

Barevný model RGB V tomto modelu jsou barvy vytvářeny aditivním způsobem. Základní složky jsou R - red - červená, G - green - zelená, B - blue - modrá. Pro tyto barvy je charakteristické právě to, že lidské oko má největší citlivost právě pro jejich vlnové délky (630nm, 530nm a 450nm). Intenzita základních barev se v tomto modelu pohybuje v intervalu < 0, 1 >. V technických aplikacích jako je počítačové vidění a zpracování obrazu je tento interval převáděn do digitální formy. Nejčastější je kódování do 8-bitového rozlišení (256 úrovní). Obrázek 4.6: Grafická reprezentace modelu RGB Barevný model RGB se nejčastěji znázorňuje jako krychle umístěná v osách RGB. Z toho vyplývá, že množina základních barev je tvořena 8 barvami. Vrchol [0, 0, 0] (t.j. střed souřadnicového systému) odpovídá černé barvě. Naproti tomu vrchol [1, 1, 1] představuje bílou barvu. Barvy ležící na úhlopříčce mezi těmito vrcholy reprezentují všechny šedotónové odstíny. Výše popsaný barevný model se nejvíce používá v technických aplikacích. Uplatnění našel zejména ve videotechnice. Na základě obrázku 4.6 můžeme vytvořit tabulku základních barev RGB modelu. Barva R(ed) G(reen) B(lue) černá 0 0 0 modrá 0 0 255 zelená 0 255 0 tyrkysová 0 255 255 červená 255 0 0 fialová 255 0 255 žlutá 255 255 0 Tabulka 4.2: Tabulka základních barev v systému RGB Barevný model HSV CIE Commission Internationale de l Eclairege standardisovala modely, které umožňují rozdělit libovolnou barvu na její základní složky. Doporučila přirozený barevný model RGB, který ovšem neodpovídá lidskému chápání světla. Z tohoto pohledu je vhodné používat barevný model HSV, který barvy popisuje na základě tří intuitivních atributů: 31

V - value jas. Reprezentuje množství světla přijatého senzorem. Záleží na světelných podmínkách a na intenzitě světelného zdroje. H - hue barevný odstín. Hodnota která reprezentuje jednu ze základních barev modelu RGB. H Barva 0 červená 1 žlutá 2 zelená 3 tyrkysová 4 modrá 5 fialová Tabulka 4.3: Vztah mezi hodnotou H a jménem barvy v modelu RGB S - saturation saturace (sytost). Saturace popisuje např. rozdíly mezi červenou a růžovou. Tmavě červené odpovídá vysoká hodnota saturace a naopak růžové nízká. Obrázek 4.7: Grafická reprezentace modelu HSV Barevný model HSV se nejčastěji zobrazuje jako šestiboký jehlan (obr. 4.7), jehož vrchol leží v počátku souřadnicového systému. Souřadnice v a s se podobně jako u modelu RGB mění od 0 do 1, případně jsou kódovány do 8 bitového rozlišení. Souřadnice h je úhlová. Vrchol jehlanu v bodě [0, 0, 0] představuje černou barvu. Bílá barva je ve středu podstavy. Jas klesá od podstavy k vrcholu. Sytost je dána vzdáleností od osy jehlanu. Základní barvy se nacházejí ve vrcholech šestiúhelníkové podstavy. Matematický popis modelu HSV Existuje několik metod pomocí kterých je možné transformovat RGB model na model HSV. Rovnice 4.5, 4.6, 4.7 představují nejjednodušší a výpočetně nejméně náročný způsob. Uvedená transformace vyžaduje pouze N násobení a 2N dělení, které mohou být navíc předpočítané v tabulce. Ostatní transformace jako Lu v uvedené v [1] 32

vyžadují 2N dělení, 19N násobení, N druhých odmocnin, N třetích odmocnin a N výpočtů funkce arctan. Výpočetní nároky této transformace jsou 5 krát vyšší. V následujících rovnicích předpokládáme 8 bitové barevné rozlišení. V = sup(r, G, B) (4.5) S = 256 H = V inf(r, G, B) V G B V inf(r,g,b), V = R ( ) B R 2 + V inf(r,g,b), V = G ( ) R G 4 + V inf(r,g,b), V = B (4.6) (4.7) Nyní zavedeme tři normalizované proměnné c R, c G, c B. Jejich hodnoty můžeme považovat za poměr RGB složek v barvě. Uvažujme, že odstín barvy vytváříme kombinací dvou ze tří složek RGB. c R + c G + c B = 1 (4.8) c R c G c B = 0 Rovnice (4.7) ukazuje, že H je periodická proměnná. Jednotlivé komponenty RGB jsou normalizované a nabývají tedy hodnot z intervalu [0, 1]. Na základě rovnice 4.8 je alespoň jedna ze složek nulová. Předpokládejme, že c R = 1. Potom jsou normalizované složky c G, c B nulové a H = 1 1 0 = 1. Pro hodnotu c R = 0.5 je výsledek rovnice 4.7 1 nebo 1. To znamená, že H pro případ V = R nabývá hodnoty z intervalu [ 1, 1]. Obdobnou úvahou pro V = B nabývá hodnot z intervalu [3, 5]. To znamená, že výsledek této transformace leží v intervalu [ 1, 5]. Abychom získali výsledek z intervalu [0, 6], je závěrem nutné provést dělení H mod 6. Při segmentaci je velmi často nutné spočítat vzdálenost dvou příznaků. V barevném modelu HSV nelze použít pro výpočet vzdálenosti metody popsané v kapitole 2.2. Předpokládejme, že H 1 a H 2 jsou barevné odstíny dvou bodů v HSV barevném prostoru a splňují tuto podmínku: (H 1, H 2 ) [0, 6] (4.9) Vzdálenost barevných odstínů těchto dvou bodů potom je δ = (H 1, H 2 ) = { H2 H 1, H 2 H 1 3 H 2 H 1 6 sgn (H 2 H 1 ), H 2 H 1 > 3 (4.10) V případě, že byl obraz snímán za zhoršených světelných podmínek, pak jsou objekty v obraze tmavé (mají nízkou sytost hodnotu S). Tyto objekty je v HSV modelu obtížné segmentovat. Z rovnice 4.6 vyplývá, že S = 0 v případě sup(r, G, B) = inf(r, G, B) R = G = B (4.11) Rovnicí 4.11 však můžeme definovat všechny odstíny šedi, včetně bílé barvy. Pokud jsou splněny podmínky rovnice 4.11, potom dochází v rovnici 4.7 k dělení nulou a tedy H není definované model se stává aritmeticky nestabilní. 33