Metody zpracování obrazu pro časově náročné úlohy

Rozměr: px
Začít zobrazení ze stránky:

Download "Metody zpracování obrazu pro časově náročné úlohy"

Transkript

1 TECHNICKÁ UNIVERZITA V LIBERCI Fakulta mechatroniky, informatiky a mezioborových studií Metody zpracování obrazu pro časově náročné úlohy Disertační práce 2012 Ing. Jaroslav Vlach

2 ii

3 TECHNICKÁ UNIVERZITA V LIBERCI Fakulta mechatroniky, informatiky a mezioborových studií Metody zpracování obrazu pro časově náročné úlohy Digital Image Processing Methods for the Time-Consuming Problems Disertační práce Autor: Ing. Jaroslav Vlach Studijní program: P 2612 Elektrotechnika a informatika Obor: 2612V045 Technická kybernetika Školitel: doc. Ing. Milan Kolář, CSc. Rok: 2012 iii

4 iv

5 Prohlášení Byl jsem seznámen s tím, že na mou disertační práci se plně vztahuje zákon č. 121/2000 Sb., o právu autorském, zejména 60 (školní dílo). Beru na vědomí, že Technická univerzita v Liberci (TUL) nezasahuje do mých autorských práv užitím mé disertační práce pro vnitřní potřebu TUL. Užiji-li disertační práci nebo poskytnu-li licenci k jejímu využití, jsem si vědom povinnosti informovat o této skutečnosti TUL; v tomto případě má TUL právo ode mne požadovat úhradu nákladů, které vynaložila na vytvoření díla, až do jejich skutečné výše. Disertační práci jsem vypracoval samostatně s použitím uvedené literatury a na základě konzultací se školitelem. Datum Podpis v

6 vi

7

8 II

9 Poděkování Dovoluji si poděkovat svému školiteli doc. ing. Milanovi Kolářovi, CSc., za jeho vstřícný a odborný přístup k mé práci. Za inspirativní podněty a odborné rady při zpracování tématu práce rovněž děkuji svým kolegům z Úseku rozvoje firmy PRECIOSA, a. s., Jablonec nad Nisou, Josefovi Havlíčkovi a ing. Petrovi Šťastnému. Velký dík patří mé manželce Drahomíře za připomínky při psaní a zejména pak za trpělivost při tvorbě práce. Jaroslav Vlach III

10 IV

11 Veritas est adaequatio rei et intellectus. (Pravda je shoda skutečnosti s poznáním) Tomáš Akvinský (*1225, 1274) V

12 VI

13 Anotace Záměrem disertační práce bylo přispět k dlouhodobému požadavku firmy PRECIOSA, a. s., Jablonec nad Nisou vyrábět a prodávat kvalitní a konkurenceschopné výrobky strojně broušené bižuterní a šperkové kameny. Ve výrobním procesu hraje důležitou roli posuzování kvalitativních vlastností výrobků (velikost, tvar a vady) a jejich měření a třídění. Zvyšující se požadavky na efektivitu výroby cílevědomě vedou k využívání moderních aplikačních metod s cíleným omezením nestabilního lidského činitele. Významným krokem vedoucím k naplnění vytčených úkolů je aplikování matematických metod zpracování obrazu hodnocených výrobků a následně jejich klasifikace. V práci je také velká pozornost věnována rozboru možností aplikace nástrojů fuzzy logiky, fuzzy transformace a obrazové fúze jako zajímavé a účinné alternativy pro kvalitativní hodnocení vlastností bižuterních výrobků. První kapitola přináší stručný úvod do problematiky výroby bižuterních kamenů včetně krátkého historického přehledu a nástinu možnosti aplikování počítačového zpracování obrazu v popsané průmyslové oblasti. Kapitola 2 shrnuje cíle disertační práce a předpoklady dalšího vývoje při zpracování obrazu pro hodnocení bižuterních výrobků. V kapitole 3 je uveden úvod do problematiky zpracování obrazu a základních metod pro identifikaci objektu v obrazu a jeho rozpoznávání. Kapitola 4 se poměrně obšírně věnuje aplikování metod fuzzy logiky. Je zde proveden návrh a diskuse algoritmů fuzzy logiky s využitím pravidel IF THEN a fuzzy transformace jako významných nástrojů aproximace reálných funkcí jedné a více proměnných s hlavním důrazem k použití při analýze obrazu pro průmyslové aplikování. V kapitole 5 jsou uplatněny algoritmy z předchozí části pro analýzu více obrazů jednoho zkoumaného předmětu s pomocí obrazové fúze. Pomocí navržených metod je na konkrétních obrazech vysvětlen princip i možnosti aplikování navržených algoritmů pro kvalitativní klasifikaci bižuterních kamenů, zejména s ohledem na předpokládané jejich objektivní hodnocení. Kapitola 6 stručně popisuje možnosti aplikace moderních technických prostředků pro zpracování obrazové informace, zejména pak při stoupajících nárocích na výpočetní rychlost. Problematika optické soustavy pro získání optimálního obrazu předmětů pro následné počítačové hodnocení v bižuterním průmyslu je popsána v kapitole 7. Kapitola 8 je věnována praktickým aplikacím poznatků a algoritmů, která byly navrženy a popsány v předchozích částech. Zde je hlavním zájmem analýza a kvalitativní hodnocení konkrétních bižuterních kamenů a zejména pak jeho úspěšnost. Hlavním těžištěm této části je uplatnění metod fuzzy logicky a fuzzy transformace a dále pak praktické využití obrazové fúze. Při těchto konkrétních aplikacích je použito programové prostředí LabVIEW. Na řadě konkrétních příkladů je ukázán postup vedoucí k vytvoření metodiky pro kvalitativní hodnocení bižuterních kamenů s vysokou mírou objektivity a s potenciálem aplikování pro účely kvalitativního měření a třídění přímo v průmyslovém prostředí v časově náročných úlohách. V závěrečné kapitole je provedeno shrnutí dosažených výsledků a naznačen další postup pro praktické aplikování navržených metod. Klíčová slova: bižuterní kámen, zpracování obrazu, fuzzy transformace, F-transformace, obrazová fúze, LabVIEW VII

14 VIII

15 Abstract The topic of the Ph. D. study comes from long-term business needs to produce and sell high quality and competitive products machine-cut jewelry stones in company PRECIOSA, a. s., Jablonec nad Nisou. Very important role in the production process therefore plays an assessment of qualitative product characteristics (size, shapes and any defects) and their measurement and classification. The increasing demands for efficiency have become the modern application methods with the targeted elimination of unstable human factor. An important step toward the fulfillment of the requisite tasks is to apply the mathematical methods of image analysis of jewelry products, and subsequently evaluated for classification. In this study, much attention is paid to the possibility of the analysis tools applying of fuzzy logic, fuzzy transformation and image fusion as attractive and effective alternatives for the qualitative evaluation of properties of jewelry products. Chapter 1 gives a brief introduction to jewelry stones production including a short historical overview and outline the ability to apply digital image processing described in the industrial area. Chapter 2 summarizes the aims and assumptions for the further development of image processing for defect assessment in jewelry production. Chapter 3 describes an introduction to image processing and basic methods for identifying the object in the image and its recognition. Chapter 4 is devoted to quite extensively applying the methods of fuzzy logic. There is discussion and design of fuzzy logic algorithms using IF THEN rules and fuzzy transformation as important instruments of approximation of real functions of one or more variables with the main emphasis for use in image analysis for industrial application. In Chapter 5 are applied algorithms described in the previous section, for analysis of multiple images with one studied subject by using image fusion. Using the proposed methods is explained in concrete images and the ability to apply the principle of the proposed algorithms for qualitative classification of jewelry stones, particularly with regard to their intended objective evaluation. Chapter 6 briefly describes the application of modern technical means for processing visual information, especially with rising demands for computing speed. Problems of optical systems to obtain optimal image of objects of for subsequent computer evaluation in jewelry industry is described in Chapter 7 Chapter 8 is devoted to practical applications of knowledge and algorithms that were designed and described in previous sections. Here is the main concern analysis and qualitative assessment of specific jewelry stones and especially its success. The main focus of this section is to apply the methods of fuzzy logic and fuzzy transformation and the practical use of image fusion. In these specific applications is used LabVIEW software. The number of concrete examples is shown in the process leading to the creation of a methodology for qualitative assessment of jewelry stones with a high degree of objectivity and the potential for applying qualitative measurement and classification in the industrial environment in time-consuming tasks. The final chapter is a summary of achievements made and outlined next steps for the practical application of the proposed methods. Keywords: jewelry stone, image processing, fuzzy transform, F-transform, image fusion, LabVIEW IX

16 X

17 Obsah Seznam obrázků... 3 Seznam tabulek... 4 Seznam použitých symbolů... 5 Seznam použitých pojmů a zkratek... 7 Úvod Současný stav Popis bižuterních kamenů Počítačové zpracování obrazu Cíle disertační práce Základní pojmy Obraz a obrazová funkce Zpracování obrazu Předzpracování obrazu Integrální transformace Segmentace Metody rozpoznávání Houghova metoda rozpoznávání Shrnutí Fuzzy logika Historické základy Základní nástroje a motivace pro aplikaci fuzzy logiky Některé základní pojmy fuzzy logiky Fuzzy pravidla IF THEN Fuzzy transformace (F-transformace) Algoritmy fuzzy transformace Využití metod fuzzy logiky pro zpracování obrazu Fuzzy pravidla IF THEN Fuzzy transformace Shrnutí Obrazová fúze (Image Fusion) Základní úvahy Další algoritmy obrazové fúze Shrnutí Využití FPGA a GPU Systémy FPGA Karty s obvody FPGA Průmyslové systémy CompactRIO a SingleBoardRIO Aplikování obvodů FPGA pro zpracování obrazu Aplikace GPU a CUDA Shrnutí Problematika optické soustavy Osvětlovač Snímací soustava Objektiv Kamera Řádková kamera Kalibrace optické soustavy Shrnutí Aplikace algoritmů pro zpracování obrazu v bižuterním průmyslu Obecná formulace postupu Využití prostředí LabVIEW Základní popis prostředí LabVIEW Ukázka aplikace hranový filtr s použitím konvoluce Využití FPGA a GPU... 80

18 8.3 Porovnávání vzorů a tvarů (Pattern Matching) Měření rozměrů a tvarů Aplikace fuzzy logiky Aplikace fuzzy pravidel IF THEN Algoritmy fuzzy transformace (F-transformace) Obrazová fúze Optická soustava pro obrazovou fúzi Aplikace algoritmu pro obrazovou fúzi Další zpracování získaných výsledků Shrnutí a návrh dalšího postupu Závěr Rejstřík Přílohy Literatura Odkazy na internetové stránky Publikace autora

19 Seznam obrázků Obr. 1.1 Obecný tvar BK (vlevo diamantový výbrus, vpravo šatonový výbrus) Obr. 1.2 Příklad optické soustavy pro zkoumání BK Obr. 3.1 Příklad obrazu (a) a jeho jasového histogramu (b) Obr. 3.2 Ukázka aplikace konvoluce a vyhlazení Obr. 3.3 Prostorové tvary operátorů Obr. 3.4 Zpracování obrazu v prostorové nebo frekvenční oblasti Obr. 3.5 Příklad okenní funkce při Fourierově transformaci Obr. 3.6 Příklady některých používaných vlnek (wavelets) Obr. 3.7 Schéma rozpoznávacího systému Obr. 3.8 K výkladu Houghovy transformace pro hledání linie Obr. 3.9 K výkladu Houghovy transformace pro hledání kružnice Obr. 4.1 Příklady funkce příslušnosti fuzzy čísla asi u 0 Obr. 4.2 Příklad aproximace funkce fuzzy funkcí Obr. 4.3 Příklad fuzzy rozkladu (pro n = 4) Obr. 4.4 Průběh trojúhelníkové funkce příslušnosti A i dle vztahu (4.10) Obr. 4.5 K výkladu fuzzy transformace funkce f(u, v) Obr. 4.6 Graf závislosti poměru počtu operací Q FT /Q eft na kroku rozkladu h Obr. 4.7 Prahování obrazu Obr. 4.8 Struktura fuzzy zpracování obrazu Obr. 4.9 Funkce příslušnosti fuzzy množiny Obr K příkladu fuzzy metodiky hledání hran Obr Příklad fuzzy pravidel IF THEN Obr Příklad zpracování obrazu s pomocí pravidel IF THEN Obr Příklad aplikace algoritmu FTransform EDA Obr Průběhy jasových hodnot řádku č. 99 Obr Příklad aplikace FTransform EDA pro rozmazaný obraz Obr. 5.1 Model degradace obrazu Obr. 5.2 Model metody obrazové fúze Obr. 5.3 Příklad jednoduché obrazové fúze Obr. 5.4 Idea algoritmu obrazové fúze dvou vstupních obrazů Obr. 5.5 Příklad obrazové fúze s využitím F-transformace Obr. 5.6 Obrazová fúze vstupních obrazů z obr. 5.3a a 5.3b s využitím fuzzy transformace Obr. 6.1 Příklady průmyslových systémů FPGA Obr. 6.2 Zjednodušené blokové schéma systému CompactRIO Obr. 6.3 Architektura programových prostředků CompactRIO Obr. 6.4 Blokové schéma zařazení GPU na sběrnici PCIe Obr. 6.5 Princip paralelizace výpočtu v GPU Obr. 6.6 Porovnání vlastností technologií CPU, FPGA a GPU Obr. 7.1 Příklad optické soustavy Obr. 7.2 Typické osvětlovače Obr. 7.3 Náčrt kolimátoru Obr. 7.4 Náčrt snímací soustavy: objektiv a obrazová rovina (snímací prvek kamery) Obr. 7.5 Náčrt geometrie perspektivní projekce do roviny Obr. 7.6 Náčrt snímací soustavy s telecentrickým objektivem Obr. 7.7 Příklady průmyslových kamer Obr. 7.8 Možné uspořádání optické soustavy pro měření BK Obr. 7.9 K výkladu zlepšení hloubky ostrosti při šikmém uspořádání optické soustavy Obr Idea aplikace optické soustavy s řádkovou kamerou Obr Příklad kalibračních mřížek Obr. 8.1 Příklad postupu zpracování obrazu Obr. 8.2 Blokový diagram programu hranový filtr Obr. 8.3 Výřez čelního panelu programu hranový filtr Obr. 8.4 Příklad aplikace Houghovy transformace pro hledání přímky 3

20 Obr. 8.5 Algoritmus Houghovy transformace pro hledání linie (HoughT Line) Obr. 8.6 Algoritmus Houghovy transformace pro hledání kružnice (Hough T Circle) Obr. 8.7 Výsledek aplikace algoritmu Houghovy transformace pro hledání kružnice Obr. 8.8 Příklad zpracování obrazu algoritmem Fuzzy IfThen Edge Obr. 8.9 Příklad dalšího zpracování obrazu hledání zlomových bodů Obr Příklad doplnění množiny fuzzy pravidel IF THEN Obr Funkční bloky (SubVI) eft.vi (vlevo) a edft.vi (vpravo) Obr Blokové schéma algoritmu pro detekci hran FTransform EDA Obr Aplikace algoritmu FTransform EDA na bižuterní kámen Obr Modelová optická soustava (ELCOM) Obr Idea nasvícení BK pro aplikaci obrazové fúze Obr Idea algoritmu pro obrazovou fúzi s nalezením hran ImF_Edge Obr Vstupní obrazy BK s hodnocením dobrý s různým zaostřením Obr Výsledky obrazové fúze BK z obr pro h = 2 Obr Výsledky obrazové fúze BK z obr pro h = 5 Obr Vstupní obrazy BK s hodnocením dobrý s různým nasvícením Obr Výsledky obrazové fúze BK z obr Obr Vstupní obrazy BK s hodnocením poškrábaná tabulka s různým zaostřením Obr Výsledky obrazové fúze BK z obr pro h=2 Obr Funkce IMAQ Count Objects 2 Obr Výsledky detekce objektů na obrazech BK získaných z obrazové fúze Obr Nastavení parametrů pro funkci IMAQ Count Objects 2 Obr Grafické znázornění získaných hodnot počet objektů Obr Grafické znázornění získaných hodnot počet pixelů Obr. A.1 Výřez blokového diagramu algoritmu Fuzzy IfThen Edge v prostředí LabVIEW Obr. A.2 Výřez blokového diagramu SubVI pro F-transformaci eft.vi Obr. A.3 Výřez blokového diagramu SubVI pro zpětnou F-transformaci edft.vi Obr. A.4 Algoritmus FTransform EDA.vi Obr. B.1 Příklady obrazové fúze bižuterních kamenů s různými vlastnostmi Obr. B.2 Příklady obrazové fúze bižuterního kamene s definovanou vlastností Obr. B.3 Příklady detekce objektů na obrazech BK získaných z obrazové fúze Seznam tabulek Tab. 6.1 Srovnání některých parametrů CPU a GPU (s použitím [W10]) Tab. 8.1 Popis hodnocených objektů (BK) 4

21 Seznam použitých symbolů A, B, C bod v obrazu, A i, B i fuzzy čísla, A i fuzzy výrok popisující i-tou vstupní hodnotu (antecedent), B i fuzzy výrok popisující i-tou výstupní hodnotu (sukcedent, konsekvent), A, A(u) fuzzy množina, A i (u) funkce příslušnosti, A(a, b) akumulátor (Houghova transformace), A(φ i, r j ) akumulátor (Houghova transformace), (A i, B i ) dvojice fuzzy čísel reprezentující fuzzy graf, A i operátor výběru nedegradované části obrazu (ve výkladu obrazové fúze), C i zdroje (kanály) obrazové informace (ve výkladu obrazové fúze), D i operátor degradace (ve výkladu obrazové fúze), E i aditivní náhodný šum ov obraze (ve výkladu obrazové fúze), e(x) chybová funkce, e(u, v) chybová funkce (dvojrozměrné fuzzy transformace), f(x, y) obrazová funkce (funkční hodnota v obrazovém bodě o souřadnicích (x, y), f <0, 255> prvek funkce f patří do množiny (uzavřený interval <0, 255>), f(m, n) = z mn jasová hodnota specifikovaného obrazového bodu, f(k, l) R obrazová funkce f popisuje každý bod rovinné oblasti, funkce f je identická s obrazem R, zpětná fuzzy transformace funkce F s rozkladem P, ( ) dvourozměrná zpětná fuzzy transformace, F(f) = [F 1, F 2, F n ] množina komponent fuzzy transformace, [ ]( ) funkce dvourozměrné přímé fuzzy transformace, F[f] kl komponenta přímé fuzzy transformace, [ ] matice komponent fuzzy transformace, f g přiřazení hodnoty g funkci f, f g funkce f je přibližně rovna funkci g (funkce g je aproximací funkce f), f A aproximace funkce f, k f indexování proměnných v algoritmech obrazové fúze, G(x, y), G(r) funkce gaussovského rozložení (Gaussián), h i krok fuzzy rozkladu, h(t) f(t) konvoluce funkcí (integrální transformace), h 1, h 2, h 3 různé konvoluční masky, h 4, h 8 konvoluční jádro pro 4-sousedství (okolí 2 2), resp. pro 8-sousedství (okolí 4 4) obrazového bodu, H f (z) funkce jasového histogramu obrazové funkce f pro jasové úrovně z, i, j, k, l, m, n, p, M, N přirozená čísla, x, y, t reálná čísla, j imaginární jednotka, M N označení velikosti (rozměru, příp. typu) matice, kde čísla M a N definují rozměr, kartézský součin, min {µ A, µ B} nejmenší z hodnot specifikované množiny, největší ze všech největších hodnot funkce F při daných podmínkách, P = {p 1, p 2, p N } množina P je dána výčtem konečného počtu bodů definujících funkci f, P <a, b> množina P je podmnožinou uzavřeného intervalu, P, Q, A 1, A 2, A n označení obrazových bodů (pixelů), Q FT počet operací algoritmu pro fuzzy transformaci, Q eft počet operací algoritmu pro efektivní fuzzy transformaci, Q edft počet operací algoritmu pro efektivní zpětnou fuzzy transformaci, R 1, R 2, R n rozklad obrazu R na n podobrazů, R, R i implikační fuzzy pravidlo, množina reálných čísel, R poloměr kružnice, 5

22 R = {(m, n), m <1, M>, n <1, N>} rovinná oblast (obraz) definovaná jako množina všech obrazových prvků o souřadnicích (m, n), přičemž m, resp. n patří do definovaných množin (intervalů), S F, S fab, S AB označení proměnných (sumátorů) v algoritmech F-transformace, t r identifikátor třídy (pro rozpoznávání), U univerzum, množina, která je podmnožinou množiny reálných čísel, u U prvek univerza, u(x, y) ideální obraz (ve výkladu obrazové fúze), ( ) výsledný obraz obrazové fúze, x = {x 1, x 2,..., x N } množina příznaků, (x, y), (x, y ) souřadnice obrazového bodu (pixelu) původní a po transformaci, z = 0, 1, 255 postupné přiřazení hodnot proměnné z v naznačené posloupnosti, for (i = 1 to n) ; příkazový řádek for ve výkladu algoritmu, if (u > h A ) A 1 ; else A 0 ; příkazový řádek if ve výkladu algoritmu (při platném logickém výrazu v závorce se vykoná přiřazení A 1, při neplatném logickém výrazu přiřazení A 0), if (u)&(v) logická operace AND (logický součin) dvou operandů v příkazovém řádku if, abs(f) funkce výpočtu absolutní hodnoty výrazu v závorce ve výkladu algoritmu, end ; příkazový řádek end ve výkladu algoritmu, /* Vynulování řádek komentáře ve výkladu algoritmu, a b * c příkazový řádek s operací aritmetického násobení (součin b.c je přiřazen proměnné a), & operátor logické operace AND (logický součin), µ A (u) funkce příslušnosti, ( ) operace s obrazovou funkcí, proměnná Fourierovy transformace (kmitočet), střední kvadratická odchylka, Ludolfovo číslo, e Eulerovo číslo, { ( )} Fourierova transformace funkce f(t), { ( )} inverzní Fourierova transformace funkce F(ξ), struktura Łukasiewiczovy algebry,, resp. Łukasiewiczova konjunkce, resp. disjunkce, operace negace, gradient, Laplacián funkce f, ξ rozdíl hodnot ξ, φ označení úhlu, (x) bázová funkce Haarovy transformace, (φ, r) souřadnice bodu v polárních souřadnicích, ( ) modul spojitosti funkce f s krokem rozkladu h, prázdná množina, A B průnik množin, A B sjednocení množin 6

23 Seznam použitých pojmů a zkratek BK bižuterní (resp. šperkový) kámen, CCD (Charge Coupled Device) polovodičová technologie pro světlocitlivé snímací součástky, CMOS (Complementary Metal Oxid Semiconductor) polovodičová technologie založená na využití doplňkových tranzistorů MOS, používá se i pro světlocitlivé snímací součástky, CPU (Central Processor Unit) centrální procesorová jednotka, CUDA (Compute Unified Device Architecture) architektura grafických procesorů vyvinutá firmou NVIDIA, F-transformace (F-transform) fuzzy transformace FFT (Fast Fourier Transform) rychlá Fourierova transformace FLOPS (Floating-point Operations per Second) počet operací v plovoucí řádové čárce za sekundu měřítko výkonnosti procesorů FPGA (Field Programmable Gate Array) programovatelné hradlové pole GPU (Graphic Processing Unit) grafický procesor LabVIEW (Laboratory Virtual Instruments Engineering Workbench) grafické programové prostředí firmy National Instruments LV viz LabVIEW PAC (Programmable Automation Controller) řídicí automat, řídicí systém PC (Personal Computer) označení pro osobní počítač (pův. vyvíjený firmou IBM) PCI (Peripheral Component Interconnect) typ sběrnice pro počítače PC s paralelním přenosem dat PCIe (PCI express) typ sběrnice PCI s rozšířením o sériovou komunikaci pomocí paketů PLC (Programmable Logic Controller) logický automat, řídicí systém RIO (Reconfigurable Input/Output) rekonfigurovatelné vstupy/výstupy ROI (Region Of Interest) oblast zájmu (v obraze) ŘS řídicí systém VHDL (VHSIC Hardware Description Language) jazyk pro práci s FPGA VI (Virtual Instrument) virtuální (zdánlivý) přístroj 2D, 3D dvourozměrný, třírozměrný (obvykle obraz) (další zkratky jsou vysvětleny přímo v textu) 7

24 8

25 Úvod Výroba strojně broušených bižuterních kamenů má v Jablonci nad Nisou a jeho okolí dlouholetou tradici. Věhlas na straně jedné a zájem na straně druhé je třeba podpořit stále stoupajícími nároky na přesnost a kvalitu výroby a výrobků. Významnou úlohu v procesu výroby proto má hodnocení vlastností výrobku, jejich měření a třídění. Zvyšující požadavky na efektivitu s sebou přinášejí aplikaci moderních metod s cílenou eliminací nestabilního lidského činitele. Počátky sklářství v Čechách lze vystopovat ve druhé polovině 13. a v první polovině 14. století. Tehdy se v příhraničních pralesích do té doby nedotčených Krušných, Lužických a Jizerských hor, Krkonoš, Šumavy i na Moravě objevily první sklářské hutě. Ve druhé polovině 14. století se v českých sklárnách tavilo jen slabě nažloutlé nebo nazelenalé sklo. Kolem roku 1370 byla v Čechách v jedné ze skláren za pomoci sklářů z italských Benátek utavena také sklovina použitá pro mozaiku Zlaté brány katedrály Sv. Víta na Pražském hradě. Chemické složení této mozaiky je shodné jako tenkrát vyráběného dutého skla pro poháry. První osadníci Jizerských hor začali ve 14. století zakládat vsi, mezi něž lze řadit třeba Jablonec, Bzí či Železný Brod, a zdejší hluboké lesy jim posloužily jako významný zdroj paliva pro sklářské pece. Vyráběné sklo určené jako výplň do oken se vyváželo třeba až do Slezska a Kladska. V 17. století v důsledku husitských válek a jiných tažení nastalo další osidlování Jizerských hor, novými osadníky byli zejména Němci, skláři ze saské strany Krušných hor, kteří zde zakládali sklářské hutě a uplatňovali nové technologie při výrobě skla. Do poloviny 17. století totiž vyráběné sklo mělo sklo důsledkem přítomnosti železa zelenou barvu a říkalo se mu vitrum silvestre lesní sklo. Právě sklářům v Čechách se podařilo snad náhodou zbavit sklo nazelenalé barvy přidáním niklu. Konec lesního skla byl zároveň prvním stupínkem ke slávě českého křišťálu v dalších staletích. Historii počátků sklářské výroby pro bižuterní využití lze zase hledat v sousední oblasti. Již od 15. století se totiž na Turnovsku brousily drahokamy a polodrahokamy nacházené na Kozákově a v dalších lokalitách Podkrkonoší a Českého ráje. Zvýšený zájem o tuto komoditu vedl od 16. století k hledání snadnější a levnější náhrady přírodních kamenů. Později bylo do Čech přineseno z Benátek tajemství tavby skleněné kompozice skleněné náhrady přírodních kamenů. Od roku 1715 již existovalo v Turnově Bratrstvo kunstu štajnšnajdrovského", cech sdružující výrobce broušených skleněných kamenů. Koncem 18. století se postupně centrum výroby bižuterních kamenů z olovnatého křišťálu, náhrady polodrahokamů, přeneslo z oblasti Turnova do oblasti Jablonce nad Nisou. Ruční práci při broušení kamenů postupně začalo nahrazovat strojní broušení. Původní broušení jednotlivých skleněných kamenů nahradilo hromadné broušení za pomoci nástroje zvaného mašinka nebo aparát, původně ruční či šlapací pohon brousicích a lešticích strojů byl nahrazován vodní sílou. Další výrazný posun je spojen se jménem Daniel Swarovski 1, který se roku 1862 narodil v Jiřetíně pod Bukovou. Postupně získává zkušenosti a v roce 1892 si patentuje nový brousicí a lešticí stroj poháněný elektrickou energií získanou z vodní turbíny. Následně rozjíždí vlastní výrobu, avšak nedostatek vodních zdrojů a velká míra konkurence v okolí jej vede k hledání nového místa pro podnikání. To nachází v roce 1895 v tyrolském městečku Wattens nedaleko od Innsbrucku, kde kupuje bývalou továrnu na výrobu látek. Postupně zde buduje firmu, která se v oblasti bižuterní výroby stává synonymem kvality a elegance. Průmyslová sklářská a bižuterní výroba dosáhla vysoké úrovně na konci 19. století a je velmi těsně spjata s rozvojem města Jablonec nad Nisou a jeho okolí. Ještě na počátku 20. století dosáhly zdejší sklářské a bižuterní firmy takového objemu výroby, že například na daních za rok 1911 Jablonec nad Nisou odevzdal do rozpočtu tehdejšího Rakousko-Uherského mocnářství údajně téměř korun, což byla zhruba stejná částka, kterou zaplatila celá Dalmácie. Rozmach nastal ještě po 1. světové válce, kdy se téměř celý německý Jablonec stal součástí Československé republiky. Hospodářská krize na začátku 30. let a pozdější politický vývoj však vedl k postupnému útlumu a omezování výroby, tedy k vývoji, jehož důsledky spatřujeme dodnes. Nutno říci, že jedinou větší sklářskou a bižuterní firmou, která již více než 50 let stabilně navazuje na zdejší tradice, je firma Preciosa, a. s. [W1]. 1 Daniel Swarovski (*1862, 1956), zakladatel firmy viz 9

26 Díky rostoucí náročnosti výroby a neustále stoupajícím požadavkům na kvalitu výrobků a na jejich přesnost nacházejí dnes, podobně jako i v jiných průmyslových aplikacích, uplatnění metody zpracování obrazových informací (angl. Image Processing) s cílem dále je využít při řízení dané aplikace. Významným místem pro aplikování metodik zpracování obrazových informací je oblast výroby bižuterních a šperkových kamenů, zejména ve fázi hodnocení zejména jejich kvalitativních vlastností. Tato práce si klade za cíl provést analýzu a návrh metodik a algoritmů zpracování obrazové informace pro časově náročné úlohy řízení v reálném čase v průmyslu výroby bižuterních a šperkových kamenů s použitím výpočetních metod využívajících programový systém LabVIEW a technických prostředků podporovaných tímto systémem (kontrolér využívající programovatelná hradlová pole FPGA a grafické procesory GPU s architekturou CUDA). Důležitým cílem je navrhnout řešení pro konkrétní aplikace, snadnou modifikaci a snadný přenos dat a parametrů mezi různými částmi s ohledem na požadovanou homogenitu řešení systému a jeho technického a programového řešení. V práci jsou také navrženy původní algoritmy pro zpracování obrazu využívající metody fuzzy logiky a obrazové fúze. Tyto algoritmy jsou určeny především k vytvoření nástrojů pro efektivní využití v oblasti objektivního hodnocení kvalitativních opticko-estetických vlastností bižuterních a šperkových kamenů ve firmě PRECIOSA, a. s., Jablonec nad Nisou. 10

27 1. Současný stav 1.1 Popis bižuterních kamenů Strojně broušené šperkové a bižuterní kameny (dále též BK) vyráběné ve firmě PRECIOSA, a. s., Jablonec n. N., mezi něž lze řadit šatony, šatonové růže, perle a další tvarové kameny ze skla, kubické zirkonie či jiných materiálů různých tvarů, barev a velikostí, můžeme chápat jako geometrické prostorové útvary ohraničené několika vybroušenými plochami, jejichž základní funkcí je především funkce optickoestetická. Na BK lze identifikovat plochy opticky funkční plochy aktivně se podílející na optickém efektu výrobku, resp. plochy opticky nefunkční plochy nepodílející se na optickém efektu. Plochy tvořící vršek a spodek kamene jsou většinou opticky funkční. Na obr. 1.1 je znázorněn obecný tvar BK. faseta tabulka tabulka vršek (koruna) lem spodek (pavilon) špička sejm, rondista hrana facety kaleta faseta Obr. 1.1 Obecný tvar BK (vlevo diamantový výbrus, vpravo šatonový výbrus) Při výrobě strojně broušených BK je třeba zajistit opakovatelné a přesné měření kvality, zejména rozměrů a tvaru, případně i hodnocení možných vad. V současné době se hodnocení kvality BK při jejich výrobě provádí několika způsoby: měření charakteristických geometrických rozměrů polotovarů (tzv. suroviny) výrobků kontaktním nebo nekontaktním způsobem, měření charakteristických geometrických rozměrů všech výrobků (pokud to je možné) nebo náhodně vybraných výrobků kontaktním nebo nekontaktním způsobem, subjektivní vizuální posuzování optických vlastností výrobků v definovaných světelných podmínkách. 1.2 Počítačové zpracování obrazu Z výše uvedeného popisu je patrné, že významnou roli při zjišťování rozměrů, tvarů a zejména pak případných vad BK sehrávají metody založené na snímání zkoumaného předmětu určitou optickou soustavou. Na obr. 1.2 je znázorněn příklad optické soustavy pro zkoumání vlastností BK. Obvykle se skládá ze zdroje světla (osvětlovač), který musí zajistit dostatečné nasvícení zkoumaného objektu a ze snímací soustavy, kterou obvykle tvoří snímací kamera a objektiv s potřebnými vlastnostmi. 11

28 zdroj světla zkoumaný objekt objektiv kolimátor Obr. 1.2 Příklad optické soustavy pro zkoumání BK kamera V ČR se metodami a algoritmy počítačového zpracování zabývá několik akademických institucí a dále pak několik pracovišť většinou personálně i jinak spojených s těmito institucemi. Mezi jinými se jedná o Centrum počítačového vnímání (CMR) na FEL ČVUT Praha (personálně propojené s firmou Neovision [W2]), Skupina počítačového vidění na FEKT VUT Brno (personálně spojená s firmou CAMEA Brno [W3]), Moravské přístroje Zlín [W4], dále firma ELCOM, a. s., Divize Virtuální instrumentace Ostrava [W5], úzce spolupracující s FEI VŠB TU Ostrava, Ústav pro výzkum a aplikace fuzzy modelování (IRAFM) [W6] Ostravské univerzity Ostrava, Laboratoř počítačového zpracování obrazu v ústavu RSS FMIMS Technické univerzity Liberec a některá další akademická pracoviště a instituce (např. MFF UK Praha [W7], ÚTIA AV Praha [W8]). Při studiu metod zpracování obrazových informací lze čerpat z celé řady domácích i zahraničních pramenů, avšak zkušenosti z konkrétních aplikací v oblasti bižuterního průmyslu nejsou běžně dostupné zejména z důvodu určitých forem konkurenčního boje a zejména ochrany duševního a zejména pak obchodního tajemství. 12

29 2. Cíle disertační práce Jedním z problémů současného způsobu hodnocení kvality BK jako jedné z významných etap povýrobních operací je vysoká míra fluktuace objektivity používaných metod plynoucí zejména z podstatného vlivu lidského činitele. Dalším problémem je možnost velkého rozptylu v rámci hodnocení. Nejvýraznějším problémem, který zasahuje do kvality i ekonomiky hodnotícího procesu, je značná časová náročnost etapy hodnocení. V systému hodnocení se zpracovává totiž velké množství informací při stále stoupající úrovni časové náročnosti a zmenšujících se rozměrech výrobků. Disertační práce se zaměřila na studium metodik a návrh algoritmů cíleně směřujících k vytvoření systému pro objektivní hodnocení kvalitativních parametrů BK na základě jeho předem vytvořeného obrazu s pomocí vhodné optické soustavy. Na základě empirických zkušeností získaných z pozorování subjektivního hodnocení BK ve výrobních a povýrobních etapách byla zvolena pro další zkoumání aplikace metod obrazové fúze jednotlivých obrazů BK s využitím algoritmů využívajících fuzzy transformaci. S tímto cílem bylo vytvořeno a odzkoušeno několik původních algoritmů v programovém prostředí LabVIEW. Na základě dosavadních výsledků zkoumání a ověřování možností snímání a zpracování obrazu BK při výrobě a následného zpracování a vyhodnocení získaných informací je možno očekávat, že dalším intenzivním vývojem technických částí řešení a zejména pak vývojem algoritmů pro zpracování obrazové informace optimalizovaných na minimalizaci časové náročnosti bude možno získat významné nástroje technické, ale zejména programové umožňující zefektivnění výrobních a povýrobních operací a cílově tak rovněž zvýšit kvalitu vyráběných BK. Lze také očekávat, že v budoucnosti se systémy pro hodnocení kvality výrobků (pokud se ovšem kvalita vlastní výroby výrazně nezlepší tak, že by pominula potřeba provádět hodnocení výrobků jako povýrobní etapu) mohly stát součástí výrobních zařízení. Tím by ke kvalitativnímu hodnocení výrobků mohlo docházet již během výrobního procesu bez ztráty spojitosti s tokem informací ve výrobě a zpětná vazba vedoucí k nápravě by byla velmi těsná. 13

30 14

31 3. Základní pojmy 3.1 Obraz a obrazová funkce Při pozorování světa kolem nás se setkáváme s pojmem obraz. Jde o určitou projekci reálného světa na plochu sítnice oka nebo na plochu snímacího prvku kamery. Obraz je tak obecně spojitou skalární funkcí f, které budeme říkat obrazová funkce, která je zobrazením přiřazujícím bodu v prostoru A (jde o afinní prostor) souřadnice (x, y) v obraze. V jednoduchém případě při popisu statického obrazu jde o dvourozměrnou obrazovou funkci f(x, y), kde (x, y) jsou souřadnice jednotlivého bodu na ploše sítnice oka nebo snímacího prvku. Hodnoty obrazové funkce f(x, y) odpovídají určité (zvolené) fyzikální veličině, z důvodu určitého praktického zjednodušení budeme v dalším popisu pracovat s pojmem dvourozměrný (2D) obraz a s jeho interpretací v podobě obrazové funkce f(x, y), jejíž každý prvek o souřadnici (x, y) nese informaci o jasové hodnotě jednoho prvku obrazu. Znamená to, že každý prvek obrazové funkce f(x, y) je tvořen celým číslem popisujícím hodnotu fyzikální veličiny (nejčastěji jasovou informaci) jednoho pixelu (z angl. picture element obrazový prvek). Obrazovou funkci lze potom psát ve tvaru dvourozměrného pole matice a s ní dále pracovat pomocí matematických funkcí pro práci s maticemi. Z praktického hlediska je v počítačové technice třeba pracovat s obrazovou funkci f nikoli spojitou, ale diskretizovanou, protože jak na sítnici oka, tak na ploše snímacího prvku je počet světlocitlivých prvků konečný, obvykle jde o plochu tvořenou maticí o rozměrech M N bodů. Definičním oborem takto vzniklého digitálního obrazu bude potom rovinná oblast R definovaná popisem pro každý prvek (obrazový bod ) (m, n), této roviny vztahem: R = {(m, n), m <1, M>, n <1, N>}. (3.1) Vybereme-li z obrazu určitou část, kterou snímáme konečným počtem světlocitlivých prvků, nazveme tento proces vzorkováním. Při vzorkování je třeba podle Shannonova (- Kotělnikovova) teorému o vzorkování dodržet kmitočet vzorkování, který musí být nejméně dvojnásobkem nejvyšší hodnoty kmitočtu ve vzorkovaném signálu, který nás zajímá. Ve zpracování obrazu lze tuto větu přirozeně interpretovat tak, že interval vzorkování se volí o velikosti menší než je polovina rozměru nejmenších detailů v obraze (nejčastěji pak jedna pětina rozměru). Je také patrné, že čím jemnější je vzorkování (tedy čím je M N větší), tím lépe je aproximován původní spojitý obrazový signál. V souvislosti se vzorkováním spojité obrazové funkce f(m, n) je potřeba rovněž zvolit plošné uspořádání bodů při vzorkování. Z praktických důvodů se nejčastěji používá pravidelné uspořádání vzorkovacích bodů, tedy pravidelná vzorkovací mřížka tvořená pravidelnými mnohoúhelníky, jejichž síť úplně pokrývá rovinu obrazu. Nejčastěji se používají čtvercové mřížky, někdy se používají i jiné mřížky tvořené rovnostrannými trojúhelníky nebo pravidelnými šestiúhelníky. Převedení fyzikální veličiny (nejčastěji jasu) jednotlivých obrazových bodů (pixelů) na konkrétní číslo nazýváme kvantováním. Znamená to, že jednotlivé hodnoty obrazové funkce f(m, n) vzorkovaného obrazu musíme pro další zpracování převést na číslo (digitalizovat) z předem daného rozsahu hodnot tzv. kvantovacích úrovní. Je-li pro reprezentaci informace o obrazovém bodu snímaného obrazu použito b bitů, je počet kvantovacích úrovní k = 2 b. Pro zpracování monochromatického obrazu se obvykle používá 8 bitů (tedy b = 8), počet kvantovacích úrovní k = 256. Hodnoty takto kvantované obrazové funkce potom splňují vztah: f(m, n) <0, 255> Množinu pixelů navzájem vázaných relací sousedství nazýváme oblast (angl. Region). Pokud existuje souvislá cesta z pixelu P do pixelu Q jako posloupnost sousedních pixelů A 1, A 2, A n, kde P = A 1 a současně Q = A n, je oblast souvislá (kompaktní) množina. Hranice oblasti je množina bodů (pixelů) oblasti R majících alespoň jednoho souseda nepatřícího do oblasti R. Jestliže ve spojité obrazové funkci lze předpokládat nekonečně tenkou (infinitezimální) hranici, v digitálním obraze má hranice vždy konečnou tloušťku. Je tak třeba rozlišovat vnitřní a vnější 15

32 hranici oblasti. Vnější hranice je současně hranicí pozadí. Hranice oblasti (angl. Border) je pojem globálního významu, hrana (angl. Edge) je pojem lokálního významu (hranice může být tvořena několika hranami), hranový bod (angl. Edgel) je pixel hrany. Při práci s obrazem používáme ještě pojem oblast zájmu ROI (z angl. Region Of Interest), což je vybraná část obrazu, s níž budeme dále pracovat. 3.2 Zpracování obrazu Zpracování obrazu je jednou z významných součástí velmi bouřlivě se rozvíjející vědní disciplíny s názvem počítačové vidění. Její kořeny se nacházejí v oblasti televizní techniky, kybernetiky, výpočetní techniky, ale rovněž v oblasti optiky či obecně fyziky a silně využívající matematické a numerické metody. Při řešení konkrétní úlohy zpracování obrazu obvykle hovoříme o třech základních krocích, kdy vstupní obraz je podroben operacím: a) předzpracování (např. diskretizace, prahování, hledání hran), b) segmentace (hledání oblastí a objektů v obraze), c) rozpoznávání obrazu. Pro každou část lze použít celou řadu metod, algoritmů a konkrétních předem vytvořených postupů v daném programovém prostředí. Vždy je však třeba počítat s tím, že každá úloha může mít své specifické vlastnosti, které nás vedou k celé řadě změn, úprav a doladění konkrétních postupů a algoritmů. Důležitou úlohou je rovněž optimální nasvícení scény Předzpracování obrazu Předzpracování obrazu jsou operace na obraze s nejnižší úrovní abstrakce (kdy se obraz neinterpretuje), vstupem i výstupem jsou jasové obrazové funkce. Cílem je potlačit zkreslení (např. korekce geometrického zkreslení obrazu), odstranění šumu, zvýšení kontrastu (pro prohlížení obrazu člověkem), zdůraznění charakteristik obrazu pro další zpracování (např. hledání hran). Za základní operace s obrazovou funkcí ve fázi předzpracování lze tak považovat např. filtraci, prahování, hledání hran či vyhlazení. Vždy se jedná o to, aby vstupní obrazová funkce f (x, y) byla podrobena takové operaci ( ), s jejíž pomocí je dosaženo požadované nebo hledané vlastnosti reprezentované výslednou obrazovou funkcí g(x, y) podle obecného vztahu: ( ) ( ) ( ) ( ) Interpretaci rozdělení jasových úrovní v digitálním obrazu získáme pomocí histogramu. Histogram hodnot jasu je odhadem hustoty pravděpodobnosti jevu, že pixel bude mít určitou jasovou hodnotu. Histogram bývá často jedinou globální informací o obraze. Můžeme ho použít při nastavování podmínek pro snímání a digitalizaci, při změnách jasové stupnice nebo pro segmentaci obrazu na objekty a okolí. Histogram jasu H f (z) je jednorozměrné pole s počtem složek rovným počtu jasových úrovní z. Hodnota každé složky odpovídá četnosti bodů příslušného jasu z v obraze f, takže pomocí histogramu získáme představu o rozdělení jasových úrovní v digitálním obraze. Na obr. 3.1 je uveden příklad obrazu (a) a jeho jasového histogramu (b). Poznámka: V příkladu odpovídá minimální jas (černá) jasové úrovni z = 0 a maximální jas (bílá) odpovídá jasové úrovni z =

33 H f (z) a) obraz b) jasový histogram z Obr. 3.1 Příklad obrazu (a) a jeho jasového histogramu (b) (dle [48]) Algoritmus výpočtu hodnot jasového histogramu H f (z) pro obraz f(m, n) o rozměrech M N bodů lze popsat např. takto: Algoritmus HistogramJas (Výpočet jasového histogramu obrazové funkce) 1. Polož H f (z) 0 pro všechna z = 0, 1, 255, 2. Pro bod obrazu f se souřadnicemi (m, n) zjisti hodnotu jasu f(m, n) = z mn, 3. Inkrementuj položku H f (z mn ), tj. H f (z mn ) H f (z mn ) + 1, 4. Opakuj od kroku 2. pro všechny hodnoty m a n. Významnou roli při práci s obrazem hrají geometrické transformace, které používáme všude tam, kde je třeba provést úpravy obrazu, jako je zvětšování, posouvání, pootáčení, odstraňování geometrických zkreslení apod. Geometrickou transformaci si lze představit jako matici funkcí, které transformují každý pixel obrazu (x, y) do nové pozice (x, y ). Při předzpracování obrazu používáme lineární nebo nelineární metody transformace. Lineární operace pracují s hodnotou výstupního obrazu g(x, y) jako s lineární kombinací hodnot vstupního obrazu f(x, y) v malém okolí zvoleného pixelu (x, y). Pro úlohy tohoto typu je významným nástrojem konvoluce. Konvoluce je definována pro spojité funkce h(t) a f(t) vztahem: ( ) ( ) ( ) ( ) ( ) ( ) Operátorem je vyznačen symbolický vztah mezi dvěma funkcemi h a f (skutečné násobení platí pro Laplaceovy obrazy těchto funkcí). Funkci h se říká též konvoluční jádro. Pro diskrétní funkce (těmi obrazové funkce jsou) lze rovnici (3.3) psát jako posloupnost: ( ) ( ) ( ) ( ) kde se součty se provedou přes všechna čísla m a n popisující souřadnice pixelů v okolí sledovaného pixelu. Připomeňme, že pro i < 0 a pro j < 0 je h(i, j) = 0. Konvolučnímu jádru h v diskrétním tvaru (ve tvaru dvourozměrné matice) budeme rovněž říkat konvoluční filtr nebo konvoluční maska. Obvykle budeme používat lichý počet řádků a sloupců, potom sledovaný pixel je uprostřed takto definovaného okolí a současně také uprostřed konvoluční masky. Operace eliminace šumu a rušení v obraze využívající lineární přístupy budeme nazývat jako lineární vyhlazování. Jde o operace, při nichž se potlačují velké změny charakteristické vlastnosti objektů v obraze (jas, barva apod.) a obraz se tak průměruje, přičemž se tím eliminuje šum a rušení (jde tedy o filtraci). Základní metodou vyhlazování je průměrování, kde každému bodu přiřadíme novou hodnotu jasu, kterou vypočteme jako aritmetický průměr hodnot jasu v okolí pixelu. Zvolme 8-okolí pixelu (tedy okolí 3 3 kolem středového pixelu), potom jednoduchá konvoluční maska průměrující hodnoty pixelů v 8-okolí je dána vztahem: 17

34 [ ] ( ) Na obr. 3.2 vlevo je znázorněn vstupní obraz (použit z článku autora [56]), který je ve formě matice o rozměrech pixelu podroben konvoluční operaci (obrázek uprostřed se zdůrazněnými hranami, tedy místy změny jasu v obraze) a následně vyhlazení (obrázek vpravo). K vlastnímu algoritmu pro zpracování uvedeného obrázku se vrátíme ještě v kapitole 8. Obr. 3.2 Ukázka aplikace konvoluce a vyhlazení Pro vnímání důležitých míst v obraze je třeba při předzpracování hledat místa, kde se náhle mění hodnoty jasu, tedy hranové body. Velmi významnou operací při předzpracování obrazu je tedy hledání hran v obraze. Matematickým nástrojem pro hledání změn hodnot obrazové funkce f(x, y) jsou parciální derivace. Gradient funkce f(x, y) je definován jako vektor, jehož souřadnice tvoří parciální derivace funkce f podle jednotlivých proměnných x, resp. y: ( ) ( ) ( ) ( ) Gradient je tedy vektorová veličina určující směr největšího růstu funkce (směr gradientu) a strmost tohoto růstu (modul gradientu). Pixely s velkým modulem gradientu jsou hranovými body. Často nás budou zajímat místa v obraze s velkými jasovými změnami bez ohledu na směr hran. V tomto případě můžeme využít všesměrový lineární diferenciální operátor nazývaný Laplacián: ( ) ( ) ( ) Pro monotonně rostoucí jasovou funkci f(x, y) v příslušném okolí je Laplacián nulový tam, kde velikost gradientu je maximální. Průchod funkce vyjádřené Laplaciánem nulou se v literatuře označuje ZC, z angl. Zero-crossing. Při hledání hran v obraze často rozlišujeme tři kategorie hranových detektorů: a) založené na hledání maxim prvních derivací (Roberts, Prewittová, Sobel), b) založené na hledání průchodu druhých derivací nulou (ZC), příkladem je Marrův-Hildrethové operátor a Cannyho hranový detektor, c) založené na lokální aproximaci obrazové funkce parametrickým modelem, např. polynomem dvou proměnných (Haralick). Stručně uvedeme příklady gradientních operátorů. Jednoduché operátory aproximující gradient můžeme vytvářet na základě vztahu (3.3), kde operátor má tvar konvoluční masky, resp. v podobě 18

35 konvolučního jádra h. U směrových operátorů budeme mít tolik jader, kolik směrů operátor rozlišuje. Nejstarší (a jednoduchý) je Robertsův operátor používající okolí 2 2 reprezentativního pixelu. Jeho konvoluční masky jsou: Velikost gradientu se vypočte podle vztahu: [ ] [ ] ( ) ( ) ( ) ( ) ( ) ( ) ( ) Nevýhodou operátoru je jeho velká citlivost na šum, protože používá malé okolí aproximace. Proto se častěji používají konvoluční jádra o velikosti 3 3 a větší. Operátor Prewittové, podobně jako Sobelův, Kirschův či Robinsonův, aproximuje první derivaci. Gradient je odhadován v osmi směrech (pro konvoluční masku 3 3 lze rotovat po 45 0 ) a z výsledku největší hodnoty konvoluce se určí směr gradientu. Podle této vlastnosti bývají tyto operátory též nazývány kompasové operátory. Nyní naznačíme tvary konvolučních masek: [ ] [ ] [ ] ( ) Určitým vylepšením předchozí metodiky je Sobelův operátor: [ ] [ ] [ ] ( ) Další zlepšení přináší Robinsonův operátor, resp. jeho jistá varianta Kirschův operátor. Již dříve zmíněny Laplaceův gradientní operátor aproximuje druhou derivaci, je invariantní vůči otočení a udává jen velikost hrany, nikoliv směr. Lze odvodit aproximační vztah pro druhou derivaci (odvození provedeme pro parciální derivaci podle x): ( ( ) ( )) ( ( ) ( )) ( ) ( ) ( ) ( ) [ ] [ ] [ ] Poslední vztah říká, že druhá derivace je konvolucí prvních derivací. Diskrétní Laplacián je potom součtem druhých parciálních derivací pro obě souřadnice x a y: [ ] [ ] [ ] ( ) Výsledná matice ve vztahu (3.13) je současně konvolučním jádrem h 4 pro 4-sousedství (tzn. okolí 2 2 kolem reprezentativního pixelu, někdy se používá jádro h 8 pro 8-sousedství (tzn. okolí 3 3 kolem reprezentativního pixelu: [ ] [ ] ( ) Další skupinou jsou hranové detektory založené na hledání průchodu druhých derivací obrazové funkce nulou. V roce 1980 zveřejnil David Marr společně s Ellen Hildrethovou teorii [29] popisující 19

36 matematický model detekce skokových hran při neurofyziologickém měření na sítnici oka. Základem teorie je hledání polohy hrany v obraze v místě průchodu druhé derivace obrazové funkce nulou. Již víme, že první derivace obrazové funkce má v místě hrany své lokální maximum. Druhá derivace pak v místě hrany protíná nulovou hodnotu. Při výpočtech může být důležitým hlediskem robustnost a mnohdy i rychlost výpočtu druhé derivace. Hlavními požadavky na aproximaci druhé derivace tedy je konvoluce obrazu s vyhlazujícím filtrem, který by měl být hladký, ve frekvenčním spektru odpovídající pásmové propusti, aby omezil možný počet frekvencí, u kterých k průchodu nulou může dojít, a měl by reagovat pouze na body z blízkého okolí hrany (přesnost lokalizace hrany v obraze). Požadavky ale jsou dosti protichůdné. Podle Marrovy-Hildrethové teorie je optimální lineární filtr, jehož koeficienty v konvoluční masce odpovídají gaussovskému rozložení: ( ) ( ) kde x a y jsou souřadnice pixelu v obrazu a σ je střední kvadratická odchylka udávající velikost okolí. Pixely blíže středu mají při filtraci větší váhu, vliv vzdálenějších pixelů (více než 3σ) je potom zanedbatelný. Na obr. 3.3a je zobrazen tvar Gaussiánu dle předpisu (3.15). S využitím konvoluce budeme tedy hledat aproximaci druhou derivaci obrazové funkce f(x, y) Laplaciánem: [ ( ) ( )] ( ( )) ( ) ( ) Takto naznačený postup, kdy jsme s využitím linearity operací zaměnili pořadí derivace a konvoluce, se nazývá LoG operátor (z angl. Laplacian of Gaussian, tedy Laplacián Gaussiánu). Na obr. 3.3b je znázorněn prostorový tvar derivace Gaussiánu a na obr. 3.3c tvar operátoru LoG. a) Gaussián b) derivace Gaussiánu c) Laplacián Gaussiánu (LoG) Obr. 3.3 Prostorové tvary operátorů Pro další výpočet využijeme středovou souměrnost Gaussiánu a ve vztahu (3.15) provedeme substituci x 2 + y 2 = r 2 (r zde reprezentuje Euklidovskou vzdálenost od středu Gaussiánu), takže dostaneme: Výpočtem lze odvodit konvoluční masku h(x, y): ( ) ( ) ( ) ( ) Příklad takové masky (podle tvaru invertovaná podoba na obr. 3.2c se nazývá Mexický klobouk, angl. Mexican hat) pro okolí 5 5 je: 20

37 ( ) [ ] Další hranový detektor publikoval John Canny v roce 1986 (viz např. [6]) a je podle něj nazýván jako Cannyho hranový detektor. V jistém smyslu bylo jeho zveřejněním završeno období hledání nejlepšího hranového detektoru (navíc práce vznikla na stejném pracovišti, jako Marrova teorie). Základní myšlenkou je představa, že skokovou hranu lze hledat filtrem. Principem Cannyho hranového detektoru je syntéza z odezev detektoru v různých měřítkách Integrální transformace Při zpracování obrazu se používají techniky používané v dalších odvětvích elektrotechniky a kybernetiky. Významnou roli zde hrají filtry jako bloky zpracování signálu, za který považujeme rovněž obraz (resp. obrazovou funkci). Pro usnadnění zpracování budeme uvažovat lineární filtry, takže se lze vydat dvěma cestami, jak je naznačeno na obr. 3.4: a) Filtrace v prostorové oblasti (pro jednorozměrné signály jde o časovou oblast), kdy obraz se zpracovává jako lineární kombinace vstupního obrazu s koeficienty filtru. Matematickým nástrojem zde bude konvoluce. Na obr. 3.4 jde o čárkovaně označenou větev. b) Filtrace ve frekvenční oblasti, kdy obraz je převeden lineární integrální transformací do frekvenční reprezentace. Po filtraci se výsledek inverzní lineární integrální transformací převede zpět na obraz. Významným nástrojem je Fourierova transformace. vstupní obraz prostorový filtr výstupní obraz přímá transformace frekvenční filtr zpětná transformace Obr. 3.4 Zpracování obrazu v prostorové nebo frekvenční oblasti Fourierova transformace je jedním z hlavních nástrojů pro (lineární) zpracování signálů. Dovoluje provádět vzájemně jednoznačný převod signálu f(t) z časové reprezentace na signál (funkci) F(ξ) do frekvenční reprezentace a zpět. Umožňuje tak analyzovat frekvenční obsah (spektrum) signálu. Pojem harmonické analýzy byl zaveden francouzským matematikem J. B. Fourierem 2. Fourierova transformace je vhodná pro periodické signály a je definována pro spojitou funkci f(t) vztahem: ( ) { ( )} ( ) ( ) kde ξ je kmitočet a 2πξ je úhlová frekvence. Inverzní Fourierova transformace je potom definována vztahem: ( ) { ( )} ( ) ( ) 2 Jean Baptiste Joseph Fourier (*1768, 1830), francouzský matematik a fyzik 21

38 Pro vysvětlení významu inverzní Fourierovy transformace vyjádřeme funkci f(t) pomocí Riemannova součtu: kde ξ = ξ k+1 ξ k pro všechna k. ( ) ( ( ) ( ) ) ( ) Vztah (3.22) lze vysvětlit tak, že funkci f(t) lze vyjádřit jako vážený součet (integrál) mnoha komplexních exponenciál. Z platnosti Eulerova vztahu: lze vztah (3.22) také převést na součet sinusovek a kosinusovek. ( ) Nechť vstupním signálem je posloupnost f(n), n = 0, 1,..., N 1. Nechť F(k) označuje Fourierovo spektrum (výsledek diskrétní Fourierovy transformace) signálu f(n). Potom je diskrétní Fourierova transformace definována vztahem: ( ) ( ) ( ) Inverzní diskrétní Fourierova transformace je definována vztahem: ( ) ( ) ( ) V celé řadě výpočetních algoritmů je velmi frekventovaně používána rychlá Fourierova transformace FFT (z angl. Fast Fourier Transform). Základní myšlenkou FFT (Danielson, Lanczos v roce 1942) je převedení definiční posloupnosti dle vztahu (3.24) délky N na součet dvou posloupností délky N/2, jedna posloupnost obsahuje liché vzorky a druhá sudé vzorky. Tím se urychlí výpočet. Poznámka: Pro dvojrozměrnou obrazovou funkci f(m, n) pro obraz o rozměrech M N můžeme vztah (3.24) popisující diskrétní Fourierovu transformaci psát v podobě: ( ) ( ) ( ) ( ) a vztah (3.25) popisující inverzní diskrétní Fourierovu transformaci v podobě: ( ) ( ) ( ) ( ) Nyní se budeme zabývat stručně myšlenkou rozkladu libovolného signálu (obrazu) na lineární kombinaci bázových periodických ortogonálních, avšak neharmonických signálů. Diskrétní kosinová transformace (angl. Discrete Cosine Transform, zkratka DCT) je speciálním případem diskrétní Fourierovy transformace (DFT). V literatuře lze nalézt 8 variant DCT, z nichž 4 jsou používané více a označují se DCT-I, DCT-II, DCT-III a DCT-IV. Nejpoužívanější je DCT-II (někdy také jako DCT), která se používá při kompresi formátů obrazů. Jde např. standardy JPEG (zkratka z angl. Joint Photographic Experts Group) a standardy MPEG (zkratka z angl. Motion Picture Experts Group) a další. Dosud jsme se zabývali metodikami zpracování periodických či stacionárních signálů. Tyto metody poskytují informaci o tom, které frekvence se v signálu nacházejí, nevypovídají však o jejich 22

39 poloze v čase. Možným řešením uvedeného problému je použití okna, které v čase ohraničí krátký úsek signálu a umožní z něj určovat spektrum v daném časovém intervalu. Tato metodika se nazývá krátkodobá Fourierova transformace (STFT z angl. Short-Time Fourier Transform) a publikoval ji v roce 1946 Dennis Gabor 3 s další variantou s Gaussovským oknem nazvanou Gaborova transformace (angl. Gabor Transform). Vyšel z myšlenky, že funkce Gaussiánu má nejmenší součin mezi trváním a šířkou spektra (optimum). Jako fyzik totiž aplikoval princip neurčitosti zavedený Wernerem Heisenbergem 4 v kvantové mechanice, který platí i pro každou dvojici signálů v časové a frekvenční oblasti (tzn. časový signál a jeho Fourierův obraz). Poznámka: Rozdělení signálu na malá obdélníková okna nevede k úspěšnému výsledku, protože na rozhraní oken vzniknou nespojitosti, které se ve spektru po rozkladu projeví nežádoucími vysokými frekvencemi (tedy větším počtem koeficientů Fourierova rozkladu). Bude tedy třeba funkci signálu f násobit (matematicky je myšleno skalárně) vhodnou okenní funkcí g pro dané okolí τ. Na obr. 3.5 je znázorněn postup, při němž je funkce signálu f násobena okenní funkcí g vždy v daném okénku postupně v okolí τ 0, 2τ 0 atd. Všimněme si, že je účelné, aby okenní funkce byla v dostatečně velkém rozsahu konstantní a na okrajích byla dostatečně hladká (aby zde nevznikla spektra s vysokým počtem vyšších frekvencí). Je tedy patrné, že další vývoj v této oblasti byl věnován studiu vhodného tvaru okenní funkce g. f(t)g(t) g(t) g(t τ 0 ) f(t) 0 τ 0 2τ 0 t Obr. 3.5 Příklad okenní funkce při Fourierově transformaci (podle [11]) V současné době mají velký význam matematické metody umožňující získat časově-frekvenční popis nestacionárního a neperiodického signálu, které vycházejí ze snahy vhodnou změnou šířky okna v čase a jeho tvarem dosáhnout optimálního poměru rozlišitelnosti v čase a frekvenci. Pro nízké frekvence se zvolí okno širší, pro vysoké pak užší. Použitá okna mají podobu předem definované vlnky, proto se tyto metody se nazývají vlnková transformace (WT, z angl. wavelet transform). Příkladem aplikace je např. článek [3]. Poznámka: Poprvé použili slovo vlnka (francouzsky ondelette malá vlna, vlnka) v roce 1981 ve své práci francouzští fyzikové Jean Morlet a Alex Grossman. Při následném překladu práce do angličtiny bylo francouzské slovo onde (vlna) přeloženo jako anglické wave. Tím vznikl termín wavelet. V roce 1909 zavedl maďarský matematik Alfréd Haar 5 ve své doktorské práci zabývající se ortogonálními systémy funkcí množinu funkcí, která je dnes považována za nejjednodušší vlnkovou transformaci. Bázová funkce Haarovy transformace je tak definována vztahem: ( ) { ( ) Poznámka: Pomocí Haarovy funkce bylo možno poprvé popsat Brownův pohyb. Často používanou mateční funkcí je vlnka tvaru mexického klobouku, dále pak Meyerovy funkce (Y. Meyer), Morletovy (J. Morlet) a zejména pak funkce popsané v práci z roku 1992 belgickou 3 Pův. jménem Dénes Gábor (*1900, 1979), maďarský matematik, fyzik (a též vynálezce holografie), 4 Werner Heisenberg (*1901, 1976), německý fyzik, nositel Nobelovy ceny z roku 1932 za kvantovou mechaniku. 5 Alfréd Haar (*1885, 1933), maďarský matematik 23

40 matematičkou a fyzičkou Ingrid Daubechiesovou. Na obr. 3.6 je znázorněn (podle [11]) průběh několika používaných matečních funkcí (příklad Daubechiesové vlnky je zde označen jako Daubechies 2). Mexican hat wavelet Morlet wavelet Daubechies 2 wavelet Meyer wavelet Obr. 3.6 Příklady některých používaných vlnek (wavelets) (dle [11]) Mexický klobouk, Morletova vlnka, vlnka Daubechiesové (Daubechies 2) a Meyerova vlnka Segmentace Segmentace je jedním z nejdůležitějších kroků analýzy obrazu. Jde o postup, kterým v obraze vybereme určitou část chápanou jako objekt. Informaci o rozdělení obrazu do jednotlivých segmentů využívají algoritmy zpracování obrazu, které se snaží se porozumět obsahu obrazu. Segmentace obrazu (obrazové funkce) f(k, l) R je algoritmus, kterým rozdělíme obraz R na p podobrazů (podoblastí) R 1, R 2, R p tak, aby platilo: ( ) Každý podobraz splňuje nějaké tvrzení, popř. množinu tvrzení, např.: všechny pixely v podobraze R i mají stejnou úroveň jasu, tzn. hodnota obrazové funkce daných pixelů je stejná: f(k, l) = f(m, n), všechny pixely v podobraze R i se neliší v úrovni jasu více než o předepsanou hodnotu, tzn. hodnota rozdílu obrazových funkcí daných pixelů je rovna nebo menší, než stanovená hodnota K: f(k, l) f(m, n) K, standardní odchylka úrovní jasu všech pixelů podobrazu R i je dostatečně malá, tzn. hodnota obrazové funkce každého pixelu (k, l) v podobrazu R i je v daném intervalu hodnot <K, L>, takže platí: f(k, l) <K, L>, pro všechna f(k, l) v podobraze R i. Pro segmentaci obrazu existuje celá řada segmentačních algoritmů, nejpoužívanějšími (a nejnázornějšími) jsou metody založené na prahování (angl. Threshold). Příkladem je prahování podle úrovni šedé, které patří k nejjednodušším a také nejstarším segmentačním metodám. Prahování je funkce, která provádí transformaci vstupního obrazu f na výstupní binární obraz g podle rozhodovacího vztahu: 24

41 ( ) { ( ) ( ) ( ) kde T je prahová hodnota (práh). Prvek g(i, j) = 1 je potom obrazovým prvkem objektu a prvek g(i, j) = 0 obrazovým prvkem pozadí. Pro segmentaci obrazu lze využívat dále metody založené na detekci významných hran v obraze (angl. Edge-based). Lokální hrany jsou detekovány pomocí hranových detektorů na základě rozdílu hodnot okolních pixelů. Hranový detektor je algoritmus, který vyhledává množinu hran (bodů, pixelů) v obraze. Dalšími metodami jsou metody založené na hledání regionů v obraze (angl. Region-based). Pokud lze identifikovat hrany, měly by tyto teoreticky ohraničovat regiony. Kontury regionů však mohou být porušené, nemusí ohraničovat celý region. Není také zaručeno, že hranice regionů nalezené metodou detekce hran budou stejné, jako ty nalezené metodou hledání regionu. Pro složitější úlohy segmentace lze použít další metody založené na statistické analýze obrazových dat, tzv. znalostní metody (angl. Knowledge-based) a další. Při segmentaci obrazu je důležitou etapou identifikace oblasti, s níž budeme dále pracovat, i a jejímu popisu (angl. Region identification, Region description). Jednou z metod je využití řetězových kódů (angl. Chain codes), které v roce 1961 použil Herbert Freeman pro popis hranice objektu. Při procházení předem určené hranice objektu počínaje zvoleným počátečním pixelem se vytvoří posloupnost symbolů v předem daných orientacích řetězový kód, který je tvořen posloupností definovaných čísel během postupu při změně směru o 90 0 pro 4-okolí, resp. při změně směru o 45 0 pro 8- okolí. V reálných obrazech je často třeba pracovat s liniemi, které jsou přerušeny (z důvodu šumu, po prahování nebo detekci hran apod.). V těchto případech je třeba použít metody, které si umějí poradit s chybějícími pixely Metody rozpoznávání Při zkoumání složitého jevu se omezujeme na část, která nás zajímá. Potom budeme tuto část nazývat objekt (nebo systém). Vše ostatní, co nám z daného pohledu připadá nezajímavé, nazýváme pozadí. Objekty většinou nezkoumáme v celé jejich složitosti, ale pozorujeme nebo měříme jen určité vlastnosti, které jsou pro nás zajímavé. V teorii systémů se používá pojem rozlišovací úroveň. Rozpoznávání obrazu (angl. Pattern Recognition) je výsledkem pozorování objektu podle nějakého rozhodovacího pravidla a jeho zatřídění do předem známých tříd. Základní úlohou při popisu objektů je zařazení objektu na základě jeho obrazu do jedné ze tříd. Pracujeme s pojmy: Třída (angl. Class) množina objektů s podobnými vlastnostmi. Podobnost (angl. Similarity) měřitelná vlastnost na obrazu objektu vyjadřující vztah ke každé ze tříd. Obraz (vzor) (angl. Pattern) reprezentace objektu vyjádřená pomocí kvantitativního či kvalitativního popisu, kterou použijeme pro rozpoznávání. Důležitým postupem při rozpoznávání je klasifikace. Při klasifikaci objektu můžeme zvolit některou z možností: 1. zařazení objektu do jedné ze tříd, 2. zařazení do jedné ze tříd s možností odmítnutí zařazení (rejection), 3. zařazení objektu do více tříd. Při klasifikaci může vzniknout chyba klasifikace: a) objekt je zařazen do nesprávné třídy (angl. Classification Error), b) objekt je nesprávně odmítnut (angl. Rejection Error). 25

42 Hlavním cílem klasifikace je vybrat z příznaků pouze ty nejvýznamnější z hlediska rozpoznávání. Je totiž důležité snížit zátěž (výpočetní, časovou) klasifikačního procesu. Mějme tedy dán zkoumaný objekt, který je v rozpoznávacím systému reprezentován obrazem a jemu přiřazenou množinou definovaných příznaků x = {x 1, x 2,..., x N }, jak znázorněno na obr Příznaky jsou potom v klasifikátoru posuzovány tak, aby každé N-tici příznaků byl přiřazen jednoznačný identifikátor třídy t r, do níž bude daný obraz zařazen. Klasifikátor tak realizuje předpis, kterému budeme říkat rozhodovací pravidlo. Rozpoznávací systém Objekt Obraz Klasifikátor x 1 x 2 x 3... x N příznaky t r identifikátor třídy Obr. 3.7 Schéma rozpoznávacího systému Je zřejmé, že množina klasifikačních příznaků by měla dostatečně přesně popisovat objekt (samozřejmě prostřednictvím jeho obrazu) a každou vlastnost bylo možno ocenit reálným číslem (tzv. míra vlastnosti). Budeme tedy hledat reprezentaci objektu pro klasifikaci v příznakovém prostoru, kde body jedné třídy vytvoří kompaktní shluky dobře oddělitelné rozhodovací strategií. Pro aplikování rozpoznávacího systému a pro práci s příznaky se využívají metody matematické statisticky (např. [19]). Ze statisticky významné trénovací množiny lze potom vytvořit pravidla pro další postup při rozpoznávání (tzv. učení podle příkladu) Houghova metoda rozpoznávání Jednou z používaných metod pro hledání jednoduchých útvarů, jako je úsečka, elipsa či kružnice, je Houghova transformace (publikoval P. V. C. Hough 6 v roce 1959 a patentoval v roce 1962, v roce 1972 zobecněnou metodu publikovali R. O. Duda a P. E. Hart [13]). Principem Houghovy transformace je transformace z kartézského souřadnicového systému do polárního. Významné použití této transformace je při analýze textu, kdy lze jejím využitím nalézt řádek textu v obraze. Úlohu Houghovy transformace pro hledání linie lze formulovat jako hledání takové podmnožiny bodů v obraze, která co nejvíce odpovídá části přímky úsečce. Přímka s vyznačenými body A, B a C je znázorněna na obr. 3.8a. Každý bod na přímce je potom popsán dvěma souřadnicemi, např. A = (x 1, y 1 ). Přímku můžeme vyjádřit v polárních souřadnicích pomocí vztahu: r = x cos φ + y sin φ, (3.29) kde r je délka normály od přímky k počátku souřadnic a φ je úhel mezi normálou a osou x. Pro bod A na přímce lze rovnici (3.29) psát ve tvaru: r = x 1 cos φ + y 1 sin φ, (3.30) Podobně lze vyjádřit vztahy i pro body B a C. Zavedeme-li nyní novou souřadnou soustavu (φ, r), zjistíme, že křivky popisující jednotlivé body A, B a C se protínají v jednom bodě (φ, r ), jak je znázorněno na obr. 3.8b. 6 Paul V. C. Hough (čti haf) 26

43 y A = (x 1, y 1 ) r B = (x 2, y 2 ) r r = x 1 cos + y 1 sin r C = (x 3, y 3 ) r = x cos + y sin x r = x 3 cos + y 3 sin a) b) Obr. 3.8 K výkladu Houghovy transformace pro hledání linie Obvykle se Houghova transformace implementuje tak, že obraz se diskretizuje v rastru M N. Každý prvek tohoto prostoru potom bude tvořen dvojicí souřadnic (φ i, r j ), kde i = 1, 2, M a j = 1, 2, N. Algoritmus Houghovy transformace pro hledání linie v obraze lze popsat např. takto: Algoritmus HoughT Line (Houghova transformace pro hledání linie v obraze) 1. Vstupem je binární obraz f, zajímají nás hodnoty obrazové funkce f(x k, y k ) = 1, kterých je celkem K. 2. Vytvoříme pole A o velikosti M N (budeme mu říkat akumulátor) a na počátku je vynulujeme: A(φ i, r j ) 0 pro všechna i = 1, 2, M a j = 1, 2, N (zvolíme vhodné dělení, např. φ i = i. π/m, r j = j. (r MAX - r MIN )/N ). 3. Nastavíme počítadlo j Nastavíme počítadlo i Pro každý pixel (x k, y k ), kde k = 1, 2, K, jehož hodnota jasu f(x k, y k ) = 1, vypočteme hodnotu: r j x k cos φ i + y k sin φ i. 6. Inkrementujeme hodnotu v akumulátoru: A(φ i, r j ) A(φ i, r j ) Opakujeme pro všechna další i = 2, M od kroku Opakujeme pro všechna další j = 2, N od kroku Nyní po průchodu celým obrazem je v akumulátoru A(φ i, r j ) hodnota n ij, která určuje počet nalezených bodů ležících na přímce dané parametry (φ i, r j ). 10. Největší hodnota n ij (tj. maximum všech hodnot) určuje parametry (φ i, r j ) přímky, na které se nachází nejvíce bodů v obraze. Obdobný postup lze modifikovat pro hledání parametrů hranic objektů, které lze popsat analytickou rovnicí. Příkladem je hledání kružnice popsané rovnicí: (x a) 2 + (y b) 2 = R 2. (3.31) Každý bod na kružnici o poloměru R a středem v bodě (a, b) můžeme popsat podle obr. 3.9 souřadnicemi: x = a + R cos φ, y = b + R sin φ, (3.32) 27

44 y y = b + R sin b R a x = a + R cos x Obr. 3.9 K výkladu Houghovy transformace pro hledání kružnice Budeme-li v obraze hledat bod ležící na kružnici s daným poloměrem R, vypočteme tedy jeho souřadnici a zjistíme hodnoty parametrů a a b podle vztahu: a = x R cos φ, b = y R sin φ, (3.33) Všechny body se stejnou hodnotou parametrů a a b potom budou ležet na dané kružnici. Mějme nyní obraz diskretizován v rastru M N, každý prvek tohoto prostoru bude tvořen dvojicí souřadnic (x i, y j ), kde i = 1, 2, M a j = 1, 2, N. Algoritmus Houghovy transformace pro hledání kružnice v obraze lze popsat např. takto: Algoritmus HoughT Circle (Houghova transformace pro hledání kružnice) 1. Vstupem je binární obraz f, zajímají nás hodnoty obrazové funkce f(x k, y k ) = 1, kterých je celkem K. 2. Zvolíme hodnotu R poloměru hledané kružnice. 3. Vytvoříme pole A o velikosti M N (budeme mu říkat akumulátor) a na počátku je vynulujeme: A(x i, y j ) 0 pro všechna i = 1, 2, M a j = 1, 2, N. 4. Nastavíme počítadlo j Nastavíme počítadlo i Nastavíme φ m Pro každý pixel (x k, y k ), kde k = 1, 2, K, jehož hodnota jasu f(x k, y k ) = 1, vypočteme hodnoty a a b: a x k R cos φ m, b y k R sin φ m. 8. Pokud bude platný logický výraz (a > 0) & (a < M) & (b > 0) & (b < N), inkrementujeme hodnotu v akumulátoru: A(a, b) A(a, b) Opakujeme pro všechna φ m do hodnoty 2π od kroku Opakujeme pro všechna další i = 2, M od kroku Opakujeme pro všechna další j = 2, N od kroku Nyní po průchodu celým obrazem jsou v akumulátoru A(x i, y j ) hodnoty n ij, které určují počet nalezených kružnic se středem v bodě (x i, y j ) o poloměru R. 13. Největší hodnota n ij (tj. maximum všech hodnot) je středem hledané kružnice v obraze. Lze tušit, že pro dosažení vysoké míry úspěšnosti bude zřejmě záležet na vhodné úpravě vstupního obrazu (resp. vstupní obrazové funkce f), která ve výše uvedených algoritmech není řešena a předpokládá se tak vhodná implementace. Praktická aplikace je potom uvedena v kapitole

45 3.3 Shrnutí Problematika zpracování obrazu je v současné době poměrně široce studována a zároveň popisována v řadě publikací. Základní pojmy a metody uvedené v této části vycházejí z dnes již tradiční literatury, jakou je rozsáhlá publikace [48], resp. starší kniha [17], příp. skriptum [18]. Zdrojem informací se stala i publikace [12] a další zdroje, z nichž řada je dostupná i na internetu, například [14], [19], [22], [23], [40] či [49]. Další významné informace lze čerpat z tištěných publikací, jakými je např. [10], [16], [24] či [45]. Pro následné studium, návrh a další rozvoj konkrétních metod v konkrétní aplikaci je třeba znát základní algoritmy a postupy. V další části se budeme věnovat některým méně frekventovaným metodám zpracování obrazu s cílem uplatnit je při měření a zejména při kvalitativním hodnocení konkrétních výrobků, v našem případě BK. 29

46 30

47 4. Fuzzy logika 4.1 Historické základy Zkoumání pravdy a pravdivosti, tedy shody mezi tvrzením a skutečnosti, je staré jako lidstvo samo a patří mezi základní úlohy nejen v soudnictví, ale i ve filozofii a vědě. Jako jeden z prvních klasických filozofických pohledů na pravdivost vyslovil Aristotelés 7 svým výrokem: Pravdivé je říci o něčem, co je, že to je, a o něčem, co není, že to není, z kterého lze vyvodit, že tvrzení může být buď pravdivé, nebo nepravdivé a nějaká jiná (třetí) možnost neexistuje. Podobně se vyjadřoval ve středověku katolický filozof a scholastik Tomáš Akvinský 8, později pak novověký astronom, fyzik a filozof Galileo Galilei 9. Učenci se domnívali, že je otázkou píle, času či metodiky přesné změření určité veličiny. Hlubším zkoumáním a poznáváním rozmanitosti světa však postupně docházeli k poznáním, že čím přesněji změří jednu veličinu, tím méně ví o jiné. Tuto komplementaritu docela výstižně vyjádřil Albert Einstein 10 ve svém aforismu: Čím lépe matematické zákony popisují realitu, tím jsou méně přesné, a čím jsou přesnější, tím hůře popisují realitu. Snad nejznámější a nejpoužívanější formulací uvedených úvah ve fyzice je Heisenbergův princip neurčitosti, který formuloval v roce 1927 německý fyzik (nositelem Nobelovy ceny za kvantovou fyziku z roku 1932) Werner Heisenberg 11. Podle tohoto základního principu kvantové mechaniky je nemožné současně přesně změřit polohu částice a její hybnost. Čím přesněji tedy určíme jednu z veličin, tím méně toho víme o druhé. Znamená to (bohužel), že ani sebelepší zdokonalení měřicí techniky nedovolí získat přesné výsledky. Přirozeným výsledkem dosavadních filozofických úvah bylo hledání pravdy či nepravdy, tedy jakási forma dvouhodnotové logiky. Při aplikaci matematických poznatků se ovšem často setkáme s problémem přílišné složitosti popisu zdánlivě jednoduchých jevů. Ukazuje se totiž, že přesnost za každou cenu je násilná. Významný britský matematik, filosof a spisovatel (nositel Nobelovy ceny za literaturu za rok 1950) Bertrand Russell 12 ve své práci Vagueness z roku 1923 (její přepis lze nalézt na [46]) popsal jako jeden z prvních pojem neurčitosti neboli vágnosti. Dalším, kdo použil pojem vágnosti v logickém popisu skutečnosti, byl matematik a filozof Max Black 13 narozený v Ázerbajdžánu, od tří let s rodiči žijící ve Francii, později v Německu, ve Velké Británii a nakonec v USA. Ve své práci Vagueness: An exercise in logical analysis z roku 1937 se zabýval povahou a pozorovatelností vágnosti a jejím vztahem pro logiku. Významnou měrou do teorie matematické logiky přispěly práce matematiků a logiků soustředěných v tzv. Lvovsko-varšavské škole (Lvov byl až do roku 1939 významným polským městem), v níž hrál vůdčí roli Polák, hrdý lvovský rodák, významný matematik (a dokonce jistou dobu i ministr v polské vládě) Jan Łukasiewicz 14, který rozpracoval mimo jiné 15 vícehodnotovou logiku, nejprve s pravdivostními hodnotami (0, ½, 1), tzv. ternární logika 16, později s pravdivostními hodnotami z intervalu <0, 1>. Našemu (řekněme zjednodušeně evropskému) uvažování vycházejícímu z klasické Aristotelovské dvouhodnotové logiky pravda nepravda je poněkud cizí uvažování založené na logice s větším 7 Aristotelés (*384 před n. l., 322 před n. l.) 8 Tomáš Akvinský (*1225, 1274) 9 Galileo Galilei (*1564, 1642) 10 Albert Einstein (*1879, 1955) 11 Werner Heisenberg (*1901, 1976) 12 Bertrand Russell (*1872, 1970) 13 Max Black (*1909, 1988) 14 Jan Łukasiewicz (*1878, 1956) 15 J. Łukasiewicz např. publikoval v roce 1920 způsob bezzávorkového zápisu logických, aritmetických a algebraických výrazů, tzv. Polskou notaci, kterou v 70. létech použila firma Hewlett-Packard u svých kalkulaček. 16 práce na téma tříhodnotové (ternární) logiky O logice trójwartościowej uveřejněná poprvé v časopise Ruch filozoficzny č. 5 vydaném ve Lvově v roce

48 počtem úrovní. V některých orientálních filozofiích je naopak tento způsob uvažování velmi přirozený, příkladem může být klasická čínská (taoistická) filozofie vycházející z dialektického soupeření dvou opačných a přitom vzájemně se doplňujících sil: Jin a Jang. Elementy Jin (ženská, tmavá, pasivní síla) a Jang (mužská, světlá, tvořivá síla) jsou popisem doplňujících se opaků, které se neberou doslovně. Každá věc živé i neživé části vesmíru je trochu Jin a trochu Jang. Všechny síly v přírodě mají oba dva stavy a tyto stavy jsou v neustálém pohybu. Je jistě zajímavé, že významný impuls ke změně aristotelovského chápání pravdivosti přišel zprostředkovaně z oblasti odvěkých střetů kultur, z oblasti dědiců kultury perské. V roce 1965 totiž vyšel v americkém časopise Information & Control článek Fuzzy Sets [61], který odstartoval významnou etapu ve vývoji problematiky vágní logiky a množin. Autorem této práce byl matematik a profesor počítačových věd Lotfi Askar Zadeh 17, který se narodil v Baku, hlavním městě Ázerbajdžánu (tehdy součásti Sovětského svazu), jeho otec byl Íránec a matka ruská Židovka. V roce 1931 se rodina vystěhovala do vlasti otce, do Íránu. A konečně v roce 1944 se L. A. Zadeh po studiích na teheránské univerzitě přesunul do USA, kde začal působit na význačných univerzitách. Jako první použil pro definici výkladu funkce příslušnosti do množiny místo původně používaného pojmu vágní (vagueness) slovo fuzzy, tedy střapatý, ochmýřený. Toto slovo se pro svůj jednoznačný (a dosud neotřelý význam) ujalo i v jiných jazycích, včetně češtiny. Od roku 1965, kdy byla publikována první práce na téma fuzzy logiky, se ve světě objevila celá řada prací a monografií na toto téma. Příkladem je např. monografie [25], či řada studií a článků, např. [62] opět od L. A. Zadeha, či [27]. Článek [47] je zase zdrojem filosofických souvislostí tématu. V naší odborné literatuře se jako první monografie na téma fuzzy logiky objevila v roce 1986 publikace [36] od autora V. Nováka (s dotiskem v roce 1990), později další [37]. Zajímavou prací s přesahem do filozofie byl článek [60] z roku 1994, dále pak z pozdější doby [15]. V současné době je fuzzy logika předmětem výuky v různých oblastech aplikací, jak je zřejmé z učebních textů, např. [33]. Je také zajímavé, že někteří autoři se vracejí k původním pracím J. Łukasiewicze a dále je rozvíjejí, jako např. [4] nebo [63]. V dnešní době je patrný výrazný rozvoj teoretického bádání i praktického aplikování fuzzy logiky v technické oblasti. Jistým dokladem je i příspěvek, který přináší tato práce s metodami a algoritmy pro zpracování obrazu. 4.2 Základní nástroje a motivace pro aplikaci fuzzy logiky Člověk je v běžném životě každodenně vystavován potřebě zpracovávat informace a konfrontován s celou řadou situací, v nichž musí rozhodovat na základě svých zkušeností a získaného souboru zkušeností. Tato znalostní báze se formuje a doplňuje celý život, nové informace se do ní přidávají a řada z nich se modifikuje, takže dochází k její aktualizaci. Využití nabytých zkušeností činíme v podstatě automaticky a způsob reprezentace znalosti je důležitým faktorem určujícím možnosti jejich dalšího využití a zpracování. V odborné literatuře se často pracuje s pojmem znalostní systém, resp. expertní systém. Jedná se obecně o systém (soubor technických a programových prostředků), který umožňuje simulovat rozhodovací činnost experta při řešení složitých úloh a který využívá vhodně vyjádřené znalosti (převzaté od experta) s cílem dosáhnout ve zvolené oblasti řešení problému kvality rozhodování na úrovni experta. Předpokládá se, že souhrn znalostí (znalostní báze) obsahuje specifické nabyté informace řešení problému z určité konkrétní oblasti (domény). Důležitou funkcí znalostního systému je tzv. inferenční mechanizmus, který je schopen ze zadaných faktů správně usuzovat souvislosti a následně vybrat správnou konkrétní znalost ze znalostí báze s cílem řešit zadaný problém. Je zřejmé, že ne vždy bude znalostní báze obsahovat všechny potřebné informace, proto je důležitou vlastností inferenčního mechanismu schopnost zpracování neurčitosti. Neurčitost vyplývá zejména z nepřesnosti, neúplnosti nebo nekonzistentnosti údajů, z určité nejasné nebo 17 Lotfi Askar Zadeh (*1921) 32

49 nejisté znalosti, resp. z vágnosti pojmů. Protože neurčitost je v reálném světě vždy v různé míře přítomna, musíme se s problematikou neurčitosti naučit pracovat. Velmi často se tak využívá přístupů a prostředků pravděpodobnostních (tzv. Bayesovský přístup) nebo fuzzy logika. V této práci se budeme dále problematikou aplikování fuzzy logiky zajímat poněkud hlouběji. V současné době se fuzzy logika významně uplatňuje při aplikacích v oblastech řízení a regulace technologických procesů např. v podobě tzv. fuzzy regulátoru. Ten může být realizován jako samostatné technické zařízení nebo jako programové řešení v rámci řídicího systému. Za výhodu fuzzy regulátoru lze považovat zejména relativní jednoduchost jeho návrhu. Existuje již velké množství aplikací fuzzy logiky od řízení praček přes automatické řízení výtahů v mrakodrapech až k vesmírným programům. Za příklad uveďme použití fuzzy regulátoru pro řízení automatického ramene při opravě Hubbleova teleskopu. Lze tedy říci, že při aplikace fuzzy logiky jde především o práci se znalostmi. Zajímavou a nesnadnou úlohou je sdělovat nabyté znalosti a zkušenosti jinému člověku nebo je uložit (třeba podobě algoritmu) do automatu (obvykle počítače), aby je bylo možno využívat obecněji. Při sdělování znalostí a zkušeností používáme nejčastěji (a zejména při sdělování jinému člověku) nástrojů přirozeného jazyka. Zde lze také spatřovat důvod a motivaci pro reprezentaci znalostí v podobě jazykových (někdy se říká lingvistických) pravidel typu JESTLIŽE POTOM (angl. IF THEN). Velkou předností fuzzy logiky je její schopnost matematicky popsat a formulovat informace vyjadřované slovně a pracovat tak s nejednoznačnými pojmy, velice často využívanými v lidské řeči. Ve fuzzy logice lze také s úspěchem řešit smírně problémy typu pravdu mám buď já, nebo ty výsledným konstatováním každý máte trochu pravdu. Ukazuje se, že nástroje a algoritmy fuzzy logiky lze použít rovněž v řadě technických oblastí, např. oblasti zpracování obrazových informací, jak bylo vysvětleno např. v [52]. 4.3 Některé základní pojmy fuzzy logiky Zásadním pojmem ve fuzzy logice je fuzzy množina. Fuzzy množina je chápána jako funkce (tj. zobrazení) z jisté definované množiny (obvykle se uvažuje tzv. univerzum) U (množina reálných čísel = (-, + )) do algebry pravdivostních hodnot. Fuzzy množina je tedy (ve shodě s původní úvahou v [61]) z matematického hlediska funkce A(u): U <0, 1>, (4.1) fuzzy množina je tedy tvořena prvky u U, z nichž každý má přiřazeno číslo a <0, 1>, které nazýváme stupněm příslušnosti prvku u do fuzzy množiny A. Současně lze usoudit, že A(u) je rovněž stupněm pravdivosti jevu, že u patří do množiny A. Stupeň pravdivosti a stupeň příslušnosti do fuzzy množiny lze tedy ztotožnit. Funkci (4.1) budeme říkat též funkce příslušnosti (někdy též charakteristická funkce). Stupeň příslušnosti prvku u U do fuzzy množiny A se zapisuje jako funkční hodnota A(u), někdy se pro funkci příslušnosti používá symbol µ A (u). Fuzzy množinu A v univerzu U pak lze definovat také jako dvojici A = (U, µ A). (4.2) Zajímavou fuzzy množinou v množině reálných čísel jsou tzv. fuzzy čísla. Zpravidla je můžeme znázornit jistou funkcí příslušnosti, která slovně vyjadřuje nepřesnost hodnoty, například formulací asi u 0, přibližně u 0 apod., jak je znázorněno na obr Na obr. 4.1a je znázorněn obecný tvar funkce příslušnosti (tedy funkce vyjadřující stupeň pravděpodobnosti výskytu) dané hodnoty u 0. Na obr. 4.1b je znázorněna trojúhelníková funkce příslušnosti. Trojúhelníkový tvar funkce příslušnosti se často používá pro svoji jednoduchost a názornost. Na obr. 4.1c je pak znázorněn lichoběžníkový tvar (tzv. trapezoid) funkce příslušnosti. 33

50 v = A(u) 1 v = A(u) 1 v = A(u) 1 a b u a b u u 0 u 0 a a 0 u 0 b 0 b u a) b) c) Obr. 4.1 Příklady funkce příslušnosti fuzzy čísla asi u 0 Ve fuzzy logice budeme velmi často pracovat se strukturou pravdivostních hodnot v podobě tzv. Łukasiewiczovy algebry 18, kterou chápeme jako určité zobecnění Booleovy dvouhodnotové algebry a vyjadřujeme ji jako strukturu: = {<0, 1>,, 0, 1}, (4.3) kde interval <0, 1> je tzv. nosič algebry,, resp. jsou operace Łukasiewiczova konjunkce, resp. disjunkce, a e operace negace (popsané např. v [36], [37], resp. [38]). Nástroje fuzzy logiky lze rovněž s úspěchem použít pro aproximaci funkcí. Pro fuzzy aproximaci se v současné době nejčastěji aplikují zejména tyto postupy: fuzzy pravidla JESTLIŽE POTOM, resp. IF THEN, fuzzy transformace (F-transformace). V této práci se soustředíme právě na aplikaci těchto postupů fuzzy aproximace s cílem vybudovat nástroje vhodné pro aplikování při hodnocení obrazu Fuzzy pravidla IF THEN Fuzzy aproximace s použitím fuzzy pravidel IF THEN vychází z předpokladu, že máme určitou (hrubou) představu o průběhu určité funkce f a hledáme způsob její realizace pomocí fuzzy relací. Na základě výchozích znalostí o funkci f se budeme snažit vytvořit novou funkci f A, která je její aproximací 19. v v = f(u) v B 4 B 3 B 2 B 1 v = f(u) u A 1 A 2 A 3 A 4 a) b) Obr. 4.2 Příklad aproximace funkce fuzzy funkcí u 18 V literatuře se můžeme setkat též s pojmem MV-algebra, který vychází z popisu vícehodnotová algebra, tedy angl. multi-valued algebra. 19 Tuto metodiku publikovali S. Assilian a E. H. Mamdani, kteří tak navázali na práce L. A. Zadeha. Metodika bývá označována jejich jmény. 34

51 Pro názornost nyní předpokládejme konečnou funkci f(u) jedné proměnné u, pro kterou bude platit v = f(u), kde u U a v V, přičemž V je rovněž univerzum. Na obr. 4.2a je znázorněn příklad průběhu funkce. Nyní vytvoříme posloupnost vstupních hodnot (fuzzy čísel) A i a jim odpovídající posloupnost výstupních hodnot (fuzzy čísel) B i pro všechna i <1, n> tak, aby pro sjednocení platilo: ( ) ( ) Reprezentace fuzzy funkce pomocí dvojic (A i, B i ) se nazývá fuzzy graf, jak je naznačeno na obr. 4.2b. Nyní budeme zkoumat možnosti získat z daného fuzzy grafu funkci f, resp. její aproximaci f A. Ze znalosti fuzzy grafu a množin A i a B i můžeme sestavit soubor n implikačních fuzzy IF THEN pravidel (angl. Rules) R i : (4.5) tvořící jazykový (lingvistický) popis, kde každé A i, resp. B i je tzv. jazykový výraz popisující fuzzy množinu A i, resp. B i. Fuzzy výrok A i (antecedent) jazykově popisuje i-tou vstupní hodnotu A i a fuzzy výrok B i (sukcedent, konsekvent) popisuje požadovanou i-tou výstupní hodnotu B i. Souboru pravidel R i dle (4.5) budeme též říkat inferenční pravidla. Každé z pravidel R i je lokálním popisem chování funkce f na oblasti pokryté příslušnými fuzzy množinami, tedy na určité části kartézského součinu U V. Každému pravidlu R i tak lze rovněž přiřadit určitou fuzzy relaci R i U V. Uvažujme nyní jisté fuzzy pravidlo R, které zapíšeme jako: ( ) Pokud A = (U, µ A ) a B = (V, µ B ), potom toto fuzzy pravidlo můžeme zapisovat podle (4.2) jako fuzzy relaci R v podobě: R = (U V, µ R). (4.7) Pokud funkci příslušnosti této relace definujeme vztahem: µ R = min {µ A, µ B}, (4.8) potom pravidlo (4.6) ve spojení s relací (4.7) a funkcí příslušnosti (4.8) budeme nazývat jako Mamdaniho implikaci. Zvláštním typem fuzzy pravidel IF THEN jsou pravidla Takagi-Sugeno 20, někdy též označovaná T-S pravidla (angl. T-S Rules), kde je hodnota sukcedentové proměnné vyjádřena obecně jako funkce (obvykle lineární) antecedentových proměnných: IF (X 1 = A 1) AND (X 2 = A 2) AND (X n = A n) THEN Y = f(a 1, A 2, A n) (4.9) Spojka AND je ve vztahu (4.9) použita přirozeně jako operátor logického součinu. 20 Teiji Takagi (*1875, 1960), japonský matematik, působící též v Německu, Michio Sugeno (*1940), japonský matematik 35

52 4.3.2 Fuzzy transformace (F-transformace) Další důležitou metodou fuzzy aproximace je fuzzy transformace (někdy označovaná jako F- transformace, resp. přímá F-transformace). Tato metodika nachází své místo v celé řadě různých aplikací od filtrace signálu s cílem eliminace šumu, komprese a rekonstrukce obrazu až k numerickému řešení diferenciálních rovnic. Výchozí idea F-transformace spočívá v nahrazení spojité funkce f její diskrétní aproximací. Nejprve se provede fuzzy rozklad (angl. Fuzzy Partition) univerza U na fuzzy podmnožiny (klastry, granule apod.). Mějme dán interval <a, b> a jeho n 3 vnitřních bodů u 1 < u 2 < < u n, přičemž a = u 1 a b = u n, tyto body budeme nazývat uzly rozkladu. Jednotlivé takto vzniklé intervaly budeme ve shodě s definicí fuzzy čísel (viz obr. 4.1) chápat jako fuzzy čísla A i = <u i-1, u i+1 >, kde i = 2, 3, n-1, současně uvažujme u 1 = a a u n+1 = b. Systém fuzzy množin P = {A 1, A 2, A n } potom tvoří fuzzy rozklad intervalu <a, b>, jednotlivé odpovídající funkce příslušnosti A i (u) budeme nazývat v souvislosti s F-transformací bázické funkce [41], [43]. 1 A 1 (u) A 2 (u) Obr. 4.3 Příklad fuzzy rozkladu (pro n = 4) a = u 1 u 2 u 3 b = u 4 Na obr. 4.3 je uveden příklad fuzzy rozkladu intervalu <a, b> pro n = 4. Vzhledem k tomu, že uzly rozkladu u 1, u n na obrázku jsou ekvidistantní, fuzzy rozklad je rovnoměrný. Jsou zde také zvýrazněny (trojúhelníkové) funkce příslušnosti A i (u). Pro funkce příslušnosti potom můžeme zapsat formální předpis: ( ) { ( ) ( ) { ( ) { kde jsme označili h i = u i+1 u i (někdy budeme h i označovat jako krok rozkladu). Je tedy patrné, že (jak je znázorněno na obr. 4.4), funkce příslušnosti A i (u) nabývá nenulových hodnot uvnitř intervalu určeného příslušnými kroky rozkladu (pro u u i-1, u i+1 je funkční hodnota A i (u) 0, 1 ) a mimo tento interval, tj. pro u u i-1 nebo pro u u i+1, je A i (u) = 0). 36

53 1 A i-1 A i A i+1 A i (u) 0 u i-1 u u i u i+1 u h i-1 h i Obr. 4.4 Průběh trojúhelníkové funkce příslušnosti A i dle vztahu (4.10) Zvolme nyní interval <a, b> = <1, N> a ten rozdělme na celkem n-1 rovnoměrně rozložených uzlů u 1 až u n, přičemž předpokládejme, že n 2. Pro tento rovnoměrný fuzzy rozklad pak bude platit. Uvažujme nyní funkci f definovanou na intervalu <a, b> a dále pak její fuzzy rozklad P = {A 1, A 2, A n }. Potom definujeme fuzzy transformaci, též F-transformaci, funkce f jako n-tici reálných čísel F(f) = [F 1, F 2, F n ], kterým říkáme komponenty, podle vztahu: ( ) ( ) ( ) Budeme-li znát funkci f pouze v diskrétních bodech p i, má význam diskrétní F-transformace. Mějme tedy dánu funkci f v konečném počtu bodů P = {p 1, p 2, p N } <a, b> a nechť je dán její fuzzy rozklad P = {A 1, A 2, A n } na intervalu <a, b>. Je-li potom množina P dostatečně hustá 21 (máme dostatečně velký počet bodů, v nichž je funkce f definována), můžeme diskrétní F-transformaci vzhledem k fuzzy rozkladu P definovat jako n-tici reálných komponent F P (f) = [F 1, F 2, F n ] vypočtených podle vztahu: ( ) ( ) ( ) ( ) Pro funkci f spojitou na intervalu a, b a komponenty diskrétní F-transformace F i se obvykle (např. v [43]) definuje pro každé k = 1, 2, n-1, pro každé t x k, x k+1 a, b a pro nerovnost: ( ) ( ) přičemž funkci: ( ) ( ) ( ) ( ) budeme (ve shodě s [43]) nazývat modulem spojitosti funkce f na intervalu a, b. Funkce definovaná vztahem: ( ) ( ) se potom nazývá zpětná (inverzní) F-transformace. 21 Např. podle [41] musí množina rozkladu P obsahovat alespoň jeden bod s nenulovým stupněm příslušnosti. 37

54 Důležitou úlohou, které se v dalším textu budeme věnovat, je vytvoření vhodných algoritmů pro výpočet diskrétní přímé a zpětné (inverzní) fuzzy transformace (F-transformace). Předpokládejme tedy (s využitím [9]), že f(u, v) představuje diskrétní funkci dvou proměnných u, v: P R, kde P = {(u, v), u = 1, 2, N, v = 1, 2, M} je pole o rozměru N M. Takto definovanou množinu P tak můžeme chápat jako kartézský součin <1, N> <1, M>. Pro názornost si nyní představme, že pole P je tvořeno obrazovými body (pixely) (u, v) P, jak je znázorněno na obr. 4.5, potom funkční hodnota f(u, v) reprezentuje hodnotu jasu daného prvku (u, v). Nyní předpokládejme, že fuzzy množiny A 1, A 2, A n vytvářejí fuzzy rozklad na intervalu <1, N> a fuzzy množiny B 1, B 2, B m vytvářejí fuzzy rozklad na intervalu <1, M>. B m v f = f(3, 4) M M-1 A 1 (3) = 0,33, A 2 (3) = 0,67 B 2 (4) = 0,5, B 3 (4) = 0,5 l B m-1 B 3 B 2 B N-2N-1 N u A 1 A 2 A 3 A 4 Obr. 4.5 K výkladu fuzzy transformace funkce f(u, v) k A n Poznámka: Budeme-li uvažovat trojúhelníkový tvar funkcí příslušnosti A i, resp. B j, potom pro případ na obr. 4.5 budou např. v bodě (u, v) = (3, 4) nabývat tyto funkce (s využitím (4.10)) hodnot A 1 (3) = 0,33, A 2 (3) = 0,67, resp. B 2 (4) = 0,5, B 3 (4) = 0,5 a ostatní A i (u) = 0, resp. B j (v) = 0. Kartézský součin {A 1, A 2, A n } {B 1, B 2, B m } těchto fuzzy rozkladů je množinou všech fuzzy množin A k B l, kde k = 1, 2, n a l = 1, 2, m. Budeme-li uvažovat (s použitím vztahu (4.1)), že funkce příslušnosti A k B l : <1, N> <1, M> <0, 1> je rovna součinu funkcí příslušnosti A k. B l, vztah pro přímou F-transformaci funkce f pro vybranou oblast z jednorozměrné podoby (4.11) přejde na dvourozměrný tvar: [ ]( ) ( ) ( ) ( ) ( ) ( ) ( ) kde k = 1, 2, n a l = 1, 2, m. Jednotlivé komponenty funkce F[f](A k B l ) budeme označovat jako F[f] kl a můžeme je zapisovat v podobě matice: [ ] [ ] [ ] [ ] [ ] [ ] [ ] ( ) [ [ ] [ ] [ ] ] 38

55 Inverzní (zpětná) F-transformace funkce f je potom dána vztahem:. ( ) [ ] ( ) ( ) ( ) kde k = 1, 2, n a l = 1, 2, m. Je opět patrné, že vztah (4.16) je dvourozměrnou variantou původního definičního vztahu (4.13). Předpokládejme tedy, že obrazová funkce f = f(u, v) je definována jako pole N M obrazových pixelů. Zkoumejme nyní dva krajní případy fuzzy rozkladu. Nejprve uvažujme fuzzy rozklad intervalu <1, N> <1, M> obsahující jen jednu fuzzy množinu A 1 B 1, potom pro každou dvojici (u, v) <1, N> <1, M> bude platit: A 1 B 1 (u, v) = 1. Pro odpovídající komponentu F[f] lze podle (4.14) odvodit vztah: [ ]( ) ( ) ( ) a pro zpětnou F-transformaci lze podle (4.16) odvodit vztah: ( ) [ ]( ) ( ) Z předchozího vztahu je patrné, že [ ]( ) je aritmetickým průměrem f. Nyní budeme uvažovat nejjemnější fuzzy rozklad intervalu <1, N> <1, M> tak, aby platilo pro každé k = 1, 2, N a l = 1, 2, M, A k B l (u k, v l ) = 1 a pro každé r = 1, 2, N a s = 1, 2, M, přičemž (k, l) (r, s), A k B l (u r, v s ) = 0. Potom příslušné komponenty přímé F-transformace podle (4.14) budou mít tvar: a příslušné komponenty zpětné F-transformace budou mít tvar: [ ]( ) ( ) ( ) ( ) ( ) pro u = 1, 2, N a v = 1, 2, M. (4.16b) Je tedy zřejmé, že pro tento případ bude f nm = f. Z předchozích dvou (krajních) příkladů je patrné, že pro posuzování vlastností obrazové funkce f za účelem dalšího zpracování bude účelné zjišťovat její změnu, resp. odlišnost jejího transformovaného tvaru f nm od původní obrazové funkce f. Budeme vycházet z úvahy, že transformovaná funkce f nm se od původní obrazové funkce f liší o jistou chybovou funkci e: ( ) ( ) ( ) ( ) Vlastnosti chybové funkce e jsou potom předmětem dalšího studia. Pro výchozí úvahy můžeme definovat chybovou funkci e (např. podle [9]) jako absolutní hodnotu rozdílu: ( ) ( ) ( ) ( ) Velmi často může být požadováno, aby chybová funkce e nabývala definované minimální hodnoty s cílem co nejlépe aproximovat původní obrazovou funkci f. Lze tedy očekávat, že další studium vlastností chybové funkce by mohlo přinést zajímavé výsledky. 39

56 4.3.3 Algoritmy fuzzy transformace Pro naši další práci při zpracování obrazu bude důležité sestavení algoritmů pro F-transformaci a zpětnou F-transformaci podle vztahů (4.14) a (4.16). Pro názornost a jistou míru zjednodušení (a v literatuře se s tím nejčastěji setkáme) budeme aplikovat funkci příslušnosti v trojúhelníkovém tvaru (obr. 4.1b) s předpisem podle vztahů (4.10). Algoritmus FT pro přímou F-transformaci vstupní funkce f definované jako pole N M vytvoříme takto: Algoritmus FT /* F-transformace (FT) /* Vstupy: f obraz, /* N, M rozměry pole f, /* n, m rozměry transformovaného pole F. /* Výstup: F transformovaný obraz. h A N/n ; h B M/m ; for (i = 1 to n) ; u i h A * (i - 1) + 1; for (j = 1 to m) ; u j h B * (j - 1) + 1; /* Vynulování sumátorů S fab 0; S AB 0; for (u = 1 to N) ; if ((u > u i - h A ) & (u < u i + h A )) A 1 ; else A 0 ; /* Výpočet hodnoty A podle (4.10) if (u > u i ) A A*(u - (u i - h A ))/h A ; else A A*(1 - (u - u i )/h A ) ; for (v = 1 to M) ; if ((v > v j - h B ) & (v < v j + h B )) B 1 ; else B 0 ; /* Výpočet hodnoty B podle (4.10) if (v > v j ) B B*(v - (v j - h B ))/h B ; else B B*(1 - (v - v j )/h B ) ; /* Výpočet součtu hodnot v čitateli zlomku (4.14) S fab S fab + f(u, v)*a*b ; /* Výpočet součtu hodnot ve jmenovateli zlomku (4.14) S AB S AB + A*B ; end ; end ; /* Výpočet hodnoty F-transformace dle (4.14) F (i, j) S fab / S AB ; end ; end ; Výstupem je funkce F[f] jako pole n m popsané vztahem (4.15), což je výsledek diskrétní F- transformace původní obrazové funkce f. Z principu metody je patrné, že pro zvolenou hustotu fuzzy rozdělení n m se vypočte hodnota komponent F[f] v uzlových bodech jako součet jasových hodnot okolních bodů v příslušném směru podle jejich funkce příslušnosti (v našem případě trojúhelníkového tvaru). 40

57 Algoritmus DFT pro zpětnou F-transformaci funkce F[f] (tzn. defuzzifikaci funkce) popsanou vztahem (4.16) na novou funkci f nm (u, v), což je opět pole N M, vytvoříme takto: Algoritmus DFT /* Zpětná F-transformace (DFT) /* Vstupy: F obraz (transformovaný), /* n, m rozměry pole F, /* N, M rozměry zpětně transformovaného pole f nm. /* Výstup: f nm zpětně transformovaný obraz. h A N/n ; h B M/m ; for (u = 1 to N) ; for (v = 1 to M) ; /* Vynulování sumátoru S F 0; for (i = 1 to n) ; u i h A * (i - 1) + 1; for (j = 1 to m) ; v j h B * (j - 1) + 1; if ((v > v j - h B ) & (v < v j + h B )) B 1 ; else B 0 ; /* Výpočet hodnoty B podle (4.10) if (v > v j ) B B*(v - (v j - h B ))/h B ; else B B*(1 - (v - v j )/h B ) ; if ((u > u i - h A ) & (u < u i + h A )) A 1 ; else A 0 ; /* Výpočet hodnoty A podle (4.10) if (u > u i ) A A*(u - (u i - h A ))/h A ; else A A*(1 - (u - u i )/h A ) ; /* Výpočet komponenty zpětné F-transformace dle (4.16) S F S F + F(i, j) *A*B ; end ; f nm (u, v) S F ; end ; end ; end ; Výstupem je funkce f nm jako pole N M podle vztahu (4.16). Ukazuje se (a v další části k tomu podáme výklad), že výše popsané algoritmy nejsou časově optimální, neboť postupují přesně podle obecnějších matematických předpisů daných vztahy (4.14), resp. (4.16). Pro další využití F-transformace při zpracování obrazu byly autorem práce navrženy původní nové algoritmy s cílem maximálně zrychlit a zefektivnit tak vlastní výpočet. Jedním z hlavních budoucích záměrů je aplikovat algoritmy pro výpočty v reálném čase. Návrh efektivnějších algoritmů pro F- transformaci vychází z podrobnější analýzy předpisu pro funkci příslušnosti A i, která v případě aplikování trojúhelníkového tvaru (výraz (4.10) a obr. 4.4) nabývá nenulových hodnot uvnitř intervalu určeného příslušnými kroky rozkladu a mimo tento interval je nulová. Jinými slovy mimo interval kroků rozkladu není třeba funkci počítat. Budeme tedy uvažovat rovnoměrný fuzzy rozklad s krokem h i = h A (resp. h j = h B ) a výpočet hodnot funkcí příslušnosti A i, resp. B j bude dostatečné provádět pouze na intervalu 2h A, resp. 2h B. Rychlejší (a tedy efektivní) algoritmus pro přímou F-transformaci eft vstupní funkce f definované jako pole N M vytvoříme takto: 41

58 Algoritmus eft /* efektivní F-transformace (eft) /* Vstupy: f obraz, /* N, M rozměry pole f, /* n, m rozměry transformovaného pole F. /* Výstup: F transformovaný obraz. h A (N 1)/(n 1); h B (M 1)/(m 1); for (i = 0 to n 1) ; for (j = 0 to m 1) ; /* Vynulování sumátorů S fab 0 ; S AB 0 ; for (x = 0 to 2*h A 1) ; for (y = 0 to 2*h B 1) ; /* Výpočet hodnoty A podle (4.10) if (x h A ) A x/h A ; else A (2*h A x)/h A ; /* Výpočet hodnoty B podle (4.10) if (y h B ) B y/h B ; else B (2*h B y)/h B ; /* Výpočet hodnot u a v u h A * (i 1) + x ; v h B * (j 1) + y ; /* Výpočet součtu hodnot v čitateli zlomku (4.14) S fab S fab + f(u, v)*a*b ; /* Výpočet součtu hodnot ve jmenovateli zlomku (4.14) S AB S AB + A*B ; end ; end ; /* Výpočet hodnoty F-transformace dle (4.14) F (i, j) S fab / S AB ; end ; end ; Výsledná funkce F[f] je diskrétní F-transformací původní obrazové funkce f a je uložena jako pole n m. Rychlejší (efektivní) algoritmus pro zpětnou F-transformaci funkce F[f] (tzn. defuzzifikaci funkce) popsanou vztahem (4.16) na novou funkci f nm (u, v), což je opět pole N M, vychází z předpokladu, že pro výpočet transformované hodnoty nové funkce stačí vytvořit součet dvou hodnot sousedních funkcí příslušnosti, jak je naznačeno na obr Nový algoritmus edft tak vytvoříme výrazným zkrácením takto: Algoritmus edft /* efektivní zpětná F-transformace (edft) /* Vstupy: F obraz (transformovaný), /* n, m rozměry pole F, /* N, M rozměry zpětně transformovaného pole f nm. /* Výstup: f nm zpětně transformovaný obraz. h A (N 1)/(n 1); h B (M 1)/(m 1); for (u = 0 to N 1) ; for (v = 0 to M 1) ; /* Vynulování sumátoru 42

59 S F 0 ; for (x = 0 to 1) ; for (y = 0 to 1) ; /* Výpočet hodnoty B podle (4.10) k B h B * y ; if (v < k B ) B (v (k B h B ))/h B ; else B 1 (v k B )/h B ; end ; /* Výpočet hodnoty A podle (4.10) k A h A * x ; if (u < k A ) A (u (k A h A ))/h A ; else A 1 (u k A )/h A ; /* Výpočet hodnot i a j i int(u/h A + x) ; j int(v/h B + y) ; /* Výpočet komponenty zpětné F-transformace dle (4.16) S F S F + F(i, j) *A*B ; end ; f nm (u, v) S F ; end ; end ; Výstupem je funkce f nm jako pole N M popsané vztahem (4.16). Nyní se budeme zabývat časovou náročností výše popsaných algoritmů. Uvažujme znovu vstupní obrazovou funkci f jako pole N M a nechť při fuzzifikaci budeme pracovat s rozkladem n m. Ze studia algoritmu FT pak zjistíme, že pro výpočet přímé F-transformace budeme potřebovat celkem Q FT operací podle vztahu: ( ) Budeme-li například provádět fuzzifikaci (poměrně malého) obrazu velikosti pixelů s rozkladem (tedy s krokem rozkladu h A = h B = 3), je podle (4.19) počet operací Q FT = To je počet poměrně značný a náročný na výpočetní čas. To je tedy důvod naší snahy snížit časovou náročnost a získat tak efektivnější algoritmus. Navržený efektivní algoritmus eft pracuje se znalostí průběhu funkce příslušnosti, kterou při fuzzy transformaci použijeme, jak je znázorněn na obr Výpočet hodnot funkcí příslušnosti A i, resp. B j by tedy mělo stačit provádět pouze na příslušném intervalu 2h A, resp. 2h B. Pro výpočet F- transformace pomocí algoritmu eft pak bude potřeba celkem operací. Víme-li, že, resp., bude platit: resp., dostáváme tedy pro počet potřebných operací při efektivním algoritmu eft vztah: ( ) ( ) ( ) ( ) ( ) Protože při výpočtu zpětné F-transformace pomocí algoritmu edft vycházíme z poznatku, že nová hodnota zpětně transformované funkce se vypočte ze dvou hodnot sousedních funkcí příslušnosti, dostaneme vztah pro počet operací při efektivním algoritmu edft v podobě: ( ) Budeme-li chtít nyní hodnotit přínos aplikování navržených algoritmů, v tomto smyslu má vypovídací schopnost podíl hodnot, který popisuje poměr časových náročností výpočtů. Na obr. 4.6 je uveden graf závislosti poměru na počtu velikosti kroku rozkladu h A = h B = h 43

60 (hodnota poměru je na svislé ose vynesena v logaritmickém tvaru). V našem případě jsme nastavili hodnoty N = 300, M = 270 (jde opět o poměrně malý obrázek pro další zpracování), krok rozkladu h vybíráme z intervalu h 1, 10. Např. při volbě kroku rozkladu h = 2 je počet operací pro výpočet F- transformace použitím efektivního algoritmu více než 1000-krát menší. Q FT /Q eft Obr. 4.6 Graf závislosti poměru počtu operací Q FT /Q eft na kroku rozkladu h Skutečnou dobu výpočtu, která ovšem záleží na řadě dalších faktorů, pak musíme zjistit pro konkrétní výpočetní systém a metodu jeho realizace. K tématu se vrátíme v aplikační části. h 4.4 Využití metod fuzzy logiky pro zpracování obrazu Teorie fuzzy množin je založena na práci s tzv. funkcí příslušnosti, která popisuje stupeň příslušnosti prvku x do fuzzy množiny A. V případě obrazu se přirozeně jedná o popis vlastností jednotlivých obrazových prvků (pixelů) obrazové funkce f(x) a o jejich příslušnosti např. k určité hodnotě jasu Fuzzy pravidla IF THEN Z teorie zpracování obrazu (např. [19]) víme, že pro vnímání důležitých míst v obraze je třeba při předzpracování hledat hranové body v obraze, tedy takové pixely v obraze, kde se náhle mění hodnoty jasu. Pro hledání hranových bodů lze sice využívat známé hranové detektory (např. podle Prewittové, Sobela, Marra či Cannyho), ovšem tyto klasické metody fungují dobře tehdy, když je zkoumaná část obrazu dostatečně kontrastní. Výsledkem je potom obraz převedený na binární jednoduchým prahováním (obr. 4.7) [1]. prahování původní obraz (ve stupních šedé) Obr. 4.7 Prahování obrazu binární obraz 44

61 Klasické hranové detektory mají tendenci dávat špatné výsledky pro označování hran tvořených body s malým rozlišením stupně šedi, třebaže lidské oko je schopno tyto hrany rozpoznat (samozřejmě ve spojení se zkušeností). Lze tedy říci, že hranové body jsou charakterizovány jistými vlastnostmi uvnitř zkoumané oblasti obrazu. Využitím fuzzy logiky lze navrhnout hranové detektory na základě tréninku na poměrně malém souboru vzorových hran klasifikovaných klasickými hranovými detektory. Tato metoda [5] vycházející z teorie neuronových sítí dává podobné výsledky jako Sobelův operátor. Při dosud používaných postupech rozpoznávání obrazu je na vstupní obraz aplikován filtr s horní propustí (tzn., zajímají nás jen změny v obraze), poté se provede detekce hran (např. Sobelův filtr) a nakonec filtrace dolní propustí (tzn., odstraní se zbytky osamělých bodů apod.). Celá struktura je tak vyladěna na zesílení kontrastu a v jiném případě na segmentaci obrazů do zadaného počtu vstupních tříd. Adaptivní fuzzy pravidla a funkce příslušnosti do fuzzy jsou specifikovány v závislosti na druhu filtrace. Fuzzy zpracování obrazu je souhrnem všech přístupů k porozumění, reprezentaci a zpracování obrazů, jejich segmentů a vlastností v podobě fuzzy množin. Reprezentace a zpracování závisí na zvolené fuzzy technice a na řešené problematice. Metody aplikování fuzzy techniky pro základní zpracování obrazu je předmětem zkoumání řady autorů, např. podle [1], [2], [31] či [32]. Fuzzy zpracování obrazu má tři hlavní fáze: kódování obrazových dat (fuzzifikace obrazu), modifikace hodnot příslušnosti do fuzzy množiny (systém fuzzy rozpoznávání FIS z angl. Fuzzy Inference System) a dekódování výsledků (defuzzifikace obrazu), jak je naznačeno na obr Hlavní silou fuzzy zpracování obrazu je zejména prostřední krok, tedy změna hodnot funkce příslušnosti. expertní znalosti vstupní obraz fuzzifikace FIS defuzzifikace výsledný obraz fuzzy množiny fuzzy logika Obr. 4.8 Struktura fuzzy zpracování obrazu Nyní popíšeme příklad konkrétního aplikování fuzzy přístupu při zpracování obrazu. Předpokládejme, že budeme zpracovávat obraz kvantovaný do 8bitové stupnice šedi, hodnota obrazové funkce, tedy jas, nabývá hodnot v intervalu <0, 255>. Tyto hodnoty lze asociovat s pojmy černá, bílá a hrana, resp. hranový bod. Funkce příslušnosti pro fuzzy množiny prvků daného vstupního obrazu má tvar lichoběžníků (tzv. trapezoid), jak je znázorněno na obr. 4.9a. Je patrné, že pixely považované za černé mohou nabývat jasových hodnot v rozsahu intervalu <60, 90>, pixely považované za bílé hodnot v intervalu <80, 170>. Není tedy snadné exaktními metodami nastavit prahovací úroveň a bude vhodné využít metod fuzzy logiky. 45

62 1 černá bílá 0, a) 1 černá hrana bílá 0, b) Obr. 4.9 Funkce příslušnosti fuzzy množiny a) vstupního obrazu b) výstupního obrazu Na obr. 4.9b je potom znázorněn příklad požadovaného tvaru funkce příslušnosti výstupního obrazu (trojúhelník), z něhož je patrné, že hranové body se nacházejí v poměrně úzkém intervalu jasových hodnot (zde například kolem jasové hodnoty 140). Metody fuzzy rozpoznávání založené na strategii uvažování fuzzy logiky jsou navrženy pro detekci hran v digitálních snímcích bez předchozího stanovení prahové hodnoty nebo potřeby trénovacího algoritmu. V dále uvedeném příkladu rozdělíme obraz do oblastí s použitím tzv. plovoucí matice o rozměrech 3 3 pixelů. Obrazová data jsou transformována z roviny hodnot jasu (stupňů šedé) do roviny příslušnosti do fuzzy množiny (fuzzifikace) podle fuzzy pravidel. V našem případě budeme zkoumat diskretizovaný obraz o rozměrech M N, obrazovou funkci f(x) potom lze psát například v diskretizovaném tvaru f(m, n), kde m = 1, 2, M a n = 1, 2, N. Pro náš případ nadefinujeme čtyři pravidla, která posuzují jasovou hodnotu osmi sousedních pixelů kolem zkoumaného pixelu (i, j), jak je naznačeno na obr zkoumaný pixel obraz M x N (i - 1, j - 1) (i - 1, j) (i - 1, j + 1) (i, j - 1) (i, j) (i, j + 1) (i + 1, j - 1) (i + 1, j) (i + 1, j + 1) maska 3 x 3 Obr K příkladu fuzzy metodiky hledání hran 46

63 Fuzzy pravidla (obr. 4.11) pro náš případ jsou poměrně jednoduchá a umožní nám seznámit se s principem aplikování fuzzy logiky v oblasti zpracování obrazu. Každé z fuzzy pravidel je vytvořeno ve formě podmíněného jazykového výrazu logické implikace JESTLIŽE A = X POTOM B = Y, kde X a Y jsou fuzzy výroky, přičemž X je fuzzy podmínka (antecedent, ancedent) a Y fuzzy důsledek (sukcedent, konsekvent), jak jsme popsali obecným vztahem (4.6). Cílem je identifikovat obrazové pixely, které jsou logicky hranovými body zkoumaného obrazu. Popisovaná metoda provede analýzu jasových hodnot všech pixelů v 8-okolí (podle masky 3 3) středového pixelu obrazu (i, j) a pokud jsou splněny podmínky, je zkoumaný středový pixel považován za hranový a takto je též označen. Pravidlo 1: JESTLIŽE { f(i-1, j-1) & f(i-1, j) & f(i-1, j+1) } jsou bílé & JESTLIŽE { f(i, j-1) & f(i, j) & f(i, j+1) } jsou bílé & JESTLIŽE { f(i+1, j-1) & f(i+1, j) & f(i+1, j+1) } jsou černé, POTOM f(i, j) je hranový bod Pravidlo 2: JESTLIŽE { f(i-1, j-1) & f(i-1, j) & f(i-1, j+1) } jsou černé & JESTLIŽE { f(i, j-1) & f(i, j) & f(i, j+1) } jsou bílé & JESTLIŽE { f(i+1, j-1) & f(i+1, j) & f(i+1, j+1) } jsou bílé, POTOM f(i, j) je hranový bod Pravidlo 3: JESTLIŽE { f(i-1, j-1) & f(i, j-1) & f(i+1, j-1) } jsou černé & JESTLIŽE { f(i-1, j) & f(i, j) & f(i+1, j) } jsou bílé & JESTLIŽE { f(i-1, j+1) & f(i, j+1) & f(i+1, j+1) } jsou bílé POTOM f(i, j) je hranový bod Pravidlo 4: JESTLIŽE { f(i-1, j-1) & f(i, j-1) & f(i+1, j-1) } jsou bílé & JESTLIŽE { f(i-1, j) & f(i, j) & f(i+1, j) } jsou bílé & JESTLIŽE { f(i-1, j+1) & f(i, j+1) & f(i+1, j+1) } jsou černé, POTOM f(i, j) je hranový bod Obr Příklad fuzzy pravidel IF THEN Zkušební algoritmus pro realizaci uvedených pravidel fuzzifikačního systému pro hledání hranových bodů v obraze lze popsat např. takto: Algoritmus Fuzzy IfThen Edge (Zkušební algoritmus fuzzy metody hledání hran) 1. Vstupem je šedotónový obraz o velikosti M N, jehož každý prvek (pixel) je popsán hodnotou obrazové funkce f(m, n) = f mn, kde f mn <0, 255>, m = 1, 2, M, n = 1, 2, M. 2. Vytvoříme pomocné pole A o velikosti M N (po skončení bude osahovat výstupní obraz) a na počátku je nastavíme na konstantní hodnotu: A(m, n) 0 pro všechna m = 1, 2, M a n = 1, 2, N. 3. Nastavíme počítadlo j Nastavíme počítadlo i Zjistíme hodnoty f(i, j) = f ij a dalších pixelů v okolí 3 3 a prověříme platnost vytvořených pravidel: Pravidlo 1: JESTLIŽE {f(i-1, j-1) & f(i-1, j) & f(i-1, j+1)} jsou bílé & JESTLIŽE {f(i, j-1) & f(i, j) & f(i, j+1)} jsou bílé & JESTLIŽE {f(i+1, j-1) & f(i+1, j) & f(i+1, j+1)} jsou černé POTOM f(i, j) je hranový bod, polož A(i, j)

64 Pravidlo 2: JESTLIŽE {f(i-1, j-1) & f(i-1, j) & f(i-1, j+1)} jsou černé & JESTLIŽE {f(i, j-1) & f(i, j) & f(i, j+1)} jsou bílé & JESTLIŽE {f(i+1, j-1) & f(i+1, j) & f(i+1, j+1)} jsou bílé POTOM f(i, j) je hranový bod, polož A(i, j) 255. Pravidlo 3: JESTLIŽE {f(i-1, j-1) & f(i, j-1) & f(i-1, j-1)} jsou černé & JESTLIŽE {f(i-1, j) & f(i, j) & f(i+1, j)} jsou bílé & JESTLIŽE {f(i-1, j+1) & f(i, j+1) & f(i+1, j+1)} jsou bílé POTOM f(i, j) je hranový bod, polož A(i, j) 255. Pravidlo 4: JESTLIŽE {f(i-1, j-1) & f(i, j-1) & f(i-1, j-1)} jsou bílé & JESTLIŽE {f(i-1, j) & f(i, j) & f(i+1, j)} jsou bílé & JESTLIŽE {f(i-1, j+1) & f(i, j+1) & f(i+1, j+1)} jsou černé, POTOM f(i, j) je hranový bod, polož A(i, j) Opakujeme pro všechna další i = 2, M - 1 od kroku Opakujeme pro všechna další j = 2, N - 1 od kroku Pole A nyní reprezentuje výstupní obraz. Poznámka: Pro vyjádření logického součinu (tj. logické operace AND) je na obr a v popisu algoritmu použit znak &. V algoritmu jsou použity dvě neurčité (fuzzy) hodnoty: bílá a černá, jejichž pomocí klasifikujeme neurčité jasové hodnoty jednotlivých pixelů kolem zkoumaného středového pixelu. Pomocné pole A, které výsledně bude tvořit výstupní obraz s nalezenými hranovými body, nejprve naplníme jasovou hodnotou nejvíce černá (v našem případě 0) a v průběhu klasifikace (tedy identifikace v rámci systému FIS podle struktury z obr. 4.8) pak pixely označené jako hranové body plníme jasovou hodnotou nejvíce bílá (v našem případě 255). Na obr. 4.12a je potom uveden příklad vstupního obrázku a na obr. 4.12b vzniklý výstupní obrázek s nalezenými hranovými body s využitím výše popsané metody. Pro získání výstupního obrázku obr. 4.12b byly nastaveny hodnoty černá = 75, bílá = 40. a) b) Obr Příklad zpracování obrazu s pomocí pravidel IF THEN a) vstupní obrázek b) výstupní obrázek s nalezenými hranovými body I když se jde o poměrně jednoduchý rozhodovací algoritmus, jeho výstup je jistě použitelný k dalšímu zpracování obrazu. Ukazuje se však, že problémy mohou nastat pro méně kontrastní části obrazu (na obrázku dole), kde bude získání hran nemožné. Algoritmus bude tedy vhodné doplnit o další inferenční pravidla. 48

65 4.4.2 Fuzzy transformace S využitím F-transformace můžeme sestavit algoritmus pro detekci hran (angl. F-Transform Edge Detection Algorithm FTransform EDA). Necháme se také inspirovat názorností obr. 4.4 a budeme aplikovat vztahy (4.14) až (4.18). Pro výpočet hodnot funkce příslušnosti A i (u), resp. B j (v), trojúhelníkového tvaru použijeme vztah (4.10) a budeme aplikovat efektivní algoritmy eft a edft popsané v kapitole Nechť je vstupem obrazová funkce f a čísla n a m definující počet fuzzy množin ve fuzzy rozkladu. Algoritmus FTransform EDA (Algoritmus pro detekci hran s využitím F-transformace) 1. Vstupem je binární obraz f (u, v), kde u = 1, 2, N a v = 1, 2, M, a čísla n a m definující počet fuzzy množin ve fuzzy rozkladu {A 1, A 2, A n } {B 1, B 2, B m }. 2. Vypočteme přímou F-transformaci F[f] (použijeme algoritmus eft). 3. Vypočteme zpětnou F-transformaci f nm s použitím komponent F[f] (použijeme algoritmus edft). 4. Vypočteme chybovou funkci e(x) f(x) f nm (x) pro všechna x P. 5. Přepočteme hodnoty e(x) <0, max x P e(x)> pro všechna x P na celočíselnou hodnotu e r (x) <0, 255>. 6. Výstupem je potom obraz e r. Nyní provedeme příklad analýzy obrazu (obrazové funkce) f podle Algoritmu FTransform EDA, při jehož konkrétním sestavení bude nejprve aplikovat algoritmy popsané v kapitole V kroku 2. provedeme diskrétní F-transformaci funkce f(u, v), např. s využitím algoritmu FT. Výstupem je funkce F[f] jako pole n m popsané vztahem (4.15), což je výsledek diskrétní F- transformace původní obrazové funkce f. Z principu metody je patrné, že pro zvolenou hustotu fuzzy rozdělení n m se vypočte hodnota komponent F[f] v uzlových bodech jako součet jasových hodnot okolních bodů v příslušném směru podle jejich funkce příslušnosti (v našem případě trojúhelníkového tvaru). V následujícím 3. kroku provedeme diskrétní zpětnou F-transformaci funkce F[f], např. s využitím algoritmu DFT, popsanou vztahem (4.16) na novou funkci f nm (u, v), což je opět pole N M. Výstupem je f nm jako pole N M popsané vztahem (4.16), což je výsledek diskrétní zpětné F- transformace původní obrazové funkce f. Zde můžeme říci, že jsme vypočetli hodnotu komponent nové obrazové funkce f nm ze znalosti hodnot komponent F[f] v uzlových bodech a přepočetli jsme je do původního rastru podle jejich funkce příslušnosti (v našem případě opět trojúhelníkového tvaru). Nyní můžeme využít výsledky F-transformace obrazové funkce f právě pro hledání hran v obraze. Hrany v obraze jsou místa, kde se výrazně mění intenzita jasu. Budeme se tedy snažit tato místa zvýraznit zvýšením stupňů příslušnosti prvků tvořících zjištěnou hranu v obraze. Lze odvodit ([9]), že pomocí F- transformace lze získat informaci o změně hodnoty obrazové funkce (tedy změny jasu) v okolí vyšetřovaných bodů obrazu. V kroku 4. tedy vypočteme rozdílovou (chybovou) funkci e(u, v) jako rozdíl jednotlivých odpovídajících komponent původní obrazové funkce f a nově vzniklé funkce f nm podle vztahu (4.18), tedy e f f nm. Algoritmus ErrF (Algoritmus pro výpočet chybové funkce) /* Chybová funkce (Error function) for (u = 1 to N) ; for (v = 1 to M) ; /* Výpočet e(u, v) e(u, v) abs(f(u, v) - f nm (u, v)); end ; end ; 49

66 Nyní je třeba hodnoty rozdílu f f nm pro účely jejich interpretace v kroku 5. převést znovu do plného rozsahu hodnot jasu na interval <0, 255>. Vznikne tak chybová funkce e r (x), kterou můžeme dále interpretovat pro následné zpracování. Výslednou funkci e r (x) ještě můžeme před dalším zpracování například upravit prahováním, čímž zvýrazníme hrany s velkým rozdílem jasových hodnot. Na obr je uvedena ukázka analýzy konkrétního vstupního obrazu (obr. 4.13a) výše popsaným algoritmem hledání hran s pomocí F-transformace FTransform EDA. Na obr 4.13b je zobrazen výsledek F-transformace, tedy vzniklé pole F[f], kde jsme zvolili kroky rozkladu h A = 2 a h B = 3 (proto je obrázek protažen ve vodorovném směru). Na obr. 4.13c je znázorněn výsledek zpětné F-transformace, obraz f nm. Chybová funkce e r, tedy funkce e f f nm přepočtená na plný rozsah jasových hodnot v intervalu <0, 255>, je zobrazena na obr. 4.13d. Jako ukázka dalšího postupu je na obr. 4.13e zobrazena funkce e r po prahování konkrétní hodnotou (T = 50). Poznámka: Vstupní hodnoty n, resp. m definující počet fuzzy rozkladů obrazové funkce f(u, v) ve směru u, resp. v určují tloušťku zjištěné hrany. Čím je jejich hodnota větší, tím slabší budou zjištěné hrany. Naší snahou by tedy mělo být stanovit hodnoty n, resp. m tak, aby pokrytí obrazu funkcemi A i, resp. B j bylo optimálně husté, abychom snímky s různou mírou zaostření byli schopni touto metodou analyzovat. 50

67 a) Původní obraz f b) F-transformace F[f], kde h A = 2 a h B = 3 c) Zpětná F-transformace f nm d) Chybová funkce e r e) Prahovaná funkce e r (T = 50) Obr Příklad aplikace algoritmu FTransform EDA Pro některé další postupy hodnocení obrazu bude účelné zjistit velikost a chování chybové funkce e(u, v). Na obr je zobrazen průběh jasových hodnot řádku přibližně v polovině snímku na obr. 4.13a, resp. 4.13c. Na obr. 4.14a je průběh jasových hodnot jednotlivých pixelů původní funkce f (obr. 4.13a), na obr. 4.14b pak průběh jasových hodnot v transformovaném obrázku (jde o aproximovanou funkci f nm ). Chybová funkce e = f f nm je znázorněna na obr. 4.14c. 51

68 Poznámka: Dále ukážeme (mj. podle [9]), že chybovou funkci lze aplikovat k rozpoznání hran v obrazu a) b) c) Obr Průběhy jasových hodnot pixelů řádku č. 99 (na obr. 4.13a) a c) jde o řádek přibližně v polovině snímku) a) funkce f b) aproximovaná funkce f nm c) chybová funkce e = f f nm Při analýze obrazu může často vzniknout problém s neostrými, rozmazanými nebo jinak poškozenými snímky. Příkladem je snímek na obr. 4.15a (převzatý z [9]), kde je zřejmé, že objekty vzadu jsou ostré, ale objekt vpředu je díky malé hloubce ostrosti optické soustavy rozmazaný. Je patrné, že změna úrovně jasu v okolí hranových bodů rozmazaného objektu je menší, než změna úrovně jasu v okolí hranových bodů ostrých objektů vzadu. Aplikujme tedy popsaný algoritmus FTransform EDA na původní obrázek nejprve s malými hodnotami kroku rozkladu h A = h B = 2, výsledkem je funkce e r zobrazená na obr. 4.15b. Při aplikaci algoritmu s většími hodnotami h A = h B = 20 získáme výslednou funkci e r zobrazenou na obr. 4.15c. Podle předpokladu jsme ve druhém případě při větším kroku (a samozřejmě menším počtu bodů analýzy) získali vyšší míru rozlišení hran neostrého objektu, a tak i jeho hranové body. 52

69 a) Původní obraz b) Funkce e r pro h = 2 c) Funkce e r pro h = 20 d) Funkce f nm pro h =2 e) Funkce f nm pro h = 20 f) Obraz c) s nalezenými hranami (podle Cannyho) Obr Příklad aplikace FTransform EDA pro rozmazaný obraz Na obr. 4.15d je vyobrazeno pole f nm (zpětná F-transformace původního obrazu) pro h = 2, na obr. 4.15e pak pole f nm pro h = 20. Je patrné, že zpětná F-transformace f nm s malým krokem (h = 2) je téměř shodná s původním obrázkem a chybová funkce e r tak nepřinese očekávaný výsledek: neostrý objekt vpředu je téměř nerozeznatelný (obr. 4.15b). Při větším kroku, a tím současně menšímu počtu zkoumaných bodů (h = 20), je výsledné pole f nm celé hodně rozostřené, ale chybová funkce e r již přináší zajímavý výsledek: neostrý objekt vpředu již má dobře znatelné hranové body (obr 4.15c). Hledání hranových bodů jednoduchým prahováním zde však není příliš účinné a bude třeba je zdokonalit. Dovolíme si tedy v tuto chvíli pro dosažení výrazné hrany použít klasický Cannyho detektor, jeho výsledek je na obr. 4.15f. Často používané klasické hranové detektory, tedy algoritmy podle Prewitta, Sobela, resp. Cannyho, mají hlavní nevýhodu, že jsou velmi citlivé na šum v obraze. Velikost jádra použitého filtru a koeficienty jsou dány a nelze je přizpůsobit zkoumanému obrazu. Z různých hledisek je algoritmus Cannyho zřejmě nejvýhodnější a výsledky tak budeme často srovnávat patrně právě s ním. 53

70 4.5 Shrnutí Výzkum a aplikování fuzzy logiky v technických oblastech se rozvíjí na některých pracovištích u nás (zajímavé podněty a teoretické rozbory lze nalézt např. v [7], [21], [34], dále pak třeba v [41], [42]), ale na celé řadě pracovišť ve světě. Je zajímavé, že velkou pozornost tato tématika dostává v Indii, Íránu a dalších vědeckých institucích v Asii, což může být spojeno (jak jsme naznačili výše) s filozofickým přístupem k otázkám chápání světa a historickými zkušenostmi v daných oblastech. Využití metodik a matematických postupů vycházejících z aplikace fuzzy logiky se ukazují jako velmi perspektivní pro zpracování informací získaných z obrazu pro určité specifické problémy. Příkladem je řada publikovaných zpráv a přednášek, např. [39]. Poměrně náročná výchozí specifikace a popis problému je při zpracování vyvážena jednoduchostí používaných operací. Jak ukážeme dále, fuzzy metody se nám stanou významným nástrojem i pro další oblast zpracování obrazu s cílem jeho další analýzy obrazové fúze. 54

71 5. Obrazová fúze (Image Fusion) 5.1 Základní úvahy V řadě případů je třeba řešit problém rekonstrukce obrazu (např. při jeho poškození, zašumění, špatném nasvícení či zaostření apod.). Tento problém je dosti častý při nasvícení BK. Pro tento účel lze použít řešení pomocí metody obrazové fúze (angl. Image Fusion) [43], [50]. Tato metoda využívá integrace všech dostupných informací o dané scéně (obvykle různých pohledů na danou scénu, třeba zaostřených vždy na jiný objekt) k vytvoření výsledného obrazu nejlepší možné kvality. Samozřejmě pojem kvalita závisí na požadavcích konkrétní aplikace a může se lišit v různých úlohách. V současné době má obrazová fúze významné postavení např. v medicínských aplikacích. Představme si nyní (obr. 5.1), že původní obraz rozložíme do N přenosových kanálů nesoucích informace o stejném obrazu. Na každý tento kanál bude zřejmě působit jistá degradace a následně též náhodný šum. Získáme tak celkem N výsledných obrazů s různým stupněm degradace původního obrazu. degradace šum Kanál N + Kanál 2 + Původní obraz Kanál 1 + Obr. 5.1 Model degradace obrazu Výsledné obrazy Předpokládejme, že u(x, y) je ideální obraz (jde o funkci dvou proměnných) a C i (i = 1, 2, N) jednotlivé zdroje obrazové informace (kanály), potom lze vyjádřit vztah: ( ) ( ( )) ( ) ( ) kde D i je operátor popisující degradaci i-tého obrazu a E i je aditivní náhodný šum. Spojením (tedy fúzí) obrazů z jednotlivých zdrojů (kanálů) získáme výsledný obraz û, který dává lepší výsledek, než bychom získali o původním obraze u z jednotlivých zdrojů C i. Metodiky fúze obrazu vycházejí z různých vlastností operátorů degradace D i. Budeme tedy předpokládat, že každý bod obrázku, tedy pixel (x, y), lze získat nezkreslený alespoň z jednoho zdroje (kanálu). Při obrazové fúzi pak vycházíme z porovnání obrazů z jednotlivých zdrojů (kanálů) a identifikujeme zdroj (kanál), v němž je pixel (případně oblast) nezkreslený, a neporušené části spojíme do výsledného obrazu (angl. Acquired Image) û podle vztahu: ( ) ( ) ( ) ( ) kde A i je operátor, který (zjednodušeně řečeno) z i-tého obrazu C i vybere jen jeho nedegradované části. Na obr. 5.2 je znázorněna obecná (teoretická) metoda obrazové fúze. 55

72 A N A 2 A 1 Získaný obraz Degradované obrazy Obr. 5.2 Model metody obrazové fúze Z praktického hlediska má význam se zabývat metodami obrazové fúze s počtem vstupních obrazů N = 2 až N = 4. Větší počet obrazů je obvykle v praxi obtížně realizovatelný. Pro výchozí ověření možností obrazové fúze vytvoříme nejprve jednoduché programové řešení zpracovávající dva vstupní obrazy (N = 2). Pro tento případ vztah (5.2) přejde na zjednodušený tvar: û = A 1 C 1 + A 2 C 2 (5.3) a pro naše ověření budeme operátory A 1, resp. A 2 definovat vztahy: { { ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) Pro každý pixel (k, l) výsledného (fúzovaného) obrazu û(k, l) potom bude platit: ( ) { ( ) ( ) ( ) ( ) ( ) ( ) ( ) čili výsledný obraz je složen z pixelů, které mají (v daném případě) největší jasovou hodnotu. Algoritmus SImF (Jednoduchá obrazová fúze) 1. Jednotlivé zdroje (kanály) C i označíme jako funkce f i (k, l). Výstupem bude obrazová funkce g(k, l), přičemž k = 1, 2, N a l = 1, 2, M. 2. Operátory A i, i = 1, 2, budeme definovat podle vztahů (5.4) a (5.5). 3. /* Výpočet g(k,l) for (k = 1 to N) ; for (l = 1 to M) ; if (f 1 (k, l) f 2 (k, l)) g(k, l) f 1 (k, l) ; else g(k, l) f 2 (k, l) ; end ; end ; 4. Nyní g(k, l) obsahuje fúzovaný obraz. Na obr. 5.3 je znázorněn příklad obrazové fúze zkoumaného objektu (v našem příkladu jde o dva různé snímky jednoho BK, každý snímek má různé zaostření). Je patrné, že zkoumaný objekt má na hranách (obr. 5.3a) a na špičce (obr. 5.3b) patrné vady (zřejmě způsobené mechanickým poškozením). Na obr. 5.3c je potom uveden výsledek obrazové fúze vstupních obrazů obr. 5.3a a obr. 5.3b. 56

73 a) b) c) Obr. 5.3 Příklad jednoduché obrazové fúze a) obraz zaostřený do kamene b) obraz zaostřený na spodní špičku kamene c) obrazová fúze obou obrazů Pro hodnocení kvality BK je třeba velmi pečlivě a se znalostí problematiky volit jak způsob nasvícení objektu (tedy BK), tak způsob snímání a následně pak způsob zpracování získaných obrazů. Z naznačeného postupu lze tušit další potenciál zkoumání právě pro oblast měření a zpracování obrazu BK. 5.2 Další algoritmy obrazové fúze Protože výsledky poskytované obrazovou fúzi jsou jistě velmi zajímavé a na základě empirických pokusů vedou k řadě nadějných výsledků, zejména při degradaci či jiném poškození vstupních obrazů, bude jistě účelné zkoumat další metody obrazové fúze. V následující části se budeme zabývat možnostmi aplikace F-transformace. Pro hledání fúzovaného obrazu se necháme nejprve inspirovat algoritmem [43] využívajícím fuzzy rozklad. Pro zjednodušení výkladu budeme uvažovat všechny obrazy reprezentované funkcemi jedné proměnné z intervalu <a, b>. Algoritmus ImF Decomp (Obrazová fúze s fuzzy rozkladem) 1. Nechť k = 1 a ε > 0. Jednotlivé zdroje (kanály) C i označíme jako funkci k f i, i = 1, 2, N. 2. Nechť n = 2 k. Vypočteme přímou a inverzní fuzzy transformaci všech funkcí k f i pro i = 1, 2, N. Přímou F-transformaci označíme F n [ k f i ] a inverzní F-transformaci k f F, n, i, i = 1, 2, N. 3. Vypočteme rozdíl k+1 f i = k f i - k f F, n, i, i = 1, 2, N. 4. Jestliže max <a, b> k+1 f i > ε, potom položíme k k+1 a opakujeme od kroku 2. Pokud max <a, b> k+1 f i ε, položíme k max k. 57

74 5. Vypočteme rychlou přímou F-transformaci F n [s k ] = [ k S 1, k S 2, k S n ], kde k S j je největší ze všech absolutních hodnot F n [ k f i ] j, j = 1, 2, n. 6. Vypočteme rychlou inverzní F-transformaci s k, jejíž komponenty jsou F n [s k ]. 7. Nechť k k 1 a pokud k 1, opakujeme od kroku Vypočteme ŝ = k s k pro k = 1, 2, k max a výsledný obraz ŝ budeme považovat za obrazovou fúzi. Lze odvodit [43], že čím menší je modul spojitosti (podle vztahu (4.12), tím lepší je aproximace původní funkce její inverzní F-transformací. Pokud je potom určitá část funkcí ovlivněna degradací, pak je její komponenta fuzzy transformace blízká nule, proto v kroku 5 vybíráme komponenty s největší absolutní hodnotou. Obecný Algoritmus ImF Decomp pro obrazovou fúzi s využitím F-transformace pracuje s řadou matematických zobecnění a při jeho doslovné aplikaci se ukazuje, že je poměrně časově náročný. V následující části se budeme věnovat zjednodušené variantě algoritmu pro obrazovou fúzi. Nejprve popíšeme jeho ideu v podobě blokového schématu (na obr. 5.4 pro dva vstupní obrazy). Příklad podmínky: if fa-fa1 > fb-fb1 then f2 fa2; else f2 fb2 fb fa FT/ DFT FT/ DFT fb1 fa1 - - FT/ DFT fb-fb1 fa-fa1 fa2 > T? F f2 Vstupní obrazy FT/ DFT fb2 Získaný obraz Obr. 5.4 Idea algoritmu obrazové fúze dvou vstupních obrazů Vstupní (degradované) obrazy (na obr. 5.4 označené jako fa, resp. fb) podrobíme F-transformaci a zpětné F-transformaci. Výsledné obrazy (označené fa1, resp. fb1) poslouží v dalším postupu k porovnání s původním obrazem a k volbě výběru vhodných pixelů do výsledného obrazu f2. Získané obrazy znovu podrobíme F-transformaci a zpětné F-transformaci. Tyto obrazy (označené fa2, resp. fb2) potom použijeme s pomocí porovnání hodnot jednotlivých chybových funkcí e A, resp. e B (vypočteme jako absolutní hodnotu rozdílu e A = fa-fa1, resp. e B = fb-fb1 ) k vytvoření výsledného obrazu f2 obrazové fúze vstupních obrazů podle algoritmu: Algoritmus ImF (Obrazová fúze) /* Příklad obrazové fúze /* Vstupem jsou dva obrazy fa a fb /* eft a edft jsou algoritmy pro F-transformaci a pro zpětnou F-transformaci popsané výše /* Výpočet transformovaných obrazů fa1 a fb1 Fa1 eft(fa) ; Fb1 eft(fb) ; fa1 edft(fa1) ; fb1 edft(fb1) ; /* Výpočet transformovaných obrazů fa2 a fb2 Fa2 eft(fa1) ; Fb2 eft(fb1) ; fa2 edft(fa1) ; fb2 edft(fb2) ; /* Vynulování pole výsledného obrazu f2 f2 0; /* Výpočet chybové funkce 58

75 for (u = 1 to N) ; for (v = 1 to M) ; e A abs(fa(u, v) fa1(u, v)) ; e B abs(fb(u, v) fb1(u, v)) ; if (e A > e B ) f2(u, v) fa2(u, v) ; else f2(u, v) fb2(u, v) ; end ; end ; Poznámka: Uvedený algoritmus je příkladem určité volby operátoru pro obrazovou fúzi. Pro náš příklad můžeme například doplnit jinou podmínku: if (e A e B ) f3(u, v) fa2(u, v) ; else f3(u, v) fb2(u, v); tedy pixely fúzovaného obrazu volíme při opačné podmínce. Někdy může být výsledný obraz mnohem lepší pro hledané vlastnosti. Pro možnost srovnání účinnosti popsané metody obrazové fúze s obecnější metodou popsanou v [8] si dovolíme vypůjčit vstupní obrázky získané z tohoto pramenu. Jde o dva původně shodné obrazy, přičemž každý je degradován (v našem případě rozostřen) jinak. Vstupní obraz fa (obr. 5.5a) má degradovanou (přibližně) pravou horní čtvrtinu, vstupní obraz fb (obr. 5.5b) má degradovanou téměř celou levou polovinu. Tyto vstupní obrazy jsou podrobeny výše popsanému algoritmu, takže získáme obrazy uvedené na obr. 5.5 postupně pod označením ve shodě s obr

76 a) fa b) fb c) e A = fa-fa1 d) e B = fb-fb1 e) fa2 f) fb2 g) f2 h) f3 Obr. 5.5 Příklad obrazové fúze s využitím F-transformace a), b) vstupní obrazy (fa, fb), c), d) chybové funkce e A, resp. e B, e), f) obrazy fa2, fb2 po následné fuzzifikaci a defuzzifikaci, g) výsledná obrazová fúze f2, h) výsledná obrazová fúze f3 Poznámka: Obrazy chybových funkcí e A, resp. e B jsou kontrastně upraveny, aby je bylo možno tisknout. 60

77 Nyní aplikujme Algoritmus ImF na vstupních obrazech z obr. 5.3a a 5.3b (připomeňme, že jde o dva různé snímky jednoho BK s vadami, každý obraz je jinak zaostřen). Výsledek obrazové fúze je zobrazen na obr Levý výsledný obraz je zpracován podle algoritmu pro obraz označený jako f2, pravý pak pro obraz označený jako f3. a) f2 b) f3 Obr. 5.6 Obrazová fúze vstupních obrazů z obr. 5.3a a 5.3b s využitím fuzzy transformace Je patrné, že levý výsledný fúzovaný obraz (f2) je velmi podobný výslednému fúzovanému obrazu s využitím jednoduché obrazové fúze z obr. 5.3c. Pravý fúzovaný obraz (označený jako f3) ovšem výsledek vhodný pro další zpracování nedává. Lze tak usuzovat, že jednoznačná volba univerzálního algoritmu (resp. operátoru) pro obrazovou fúzi není vždy možná a bude záležet na charakteru zobrazovaných informací, složitosti obrazu a hledané vlastnosti. Ukazuje se, že pro každý typ scény bude třeba zvolit vhodný operátor pro zpracování vstupních obrazů a nelze říci, že pro všechny aplikace lze aplikovat jednotný postup. 5.3 Shrnutí Problematika obrazové fúze patří dnes k významně se rozvíjejícím oblastem zpracování obrazu, protože její potenciál je velký. Výzkumem a metodikou obrazové fúze se zabývá několik pracovišť, kromě IRAFM OsU patří k významným pracovištím též například Ústav teorie informace a automatizace (ÚTIA) AV ČR v Praze, kde vznikla řada prací na toto téma (mj. například již zmíněná práce [50]). Jiná práce [64] se zabývá oblastí zpracování obrazu (zejména pak v medicínských aplikacích), kdy je třeba obrazy podrobit analýze nazývané obrazová registrace (angl. Image Registration), kterou lze (s jistým zjednodušením) popsat jako hledání vhodné geometrické transformace pro vzájemné přizpůsobení obrazů k následné analýze jejich obsahu po obrazové fúzi. Z dosavadního výzkumu a zkoušek se jeví metoda obrazové fúze jako jedna z perspektivních metod pro hodnocení vlastností BK s cílem významně pomoci při hledání nových metod nahrazení subjektivního hodnocení metodami objektivními směřujícími k vyššímu stupni automatizace. V kapitole 8 se vrátíme k navrženým metodám a provedeme jejich analýzu a odzkoušení na konkrétních příkladech kvalitativního hodnocení BK. 61

78 62

79 6. Využití FPGA a GPU V případech zpracování velkého množství obrazových dat nebo při časově náročných úlohách (např. při hodnocení objektů na výrobním pásu, ale i při počítačových hrách) je zcela legitimním požadavkem co nejméně zatěžovat CPU výpočetního systému a přenést některé části úlohy na jinou část systému. V současné době lze v oblasti zpracování obrazu pozorovat dva hlavní možné směry: aplikace FPGA (programovatelná hradlová pole), aplikace GPU (grafické procesory a akcelerátory). V obou případech se jedná o přenesení části zpracovávaných dat z hlavního systému na jiný (obvykle specializovaný) systém, takže zpracováním těchto není zatěžována CPU a může tak dojít k urychlení běhu hlavního programu běžícího na CPU. Při aplikaci FPGA se přenese část úlohy do obvodu typu FPGA, kde lze velmi rychle formou logických funkcí realizovat zejména logické úlohy. Při aplikaci GPU se přenese část úlohy do specializovaného grafického procesoru. Hlavní myšlenkou v obou případech je rozdělení úlohy na několik paralelně vykonávaných úloh (paralelní zpracování dat, tzv. paralelizmus). Výsledkem je zrychlení celkového výkonu systému. Poznámka: Pro maximální efektivitu přípravy úlohy, její realizaci i další vývoj je důležité pracovat pokud možno v jednom programovém prostředí. Nástroje NI LabVIEW díky silnému vývojovému zázemí sledují tyto trendy a nabízí podporu pro implementaci těchto nástrojů. Jde ovšem o techniku, která je stále ve vývoji a její aplikování v průmyslu je vždy o několik let posunuto. 6.1 Systémy FPGA Významným technickým prostředkem pro realizaci logických funkcí a ke zrychlení řízení průmyslových aplikací jsou systémy využívající obvody FPGA (angl. Field Programmable Gate Arrays). Tato platforma umožňuje přesunout velkou skupinu aplikací dosud řešených programovými (a z pohledu časové náročnosti pomalejšími) prostředky do oblasti technické (čili časově mnohem rychlejší). Tento kvalitativní krok byl umožněn zejména implementací a integrací vývojových systémů přímo do prostředí pro návrh řídicích systémů. Uživatel tak má k dispozici silné nástroje pro návrh konkrétní aplikace s využitím obvodu FPGA, aniž by musel podrobně znát jeho strukturu a vlastnosti, takže je schopen využívat algoritmy pro implementaci logických funkcí do komplexní struktury programového řešení Karty s obvody FPGA Příkladem aplikace obvodů FPGA pro použití v oblasti zpracování obrazu je karta firmy NI PCIe- 1473R (obr. 6.1a), která integruje uživatelsky programovatelný obvod FPGA a rozhraní CameraLink pro připojení kamery. Aplikace v FPGA tak může řešit zejména spouštění kamery (trigger) a synchronizaci s osvětlovačem. Výhodou tohoto řešení je poměrně elegantní a komplexní řešení jak programové, tak obvodové části úlohy. Celá úloha se pak řeší jako jeden projekt. 63

80 a) b) c) Obr. 6.1 Příklady průmyslových systémů FPGA ([W10]) a) karta (frame grabber) NI PCIe-1473 b) systém PAC CompactRIO NI-9101 s řídicí jednotkou NI-9002 a vstupním modulem NI-9425 c) SingleBoardRIO Průmyslové systémy CompactRIO a SingleBoardRIO Rozsáhlejší a náročnější aplikace lze řešit s využitím obvodů FPGA využitím průmyslových řídicích systémů typu PAC (z angl. Programmable Automation Controler) od firmy National Instruments: CompactRIO (RIO = z angl. Reconfigurable Input/Output) a SingleBoardRIO. Tyto systémy představují vysokoúrovňovou platformu pro vývoj aplikací v reálném čase a pořizování dat. Robustnější systém CompactRIO (obr. 6.1b) pracuje s procesorem reálného času s architekturou PowerPC ve spojení s rekonfigurovatelným obvodem FPGA Xilinx. Malý jednodeskový systém SingleBoardRIO (obr. 6.1c) je určen zejména pro vývoj uživatelských řešení a je také cenově výhodnější. Vychází z architektury CompactRIO, na jednu desku plošného spoje jsou integrovány všechny tři základní součásti: procesor reálného času + obvod FPGA + vstupy/výstupy a neobsahuje kovové pouzdro. Na obr. 6.2 je znázorněno blokové schéma systému CompactRIO. Je odtud patrné, že komunikaci mezi základní řídicí jednotkou a moduly vstupu/výstupů (I/O) zprostředkovává programovatelné pole FPGA. řídicí jednotka I/O FPGA I/O I/O Obr. 6.2 Zjednodušené blokové schéma systému CompactRIO Řídicí jednotky jsou osazeny procesorem s jádrem x86, resp. procesory Freescale MPC5200 (400 MHz) nebo MPC8347 (533 MHz) a pracují s operačním systémem reálného času RTS (Real-Time OS), resp. VxWorks (operační systém reálného času vyvíjený firmou Wind River). Systémy CompactRIO, resp. SingleBoardRIO, jsou osazeny obvodem FPGA (obvody firmy Xilinx řady Spartan-3, resp. Virtex- II nebo Virtex-5), který umožňuje řídit časově náročné děje a současně je programově obsloužit v grafickém programovacím prostředí LabVIEW. To je však třeba doplnit o programové moduly LabVIEW FPGA a LabVIEW Real-Time. I/O 64

81 Na obr. 6.3 je znázorněna architektura programových prostředků CompactRIO, resp. SingleBoardRIO). Nadřazený počítač (angl. Host PC) komunikuje síťovými prostředky s částí programu řešící úlohu běžné (tedy nízké) priority. Úlohou FPGA je zejména vykonávat časově kritické smyčky, kdy se výhodně uplatňuje technické řešení zadané úlohy namísto programového řešení. Host PC aplikace CompactRIO síťové prostředky (např. TCP/IP) smyčka s normální prioritou (komunikace, sběr dat a pod.) uživatelské rozhraní (GUI) výstup vstup časově kritická smyčka (FPGA čtení/zápis) Obr. 6.3 Architektura programových prostředků CompactRIO Aplikování obvodů FPGA pro zpracování obrazu Zajímavou a perspektivní se jeví možnost aplikování obvodů FPGA při zpracování obrazových informací s cílem zvýšit výpočetní rychlost zejména u časově náročných dějů. V technické literatuře najdeme několik prací zmiňujících se o pokusech v této oblasti, např. [35] popisující aplikování nástrojů FPGA firmy Altera pro detekci hran v obraze pracující v reálném čase. Za zmínku stojí též například práce studující možnosti aplikování obvodu FPGA pro obrazovou fúzi 22, která vznikla na mansúrské univerzitě v Egyptě. Je však třeba říci, že aplikování obvodů FPGA pro zpracování obrazu bude třeba ještě dále studovat a získat další zkušenosti. Přes jistá očekávání není dosud aplikování těchto prostředků běžné pro průmyslové aplikace. 6.2 Aplikace GPU a CUDA Poslední dobou získávají stále na větším významu (a nutno říci, že hlavním důvodem jsou stále náročnější počítačové hry) grafické procesory (GPU), resp. grafické akcelerátory, které přebírají velkou část potřebného výkonu pro zpracování dat určených pro vykreslování na zobrazovacím zařízení. Se stoupající náročností úlohy pro grafickou prezentaci výsledku se tak ulehčí (a hlavně tak zrychlí) běh hlavního programu, který má na starosti CPU počítače. Grafický procesor se pak stará o specializované úlohy, kterými dnes jsou obvykle 3D animace. Jedním z významných hráčů v oblasti vývoje GPU je firma NVIDIA 23, která v roce 2006 přišla s konceptem architektury CUDA. Tato architektura definující programové rozhraní, řízení v reálném čase a podporu ovladačů rozhraní (PCIe) dovoluje na GPU spouštět programy napsané v různých jazycích, např. C, C++ apod.) a cílově pak přenést část výpočetního výkonu na grafickou kartu. To se zdá být velmi 22 Viz 23 NVIDIA viz konkurenční technologií je ATI Stream od firmy AMD, viz 65

82 nadějné pro zrychlení aplikací pracujících v reálném čase, neboť tyto výkonné procesory lze využít i k jiným výpočtům, než jsou výpočty nutné pro zobrazování dat. V následujícím přehledu v tab. 6.1 je uvedeno srovnání některých parametrů procesoru (CPU) Intel i7 (se 6 jádry) používaného u výkonných počítačů PC s parametry grafického procesoru (GPU) NVIDIA GeForce GTX 580 určeného pro náročné grafické aplikace (tedy zejména herní). Tab. 6.1 Srovnání některých parametrů CPU a GPU (s použitím[w10]) Intel i7 6-core NVIDIA GeForce GTX 680 Výpočetní výkon GFLOPS GFLOPS Rychlost přístupu k paměti GB/s 192 GB/s Výkon 130 W 244 W Cena (duben 2012) ,- Kč 8 500,- Kč Poznámka: Parametr FLOPS popisuje výpočetní výkon procesoru a udává se v počtu operací v pohyblivé řádové čárce za sekundu. Je tedy patrné, že (přes větší výkonovou ztrátu) nabízí GPU výrazně větší výpočetní výkon, který lze využít právě pro urychlení práce s grafickými a dalšími daty. Obr. 6.4 znázorňuje zařazení GPU na sběrnici PCIe. GPU RAM Root Complex SP SP SP PCIe SP SP SP GPU Host RAM CPU Obr. 6.4 Blokové schéma zařazení GPU na sběrnici PCIe Filozofie GPU vychází z principu aplikace velkého množství jednoduchých jader (procesorů) rozdělených do bloků v podobě mřížky (angl. Grid), ve kterém každé jádro výpočtu (tzv. kernel) má programem nadefinovanou úlohu jednoho výpočetního vlákna (angl. Thread). Jednotlivé procesory (angl. Stream Processor) tak umožňují paralelizaci úlohy, tím se dosahuje vysokého výpočetního výkonu (viz obr. 6.5). 66

83 GPU RAM Obr. 6.5 Princip paralelizace výpočtu v GPU 24 Poznámka: Možnosti využití vysokého výkonu pro grafické operace se využívá například při vytváření realistického obrazu scény s vizuálními světelnými efekty na základě počítačového 3D modelu, kterému se říká renderování (angl. Rendering). Hlavním hnacím motorem tohoto odvětví počítačové grafiky je tvorba počítačových her. 6.3 Shrnutí Implementace prostředků FPGA a GPU do výpočetního systému je pro zrychlení a optimalizaci výpočetního výkonu zcela nepochybně výrazným krokem vpřed. Porovnáním používaných technologií (vícejádrové CPU, FPGA, resp. GPU) lze stručně popsat nejdůležitější výhody například podle obr Technologie Výhody - lze provádět operace v pohyblivé řádové čárce, - úlohy lze rozdělit mezi jádra, - jistá forma paralelizmu (několik souběžně běžících úloh) - přímé připojení na vstupy a výstupy řízeného procesu, - vysoká míra paralelizmu (souběžně běžící úlohy), - lze provádět operace v pevné řádové čárce. - vysoká míra paralelismu (souběžné zpracování velkého množství malých datových bloků) Obr. 6.6 Porovnání vlastností technologií CPU, FPGA a GPU Podle 25 Převzato z 67

84 Je patrné, že aplikace vícejádrového procesoru (angl. Multi-Core CPU) umožňuje provádět operace v pohyblivé řádové čárce, rozdělení úloh (mezi jádra) i určitou formu paralelizmu (několik souběžně běžících úloh). Aplikace FPGA dovoluje přímé připojení na vstupy a výstupy řízeného procesu, vysokou míru paralelizmu (souběžně běžící úlohy), obvykle lze pracovat s matematikou v pevné řádové čárce. Lze tak výrazně zrychlit technickou stránku řešení (řízení spouštění a synchronizace, přenosy dat, zpracování datových toků). Aplikace grafického procesoru GPU vede k výraznému zrychlení paralelismu a souběžného zpracování velkého množství malých datových bloků. Pro zpracování obrazu v průmyslu může být tento postup velmi přínosný. Naznačený směr využití GPU pro urychlení a optimalizaci výpočtů při zpracování obrazu je natolik zajímavý, že se v poslední době objevila celá řada článků a modelových aplikací jak pro akademické prostředí MATLAB 26, tak pro technické aplikace v prostředí LabVIEW Viz např Viz např. 68

85 7. Problematika optické soustavy Při zpracování obrazu je v první řadě velmi důležité získat (pokud možno) kvalitní obraz snímané scény, jinými slovy je třeba velkou pozornost věnovat návrhu a realizaci vhodné optické soustavy. Příklad optické soustavy často používané pro zkoumání vlastností BK je naznačen na obr Optická soustava se skládá obvykle z těchto částí: osvětlovač, snímací soustava (objektiv, kamera). Součástí optické soustav je samozřejmě zkoumaná scéna nebo objekt (příp. zařízení pro jeho upevnění nebo manipulaci). Je třeba též připomenout, že významnou úlohu při vlastním zpracování obrazu musí hrát předem definovaný vzorový objekt, který má známé vlastnosti (především přesně popsané rozměry. Tomuto zvláštnímu objektu budeme též říkat kalibrační přípravek. Na obr. 7.1 je uveden příklad optické soustavy (optické lavice) složené z jednotlivých částí. snímaný objekt objektiv kamera osvětlovač Obr. 7.1 Příklad optické soustavy (viz [W9]) Poznámka: Třebaže těžištěm této práce není zkoumání optických soustav, pro svoji důležitost v procesu zpracování obrazu se krátce o tomto tématu dále zmíníme. 7.1 Osvětlovač Volba správného osvětlení (resp. nasvícení) zkoumané scény nebo objektu pro danou úlohu zpracování obrazu vyžaduje určité zkušenosti podpořené velmi často experimentálním ověřením, zejména tehdy, je-li scéna tvořena lesklými nebo průhlednými (transparentními) objekty. Důležitou úlohou je často odstínění vedlejších nežádoucích zdrojů světla a falešných odlesků. Pro tento účel je třeba použít filtry (např. barevné, polarizační apod.). Nejjednodušším zdrojem světla bývá běžná vláknová žárovka, případně zářivková trubice. Lépe parametrizovatelné osvětlení (jinými slovy: lépe ovladatelné a řiditelné) poskytují osvětlovače osazené svítivými diodami LED. Tyto osvětlovače umožňují měnit jas či použít zábleskový režim s vysokou intenzitou jasu. Při zábleskovém provozu osvětlovače je obvykle potřeba mít možnost synchronizovat záblesky s uzávěrkou snímací kamery. Lze tak dosáhnout příznivých vlastností obrazu scény (zejména nasvícení snímaného objektu). 69

86 Důležitou úlohou je volba způsobu osvětlení snímané scény nebo objektu a jeho umístění v rámci optické soustavy, můžeme tak volit podle obr. 7.2 např.: bodový osvětlovač (např. žárovka, LED, laser apod.) zdůrazní drsnost povrchu snímaného objektu, dává však silné odlesky (obr. 7.2a), difúzní (plošný) osvětlovač (odraz od bílé stěny, osvětlovač s matnicí apod.) sice potlačuje drsnost povrchu, odlesky však zanechává (obr. 7.2b), zadní osvětlovač umožňuje zdůraznit obrys a rozměry objektu (obr. 7.2c), temné pole lze získat šikmým nasvícením objektu, kdy se paprsky z objektu odráží do objektivu (obr. 7.2d). zkoumaný objekt bodový osvětlovač objektiv a) zkoumaný objekt difuzní osvětlovač objektiv kamera b) zadní osvětlovač zkoumaný objekt objektiv kamera c) zkoumaný objekt zdroj světla objektiv kamera temné pole kamera d) Obr. 7.2 Typické osvětlovače Pro celou řadu aplikací právě v oblasti měření BK je vhodné usměrnit světlený tok paprsků jdoucích ze světelného zdroje všemi směry do rovnoběžného toku a vytvořit tak zadní osvětlovač, který do cesty světlených paprsků zařazuje telecentrický osvětlovač kolimátor (obr. 7.3). Jeho pomocí se paprsky ze zdroje světla usměrní a vycházejí ven rovnoběžně s optickou osou. Výhodou je omezení falešných odrazů na plochách snímaného objektu. 70

87 difuzor štěrbina zdroj světla kolimátor Obr. 7.3 Náčrt kolimátoru Velmi často se použije osvětlovač s kolimátorem tam, kde je požadováno měření rozměrů nezávislé na vzdálenosti od kamery. Kamera potom musí být osazena telecentrickým objektivem. Jednou ze současně používaných metod nasvícení scény je metoda HDR (angl. High Dynamic Range), resp. HDRI (z angl. HDR Imaging), při níž se obraz složí z několika dílčích obrazů stejné scény nasnímaných s různou intenzitou nasvícení. Lze tak dosáhnout plnější obraz snímané scény a do určité míry zabránit přesvětlení objektů blíže snímacímu zařízení (snížit tak výskyt některých odlesků a některých dalších jevů degradujících obraz) a zvýraznit objekty vzdálenější. 7.2 Snímací soustava Snímací soustava je obvykle tvořena objektivem a kamerou. Obě tyto části je třeba navrhnout v součinnosti s úlohou. Často je také třeba navrhnout vhodné upevnění snímací soustavy s možností přesného nastavení polohy v rámci optické soustavy (justážní prvky). Na obr. 7.4 je náčrt typické snímací soustavy, která je tvořena objektivem s určitou ohniskovou vzdáleností (ohnisko je na optické ose vyznačeno) a obrazovou rovinou tvořenou plochou snímací součástky (tzv. čip, z angl. Chip plátek), na kterou se promítá obraz snímaného objektu. objektiv aperturní clona ohnisko čočky obrazová rovina y y objekt výsledný obraz Obr. 7.4 Náčrt snímací soustavy: objektiv a obrazová rovina (snímací prvek kamery) Poznámka: Aperturní clona zabraňuje pronikání nežádoucích paprsků na obrazovou rovinu. 71

88 7.2.1 Objektiv Hlavními vlastnostmi objektivu jsou: ohnisková vzdálenost může být pevná nebo nastavitelná (např. zoom ), clona možnost nastavení různé světelné propustnosti objektivu, světelnost nejmenší a největší nastavitelná clona, ostření a hloubka ostrosti závisí též na cloně, lze v menší míře nastavovat též pomocí mezikroužků, způsob připevnění objektivu ke snímací kameře obvykle pomocí závitového spojení typu C, resp. CS (u závitu typu C je vzdálenost zadního čela objektivu od plochy snímacího prvku cca 17 mm, u závitu typu CS je vzdálenost cca 12 mm, objektiv pro kameru se závitem C lze přizpůsobit pro kameru se závitem CS pomocí mezikroužku o tloušťce 5 mm), formát pro jakou velikost plochy snímací součástky (čipu) je určen (obvykle se používají snímací součástky o velikosti 1/4, 1/3, 1/2, 2/3, 1 apod.), Je zřejmé, že volba vhodného objektivu je velice důležitá při návrhu celé snímací soustavy. Běžný objektiv promítá obraz na plochu snímací součástky s perspektivní projekcí, takže zorné pole takového objektivu je tvořeno komolým kuželem. Projekcí na pravoúhlou plochu snímacího součástky vede k redukci na tzv. pohledový jehlan, jehož vrchol se nazývá ohniskem projekce. Na obr. 7.5 je znázorněna geometrie perspektivní projekce. y y y y ohnisko projekce Obr. 7.5 Náčrt geometrie perspektivní projekce do roviny ohnisková rovina Je patrné, že ztráta prostorové informace při perspektivní projekci (na obr. 7.5 je patrný rozdíl v délce úseček y, resp. y, které jsou projekcí původní úsečky y) komplikuje zejména přesná měření rozměrů snímaných objektů. Tento nedostatek může do jist míry eliminovat jiný typ objektivu pro tzv. ortografickou projekcí telecentrický objektiv, který je obdobou kolimátoru. Tento objektiv nezobrazuje snímaný objekt s ohniskovou perspektivou, ale s kolmou paralelní projekcí, takže velikost obrazu snímaného objektu je stále stejná a nezávisí na vzdálenosti od objektivu. Velikost vstupní plochy objektivu ovšem musí být navržena shodně s velikostí snímané scény. Určitou nevýhodou, se kterou musíme počítat, je pak geometrické zkreslení obrazu. Na obr. 7.6 je znázorněna snímací sestava s telecentrickým objektivem. 72

89 objektiv aperturní clona obrazová rovina y y objekt ohnisko čočky výsledný obraz Obr. 7.6 Náčrt snímací soustavy s telecentrickým objektivem Kamera Rovněž výběr vhodné kamery je spojen s řadou kritérií. Výchozím parametrem je požadovaná velikost zorného pole (samozřejmě s ohledem na vlastnosti objektivu) a požadovaná rozlišovací schopnost nebo přesnost. Důležitými parametry jsou rovněž rychlost snímání (udává se v počtu snímků za sekundu jednotka fps z angl. frame per second) a rychlost přenosu snímků do počítače (vlastnost komunikačního rozhraní v kameře udává se v počtu přenesených bitů za sekundu). Na obr. 7.7 je uveden příklad průmyslové kamery s našroubovaným objektivem. Obr. 7.7 Příklady průmyslových kamer ([W5]) Dnešní digitální snímací kamery jsou osazeny světlocitlivou snímací součástkou integrovaným obvodem se světlocitlivými prvky typu CMOS (z angl. Complementary Metal Oxid Semiconductor) nebo CCD (z angl. Charge Coupled Device) umístěnými na ploše čipu. Poznámka: Technologie CMOS pracuje na principu fotodiody, u níž se měří protékající proud závislý na množství světla. Je to technologie novější, vykazuje však vyšší šum. Technologie CCD pracuje na principu zjištění velikosti náboje závisející na množství světla na jednotlivých snímacích prvcích. Ze snímací součástky je signál obsahující informaci o obrazu veden do dalších obvodů kamery a je dále zpracováván. Rozlišovací schopnost kamery je odvozena z velikosti plochy snímací součástky a množství jednotlivých světlocitlivých prvků na ní. Formát (resp. velikost čipu) se udává obvykle v palcích (např. 1/2 ) ekvivalentního průměru vidiconu (starší snímací elektronka) nebo v milimetrech (1/2 odpovídá rozměrům čipu 4,8 6,5 mm). 28 Obr. 7.4 až 7.6 byly inspirovány výkladem firmy Moravské přístroje, a. s., Zlín ([W4]) 73

90 Připojení kamery k dalším obvodům může být obecně analogové nebo digitální. V případě digitálního rozhraní je dnes na výběr Ethernet/IP (příp. rozhraní GigE), USB, FireWire (IEEE 1394a, novější IEEE 1394b), resp. Camera Link. Digitální kamery mohou pracovat buď s pevnou snímkovou frekvencí, mohou být externě spouštěny, mohou pracovat volně s akumulací osvětlení, mohou poskytovat proud dat komprimovaný různými metodami nebo mohou poskytovat nezkreslená syrová (RAW) data atd. Pro průmyslové aplikace bude většinou hlavním kritériem požadavek na rozlišení s ohledem na předpokládanou velikost měřeného předmětu a požadavek na rozlišení při jeho měření. Vzdálenost mezi dvěma obrazovými body by měla teoreticky odpovídat požadovanému rozlišení měření. Někdy je dokonce možné využitím dalších metod (obvykle na principu využití lineární interpolace) dosáhnout i tzv. subpixelového rozlišení měření. 7.3 Řádková kamera Při analýze BK pomocí optické soustavy je výrazným omezujícím faktorem vliv mnohočetného odrazu světla, které nám výrazně narušuje přesné měření. Budeme proto hledat takové uspořádání optické soustavy, které bude pokud možno tento jev eliminovat. Na obr. 7.8 je naznačena možná varianta optické soustavy, která do jisté míry eliminuje vliv rušivých odrazů světla. Měřené BK jsou umístěny na nosiči, obraz scény kamera (vpravo) snímá pod úhlem k rovině nosiče a osvětlovač (vlevo) tuto scénu nasvětluje pod úhlem. osvětlovač kamera nosič s kameny Obr. 7.8 Možné uspořádání optické soustavy pro měření BK Při aplikaci optické soustavy podle obr. 7.8 dochází při snímání plochy ke zkreslení vlivem různé hloubky ostrosti objektivu (viz obr. 7.9a). Eliminace lze dosáhnout vychýlením optické osy objektivu, tedy prakticky určitým zalomením objektivu (angl. Tilt Shift), při kterém se obraz na plochu snímací součástky promítá s potřebnou ostrostí (obr. 7.9b). osvětlovač plocha čipu snímací součástky osvětlovač tilt shift plocha čipu snímací součástky rovina ostrosti a) Obr. 7.9 K výkladu zlepšení hloubky ostrosti při šikmém uspořádání optické soustavy b) 74

91 Výhodou běžné kamery s plošnou snímací součástkou je nasnímání celé scény najednou a úlohou systému je potom zpracování celého snímku. Pro úlohy hromadného a kontinuálního měření (například součástek na pásu apod.) může být výhodné aplikovat řádkovou kameru osazenou světlocitlivým snímačem v podobě jednoho řádku. Samozřejmě tím získáváme informaci jen o jednom řádku scény a druhý rozměr, rozklad obrazu v podélném směru, musíme vytvořit pohybem scény definovaným způsobem, obvykle pak liniovým posunem nosiče (pásu se snímanými objekty) konstantní rychlostí. Snímání jednotlivých snímků (tedy řádků) pak musí být synchronizováno s pohybem nosiče tak, aby výsledný obraz scény mohl být složen z jednotlivých nasnímaných řádků. Základní idea aplikování řádkové kamery při měření BK na horizontálně se pohybujícím pásu je naznačena na obr Řádková kamera je umístěna kolmo nad snímanými předměty umístěné na pásu, osvětlovač je umístěn těsně nad pásem v uzavřeném pouzdře (tzv. dómový osvětlovač s difúzním světlem) s otvorem pro snímání, kterým prochází optická osa kamery. řádková kamera dómový difúzní osvětlovač pás s měřenými objekty Obr Idea aplikace optické soustavy s řádkovou kamerou Další možností je uspořádání optické soustavy podle obr. 7.8, kde je použita řádková kamera a měřené předměty tvořící scénu (v tomto případě se jedná o měřené BK) jsou umístěny na pohyblivém nosiči. Optickou soustavu lze pak nastavit tak, aby pro každý nasnímaný řádek bylo optimální nasvícení, tím se maximálně eliminují odlesky. 7.4 Kalibrace optické soustavy Při snímání reálných objektů reálnou optickou soustavou dochází k určitému zkreslení snímané scény. Jestli nám při běžném užívání optických systémů (fotoaparáty, televizní kamery apod.) v řadě případů nevadí jistá míra deformace výsledného obrazu (případně této vlastnosti mnohdy i využíváme), pro účely měření může být ovšem toto zcela nedostatečné. Požadujeme tedy, aby optická soustava vykazovala maximální (tedy přesněji přijatelnou) přesnost, tedy aby získaný obraz nezkresloval skutečnost. Tohoto požadavku lze dosáhnout při použití objektivu bez geometrických deformací obrazového pole a kamery s dostatečnou rozlišovací schopností pro danou aplikaci. Pro dosažení maximální přesnosti výsledků při kamerovém měření bude třeba pracovat s informací o skutečném rozložení geometrických chyb v obrazovém poli sejmutém danou optickou soustavou a získaný obraz podrobit operaci kalibrace s použitím vhodných kalibračních algoritmů. Je tedy nutné (pro dosažení maximální přesnosti) každému pixelu obrazu přiřadit informaci o jeho přesné pozici v obrazovém poli, jinými slovy: výsledný obraz vznikne přepočítáním obrazové matice sejmutého obrazu za použití kalibrační masky. Náročnost této operace závisí na přesnosti použité optické soustavy a na požadované přesnosti dané úlohy. Pro běžné úlohy se pak vyžaduje zpracování v reálném čase. 75

92 Při zpracování obrazu se pracuje s kalibračním přípravkem, jehož obraz se uloží a jako vzor pak slouží k přepočtu snímaného obrazu. Kalibrační přípravek může mít např. podobu kalibrační mřížky. a) b) c) Obr Příklad kalibračních mřížek (podle [W10]) Na obr jsou znázorněny některé příklady kalibračních mřížek pro kalibraci obrazu bez zkreslení (obr. 7.11a), pro kalibraci obrazu s perspektivním zkreslením (obr. 7.11b), resp. kalibraci obrazu s nelineárním (tzv. poduškovitým) zkreslením (obr. 7.11c). Teoretické základy problematiky kalibrace lze nalézt např. v [48]. Matematický popis vlastností kamery lze získat také v práci [51]. V této práci se problematikou kalibrace zabývat nebudeme, budeme však potřebu vhodné a účinné kalibrace optické soustavy mít stále na paměti. 7.5 Shrnutí V této části jsme stručně zmínili základní (ale velmi důležité) vlastnosti optické soustavy, kterou chceme použít pro měření bižuterních kamenů (BK). Jak jsme již naznačili, návrh vhodné optické soustavy pro danou úlohu zpracování obrazu vyžaduje poměrně velkou dávku zkušeností, které je třeba získat za podpory experimentální činnosti. Jak se totiž ukazuje, zpracování obrazu BK, které jsou z principu tvořeny mnoha lesklými plochami, není snadné. Je tedy třeba mít na paměti, že kamera nám poskytne pro další úkony jen takový obraz, který bude dobře připraven, tedy zejména nasvícen. 76

93 8. Aplikace algoritmů pro zpracování obrazu v bižuterním průmyslu V této části se budeme věnovat praktickým aplikacím poznatků popsaných spíše obecně nebo teoreticky v předchozích částech práce. Cílem je využití metod pro zpracování obrazové informace umožňující zefektivnění operací při výrobě BK (bižuterních kamenů) a cílově tak zvýšit jejich kvalitu. Pro implementaci algoritmů navržených a popsaných v předchozí části práce budeme používat programové prostředí LabVIEW (National Instruments), které nabízí řadu funkcí pro práci jak obecně se signály, tak pro práci s obrazem. Pro některé speciální aplikace, jak ukážeme, v oblasti měření a hodnocení BK však bude třeba připravit některé vlastní funkce. 8.1 Obecná formulace postupu Při zpracování obrazu pro konkrétní náročnější aplikace (mezi které bezesporu lze zpracování obrazu lesknoucích se BK zařadit) lze zvolit několik do jisté míry podobných postupů, např. [48]. Vždy jde především o to získat z obrazu snímané scény takové informace, které pro další postup (v dané technologii) potřebujeme. Na obr. 8.1 je uveden postup kroků při zpracování obrazu, který budeme obvykle volit. Scéna Předzpracování Vstupní obraz Prahování Segmentace Analýza Digitální obraz Hledání hran Hledání zlomových bodů Odstranění artefaktů Rozpoznávání Složení obrazu Obraz s charakteristickými vlastnosti Porovnávání tvarů Měření délek a tvarů Hodnocení kvality Obr. 8.1 Příklad postupu zpracování obrazu 77

94 Vstupem je obraz reálné scény, který získáme ze specializované optické soustavy navržené pro danou konkrétní aplikaci. Prvním krokem je předzpracování, tzn. využití metod pro zdůraznění charakteristik obrazu s cílem dalšího zpracování (např. nalézání hran). Výsledný digitální obraz musíme nyní podrobit analýze, při níž hledáme hrany v důležitých (zvolených) částech obrazu, provádíme hledání a analýzu zlomových bodů a odstranění objektů v obraze, které tam nepatří (tzv. artefaktů, neboli objektů v obraze vzniklých většinou nesprávnou interpretací obrazu nebo objektů do obrazu nepatřících). Tato analýza vyžaduje již poměrně vysokou míru znalostí očekávaného obsahu obrazu, neboť při špatně zvoleném postupu bychom mohli odstranit důležitou informaci. Na závěr můžeme obraz složit z různých dílčích obrazů, na nichž byla provedena analýza. Získáváme tak obraz obsahující zdůrazněné důležité charakteristické vlastnosti (angl. Features, resp. Character Features). Výsledný obraz potom podrobujeme v nejvyšší úrovni zpracování metodám rozpoznávání požadovaných vlastností měřeného objektu: v nejjednodušším případě formou porovnávání tvaru se vzorovou předlohou (angl. Pattern Matching), v jiném případě měření délek a tvarů (obvykle využitím úseček vzniklých postupným pospojením vždy dvou po sobě jdoucích sousedních zlomových bodů), v nejsložitějším případě pak hodnocení složitých tvarů vedoucích k objektivnímu posuzování kvality původního objektu (vyhodnocení odchylek od standardních definovaných vlastností). Jednou z vysoce důležitých etap při hodnocení kvality při výrobě BK je identifikace vad BK způsobujících degradaci jejich estetické hodnoty (a z toho plynoucí ekonomické ztráty). Za největší vady BK, které je třeba identifikovat, se považují vady typu: odrcená špička, odrcená hrana, poškrábaná plocha (tabulka nebo faceta), nedostatečně vyleštěná tabulka, záprasky (pozorovatelné vady v materiálu). Pro přesné měření délek a rozměrů je třeba předem provést kalibraci nasnímáním obrazu přesně změřené a známé předlohy (kalibračního přípravku). 8.2 Využití prostředí LabVIEW Základní popis prostředí LabVIEW V posledních letech se stále výrazněji uplatňuje především v oblasti tzv. virtuální instrumentace programový systém LabVIEW. Tento systém, jehož název vzniknul z popisu jeho základních vlastnosti: Laboratory Virtual Instruments Engineering Workbench, čili laboratorní pracoviště virtuálních nástrojů, je produktem americké firmy National Instruments (NI) [W10] a díky svým vlastnostem přináší do přístrojové a programovací techniky silný nástroj umožňující, aby rostl tak rychle a zdatně, jak rychle a zdatně roste jeho autor. Základem je tzv. programovací jazyk G (= grafický), pomocí něhož se vytvářejí komponenty, resp. programy zvané virtuální (zdánlivé) přístroje Virtual Instruments (VI). Každý VI se skládá ze dvou částí: z uživatelského rozhraní, kterému se v terminologii LabVIEW říká čelní panel (angl. Front Panel), a z blokového schématu (angl. Block Diagram), který je zdrojovým kódem VI. K základnímu seznámení s prostředím LabVIEW může sloužit např. článek [54]. Pro seznámení se základy lze využít starší skriptum [65] dostupné z internetu. Dosud jedinou publikací v českém (příp. ve slovenském) jazyce je pak (autorova) kniha [55], která si klade za cíl seznámit budoucí i stávající 78

95 uživatele systému LabVIEW se základy metodiky programování, vytváření VI a práci s nimi. S možnostmi aplikace prostředí LabVIEW v oblasti zpracování obrazu se lze seznámit v odborných článcích autora [56] až [59]. Nástroje prostředí LabVIEW umožňují vytvářet rozsáhlé projekty a zpracovávat složité signály. S výhodou je lze aplikovat práce v oblasti zpracování obrazové informace, pro které je nutno základní sadu doplnit o modul Vision and Motion. Výhodou tohoto řešení je velmi silná podpora průmyslovým aplikacím, což přináší programovému vybavení LabVIEW určitou výhodu oproti dalšímu nástroji MATLAB 29 ) hojně používanému spíše v akademickém prostředí. V následujících částech práce jsou uvedeny původní algoritmy a jejich interpretace v prostředí LabVIEW, které vznikly v souvislosti se zpracováním této práce Ukázka aplikace hranový filtr s použitím konvoluce Pro základní práce s obrazem, resp. s obrazovou funkcí, v prostředí LabVIEW zde ukážeme využití konvoluce definovanou obecným vztahem (3.3). Budeme aplikovat standardní funkci z nabídky prostředí LabVIEW Convolution.vi, která má dva signálové vstupy, na něž připojujeme obrazovou funkci f a konvoluční jádro (filtr) h. Pro maximální zjednodušení a názornost budeme pracovat s obrazovou funkcí f(x, y) v podobě dvourozměrné matice s hodnotami jasu jednotlivých pixelů, přičemž tuto matici jsme předtím získali např. z kamery či ze souboru obsahujícího uložený obraz. Vlastní algoritmus filtrace vychází ze vztahu pro využití konvoluce pro realizaci hranového filtru s použitím konvolučního jádra h 8 dle vztahu (3.14). Blokový diagram programu (resp. VI virtuálního instrumentu) je uveden na obr. 8.2a. a) hranový filtr b b) doplnění filtru pro vyhlazení Obr. 8.2 Blokový diagram programu hranový filtr Výřez čelního panelu vytvářeného programu je uveden na obr Zde je vlevo znázorněn vstupní obraz, který je do programu vložen ve formě matice o rozměrech pixelu. Uprostřed je potom znázorněn výsledek konvoluční operace obraz se zdůrazněnými hranami, tedy místy změny jasu v obraze. 29 Mathworks, viz 79

96 Obr. 8.3 Výřez čelního panelu programu hranový filtr Vytvořený program (v LabVIEW vytvořený virtuální instrument VI) můžeme dále rozšiřovat a modifikovat. Příkladem je doplnění filtru, kterým budeme provádět vyhlazení, jehož základní metodou je průměrování, kde každému pixelu přiřadíme novou jasovou hodnotu vypočtenou jako průměr hodnot jasu ve zvoleném okolí (např. v 8-okolí), kde filtrem může být např. jednoduchá konvoluční maska h 8 dle vztahu (3.5) průměrující hodnoty pixelů v 8-okolí, kde každá jasová hodnota je průměrována z hodnot zvoleného okolí. V daném 8-okolí je celkem 9 prvků, takže hodnota výsledného jasu každého pixelu se bude skládat s příspěvků 1/9 hodnot jasů okolních pixelů. Někdy je vhodné zvětšit váhu středového pixelu nebo pixelů v jeho okolí. Příkladem je maska podle vztahu (8.1): [ ] ( ) kde hodnota 16 je opět součtem hodnot všech prvků matice h. Tuto masku použijeme v našem příkladu rozšíření programu, jehož výřez je uveden na obr. 8.2b. Výsledný obraz po vyhlazení je potom znázorněn na obr. 8.3 vpravo Využití FPGA a GPU Práce se systémy obsahujícími obvod FPGA (např. CompactRIO, resp. SingleBoardRIO) je poměrně intuitivní a vychází z filozofie jeho struktury. Základy práce se systémy FPGA v prostředí LabVIEW jsou popsány např. v [57]. V systému LabVIEW je třeba mít naistalován modul pro práci s FPGA. Před spuštěním hlavní aplikace je třeba zajistit překlad kódu do obvodu FPGA (tzn. je třeba přeložený kód z programové části zapsat do FPGA). Nástroje FPGA v programovém prostředí LabVIEW obsahují rovněž překladač do jazyka VHDL vytvořený ve spolupráci s firmou Xilinx (jejíž obvody jsou v zařízeních používány). Překlad FPGA kódu může podle složitosti trvat od několika minut až po několik hodin. Na stránkách firmy NI lze nalézt informace pro aplikování obvodů FPGA 30 pro oblast zpracování obrazu. Aplikace využívající obvod GPU (např. s architekturou CUDA) v průmyslových systémech jsou v současné době (květen 2012) v počátcích. Lze však očekávat velmi silný nástup, který je patrný např. ze stránek firmy NI Viz např. příp Viz např. 80

97 8.3 Porovnávání vzorů a tvarů (Pattern Matching) V celé řadě průmyslových aplikací je třeba při sériové výrobě rychle detekovat přítomnost nebo správnou orientaci dílů či výrobků, kontrolovat drobné chyby na výrobku (praskliny, sváry apod.), případně výrobky počítat. Pro tento případ je výhodné použít prostředky nebo algoritmy pro tzv. porovnávání vzorů (angl. Pattern Matching). Obecně jde o proces umožňující identifikaci dat podle jejich obsahu. Při tom je třeba pracovat s databázemi informací symbolického typu, jak je běžné v systémech umělé inteligence nebo v tzv. expertních systémech. Obvykle se pracuje s relativně jednoduchými optickými soustavami, s rozptýleným světlem a objekty jsou detekování bez ohledu na jejich orientaci. V bižuterní oblasti je možné úlohy tohoto typu řešit poměrně snadno s využitím běžných nástrojů a programových řešení. Prostředí LabVIEW obsahuje poměrně velkou sadu nástrojů pro úlohy tohoto typu a výsledky jsou poměrně dobré. Nejvýkonnější jsou aplikace pro počítání výrobků, kde poměrně snadné nasvítit scénu tak, aby optický systém snadno rozlišil jednotlivé BK od sebe. Třebaže by se nástroje této kategorie zdály vhodné pro porovnávání tvarů BK, velké množství odrazných ploch a z toho vyplývajících odlesků a z toho vyplývající nesnadnost objektivně nastavitelného osvětlení tuto úlohu výrazně omezuje (lze aplikovat na výrobky osvětlené tzv. zadním světlem, kdy se neuplatňují odrazové plochy), pro většinu aplikací právě v oblasti posuzování kvality BK tuto metodu prakticky vylučuje. 8.4 Měření rozměrů a tvarů Měření rozměrů a tvarů BK je s ohledem na stále stoupající požadavky na kvalitu a současně snižování výrobních nákladů rozvíjející se oblastí. Nástroje obsažené například v prostředí LabVIEW umožňují řešit řadu úloh za základního předpokladu, kterým je získání kontrastního obrazu měřeného předmětu. Ovšem při měření BK je tento požadavek poměrně nesnadně realizovatelný a s ohledem na malé velikosti měřených objektů přináší další významný problém potřebu odstranění rušivých artefaktů. Významným požadavkem je pak potřeba aplikace rychlých algoritmů s ohledem na vysoký stupeň hromadné výroby a potřeby realizovat tak rychlé měření. Jednou ze zkoumaných metod při hledání algoritmů pro zvýšení efektivity metod měření je hledání linií a kružnic s využitím Houghovy transformace (jak jsme popsali v kapitole 3.2.5). V první úloze budeme ve vstupním obraze hledat přímku s pomocí algoritmu HoughT Line. Pro jednoduchost budeme vstupní obraz (jedná se o šedotónový obraz s osmibitovým rozlišením, kde hodnota 0 odpovídá černé a hodnota 255 bílé barvě pixelu) upravovat prahováním, což samozřejmě nemusí vždy vést k dobrému výsledku. Na obr. 8.4a je uveden vstupní obraz, kterým je pohled na poměrně přírodní texturu: strukturu dřeva. Tento obraz po prahování s prahovou hodnotou T = 30 je na obr. 8.4b. Na obr. 8.4c je pak znázorněna projekce akumulátoru A(φ i, r j ) do roviny (φ, r). Proti obecnému výkladu na obr. 3.7b se počátek souřadného systému nachází vlevo nahoře (osa φ je zde otočena o ). Na obrázku 8.4d je potom znázorněn obraz po prahování s vloženou přímkou nalezenou pomocí aplikace Houghovy transformace (s využitím podkladů autora z článku [58]). 81

98 a) b) nalezená přímka c) d) Obr. 8.4 Příklad aplikace Houghovy transformace pro hledání přímky a) původní vstupní obraz b) obraz po prahování (T = 30) c) projekce akumulátoru A(φ i, r j ) do roviny (φ, r) d) obraz po prahování s vloženou nalezenou přímkou Při řešení v prostředí LabVIEW budeme předpokládat, že vstupní obraz je již diskretizován do šedotónové podoby (obvykle do rozlišení 2 8 = 256 úrovní šedi). Pro jednoduchost a názornost jsme použili místo segmentace jen prahování. Vlastní rozpoznávání v našem případě realizuje algoritmus Houghovy transformace (obr. 8.5). 82

99 rows počet řádků columns počet sloupců obraz (pole M x N) Omega - max. úhel ve stupních (např. 180) nulování akumulátoru inkrementace akumulátoru Obr. 8.5 Algoritmus Houghovy transformace pro hledání linie (HoughT Line) akumulátor A(φ, r) Další úlohou je ve vstupním obraze nalézt kružnici daného poloměru s využitím algoritmu Houghovy transformace pro hledání kružnice (algoritmus HoughT Circle). Opět budeme pracovat se vstupním obrazem s osmibitovým šedotónovým rozlišením, který budeme segmentovat prahováním. Převedení algoritmu Houghovy transformace pro hledání kružnice HoughT Circle o daném poloměru R do prostředí LabVIEW v podobě výřezu z blokového diagramu (bez vstupního zpracování obrazu prahováním) je uvedena na obr rows počet řádků columns počet sloupců obraz (pole M x N) R poloměr hledané kružnice nulování akumulátoru inkrementace akumulátoru akumulátor A(a, b) Obr. 8.6 Algoritmus Houghovy transformace pro hledání kružnice (Hough T Circle) 83

100 Pro jednoduché otestování funkce použijeme jako vstupní obraz výřez pohledu na spirálový objekt na obr. 8.7a (vnímavý čtenář si jistě všimne podobnost s pozadím obrázku 8.3). Rozměry obrázku jsou pixelů. Na obr. 8.7b je uveden prahovaný obraz s prahovou hodnotou T = 17 a na obr. 8.7c je potom výsledný obraz s vloženou nalezenou kružnicí (se zvolenou hodnotou R = 60). nalezená kružnice R = 60 a) b) c) Obr. 8.7 Výsledek aplikace algoritmu Houghovy transformace pro hledání kružnice a) původní vstupní obraz b) obraz po prahování (T = 17) c) obraz po prahování s nalezenou kružnicí (R = 60) Je patrné, že algoritmus Houghovy transformace pracuje s logickými funkcemi, jejichž vykonání je poměrně rychlé. Časově náročnější pak bude vlastní zpracování matice s obrazem. Pro měření rozměrů a tvarů v oblasti měření a hodnocení vlastností bižuterie se samozřejmě používají rovněž další algoritmy využívající standardních funkcí programových nástrojů (např. v prostředí LabVIEW apod.). 8.5 Aplikace fuzzy logiky V této kapitole se budeme věnovat praktickým aplikacím a prezentaci algoritmů s využitím fuzzy logiky při zpracování obrazu v prostředí LabVIEW, které jsme teoreticky popsali v kapitole 4 a které byly navrženy právě pro účely této práce Aplikace fuzzy pravidel IF THEN Naším prvním úkolem bude realizovat algoritmus hledání hrany s využitím fuzzy logiky pomocí pravidel IF THEN popsaný v kapitole jako algoritmus Fuzzy IfThen Edge. Na obr. A.1 (v Příloze) je zobrazen blokový diagram zkušebního programu, který realizuje tento algoritmus. Připomeňme, že hlavní část algoritmu tvoří realizace čtyř pravidel IF THEN, která jsme podrobně popsali na obr

101 a) b) c) Obr. 8.8 Příklad zpracování obrazu algoritmem Fuzzy IfThen Edge a) vstupní obrázek b) výstupní obrázek s nalezenými hranovými body c) výstupní obrázek s potlačeným artefaktem Algoritmus nyní odzkoušíme na vstupním obrazu z obr. 8.8a. Jedná se konkrétně o obraz BK natmeleného na nosné tmelce aparátu s použitím zadního osvětlovače. Na obrazu BK si všimněme dvou skutečností: 1) nad obrys BK vystupuje jistý artefakt, tedy rušivý objekt (zřejmě vlas apod.), jehož přítomnost může narušit další zpracování obrazové informace, 2) těsně pod rovinou lemu BK lze (do jisté míry) vytušit průchod paprsků osvětlovače do kamery, takže v tomto místě je světlejší bod. Při spuštění programu realizujícího algoritmus Fuzzy IfThen Edge můžeme měnit parametry, tedy hodnoty bílá (White), resp. černá (Black) a pozorovat změny výstupního obrazu. Například pro hodnoty černá = 160, bílá = 50 získáme výstupní obrázek znázorněný na obr. 8.8b s nalezenými hranovými body. Povšimněme si, že algoritmus nalezne i změnu v hodnotě jasu uprostřed BK. Při tomto nastavení ovšem zůstává ve výstupním obrazu artefakt (tzn. rušivý objekt). Při jiném nastavení hodnot černá = 120, bílá = 13 získáme výstupní obrázek znázorněný na obr. 8.8c opět s nalezenými hranovými body, ovšem s potlačeným artefaktem. Této možnosti lze samozřejmě využít při dalším zpracování pro měření geometrie BK. Získané obrazy jsou následně podrobeny další analýze. Na obr. 8.9 je znázorněn jeden z prvních kroků následného zpracování hledání zlomových bodů v obraze (tyto body jsou znázorněny červenou kružnicí). Z porovnání obr. 8.9a (analýza obrázku s artefaktem obr. 8.8b) a obr. 8.9b (analýza obrázku s potlačeným artefaktem obr. 8.8c) je zřejmé, že pro urychlení dalšího zpracování je výhodné odstranění artefaktů z obrazu snímaného objektu před zpracováním. a) obrázek s artefaktem b) obrázek s potlačeným artefaktem Obr. 8.9 Příklad dalšího zpracování obrazu hledání zlomových bodů 85

102 Poznámka: Je patrné, že vstupní obrazy pro algoritmus hledání zlomových bodů se mírně liší, protože algoritmus našel v obou případech body poněkud jinde. Jistě bude zajímavé a v praxi nanejvýš účelné doplnit množinu pravidel IF THEN o další upřesňující pravidla, s jejichž pomocí by hledání hran bylo přesnější a účinnější. Množinu původních čtyř pravidel IF THEN z obr můžeme doplnit například o další čtyři pravidla podle obr Pravidlo 5: JESTLIŽE { f(i-1, j-1) & f(i, j-1) & f(i+1, j-1) & f(i-1, j)} jsou černé & JESTLIŽE { f(i-1, j) & f(i, j) & f(i+1, j) } jsou bílé & JESTLIŽE { f(i-1, j+1) & f(i, j+1) & f(i+1, j+1) } jsou bílé POTOM f(i, j) je hranový bod Pravidlo 6: JESTLIŽE { f(i-1, j-1) & f(i, j-1) & f(i+1, j-1) & f(i+1, j)} jsou černé & JESTLIŽE { f(i-1, j) & f(i, j) & f(i+1, j) } jsou bílé & JESTLIŽE { f(i-1, j+1) & f(i, j+1) & f(i+1, j+1) } jsou bílé POTOM f(i, j) je hranový bod Pravidlo 7: JESTLIŽE { f(i-1, j-1) & f(i, j-1) & f(i+1, j-1) } jsou bílé & JESTLIŽE { f(i-1, j) & f(i, j) & f(i+1, j) } jsou bílé & JESTLIŽE { f(i-1, j+1) & f(i, j+1) & f(i+1, j+1) & f(i-1, j)} jsou černé, POTOM f(i, j) je hranový bod Pravidlo 8: JESTLIŽE { f(i-1, j-1) & f(i, j-1) & f(i+1, j-1) } jsou bílé & JESTLIŽE { f(i-1, j) & f(i, j) & f(i+1, j) } jsou bílé & JESTLIŽE { f(i-1, j+1) & f(i, j+1) & f(i+1, j+1) & f(i+1, j)} jsou černé, POTOM f(i, j) je hranový bod Obr Příklad doplnění množiny fuzzy pravidel IF THEN (z obr. 4.11) Tato pravidla pak můžeme doplnit do původního algoritmu a vyzkoušet zlepšení účinnosti metody. Velkou výhodou této fuzzy metodiky je využití logických funkcí a dosažení tak vysoké rychlosti zpracování. Výhodou uvedeného algoritmu je jeho vysoká výpočetní rychlost, neboť program pracuje pouze s jednoduchými logickými operacemi. Např. pro obraz o rozměru pixelů je třeba provést = logických operací, kterým ovšem předchází načtení příslušných hodnot jasu každého pixelu. Neprovádí se však žádné iterace, takže výpočetní rychlost nalezení hran pro všechny obrazy stejné velikosti bude vždy (přibližně) stejná. Poznámka: Na počítači s procesorem Intel Core2 Duo T5870, 2 GHz s pamětí 4 GB byla indikována pro obraz o rozměru pixelů doba výpočtu algoritmu Fuzzy IfThen Edge kolem 18 ms Algoritmy fuzzy transformace (F-transformace) Nejprve se budeme věnovat aplikování algoritmů využívajících fuzzy transformaci (algoritmus eft pro F-transformaci a algoritmus edft pro zpětnou F-transformaci), které jsme podrobně popsali v kapitole Oba algoritmy byly vytvořeny v prostředí LabVIEW v podobě SubVI (tedy jako podprogramy ) a jsou tedy jakými stavebními kameny pro sestavení konkrétních aplikačních programů. Na obr jsou jako funkční bloky znázorněny SubVI pro F-transformaci eft.vi (na obr vlevo) a SubVI pro zpětnou F-transformaci edft.vi (na obr vpravo). 86

103 Vstupem pro program realizující F-transformaci eft.vi je obrazové pole f (vstup označený InArray), jeho rozměry N M (vstupy označené N, resp. M) a hodnoty velikosti kroků fuzzy rozkladu h A a h B (vstupy označené ha, resp. hb). Výstupem je pak pole s transformovaným obrazovým polem F (výstup označený FzArray) a jeho rozměry n m (výstupy označené n, resp. m). Realizace tohoto SubVI v prostředí LabVIEW je vyobrazena na obr. A.2 v Příloze. pole f(n, M) pole F(n, m) Obr Funkční bloky (SubVI) eft.vi (vlevo) a edft.vi (vpravo) pole f nm (N, M) Pro zpětnou F-transformaci (tzv. defuzzifikaci) byl vytvořen algoritmus edft.vi (funkční blok je na obr vpravo). Vstupem tohoto programu je obrazové pole F (vstup označený InFuzzyArray), jeho rozměry n m (vstupy označené n, resp. m) a hodnoty velikosti kroků fuzzy rozkladu h A a h B (vstupy označené ha, resp. hb). Výstupem je pak transformované pole f nm (výstup označený DeFuzzyArray) a jeho rozměry N M (výstupy označené N, resp. M). Realizace tohoto SubVI v prostředí LabVIEW je vyobrazena na obr. A.3 v Příloze. Nyní můžeme z vytvořených komponent sestavit konkrétní podobu algoritmu pro detekci hran FTransform EDA využívající F-transformaci, který jsme uvedli a podrobněji popsali v kapitole Tento algoritmus pro detekci hran můžeme znázornit v podobě blokového schématu podle obr f FT F DFT e f nm - prahování e T Vstupní obraz Obr Blokové schéma algoritmu pro detekci hran FTransform EDA Získaný obraz Na vstupní obraz (obrazovou funkci) f je aplikována diskrétní F-transformace (FT) s definovaným fuzzy rozkladem n m, výstupem je fuzzifikovaný obraz F[f]. Na tento obraz potom aplikujeme zpětnou F-transformaci (DFT) a získáme tak defuzzifikovaný obraz f nm. Nyní podle popsané metody hledání hranových bodů, tedy míst s výraznými jasovými změnami, vypočteme rozdílovou (chybovou) funkci e f f nm. S tímto obrazem, který již nese informaci o hranových bodech, můžeme dále pracovat, měnit jeho jasové úrovně, prahovat jej apod. s cílem získat co nejlepší výsledek. V prostředí LabVIEW bude realizace algoritmu FTransform EDA díky grafickému programování dosti podobná původnímu blokovému diagramu viz obr. A.4 v Příloze. Po načtení vstupního obrazu se provede jeho F-transformace a následně zpětná F-transformace. V další části se provede výpočet chybové funkce e f f nm. Protože hodnoty rozdílu jsou poměrně malé (a špatně by se s tímto obrazem pracovalo), v následující části se provede zvýšení jasové hodnoty přepočtením hodnot 87

104 funkce e na plný rozsah jasových hodnot v intervalu <0, 255>, vznikne tak funkce e r. Následuje jednoduchý prahovací algoritmus, jehož výsledkem je prahovaný obraz e rt. Na obr je uveden příklad aplikace popsaného Algoritmu FTransform EDA na obraz bižuterního kamene (BK). Původní obraz objektu je na obr. 8.13a. Je patrné, že objekty tohoto typu není snadné snímat běžným optickým systémem, protože v daném nasvícení jsou patrné odlesky různých ploch v průhledu předních stěn. Výsledek zpracování získané obrazové funkce pomocí F-transformace s krokem rozkladu h A = h B = 3 je uveden na obr. 8.13b. Obraz po zpětné F-transformaci je na obr. 8.13c. Absolutní hodnota rozdílu jasových hodnot původního obrazu a obrazu zpětné F-transformace (tzn. chybová funkce e) po přepočtu na plný rozsah jasového intervalu je jako funkce e r zobrazena na obr. 8.13d. Výsledkem je pak prahovaná funkce e rt (s prahovací hodnotou T = 50) na obr. 8.13e. a) Původní obraz f b) F-transformace F[f], h A =h B = 3 c) Zpětná F-transformace f nm d) Chybová funkce e r e) Prahovaná funkce e rt (T = 50) Obr Aplikace algoritmu FTransform EDA na bižuterní kámen Je patrné, že výsledný obraz po prahování lze již podrobit dalším (standardním) algoritmům pro měření geometrie. Z ukázky aplikace algoritmů pro hledání hranových bodů je patrné, že je reálné poměrně spolehlivě (samozřejmě při dobrém osvětlení snímané scény) při analýze identifikovat hranové body, případně chybějící hranové body doplnit (všimněme si na výsledném obr. 8.13e chybí v pravé části u špičky část hrany, z charakteristických vlastností BK však lze chybějící část snadno doplnit). Získáme tak poměrně celistvý obraz o měřeném objektu a jeho vnějších geometrických vlastnostech. Poznámka: Na počítači s procesorem Intel Core2 Duo T5870, 2 GHz s pamětí 4 GB byla pro obraz o rozměru pixelů indikována doba výpočtu algoritmu eft cca ms, pro algoritmus edft cca ms. 88

105 8.6 Obrazová fúze Z empirických úvah a úvodních zkoušek je reálné očekávat, že využití obrazové fúze může být jednou z metod s vysokou vypovídací schopností pro hodnocení vad BK. Bude ovšem velmi důležité navrhnout vhodnou optickou soustavu a zejména pak vhodné osvětlení scény. Dalším významným krokem je potom aplikace takových algoritmů, jejichž pomocí získáme dostatečné informace popisující kvalitativní parametry hodnocených BK. A v posledním kroku pak získané informace použijeme pro jednoznačné vyjádření hodnotícího výroku. Je vhodné na tomto místě připomenout, že vývoj tohoto směru přístupu k dané úloze je na počátku a že dosažené výsledky mohou posloužit k dalšímu (poměrně náročnému a časově střednědobému) vývoji Optická soustava pro obrazovou fúzi Pro identifikaci vad BK (uvedených v kapitole 8.1) bude třeba navrhnout optickou soustavu tak, aby identifikovaná vada byla patrná (viditelná) v některém z pohledů nebo při některém z nasvícení scény. Ze zkušenosti víme, že z důvodů mnohočetných odlesků obvykle jedno nasvícení objektu nevede ke snímku, na němž by byla vada patrná nebo jednoznačně identifikovatelná. Odtud je pak jen krůček k úvaze o aplikaci obrazové fúze, tzn. k myšlence nasnímat jeden konkrétní objekt (tedy jeden BK) vícekrát při změně parametrů optické soustavy. Na obr je zobrazena modelová optická soustava, s jejíž pomocí byla vytvořena většina zkoumaných obrázků BK. Obr Modelová optická soustava (ELCOM) Výchozím záměrem pro vytvoření modelové optické soustavy byla možnost vytvořit snímky BK v různých optických podmínkách. První idea spočívá v nasnímání jednoho objektu s různými způsoby zaostření, v případě BK například na jeho okraj a vnitřní část. Tento případ byl použit při nasnímání scény, kterou jsme uvedli na obr Obrázky byly nasnímány optickou soustavou s vertikálním souosým osvětlovačem. Tento konkrétní BK má na hranách (obr. 5.3a) a na špičce (obr. 5.3b) patrné vady zřejmě způsobené mechanickým poškozením. Při snímání malých objektů, kterými BK jsou, hraje velkou roli hloubka ostrosti optické soustavy, což znamená, že obvykle nelze nalézt všechny vady v BK v jednom pohledu. Je tedy třeba získat pohledů více, provést jejich obrazovou fúzi a s fúzovaným obrazem potom pracovat dále. 89

106 Druhá idea počítá s vytvořením několika snímků jednoho objektu s různým nasvícením z několika směrů. Na obr je naznačena idea vytvoření optické soustavy pro aplikování obrazové fúze pro hodnocení vad BK. Optická soustava je tvořena pevně uspořádanou soustavou: měřený objekt snímací soustava a osvětlovač je realizován tak, aby mohl pro každý snímek hodnoceného objektu vytvořit jeho jiné nasvícení (obr. 8.15a, resp. 8.15b). a) zkoumaný BK osvětlovač kamera b) Obr Idea nasvícení BK pro aplikaci obrazové fúze V jednom případě jsme zkusili s osvětlovacím tělesem pohybovat pomocí jednoduchého manipulátoru (rukou robota), později jsme zvolili elektronické řešení s kruhovým osvětlovačem s elektronicky spínanými jednotlivými částmi sestavenými z LED Aplikace algoritmu pro obrazovou fúzi V této části vytvoříme na základě dosud popsaných postupů zkušební algoritmus pro obrazovou fúzi, který dále použijeme pro zkoumání konkrétních obrázků nasnímaných BK. Ideové blokové schéma navrženého algoritmu je naznačeno na obr Vstupem do tohoto zkušebního algoritmu ImF_Edge jsou dva obrazy fa a fb, které podrobíme obrazové fúzi podle algoritmu ImF uvedeného a popsaného v kapitole 5.2. Pro další postup použijeme dříve popsanou rozhodovací podmínku pro chybovou funkci. Ve výsledném fúzovaném obrazu (na obr označený jako f2) následně nalezneme hrany algoritmem Fuzzy IfThen Edge popsaným v kapitole (viz též obr. A.1 v Příloze). Získaný obraz f2t budeme potom zkoumat nejprve vizuálně. 90

107 if e A > e B then f2 fa2; else f2 fb2 fa Vstupní obrazy fb FT/ DFT FT/ DFT - FT/ DFT - FT/ DFT e A e B fa2 fb2 > T f2? F ImF bílá černá IfThen Edge f2t Získaný obraz Obr Idea algoritmu pro obrazovou fúzi s nalezením hran ImF_Edge Nejprve budeme zkoumat dva obrazy BK s kvalitativním hodnocením dobrý. Předpokládejme, že v první úloze máme k dispozici dva obrazy jednoho BK umístěného na černé podložce a položeného na tabulku s různým zaostřením. Tyto dva obrazy podrobíme obrazové fúzi s pomocí navrženého algoritmu, přičemž krok rozkladu F-transformace zvolíme nejprve h A = h B = h = 2, následně pak h = 5. Na obr. 8.17a je vstupní obraz, v algoritmu označený jako fa, se zaostřením na okraj kamene (označíme jako O) a na obr. 8.17b je vstupní obraz, v algoritmu označený jako fb, se zaostřením na špičku kamene (označíme jako Š). a) BK dobrý zaostřeno na okraj (O) b) BK dobrý zaostřeno na špičku (Š) Obr Vstupní obrazy BK s hodnocením dobrý s různým zaostřením Výsledkem obrazové fúze (s krokem rozkladu F-transformace h = 2) a následného nalezení hran v získaném obraze (s nastavením hodnot mezí pro fuzzy prahování černá = 50 a bílá = 20) je výsledný obr. 8.18a (označený jako fúze O_Š). Zaměníme-li vstupní obrázky (jako fa použijeme obraz O a jako fb použijeme obraz Š), výsledek je obr. 8.18b (označený jako fúze Š_O). Je na první pohled patrné, že oba výsledky jsou prakticky identické. Z pohledu na obrazovou fúzi dvou různých obrazů (ovšem jde o pohled na stejný zkoumaný objekt) můžeme říci, že výsledkem je informace o výrazných útvarech na obrazu objektu. Jak si ukážeme dále, této vlastnosti lze využít pro hodnocení vad. Poznámka: Na počítači s procesorem Intel Core2 Duo T5870, 2 GHz s pamětí 4 GB byla pro analýzu dvou obrazů o rozměrech pixelů indikována doba výpočtu algoritmu cca ms. Nyní použijeme na místě vstupních obrazů vždy dva shodné a budeme zkoumat výsledek. Nejprve budeme aplikovat jako fa i fb obraz O, výsledkem bude obr. 8.18c (označený jako fúze O_O), budeme-li aplikovat jako fa i fb obraz Š, výsledkem bude obr. 8.18d (označený jako fúze Š_Š). Je patrné, 91

108 že proti obrazové fúzi dvou různých obrazů zdůrazní obrazová fúze dvou shodných obrazů hlavní útvary ve zkoumaném objektu. Tím útvarem v daném pohledu ovšem může být i světelný odlesk, který nám tak znehodnocuje posuzování objektu. a) Fúze obrazů O_Š (h = 2) b) Fúze obrazů Š_O (h = 2) c) Fúze obrazů O_O (h = 2) d) Fúze obrazů Š_Š (h = 2) Obr Výsledky obrazové fúze BK z obr pro h = 2 Nyní provedeme další analýzu s využitím metodiky obrazové fúze se stejnými vstupními obrazy (podle obr. 8.17), s krokem rozkladu F-transformace h = 5 a následným nalezením hran v obraze. Výsledek obrazové fúze vstupních obrazů označený jako fúze O_Š je zobrazen na obr. 8.19a, výsledek obrazové fúze vstupních obrazů označený jako fúze Š_O je zobrazen na obr. 8.19b. Fúze dvou shodných obrazů je pak zobrazena na obr. 8.19c (fúze O_O) a na obr. 8.19d (fúze Š_Š). 92

109 a) Fúze obrazů O_Š (h = 5) b) Fúze obrazů Š_O (h = 5) c) Fúze obrazů O_O (h = 5) d) Fúze obrazů Š_Š (h = 5) Obr Výsledky obrazové fúze BK z obr pro h = 5 Z podrobnějšího posouzení výsledných obrazů obrazové fúze aplikované na obrazy BK můžeme vyslovit dva výroky k dalšímu postupu při hodnocení: a) Velikost kroku rozkladu F-transformace nepřináší zásadní změnu výsledku (pro dosažení co nejrychlejšího výsledku lze zvolit krok fuzzy rozkladu h = 2), b) Na pořadí vstupních obrazů nezáleží. Při druhé úloze proveďme další analýzu dvou obrazů BK s kvalitativním hodnocením dobrý, avšak tentokrát předpokládejme, že máme k dispozici dva obrazy jednoho BK umístěného na černé podložce postaveného na tabulku (zaostřené na špičku) s různým nasvícením. Při výpočtu nyní zvolíme krok rozkladu F-transformace h = 2. Na obr. 8.20a je vstupní obrázek BK nasvícený variantou nasvícení 1 (světlo zleva nahoře) a na obr. 8.20b je vstupní obrázek s variantou nasvícení 3 (světlo zleva dole). 93

110 a) BK dobrý nasvícení 1 b) BK dobrý nasvícení 3" Obr Vstupní obrazy BK s hodnocením dobrý s různým nasvícením V tomto případě analýzy zkoumaného objektu s různým nasvícením lze pozorovat výsledek obrazové fúze dvou různých vstupních obrazů na obr. 8.21a a na obr. 8.21b pak výsledek obrazové fúze dvou shodných vstupních obrazů (v tomto případě jde o fúzi dvou shodných vstupních obrazů s nasvícením 1 ). Z výsledků lze znovu potvrdit výroky formulované výše. a) Fúze obrazů 1"_ 3 (h = 2) b) Fúze obrazů 1"_ 1 (h = 2) Obr Výsledky obrazové fúze BK z obr Nyní máme dost informací, abychom mohli zkoumat obrazy BK s některými vadami (některé z nich jsme vyjmenovali v kapitole 8.1). Ve třetí úloze budeme tedy zkoumat dva obrazy jednoho BK umístěného na černé podložce postaveného na tabulku s kvalitativním hodnocením poškrábaná tabulka. Cílem bude získat dostatek informací pro následné hodnocení BK s tímto kvalitativním hodnocením (případně i s jiným). Na obr jsou uvedeny vstupní obrazy pro stanovenou úlohu: na obr 8.22a je vstupní obraz se zaostřením na okraj kamene (označený O) a na obr. 8.22b je vstupní obrázek se zaostřením na špičku kamene (označený Š). 94

111 a) BK s poškrábanou tabulkou - zaostřeno na b) BK s poškrábanou tabulkou - zaostřeno na okraj (O) špičku (Š) Obr Vstupní obrazy BK s hodnocením poškrábaná tabulka s různým zaostřením Tyto vstupní obrazy nyní podrobíme algoritmu obrazové fúze s detektorem hran ImF_Edge podle obr Výsledkem obrazové fúze (s krokem rozkladu F-transformace h = 2) a následného nalezení hran v obraze (s nastavením hodnot mezí pro fuzzy prahování černá = 50 a bílá = 20) je výsledek na obr. 8.23a (označený jako fúze O_Š). a) Fúze obrazů O_Š (h = 2) b) Fúze obrazů O_O (h = 2) Obr Výsledky obrazové fúze BK z obr pro h=2 Při obrazové fúzi dvou shodných vstupních obrazů (v našem případě jsme použili jako vstupní obraz O) dostaneme výsledek na obr. 8.23b (označený jako fúze O_O). Na první pohled je zřejmé, že rozdíl od výsledků z obr. 8.23a není příliš velký. Další výsledky zpracování nasnímaných obrazů jsou uvedeny na obr. B.1 a na obr. B.2 v Příloze. Na obr. B.1 v Příloze je pod označením A) vyobrazena analýza obrazů BK s kvalitativní vlastností dobrý, v tomto případě jde o obrazy s různým zostřením (na okraj a na špičku). Pod označením B) je provedena analýza BK s kvalitativní vlastností se záprasky ve dvou různých nasvíceních a pod označením C) je znázorněna analýza BK s kvalitativní vlastností s nedoleštěným spodkem s různým zaostřením. Porovnáním získaných výsledků obrazové fúze lze tak dojít k dalším dvěma výrokům: c) BK kvalifikovaný jako dobrý lze poměrně dobře identifikovat z velikosti ploch v získaném obraze nalezené plochy (v porovnání s plochou BK) jsou malé, d) BK kvalifikovaný jako s vadou má nalezené plochy velké. Při hodnocení většího počtu BK při současné znalosti jejich vad lze s těmito výroky vystačit. Problematickým však může být zautomatizování hodnocení v případě postupné náhrady subjektivního 95

112 hodnocení. Lze totiž zcela jistě nalézt meze tohoto dosud intuitivního hodnocení. Příkladem je analýza jistého BK s jednou kvalitativní vadou poškrábaný spodek, jak je možno spatřit na obr. B.2 v Příloze. Zde je provedena analýza BK s různým nasvícením (označeno A), s různým zaostřením (označeno B), resp. v jiné volbě zaostření (označeno C). Je patrné, že získané obrazy při znalosti kvalitativního hodnocení lze pro další analýzu použít, avšak pro objektivní hodnocení nám zřejmě tyto informace nebudou stačit a budeme muset do celkové metodiky zapojit ještě další způsoby. Je tedy zřejmé, že je zde prostor pro další vývoj Další zpracování získaných výsledků Naším cílem bylo navrhnout využití metody obrazové fúze pro hodnocení vad BK. Vizuálním pozorováním dosažených výsledků se zdá, že zvolená metoda má potenciál tuto úlohu naplnit. Je však zřejmé, že pro průmyslovou aplikaci bude třeba získané výsledky ještě podrobit dalšímu vývoji a postupu, který vyloučí možné chyby a zvýší účinnost a objektivitu pro automatizaci měření a hodnocení. Pro výchozí posouzení možného dalšího vývoje směřujícího k automatizaci kvalitativního hodnocení BK doplníme algoritmus obrazové fúze s hledáním hran ImF_Edge (podle obr. 8.16) o následnou funkci detekce objektů v obraze. Můžeme k tomu použít například (z nabídky funkcí IMAQ v modulu NI Vision Development Module) funkci IMAQ Count Objects 2 (viz obr. 8.24), která vyhledá, počítá a změří objekty v obraze v pravoúhlých oblastech. Parametry těchto oblastí lze nastavit (Settings). Výstupem z funkce je obraz s doplněnými nalezenými oblastmi (Image Out) a počet nalezených oblastí (Number of Objects). Obr Funkce IMAQ Count Objects 2 Vstup Image funkce IMAQ Count Objects 2 připojíme tedy na výstup f2t algoritmu ImF_Edge (podle obr. 8.16) a na výstup Image Out můžeme vložit (s pomocí volby Create) indikátor, který zobrazí výsledný obraz s nalezenými oblastmi. Podobně můžeme připojit na výstup Number of Objects indikátor, který bude zobrazovat počet nalezených oblastí. Z předchozí analýzy víme, že pro vstupní obrazy obr bude výsledkem obrazová fúze (s krokem rozkladu F-transformace h = 2) a následného nalezení hran obr. 8.18a. Vyhodnocení pomocí funkce IMAQ Count Objects 2 pro tento BK s hodnocením dobrý je potom uvedeno na obr. 8.25a. Je patrné, že funkce IMAQ Count Objects 2 (při určitém výchozím nastavení parametrů hledání objektů na vstupu Settings) detekovala určité množství (v našem případě konkrétně 42) objektů, které splňují nastavené parametry. Většina objektů je malých, jeden z nich (objekt č. 5) je ovšem větší (jde o objekt v levém horním rohu). Zkouškami lze parametry detekce objektů optimalizovat pro danou úlohu. Nyní provedeme pokusnou analýzu obrazu BK s kvalitativní vadou poškrábaná tabulka podle obr Výsledná obrazová fúze a následné nalezení hran je uvedeno na obr. 8.23a. Vyhodnocení (detekce objektů) pomocí funkce IMAQ Count Objects 2 pro tento BK s vadou s výchozím nastavením parametrů je uvedeno na obr. 8.25b. 96

113 a) Detekce objektů - BK dobrý (obr. 8.18a) b) Detekce objektů - BK s vadou (obr. 8.23a) Obr Výsledky detekce objektů na obrazech BK získaných z obrazové fúze V tomto případě je patrné, že počet detekovaných objektů je významně větší a celkový počet větších objektů je rovněž větší. Lze tedy formulovat výrok: pomocí metodiky obrazové fúze lze (při vhodném nastavení parametrů) rozlišit BK dobré a s kvalitativní vadou. Bude ovšem třeba hodnotící systém vhodně naučit rozpoznávat hranici mezi BK dobrým a vadným. K naznačení cesty vedoucí k automatizaci hodnocení provedeme analýzu několika BK s popsanými vlastnostmi (dobré i s vadou) pomocí výše popsané metody. Zkoumané BK nasnímáme vhodnou optickou soustavou (v našem případě podle obr. 8.14) tak, abychom od každého vzorku získali alespoň 2 snímky. Získané obrazy pak podrobíme zkušební metodě založené na aplikování obrazové fúze popsanému algoritmu ImF_Edge doplněnému o funkci IMAQ Count Objects 2 s nastavením parametrů podle obr Výsledky obrazové fúze nasnímaných BK jsou uvedeny na obr. B.3 v Příloze. Pro každý výsledný obraz vytvořený z obrazové fúze a následným zpracováním získáme dvě výstupní hodnoty: počet nalezených (černých) objektů a počet (černých) pixelů v obraze. Výsledky zpracujeme do tab. 8.1: Tab. 8.1 Popis hodnocených objektů (BK) Obrazová fúze BK s popisem Počet objektů Počet pixelů Dobrý (s různým zaostřením) A Dobrý (zaostřeno na okraj) A Dobrý (zaostřeno na špičku) A Nedoleštěný spodek B Poškrábaný spodek C Poškrábaná tabulka D Poškrábaná tabulka (zaostřeno na okraj) E Poškrábaná tabulka (zaostřeno na špičku) F Záprasky G

114 Obr Nastavení parametrů pro funkci IMAQ Count Objects 2 Získané hodnoty nyní zobrazíme pro lepší názornost pomocí grafů. Na obr jsou znázorněny hodnoty jednotlivých počtu nalezených objektů ve výsledné obrazové fúzi jednotlivých vstupních obrazů BK. Nastavená hranice A1 A2 A3 B C D E F G dobrý vadný BK bez vad BK s vadami Obr Grafické znázornění získaných hodnot počet objektů Je patrné, že hodnoty počtu nalezených objektů, podle kterých bychom mohli s dostatečnou spolehlivosti rozlišit BK dobré od BK s určitou vadou, jsou však velmi blízké a stanovení bezpečné hranice mezi hodnotami bude velmi problematické. Zajímavějším a velmi nadějným se pak jeví porovnání hodnot počet pixelů, tedy počtu černých obrazových bodů v obrazu výsledné obrazové fúze zpracované algoritmem ImF_Edge, jak je znázorněno na obr Rozdíl mezi obrazovou fúzí BK s popisem dobrý a BK s vadou je výrazný, že hranici lze stanovit poměrně snadně. 98

115 Nastavená hranice A1 A2 A3 B C D E F G dobrý vadný BK bez vad BK s vadami Obr Grafické znázornění získaných hodnot počet pixelů Z výše uvedeného příkladu je zřejmé, že dalším zkoumáním a ověřením na větším počtu reálných vzorků bude možno vytvořit základ algoritmu pro objektivní třídění BK na základě jejich kvalitativních parametrů. 8.7 Shrnutí a návrh dalšího postupu Cílem této části bylo na základě studia metod zpracování obrazu a zejména pak využitím metod obrazové fúze přinést praktické metody směřující k zefektivnění operací třídění při výrobě BK a cílově tak zvýšit jejich kvalitu. Pro praktické aplikování jsme zvolili programové prostředí LabVIEW. Proti původnímu záměru aplikovat technické prostředky (např. FPGA) je popsáno směřování dalšího vývoje v této oblasti zpracování obrazu s využitím grafických procesorů GPU. V další části jsou prezentovány ukázky možné aplikace Houghovy transformace pro hledání linií a kružnic v obraze, je zde navržen algoritmus pro hledání hran s využitím fuzzy logiky založené na aplikaci pravidel IF THEN. Hlavním těžištěm této části práce je studium a návrh efektivních algoritmů pro dopřednou a zpětnou F- transformaci, které jsou následně aplikovány v rozsáhlejší části využívající metody obrazové fúze. Aplikováním této metody je navržen základní algoritmus pro možné objektivní hodnocení kvalitativních parametrů BK. Lze předpokládat, že další vývoj bude směřovat do oblasti optimalizace metody hodnocení vad a zcela jistě bude snahou jednotlivé vady rozlišovat. Hlavním cílem je pak postupné nahrazení subjektivního lidského činitele při výrobních postupech jeho automatizací a objektivizací. 99

116 100

117 Závěr Hlavním cílem práce je návrh a diskuse metodik a řešení zpracování obrazových informací v oblasti výroby bižuterních kamenů, zejména ve fázi hodnocení jejich kvalitativních opticko-estetických vlastností. K tomuto účelu jsou navrženy a vysvětleny původní algoritmy a provedena jejich aplikace na příkladech obrazů konkrétních bižuterních kamenů nasnímaných optickou soustavou. Jestliže doposud byla většina aplikací využívajících rozpoznávání obrazových informací využívána pro úlohy měření a třídění podle rozměrů, tedy úlohy kvantitativního hodnocení, metody a postupy naznačené a popsané v práci dovolují tak postupně nahrazovat subjektivní metody pro kvalitativní hodnocení vad vyráběných kamenů metodami objektivními s cílem eliminovat nestabilní lidský činitel. V této práci jsou též stručně naznačeny hlavní směry využití prostředků, které nabízí programové prostředí LabVIEW s využitím dalších poznatků a metod, zejména pak pro časově náročné úlohy v průmyslu výroby bižuterních kamenů. Vývojové tendence ukazují, že bude vhodné úlohy hodnocení kvalitativních vlastností rozdělit jak do oblasti programového řešení (vhodná konfigurace počítače a řídicího automatu), tak do oblasti technického řešení (FPGA, GPU) či nových směrů zvýšení výpočetní rychlosti (architektura CUDA). Velký prostor je v práci věnován návrhu a diskusi algoritmů pro aplikování metodiky obrazové fúze s využitím fuzzy transformace. V práci je proto nejprve provedena diskuse a návrh původních algoritmů fuzzy transformace pro aproximaci obrazové funkce, kterých je potom následně využito v kapitole o metodách zpracování několika obrazů jednoho zkoumaného předmětu s využití obrazové fúze s cílem hodnocení kvalitativních opticko-estetických vlastností zkoumaných bižuterních kamenů. Za hlavní přínos disertační práce lze považovat návrh, diskusi a prezentaci původních algoritmů pro vytvoření základních výpočetních postupů umožňujících sestavit systém hodnocení optickoestetických vad bižuterních kamenů s využitím obrazové fúze. Tato metodika nebyla dosud v této oblasti používána a na základě dosavadních výsledků lze očekávat její další rozvoj a cílově pak i její aplikování při řešení konkrétních úloh ve výrobních a povýrobních etapách v bižuterním průmyslu. Přínosem práce je představení některých nových metod a algoritmů umožňujících kvalitativně hodnotit některé důležité vlastnosti výrobků bižuterních kamenů. Navržené algoritmy lze po doplnění nebo rozšíření implementovat do budovaného průmyslového systému, který umožní automatizovat a zefektivnit objektivní postupy hodnocení. 101

118 102

119 Rejstřík A aplikace fuzzy logiky, 84 aproximace funkce, 34 artefakt, 85 B bižuterní kameny, 11 BK, 3, 4, 11, 12, 13, 29, 55, 56, 57, 61, 69, 70, 74, 75, 76, 77, 78, 81, 85, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 111 C Camera Link, 74 CompactRIO, 3, 10, 64, 65, 80 CUDA, 7, 65, 80, 101 Č časovou náročností, 43 D defuzzifikace, 45 DFT, 22 diskrétní kosinová transformace, 22 E expertní systémy, 81 F FFT, 22 FireWire, 74 F-transformace, 34, 36, 37, 39 FTransform-EDA, 49, 87 fuzzifikace, 45, 46 fuzzy rozklad, 36, 37, 38, 39, 57 G GigE, 74 H hodnocení kvality, 57 J JPEG, 22 K kalibrace, 75 kalibrační mřížky, 76 kalibrační přípravek, 69 klasifikace, 25, 26, 48 komponenty, 37, 38, 39, 41, 43, 58 krok rozkladu, 36 L LabVIEW, 4, 7, 10, 63, 64, 68, 77, 78, 79, 80, 81, 82, 83, 84, 86, 87, 101, 109, 110, 114, 115, 117 lichoběžník, 45 M Mamdaniho implikace, 35 MATLAB, 68, 79 mexický klobouk, 20, 23, 24 modul spojitosti, 37, 58 MPEG, 22 O oblast zájmu, 7, 16 obraz, 15 obrazová funkce, 15 obrazová registrace, 61 ohnisko projekce, 72 optická soustava, 11 optické soustavy, VII, 3, 12, 13, 52, 69, 70, 71, 74, 75, 76, 78, 89, 90 P podobraz, 24 porovnávání vzorů, 81 potlačený artefakt, 85 prahová hodnota, 25 pravidla Takagi-Sugeno, 35 pravidlo IF THEN, 5, 35 předzpracování, 16 I identifikace vad BK, 78 IEEE 1394a, 74 IEEE 1394b, 74 inferenční mechanizmus, 32 R renderování, 67 rozpoznávání obrazu, 25 S SingleBoardRIO, 10, 64, 65,

120 T telecentrický objektiv, 72 transformace, 26 Fuzzy, 55 transformace Houghova, 26, 27 trapezoid, 45 T-S pravidla, 35 U USB, 74 V výpočetní vlákno, 66 Z Zero-crossing, 18 zpracování, 10 zpracování obrazu,

121 Přílohy Obr. A.1 Výřez blokového diagramu algoritmu Fuzzy IfThen Edge v prostředí LabVIEW 105

122 Obr. A.2 Výřez blokového diagramu SubVI pro F-transformaci eft.vi 106

123 Obr. A.3 Výřez blokového diagramu SubVI pro zpětnou F-transformaci edft.vi 107

124 Původní obraz f F-transformace F[f] Zpětná F-transformace fnm Chybová funkce e Prahovaná funkce ert Chybová funkce er Obr. A.4 Algoritmus FTransform EDA.vi 108

125 A) B) C) a) BK dobrý - zaostřeno na okraj 1 b) BK dobrý - zaostřeno na okraj 2 c) BK dobrý - obrazová fúze a) BK se záprasky - zaostřeno na špičku 1 b) BK se záprasky - zaostřeno na špičku 2 c) BK se záprasky - obrazová fúze a) BK s nedoleštěným spodkem zaostřeno na okraj b) BK s nedoleštěným spodkem zaostřeno na špičku c) BK s nedoleštěným spodkem obrazová fúze Obr. B.1 Příklady obrazové fúze bižuterních kamenů s různými vlastnostmi 109

126 A) B) C) a) BK s poškráb. spod. zaostřeno na špičku 1 a) BK s poškráb. spod. zaostřeno na špičku 3 a) BK s poškráb. spod. zaostřeno na okraj 2 b) BK s poškráb. spod. zaostřeno na špičku 2 b) BK s poškráb. spod. zaostřeno na okraj 1 b) BK s poškráb. spod. zaostřeno na špičku 2 c) BK s poškráb. spod. obrazová fúze 1 c) BK s poškráb. spod. obrazová fúze 2 c) BK s poškráb. spodkem - obrazová fúze 3 Obr. B.2 Příklady obrazové fúze bižuterního kamene s definovanou vlastností 110

127 A1) BK dobrý (různé zaostření) A2) BK dobrý (zaostřeno na okraj) A3) BK dobrý (zaostřeno na špičku) B) Nedoleštěný spodek C) Poškrábaný spodek D) Poškrábaná tabulka E) Poškráb. tabulka - zaostřeno na okraj F) Poškráb. tabulka - zaostřeno na špičku G) Záprasky Obr. B.3 Příklady detekce objektů na obrazech BK získaných z obrazové fúze 111

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

Analýza a zpracování digitálního obrazu Analýza a zpracování digitálního obrazu Úlohy strojového vidění lze přibližně rozdělit do sekvence čtyř funkčních bloků: Předzpracování veškerých obrazových dat pomocí filtrací (tj. transformací obrazové

Více

MATURITNÍ TÉMATA Z MATEMATIKY

MATURITNÍ TÉMATA Z MATEMATIKY MATURITNÍ TÉMATA Z MATEMATIKY 1. Základní poznatky z logiky a teorie množin Pojem konstanty a proměnné. Obor proměnné. Pojem výroku a jeho pravdivostní hodnota. Operace s výroky, složené výroky, logické

Více

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

HLEDÁNÍ HRAN. Václav Hlaváč. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání. 1/35 HLEDÁNÍ HRAN Václav Hlaváč Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání hlavac@fel.cvut.cz http://cmp.felk.cvut.cz/ hlavac FYZIOLOGICKÁ MOTIVACE 2/35 Výsledky

Více

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

Jasové transformace. Karel Horák. Rozvrh přednášky: 1 / 23 Jasové transformace Karel Horák Rozvrh přednášky: 1. Úvod. 2. Histogram obrazu. 3. Globální jasová transformace. 4. Lokální jasová transformace. 5. Bodová jasová transformace. 2 / 23 Jasové transformace

Více

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

ZPRACOVÁNÍ OBRAZU přednáška 4 ZPRACOVÁNÍ OBRAZU přednáška 4 Vít Lédl vit.ledl@tul.cz TECHNICKÁ UNIVERZITA V LIBERCI Fakulta mechatroniky, informatiky a mezioborových studií Tento materiál vznikl v rámci projektu ESF CZ.1.07/2.2.00/07.0247,

Více

Úvod do zpracování signálů

Úvod do zpracování signálů 1 / 25 Úvod do zpracování signálů Karel Horák Rozvrh přednášky: 1. Spojitý a diskrétní signál. 2. Spektrum signálu. 3. Vzorkovací věta. 4. Konvoluce signálů. 5. Korelace signálů. 2 / 25 Úvod do zpracování

Více

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

Grafika na počítači. Bc. Veronika Tomsová Grafika na počítači Bc. Veronika Tomsová Proces zpracování obrazu Proces zpracování obrazu 1. Snímání obrazu 2. Digitalizace obrazu převod spojitého signálu na matici čísel reprezentující obraz 3. Předzpracování

Více

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

Mgr. Ladislav Zemánek Maturitní okruhy Matematika 2013-2014. 1. Obor reálných čísel Mgr. Ladislav Zemánek Maturitní okruhy Matematika 2013-2014 1. Obor reálných čísel - obor přirozených, celých, racionálních a reálných čísel - vlastnosti operací (sčítání, odčítání, násobení, dělení) -

Více

Geometrické transformace

Geometrické transformace 1/15 Předzpracování v prostoru obrazů Geometrické transformace Václav Hlaváč, Jan Kybic Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání hlavac@fel.cvut.cz http://cmp.felk.cvut.cz/

Více

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

U Úvod do modelování a simulace systémů U Úvod do modelování a simulace systémů Vyšetřování rozsáhlých soustav mnohdy nelze provádět analytickým výpočtem.často je nutné zkoumat chování zařízení v mezních situacích, do kterých se skutečné zařízení

Více

KTE/TEVS - Rychlá Fourierova transformace. Pavel Karban. Katedra teoretické elektrotechniky Fakulta elektrotechnická Západočeská univerzita v Plzni

KTE/TEVS - Rychlá Fourierova transformace. Pavel Karban. Katedra teoretické elektrotechniky Fakulta elektrotechnická Západočeská univerzita v Plzni KTE/TEVS - Rychlá Fourierova transformace Pavel Karban Katedra teoretické elektrotechniky Fakulta elektrotechnická Západočeská univerzita v Plzni 10.11.011 Outline 1 Motivace FT Fourierova transformace

Více

DETEKCE HRAN V BIOMEDICÍNSKÝCH OBRAZECH

DETEKCE HRAN V BIOMEDICÍNSKÝCH OBRAZECH DETEKCE HRAN V BIOMEDICÍNSKÝCH OBRAZECH Viktor Haškovec, Martina Mudrová Vysoká škola chemicko-technologická v Praze, Ústav počítačové a řídicí techniky Abstrakt Příspěvek je věnován zpracování biomedicínských

Více

SIGNÁLY A SOUSTAVY, SIGNÁLY A SYSTÉMY

SIGNÁLY A SOUSTAVY, SIGNÁLY A SYSTÉMY SIGNÁLY A SOUSTAVY, SIGNÁLY A SYSTÉMY TEMATICKÉ OKRUHY Signály se spojitým časem Základní signály se spojitým časem (základní spojité signály) Jednotkový skok σ (t), jednotkový impuls (Diracův impuls)

Více

Signál v čase a jeho spektrum

Signál v čase a jeho spektrum Signál v čase a jeho spektrum Signály v časovém průběhu (tak jak je vidíme na osciloskopu) můžeme dělit na periodické a neperiodické. V obou případech je lze popsat spektrálně určit jaké kmitočty v sobě

Více

Gymnázium Česká a Olympijských nadějí, České Budějovice, Česká 64, 37021

Gymnázium Česká a Olympijských nadějí, České Budějovice, Česká 64, 37021 Maturitní témata MATEMATIKA 1. Funkce a jejich základní vlastnosti. Definice funkce, def. obor a obor hodnot funkce, funkce sudá, lichá, monotónnost funkce, funkce omezená, lokální a globální extrémy funkce,

Více

Maturitní témata z matematiky

Maturitní témata z matematiky Maturitní témata z matematiky G y m n á z i u m J i h l a v a Výroky, množiny jednoduché výroky, pravdivostní hodnoty výroků, negace operace s výroky, složené výroky, tabulky pravdivostních hodnot důkazy

Více

CW01 - Teorie měření a regulace

CW01 - Teorie měření a regulace Ústav technologie, mechanizace a řízení staveb CW01 - Teorie měření a regulace ZS 2010/2011 SPEC. 2.p 2010 - Ing. Václav Rada, CSc. Ústav technologie, mechanizace a řízení staveb Teorie měření a regulace

Více

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

Roman Juránek. Fakulta informačních technologíı. Extrakce obrazových příznaků 1 / 30 Extrakce obrazových příznaků Roman Juránek Ústav počítačové grafiky a multimédíı Fakulta informačních technologíı Vysoké Učení technické v Brně Extrakce obrazových příznaků 1 / 30 Motivace Účelem extrakce

Více

13 Barvy a úpravy rastrového

13 Barvy a úpravy rastrového 13 Barvy a úpravy rastrového Studijní cíl Tento blok je věnován základním metodám pro úpravu rastrového obrazu, jako je např. otočení, horizontální a vertikální překlopení. Dále budo vysvětleny různé metody

Více

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

Restaurace (obnovení) obrazu při známé degradaci Restaurace (obnovení) obrazu při známé degradaci Václav Hlaváč České vysoké učení technické v Praze Centrum strojového vnímání (přemosťuje skupiny z) Český institut informatiky, robotiky a kybernetiky

Více

FOURIEROVA ANAL YZA 2D TER ENN ICH DAT Karel Segeth

FOURIEROVA ANAL YZA 2D TER ENN ICH DAT Karel Segeth FOURIEROVA ANALÝZA 2D TERÉNNÍCH DAT Karel Segeth Motto: The faster the computer, the more important the speed of algorithms. přírodní jev fyzikální model matematický model numerický model řešení numerického

Více

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

1. Vlastnosti diskretních a číslicových metod zpracování signálů... 15 Úvodní poznámky... 11 1. Vlastnosti diskretních a číslicových metod zpracování signálů... 15 1.1 Základní pojmy... 15 1.2 Aplikační oblasti a etapy zpracování signálů... 17 1.3 Klasifikace diskretních

Více

Maturitní otázky z předmětu MATEMATIKA

Maturitní otázky z předmětu MATEMATIKA Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace Maturitní otázky z předmětu MATEMATIKA 1. Výrazy a jejich úpravy vzorce (a+b)2,(a+b)3,a2-b2,a3+b3, dělení mnohočlenů, mocniny, odmocniny, vlastnosti

Více

7. Rozdělení pravděpodobnosti ve statistice

7. Rozdělení pravděpodobnosti ve statistice 7. Rozdělení pravděpodobnosti ve statistice Statistika nuda je, má však cenné údaje, neklesejte na mysli, ona nám to vyčíslí Jednou z úloh statistiky je odhad (výpočet) hodnot statistického znaku x i,

Více

Požadavky k písemné přijímací zkoušce z matematiky do navazujícího magisterského studia pro neučitelské obory

Požadavky k písemné přijímací zkoušce z matematiky do navazujícího magisterského studia pro neučitelské obory Požadavky k písemné přijímací zkoušce z matematiky do navazujícího magisterského studia pro neučitelské obory Zkouška ověřuje znalost základních pojmů, porozumění teorii a schopnost aplikovat teorii při

Více

Transformace obrazu Josef Pelikán KSVI MFF UK Praha

Transformace obrazu Josef Pelikán KSVI MFF UK Praha Transformace obrazu 99725 Josef Pelikán KSVI MFF UK Praha email: Josef.Pelikan@mff.cuni.cz WWW: http://cgg.ms.mff.cuni.cz/~pepca/ Transformace 2D obrazu dekorelace dat potlačení závislosti jednotlivých

Více

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

Moderní technologie ve studiu aplikované fyziky CZ.1.07/2.2.00/ Množiny, funkce Moderní technologie ve studiu aplikované fyziky CZ.1.07/2.2.00/07.0018 2. Množiny, funkce MNOŽIN, ZÁKLDNÍ POJMY Pojem množiny patří v matematice ke stěžejním. Nelze jej zavést ve formě definice pomocí

Více

Gymnázium Jiřího Ortena, Kutná Hora

Gymnázium Jiřího Ortena, Kutná Hora Předmět: Cvičení z matematiky Náplň: Systematizace a prohloubení učiva matematiky Třída: 4. ročník Počet hodin: 2 Pomůcky: Učebna s dataprojektorem, PC, grafický program, tabulkový procesor Číselné obory

Více

Tematický plán Obor: Informační technologie. Vyučující: Ing. Joanna Paździorová

Tematický plán Obor: Informační technologie. Vyučující: Ing. Joanna Paździorová Tematický plán Vyučující: Ing. Joanna Paździorová 1. r o č n í k 5 h o d i n t ý d n ě, c e l k e m 1 7 0 h o d i n Téma- Tematický celek Z á ř í 1. Opakování a prohloubení učiva základní školy 18 1.1.

Více

Systematizace a prohloubení učiva matematiky. Učebna s dataprojektorem, PC, grafický program, tabulkový procesor. Gymnázium Jiřího Ortena, Kutná Hora

Systematizace a prohloubení učiva matematiky. Učebna s dataprojektorem, PC, grafický program, tabulkový procesor. Gymnázium Jiřího Ortena, Kutná Hora Předmět: Náplň: Třída: Počet hodin: Pomůcky: Cvičení z matematiky Systematizace a prohloubení učiva matematiky 4. ročník 2 hodiny Učebna s dataprojektorem, PC, grafický program, tabulkový procesor Číselné

Více

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

Operace s obrazem I. Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno. prezentace je součástí projektu FRVŠ č. Operace s obrazem I Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno prezentace je součástí projektu FRVŠ č.2487/2011 Osnova 1 Filtrování obrazu 2 Lineární a nelineární filtry 3 Fourierova

Více

Maturitní témata profilová část

Maturitní témata profilová část Seznam témat Výroková logika, úsudky a operace s množinami Základní pojmy výrokové logiky, logické spojky a kvantifikátory, složené výroky (konjunkce, disjunkce, implikace, ekvivalence), pravdivostní tabulky,

Více

aneb jiný úhel pohledu na prvák

aneb jiný úhel pohledu na prvák Účelná matematika aneb jiný úhel pohledu na prvák Jan Hejtmánek FEL, ČVUT v Praze 24. června 2015 Jan Hejtmánek (FEL, ČVUT v Praze) Technokrati 2015 24. června 2015 1 / 18 Outline 1 Motivace 2 Proč tolik

Více

B) výchovné a vzdělávací strategie jsou totožné se strategiemi vyučovacího předmětu Matematika.

B) výchovné a vzdělávací strategie jsou totožné se strategiemi vyučovacího předmětu Matematika. 4.8.3. Cvičení z matematiky Předmět Cvičení z matematiky je vyučován v sextě a v septimě jako volitelný předmět. Vzdělávací obsah vyučovacího předmětu Cvičení z matematiky vychází ze vzdělávací oblasti

Více

Středoškolská technika SCI-Lab

Středoškolská technika SCI-Lab Středoškolská technika 2016 Setkání a prezentace prací středoškolských studentů na ČVUT SCI-Lab Kamil Mudruňka Gymnázium Dašická 1083 Dašická 1083, Pardubice O projektu SCI-Lab je program napsaný v jazyce

Více

CZ 1.07/1.1.32/02.0006

CZ 1.07/1.1.32/02.0006 PO ŠKOLE DO ŠKOLY CZ 1.07/1.1.32/02.0006 Číslo projektu: CZ.1.07/1.1.32/02.0006 Název projektu: Po škole do školy Příjemce grantu: Gymnázium, Kladno Název výstupu: Prohlubující semináře Matematika (MI

Více

VY_32_INOVACE_E 15 03

VY_32_INOVACE_E 15 03 Název a adresa školy: Střední škola průmyslová a umělecká, Opava, příspěvková organizace, Praskova 399/8, Opava, 746 01 Název operačního programu: OP Vzdělávání pro konkurenceschopnost, oblast podpory

Více

Modelování systémů a procesů (11MSP) Bohumil Kovář, Jan Přikryl, Miroslav Vlček. 8. přednáška 11MSP pondělí 20. dubna 2015

Modelování systémů a procesů (11MSP) Bohumil Kovář, Jan Přikryl, Miroslav Vlček. 8. přednáška 11MSP pondělí 20. dubna 2015 Modelování systémů a procesů (11MSP) Bohumil Kovář, Jan Přikryl, Miroslav Vlček Ústav aplikované matematiky ČVUT v Praze, Fakulta dopravní 8. přednáška 11MSP pondělí 20. dubna 2015 verze: 2015-04-14 12:31

Více

Aplikovaná numerická matematika

Aplikovaná numerická matematika Aplikovaná numerická matematika 6. Metoda nejmenších čtverců doc. Ing. Róbert Lórencz, CSc. České vysoké učení technické v Praze Fakulta informačních technologií Katedra počítačových systémů Příprava studijních

Více

Státní závěrečná zkouška z oboru Matematika a její použití v přírodních vědách

Státní závěrečná zkouška z oboru Matematika a její použití v přírodních vědách Státní závěrečná zkouška z oboru Matematika a její použití v přírodních vědách Ústní zkouška z oboru Náročnost zkoušky je podtržena její ústní formou a komisionálním charakterem. Předmětem bakalářské zkoušky

Více

Automatizace je proces při němž je řídicí funkce člověka nahrazována činností

Automatizace je proces při němž je řídicí funkce člověka nahrazována činností Automatizace je proces při němž je řídicí funkce člověka nahrazována činností různých přístrojů a zařízení. (Mechanizace, Automatizace, Komplexní automatizace) Kybernetika je Věda, která zkoumá obecné

Více

Komplexní čísla, Kombinatorika, pravděpodobnost a statistika, Posloupnosti a řady

Komplexní čísla, Kombinatorika, pravděpodobnost a statistika, Posloupnosti a řady Předmět: Náplň: Třída: Počet hodin: Pomůcky: Matematika Komplexní čísla, Kombinatorika, pravděpodobnost a statistika, Posloupnosti a řady 4. ročník a oktáva 3 hodiny týdně PC a dataprojektor, učebnice

Více

Matematika. ochrana životního prostředí analytická chemie chemická technologie Forma vzdělávání:

Matematika. ochrana životního prostředí analytická chemie chemická technologie Forma vzdělávání: Studijní obor: Aplikovaná chemie Učební osnova předmětu Matematika Zaměření: ochrana životního prostředí analytická chemie chemická technologie Forma vzdělávání: denní Celkový počet vyučovacích hodin za

Více

Operace s obrazem II

Operace s obrazem II Operace s obrazem II Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno prezentace je součástí projektu FRVŠ č.2487/2011 Osnova Matematická morfologie Segmentace obrazu Klasifikace objektů

Více

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

Operace s obrazem. Biofyzikální ústav LF MU. Projekt FRVŠ 911/2013 Operace s obrazem Biofyzikální ústav LF MU Obraz definujeme jako zrakový vjem, který vzniká po dopadu světla na sítnici oka. Matematicky lze obraz chápat jako vícerozměrný signál (tzv. obrazová funkce)

Více

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

Obraz matematický objekt. Spojitý obraz f c : (Ω c R 2 ) R Obraz matematický objekt Spojitý obraz f c : (Ω c R 2 ) R Obraz matematický objekt Spojitý obraz f c : (Ω c R 2 ) R Diskrétní obraz f d : (Ω {0... n 1 } {0... n 2 }) {0... f max } Obraz matematický objekt

Více

Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy

Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy Lukáš Havrlant Univerzita Palackého 10. ledna 2014 Primární zdroj Jiří Adámek: Foundations of Coding. Strany 137 160. Na webu ke stažení, heslo:

Více

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

základní vlastnosti, používané struktury návrhové prostředky MATLAB problém kvantování koeficientů A0M38SPP - Signálové procesory v praxi - přednáška 4 2 Číslicové filtry typu FIR a IIR definice operace filtrace základní rozdělení FIR, IIR základní vlastnosti, používané struktury filtrů návrhové prostředky

Více

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

DIGITÁLNÍ OBRAZ. Obrázky (popř. slajdy) převzaty od DIGITÁLNÍ OBRAZ JANA ŠTANCLOVÁ jana.stanclova@ruk.cuni.cz Obrázky (popř. slajdy) převzaty od RNDr. Josef Pelikán, CSc., KSVI MFF UK Obsah fáze zpracování obrazu reprezentace obrazu digitalizace obrazu

Více

Učební plán 4. letého studia předmětu matematiky. Učební plán 6. letého studia předmětu matematiky

Učební plán 4. letého studia předmětu matematiky. Učební plán 6. letého studia předmětu matematiky Učební plán 4. letého studia předmětu matematiky Ročník I II III IV Dotace 3 3+1 2+1 2+2 Povinnost povinný povinný povinný povinný Učební plán 6. letého studia předmětu matematiky Ročník 1 2 3 4 5 6 Dotace

Více

ZÁKLADY AUTOMATICKÉHO ŘÍZENÍ

ZÁKLADY AUTOMATICKÉHO ŘÍZENÍ VYSOKÁ ŠKOLA BÁŇSKÁ TECHNICKÁ UNIVERZITA OSTRAVA FAKULTA STROJNÍ ZÁKLADY AUTOMATICKÉHO ŘÍZENÍ 1. týden doc. Ing. Renata WAGNEROVÁ, Ph.D. Ostrava 2013 doc. Ing. Renata WAGNEROVÁ, Ph.D. Vysoká škola báňská

Více

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

OBRAZOVÁ ANALÝZA. Speciální technika a měření v oděvní výrobě OBRAZOVÁ ANALÝZA Speciální technika a měření v oděvní výrobě Prostředky pro snímání obrazu Speciální technika a měření v oděvní výrobě 2 Princip zpracování obrazu matice polovodičových součástek, buňky

Více

Lineární a adaptivní zpracování dat. 2. SYSTÉMY a jejich popis v časové doméně a frekvenční doméně

Lineární a adaptivní zpracování dat. 2. SYSTÉMY a jejich popis v časové doméně a frekvenční doméně Lineární a adaptivní zpracování dat 2. SYSTÉMY a jejich popis v časové doméně a frekvenční doméně Daniel Schwarz Investice do rozvoje vzdělávání Osnova Opakování: signály a systémy Vlastnosti systémů Systémy

Více

Číslicové zpracování signálů a Fourierova analýza.

Číslicové zpracování signálů a Fourierova analýza. Číslicové zpracování signálů a Fourierova analýza www.kme.zcu.cz/kmet/exm 1 Obsah prezentace 1. Úvod a motivace 2. Data v časové a frekvenční oblasti 3. Fourierova analýza teoreticky 4. Fourierova analýza

Více

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 Hledání hran Václav Hlaváč České vysoké učení technické v Praze Český institut informatiky, robotiky a kybernetiky 166 36 Praha 6, Jugoslávských partyzánů 1580/3 http://people.ciirc.cvut.cz/hlavac, vaclav.hlavac@cvut.cz

Více

5. Lokální, vázané a globální extrémy

5. Lokální, vázané a globální extrémy 5 Lokální, vázané a globální extrémy Studijní text Lokální extrémy 5 Lokální, vázané a globální extrémy Definice 51 Řekneme, že f : R n R má v bodě a Df: 1 lokální maximum, když Ka, δ Df tak, že x Ka,

Více

Úlohy k přednášce NMAG 101 a 120: Lineární algebra a geometrie 1 a 2,

Úlohy k přednášce NMAG 101 a 120: Lineární algebra a geometrie 1 a 2, Úlohy k přednášce NMAG a : Lineární algebra a geometrie a Verze ze dne. května Toto je seznam přímočarých příkladů k přednášce. Úlohy z tohoto seznamu je nezbytně nutné umět řešit. Podobné typy úloh se

Více

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

KOMPRESE OBRAZŮ. Václav Hlaváč, Jan Kybic. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání. 1/25 KOMPRESE OBRAZŮ Václav Hlaváč, Jan Kybic Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání hlavac@fel.cvut.cz http://cmp.felk.cvut.cz/ hlavac KOMPRESE OBRAZŮ, ÚVOD

Více

ROZ1 - Cv. 2 - Fourierova transformace ÚTIA - ZOI

ROZ1 - Cv. 2 - Fourierova transformace ÚTIA - ZOI Vzorečky Co to je FT? Vzorečky Co to je FT? Transformace signálu z časové (resp. obrazové) reprezentace f(t) do frekvenční reprezentace F(ψ) a zpět. Díky ní můžeme signál analyzovat ve frekvenční oblasti

Více

DIGITÁLNÍ FOTOGRAFIE

DIGITÁLNÍ FOTOGRAFIE DIGITÁLNÍ FOTOGRAFIE Petr Vaněček, katedra informatiky a výpočetní techniky Fakulta aplikovaných věd, Západočeská univerzita v Plzni 19. listopadu 2009 1888, Geroge Eastman You press the button, we do

Více

Lineární a adaptivní zpracování dat. 2. SYSTÉMY a jejich popis v časové doméně a frekvenční doméně

Lineární a adaptivní zpracování dat. 2. SYSTÉMY a jejich popis v časové doméně a frekvenční doméně Lineární a adaptivní zpracování dat 2. SYSTÉMY a jejich popis v časové doméně a frekvenční doméně Daniel Schwarz Investice do rozvoje vzdělávání Osnova Opakování: signály a systémy Vlastnosti systémů Systémy

Více

Matematika B101MA1, B101MA2

Matematika B101MA1, B101MA2 Matematika B101MA1, B101MA2 Zařazení předmětu: povinný předmět 1.ročníku bc studia 2 semestry Rozsah předmětu: prezenční studium 2 + 2 kombinované studium 16 + 0 / semestr Zakončení předmětu: ZS zápočet

Více

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 Hledání hran Václav Hlaváč České vysoké učení technické v Praze Centrum strojového vnímání (přemosťuje skupiny z) Český institut informatiky, robotiky a kybernetiky Fakulta elektrotechnická, katedra kybernetiky

Více

REÁLNÁ FUNKCE JEDNÉ PROMĚNNÉ

REÁLNÁ FUNKCE JEDNÉ PROMĚNNÉ REÁLNÁ FUNKCE JEDNÉ PROMĚNNÉ 5 přednáška S funkcemi se setkáváme na každém kroku ve všech přírodních vědách ale i v každodenním životě Každá situace kdy jsou nějaký jev nebo veličina jednoznačně určeny

Více

ROZPOZNÁVÁNÍ AKUSTICKÉHO SIGNÁLU ŘEČI S PODPOROU VIZUÁLNÍ INFORMACE

ROZPOZNÁVÁNÍ AKUSTICKÉHO SIGNÁLU ŘEČI S PODPOROU VIZUÁLNÍ INFORMACE TECHNICKÁ UNIVERZITA V LIBERCI Fakulta mechatroniky a mezioborových inženýrských studií ROZPOZNÁVÁNÍ AKUSTICKÉHO SIGNÁLU ŘEČI S PODPOROU VIZUÁLNÍ INFORMACE AUTOREFERÁT DISERTAČNÍ PRÁCE 2005 JOSEF CHALOUPKA

Více

Matematika PRŮŘEZOVÁ TÉMATA

Matematika PRŮŘEZOVÁ TÉMATA Matematika ročník TÉMA 1-4 Operace s čísly a - provádí aritmetické operace v množině reálných čísel - používá různé zápisy reálného čísla - používá absolutní hodnotu, zapíše a znázorní interval, provádí

Více

MĚŘENÍ A ANALÝZA ELEKTROAKUSTICKÝCH SOUSTAV NA MODELECH. Petr Kopecký ČVUT, Fakulta elektrotechnická, Katedra Radioelektroniky

MĚŘENÍ A ANALÝZA ELEKTROAKUSTICKÝCH SOUSTAV NA MODELECH. Petr Kopecký ČVUT, Fakulta elektrotechnická, Katedra Radioelektroniky MĚŘENÍ A ANALÝZA ELEKTROAKUSTICKÝCH SOUSTAV NA MODELECH Petr Kopecký ČVUT, Fakulta elektrotechnická, Katedra Radioelektroniky Při návrhu elektroakustických soustav, ale i jiných systémů, je vhodné nejprve

Více

UNIVERZITA PARDUBICE. 4.4 Aproximace křivek a vyhlazování křivek

UNIVERZITA PARDUBICE. 4.4 Aproximace křivek a vyhlazování křivek UNIVERZITA PARDUBICE Licenční Studium Archimedes Statistické zpracování dat a informatika 4.4 Aproximace křivek a vyhlazování křivek Mgr. Jana Kubátová Endokrinologický ústav V Praze, leden 2012 Obsah

Více

1 Připomenutí vybraných pojmů

1 Připomenutí vybraných pojmů 1 Připomenutí vybraných pojmů 1.1 Grupa Definice 1 ((Komutativní) grupa). Grupou (M, ) rozumíme množinu M spolu s operací na M, která má tyto vlastnosti: i) x, y M; x y M, Operace je neomezeně definovaná

Více

Pokročilé operace s obrazem

Pokročilé operace s obrazem Získávání a analýza obrazové informace Pokročilé operace s obrazem Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno prezentace je součástí projektu FRVŠ č.2487/2011 (BFÚ LF MU) Získávání

Více

SIGNÁLY A LINEÁRNÍ SYSTÉMY

SIGNÁLY A LINEÁRNÍ SYSTÉMY SIGNÁLY A LINEÁRNÍ SYSTÉMY prof. Ing. Jiří Holčík, CSc. holcik@iba.muni.cziba.muni.cz II. SIGNÁLY ZÁKLADNÍ POJMY SIGNÁL - DEFINICE SIGNÁL - DEFINICE Signál je jev fyzikální, chemické, biologické, ekonomické

Více

Gymnázium Jiřího Ortena, Kutná Hora

Gymnázium Jiřího Ortena, Kutná Hora Předmět: Náplň: Třída: Počet hodin: Pomůcky: Cvičení z matematiky algebra (CZMa) Systematizace a prohloubení učiva matematiky: Číselné obory, Algebraické výrazy, Rovnice, Funkce, Posloupnosti, Diferenciální

Více

Globální matice konstrukce

Globální matice konstrukce Globální matice konstrukce Z matic tuhosti a hmotnosti jednotlivých prvků lze sestavit globální matici tuhosti a globální matici hmotnosti konstrukce, které se využijí v řešení základní rovnice MKP: [m]{

Více

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

Algoritmy a struktury neuropočítačů ASN - P11 Aplikace UNS při rozpoznání obrazů Základní úloha segmentace obrazu rozdělení obrazu do několika významných oblastí klasifikační úloha, clusterová analýza target Metody Kohonenova metoda KSOM Kohonenova

Více

SIGNÁLY A LINEÁRNÍ SYSTÉMY

SIGNÁLY A LINEÁRNÍ SYSTÉMY SIGNÁLY A LINEÁRNÍ SYSTÉMY prof. Ing. Jiří Holčík, CSc. holcik@iba.muni.cz II. SIGNÁLY ZÁKLADNÍ POJMY SIGNÁL - DEFINICE SIGNÁL - DEFINICE Signál je jev fyzikální, chemické, biologické, ekonomické či jiné

Více

Matematika (KMI/PMATE)

Matematika (KMI/PMATE) Úvod do matematické analýzy Funkce a její vlastnosti Funkce a její vlastnosti Veličina Veličina - pojem, který popisuje kvantitativní (číselné) vlastnosti reálných i abstraktních objektů. Funkce a její

Více

Derivace funkce Otázky

Derivace funkce Otázky funkce je jedním z hlavních nástrojů matematické analýzy. V příští části ukážeme, jak mnoho různorodých aplikací derivace má. Geometricky lze derivaci funkce v nějakém bodě chápat jako směrnici tečny grafu

Více

NOVÉ METODY HODNOCENÍ OBRAZOVÉ KVALITY

NOVÉ METODY HODNOCENÍ OBRAZOVÉ KVALITY NOVÉ METODY HODNOCENÍ OBRAZOVÉ KVALITY Stanislav Vítek, Petr Páta, Jiří Hozman Katedra radioelektroniky, ČVUT FEL Praha, Technická 2, 166 27 Praha 6 E-mail: svitek@feld.cvut.cz, pata@feld.cvut.cz, hozman@feld.cvut.cz

Více

6 Skalární součin. u v = (u 1 v 1 ) 2 +(u 2 v 2 ) 2 +(u 3 v 3 ) 2

6 Skalární součin. u v = (u 1 v 1 ) 2 +(u 2 v 2 ) 2 +(u 3 v 3 ) 2 6 Skalární součin Skalární součin 1 je operace, která dvěma vektorům (je to tedy binární operace) přiřazuje skalár (v našem případě jde o reálné číslo, obecně se jedná o prvek nějakého tělesa T ). Dovoluje

Více

0.1 Úvod do matematické analýzy

0.1 Úvod do matematické analýzy Matematika I (KMI/PMATE) 1 0.1 Úvod do matematické analýzy 0.1.1 Pojem funkce Veličina - pojem, který popisuje kvantitativní (číselné) vlastnosti reálných i abstraktních objektů. Příklady veličin: hmotnost

Více

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

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 MNOŽIN, ZÁKLDNÍ POJMY Pojem množiny patří v matematice ke stěžejním. Nelze jej zavést ve formě definice pomocí primitivních pojmů; považuje se totiž rovněž za pojem primitivní. Představa o pojmu množina

Více

IB112 Základy matematiky

IB112 Základy matematiky IB112 Základy matematiky Řešení soustavy lineárních rovnic, matice, vektory Jan Strejček IB112 Základy matematiky: Řešení soustavy lineárních rovnic, matice, vektory 2/53 Obsah Soustava lineárních rovnic

Více

Obsah 1 Struènì z historie LabVIEW...11 1.1 Vznik LabVIEW... 12 1.2 Vývoj LabVIEW... 13 2 Popis a princip vývojového prostøedí LabVIEW... 17 2.1 LabVIEW nástroj virtuální instrumentace... 18 2.2 Spuštìní

Více

1 Základní funkce pro zpracování obrazových dat

1 Základní funkce pro zpracování obrazových dat 1 Základní funkce pro zpracování obrazových dat 1.1 Teoretický rozbor 1.1.1 Úvod do zpracování obrazu v MATLABu MATLAB je primárně určen pro zpracování a analýzu numerických dat. Pro analýzu obrazových

Více

" Furierova transformace"

 Furierova transformace UNIVERZITA JANA EVANGELISTY PURKYNĚ V ÚSTÍ NAD LABEM FAKULTA ŽIVOTNÍHO PROSTŘEDÍ " Furierova transformace" Seminární práce z předmětu Dálkový průzkum Země Marcela Bartošová, Veronika Bláhová OŽP, 3.ročník

Více

Technická kybernetika. Obsah. Principy zobrazení, sběru a uchování dat. Měřicí řetězec. Principy zobrazení, sběru a uchování dat

Technická kybernetika. Obsah. Principy zobrazení, sběru a uchování dat. Měřicí řetězec. Principy zobrazení, sběru a uchování dat Akademický rok 2016/2017 Připravil: Radim Farana Technická kybernetika Principy zobrazení, sběru a uchování dat 2 Obsah Principy zobrazení, sběru a uchování dat strana 3 Snímač Měřicí řetězec Měřicí obvod

Více

1 Modelování systémů 2. řádu

1 Modelování systémů 2. řádu OBSAH Obsah 1 Modelování systémů 2. řádu 1 2 Řešení diferenciální rovnice 3 3 Ukázka řešení č. 1 9 4 Ukázka řešení č. 2 11 5 Ukázka řešení č. 3 12 6 Ukázka řešení č. 4 14 7 Ukázka řešení č. 5 16 8 Ukázka

Více

Derivace funkce DERIVACE A SPOJITOST DERIVACE A KONSTRUKCE FUNKCÍ. Aritmetické operace

Derivace funkce DERIVACE A SPOJITOST DERIVACE A KONSTRUKCE FUNKCÍ. Aritmetické operace Derivace funkce Derivace je jedním z hlavních nástrojů matematické analýzy. V příští části ukážeme, jak mnoho různorodých aplikací derivace má. Geometricky lze derivaci funkce v nějakém bodě chápat jako

Více

CITLIVOSTNÍ ANALÝZA DYNAMICKÝCH SYSTÉMŮ I

CITLIVOSTNÍ ANALÝZA DYNAMICKÝCH SYSTÉMŮ I Informačné a automatizačné technológie v riadení kvality produkcie Vernár,.-4. 9. 005 CITLIVOSTNÍ ANALÝZA DYNAMICKÝCH SYSTÉMŮ I KÜNZEL GUNNAR Abstrakt Příspěvek uvádí základní definice, fyzikální interpretaci

Více

0.1 Funkce a její vlastnosti

0.1 Funkce a její vlastnosti 0.1 Funkce a její vlastnosti Veličina - pojem, který popisuje kvantitativní (číselné) vlastnosti reálných i abstraktních objektů. Příklady veličin: hmotnost (m) čas (t) výše úrokové sazby v bance (i) cena

Více

7. Funkce jedné reálné proměnné, základní pojmy

7. Funkce jedné reálné proměnné, základní pojmy , základní pojmy POJEM FUNKCE JEDNÉ PROMĚNNÉ Reálná funkce f jedné reálné proměnné je funkce (zobrazení) f: X Y, kde X, Y R. Jde o zvláštní případ obecného pojmu funkce definovaného v přednášce. Poznámka:

Více

SEMESTRÁLNÍ PRÁCE X. Aproximace křivek Numerické vyhlazování

SEMESTRÁLNÍ PRÁCE X. Aproximace křivek Numerické vyhlazování KATEDRA ANALYTICKÉ CHEMIE FAKULTY CHEMICKO TECHNOLOGICKÉ UNIVERSITA PARDUBICE - Licenční studium chemometrie LS96/1 SEMESTRÁLNÍ PRÁCE X. Aproximace křivek Numerické vyhlazování Praha, leden 1999 0 Úloha

Více

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice Vektorové podprostory K množina reálných nebo komplexních čísel, U vektorový prostor nad K. Lineární kombinace vektorů u 1, u 2,...,u

Více

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

Úvod do zpracování obrazů. Petr Petyovský Miloslav Richter Úvod do zpracování obrazů Petr Petyovský Miloslav Richter 1 OBSAH Motivace, prvky a základní problémy počítačového vidění, pojem scéna Terminologie, obraz, zpracování a analýza obrazu, počítačové vidění,

Více

Fuzzy množiny, Fuzzy inference system. Libor Žák

Fuzzy množiny, Fuzzy inference system. Libor Žák Fuzzy množiny, Fuzzy inference system Proč právě fuzzy množiny V řadě případů jsou parametry, které vstupují a ovlivňují vlastnosti procesu, popsané pomocí přibližných nebo zjednodušených pojmů. Tedy

Více

Funkce a lineární funkce pro studijní obory

Funkce a lineární funkce pro studijní obory Variace 1 Funkce a lineární funkce pro studijní obory Autor: Mgr. Jaromír JUŘEK Kopírování a jakékoliv další využití výukového materiálu je povoleno pouze s uvedením odkazu na www.jarjurek.cz. 1. Funkce

Více

MATEMATIKA I. Marcela Rabasová

MATEMATIKA I. Marcela Rabasová MATEMATIKA I Marcela Rabasová Obsah: 1. Úvod 1.1. Osnovy předmětu 1.2. Literatura 1.3. Podmínky absolvování předmětu 1.4. Použité označení a symbolika 2. Funkce jedné reálné proměnné 2.1. Definice 2.2.

Více

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

Zpracování obrazu v FPGA. Leoš Maršálek ATEsystem s.r.o. Zpracování obrazu v FPGA Leoš Maršálek ATEsystem s.r.o. Základní pojmy PROCESOROVÉ ČIPY Křemíkový čip zpracovávající obecné instrukce Různé architektury, pracují s různými paměti Výkon instrukcí je závislý

Více

Diskrétní 2D konvoluce

Diskrétní 2D konvoluce ČVUT FEL v Praze 6ACS. prosince 2006 Martin BruXy Bruchanov bruxy@regnet.cz Diracův impuls jednotkový impulz, δ-impulz, δ-funkce; speciální signál s nulovou šířkou impulzu a nekonečnou amplitudou; platí

Více

Planimetrie 2. část, Funkce, Goniometrie. PC a dataprojektor, učebnice. Gymnázium Jiřího Ortena, Kutná Hora. Průřezová témata Poznámky

Planimetrie 2. část, Funkce, Goniometrie. PC a dataprojektor, učebnice. Gymnázium Jiřího Ortena, Kutná Hora. Průřezová témata Poznámky Předmět: Náplň: Třída: Počet hodin: Pomůcky: Matematika Planimetrie 2. část, Funkce, Goniometrie 2. ročník a sexta 4 hodiny týdně PC a dataprojektor, učebnice Planimetrie II. Konstrukční úlohy Charakterizuje

Více