Univerzita Karlova v Praze Matematicko-fyzikální fakulta BAKALÁ SKÁ PRÁCE. Ivana Valchová. OCR not. Kabinet software a výuky informatiky

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

Download "Univerzita Karlova v Praze Matematicko-fyzikální fakulta BAKALÁ SKÁ PRÁCE. Ivana Valchová. OCR not. Kabinet software a výuky informatiky"

Transkript

1 Univerzita Karlova v Praze Matematicko-fyzikální fakulta BAKALÁ SKÁ PRÁCE Ivana Valchová OCR not Kabinet software a výuky informatiky Vedoucí bakalá ské práce: Studijní program: Studijní obor: RNDr. Tomá² Holan, Ph.D. Informatika Obecná informatika Praha 2013

2 Ráda bych pod kovala RNDr. Tomá²i Holanovi, Ph.D. za jeho cenné rady a as, který mi v noval. Také d kuji rodin a p átel m za jejich podporu.

3 Prohla²uji, ºe jsem tuto bakalá skou práci vypracoval(a) samostatn a výhradn s pouºitím citovaných pramen, literatury a dal²ích odborných zdroj. Beru na v domí, ºe se na moji práci vztahují práva a povinnosti vyplývající ze zákona. 121/2000 Sb., autorského zákona v platném zn ní, zejména skute nost, ºe Univerzita Karlova v Praze má právo na uzav ení licen ní smlouvy o uºití této práce jako ²kolního díla podle Ÿ60 odst. 1 autorského zákona. V Praze dne Podpis autora

4 Název práce: OCR not Autor: Ivana Valchová Katedra: Kabinet software a výuky informatiky Vedoucí bakalá ské práce: RNDr. Tomá² Holan, Ph.D., Kabinet software a výuky informatiky Abstrakt: Práce se zabývá optickým rozpoznáváním notového záznamu. Cílem bylo ov it, zda lze notový záznam rozpoznat pomocí porovnávání se vzorem. S vyuºitím tohoto p ístupu byl vytvo en program s grackým uºivatelským rozhraním. Vstupem programu je obrázek notové osnovy, ve kterém program rozpozná v²echny prvky notového záznamu a výsledek zobrazí uºivateli. Rozpoznané objekty jsou barevn rozli²ené podle toho, jak se shodují se vzorem. Výsledek je poté p eveden do MIDI souboru, který si uºivatel m ºe p ehrát p ímo v programu. Práce dokumentuje jednotlivé kroky postupu a p edstavuje zvolená i alternativní e²ení spole n s jejich výhodami a nevýhodami. Obsahuje i popis implementace a ovládání programu. Klí ová slova: OCR, notový zápis, MIDI, hudba Title: Music OCR Author: Ivana Valchová Department: Department of Software and Computer Science Education Supervisor: RNDr. Tomá² Holan, Ph.D., Department of Software and Computer Science Education Abstract: The thesis studies music OCR. The main goal was to verify whether the sheet music can be recognized by pattern matching. Application with gracal user interface was created using this approach. The input is a picture of a stave in which the application recognizes all music objects and displays results to the user. The recognized objects are colored according to their correspondence with matched pattern. The result is then converted to MIDI le, which can be played back directly in the application. The thesis documents the particular steps of the process and shows chosen and alternative solutions together with their advantages and disadvantages. It contains also implementation and user interface documentation. Keywords: OCR, music score, MIDI, music

5 Obsah Úvod Optické rozpoznávání notového záznamu Cíle práce Struktura práce Pojmy Hudební teorie Noty Pomlky Posuvky Te ky Standard MIDI le Analýza P evod obrázku na ernobílý Identikace notových osnov Smazání notové osnovy Nalezení objekt Identikace objekt Porovnávání se vzorem Reprezentace objekt Reprezentace vzor Mazání trámce Ur ení vý²ky a délky noty Rozd lení na takty a zohledn ní p sobení sousedních objekt Hledání klí e Hledání taktového ozna ení Ur ení noty v ase Hlídání délky taktu Zpracování objekt s malou shodou Ur ení úsp ²nosti rozpoznání a její zvý²ení P evod na MIDI Rozd lení programu do více vláken a komunikace mezi nimi Výstupní obrázek Programátorská dokumentace Jádro programu P evod obrázku na ernobílý Aplikace konvolu ní matice Identikace notových osnov Rozd lení a mazání osnov Reprezentace objekt Nalezení a identikování objekt Reprezentace vzor Porovnávání se vzorem

6 3.1.9 Rozd lení objekt do takt P evod do MIDI GUI Hlavní okno Rozpoznávání Komunikace vláken a reakce na akce uºivatele Výstupní obrázek Kontrola uloºení Dialog nastavení a dal²í okna Testy, dokumentace a generování vzor Uºivatelská dokumentace Spu²t ní programu Popis a ovládání aplikace Hlavní okno Okno po na tení obrázku Okno p i rozpoznávání Okno po rozpoznání obrázku Nastavení Nápov da Zobrazení záznamu Klávesové zkratky Obsah CD Poºadavky na vstupní obrázek Symboly, které program rozpozná Dal²í programy na rozpoznávání notového záznamu Porovnávání program Konkrétní programy Audiveris Open OMR SmartScore X Záv r 47 Seznam pouºité literatury 48 Seznam pouºitých zkratek 50 Seznam obrázk 51 P ílohy 52 2

7 Úvod Hudba je nedílnou sou ástí lidské kultury. Uº p ed staletími se lidé nau ili hudbu uchovávat v jednotném a srozumitelném formátu v notách. Tradi ním nástrojem pro zápis bývalo pero a papír. Pro usnadn ní reprodukce se pozd ji notové zápisy za aly tisknout. A koliv je jiº tento zp sob na ústupu, i v dne²ní digitální dob má je²t spousta z nás mnoho skladeb pouze v ti²t né podob. Proto je uºite né um t tyto skladby p evést do formátu rozpoznatelného po íta em a po íta em je také p ehrát. Poloºili jsme si otázku, zda lze skladbu po íta em rozpoznat pouze pomocí porovnávání se vzorem. Pro ov ení vznikl program Noty, který rozpozná jednotlivé prvky notového záznamu a skladbu poté p ehraje. 0.1 Optické rozpoznávání notového záznamu Jako optické rozpoznávání notového záznamu (anglicky OMR = optical music recognition nebo music OCR = optical character recognition) ozna ujeme programy, které slouºí k automatickému tení notových materiál a jejich zaznamenání ve vhodném elektronickém formátu. Na rozdíl od klasického OCR nezávisí výsledek rozpoznání objektu jen na jeho horizontální sou adnici, ale i na sou adnici vertikální. Dal²ími problémy, se kterými se OMR navíc potýká, je velká podobnost jednotlivých prvk notového záznamu (jako nap íklad ²estnáctinová a dvaat icetinová nota, které se li²í pouze ²í kou praporce) a mnoho variant, jak lze zapsat identickou skladbu (noty s trámcem nebo bez trámce, noºi ky nahoru nebo dol, r zná délka trámc a vý²ka noºi ek). ([1]). 0.2 Cíle práce Cílem práce bylo ov it, zda lze notový záznam rozpoznat pomocí porovnávání se vzorem. Tento p ístup jsme pouºili k vytvo ení programu na rozpoznávání prvk notového záznamu s grackým uºivatelským rozhraním. Vzhledem k velkému mnoºství r zných prvk notového záznamu a mnoºství jeho variant jsme omezili rozpoznatelné skladby na maximáln trojhlasé s notami spojenými maximáln po dvou. Také jsme p íli² ne e²ili rychlost rozpoznávání. P esné vymezení, co program umí a neumí rozpoznat, je v Kapitole Struktura práce V kapitole Pojmy (1) jsou vysv tleny základy hudební teorie a formátu MIDI. V kapitole Analýza (2) jsou popsány problémy, které se s optickým rozpoznáváním notového záznamu pojí, a zp soby jejich e²ení. V kapitole Programátorská dokumentace (3) je popsána konkrétní implementace. V kapitole Uºivatelská dokumentace (4) je popsána práce s programem spole n s poºadavky na vstupní soubor. V kapitole Dal²í programy na rozpoznávání notového záznamu (5) jsou popsány programy, které se slouºí k podobnému nebo stejnému ú elu jako program Noty. 3

8 1. Pojmy 1.1 Hudební teorie V této kapitole si objasníme základní hudební pojmy pouºívané dále v textu. Více o hudební teorii se m ºe tená dozv d t nap íklad ze skript pro p ípravu na p ijímací zkou²ky na Konzervato Jaroslava Jeºka ([2]). Notová osnova je sloºena z p ti linek. Na notovou osnovu se umís ují prvky notového záznamu - noty, pomlky. Pokud je nota nebo pomlka umíst na nad nebo pod notovou osnovou, jsou k ur ení její p esné polohy pouºívány pomocné linky. Na za átek notové osnovy se pí²e notový klí. Notový klí je ozna ení, které ur uje pozici ur ité noty v osnov, a od n j se odvozuje zápis v²ech ostatních not. Ná² program umí rozpoznat dva klí e. Houslový (G) klí, který ur uje pozici noty G1, a basový (F) klí, který ur uje pozici malého f. Klí e jsou na Obrázku 1.1 Obrázek 1.1: Houslový a basový klí. Za notovým klí em následuje p edznamenání. P edznamenání ur uje tóninu skladby a skládá se z n kolika posuvek. Tyto posuvky platí pro celou skladbu, a tak je dále nepí²eme. O posuvkách viz dále. Dále následuje taktové ozna ení. 1 To se skládá ze dvou ísel. První íslo ozna- uje po et dob a druhé jejich délku. Skladba je rozd lená do takt. Jeden takt je vymezen z obou stran taktovou árou, p ípadn je to úsek notové osnovy od za átku skladby po první taktovou áru nebo od poslední taktové áry do konce. Taktové ozna ení ur uje, kolik dob se do taktu vejde (horní íslo) a jaká nota trvá jednu dobu (dolní íslo). Nap íklad taktové ozna ení 4/4 tedy íká, ºe jeden takt má ty i doby a tvr ová nota trvá jednu dobu. Ukázka klí e, p edznamenání a taktového ozna ení je na Obrázku 1.2. Obrázek 1.2: Klí, p edznamenání a taktové ozna ení. 1 N kdy ozna ováno jako metrum, anglicky time signature 4

9 1.1.1 Noty V programu rozli²ujeme n kolik délek not. Nejdel²í je nota celá. Skládá se pouze z hlavi ky, která je nevypln ná. V²echny následující druhy not trvají vºdy polovinu toho, co druh p edcházející. Nota p lová obsahuje navíc k nevypln né hlavi ce je²t noºi ku. Nota tvr ová má oproti p lové navíc hlavi ku vypln nou. Nota osminová p idává ke tvr ové not navíc praporec 2 a nota ²estnáctinová má praporec dvojitý. Pokud je více osminových a ²estnáctinových not za sebou, mohou být místo praporce spojeny trámcem. Trámec m ºe být jednoduchý nebo dvojitý, podle toho, zda jde o notu osminovou nebo ²estnáctinovou. Krat²í noty nejsou programem podporovány. Vý²ka noty se ur uje podle její polohy na notové osnov a podle klí e skladby. Ukázky not jsou na Obrázku 1.3 a ukázka not spojených trámcem na Obrázku 1.4. Obrázek 1.3: Noty zleva: celá, p lová, tvr ová, osminová a ²estnáctinová. Obrázek 1.4: Ukázka not spojených trámcem Pomlky Pomlka zna í, ºe daný hlas po danou dobu ml í. Délka pomlk, které je program schopen rozpoznat, se pohybuje stejn jako u not od pomlky celé po pomlku ²estnáctinovou. Ukázky pomlk jsou na Obrázku 1.5. Obrázek 1.5: Pomlky zleva: celá, p lová, tvr ová, osminová a ²estnáctinová Posuvky Posuvky sniºují nebo zvy²ují vý²ku noty o p l tónu. Pí²í se p ed hlavi ku dané noty a poté platí aº do konce taktu. K íºek vý²ku noty zvy²uje, k názvu noty se poté p idává koncovka -is (s, cis, gis apod.). Bé ko vý²ku noty sniºuje a k názvu se p idává koncovka -es. 2 N kdy nazýván téº praporek 5

10 Pokud jiº k íºek nebo bé ko nemá nadále platit, musí se pouºít t etí z posuvek odráºka. Ta ru²í platnost bé ka nebo k íºku op t aº do konce taktu. Odráºka p ed notou také aº do konce taktu ru²í k íºek nebo bé ko v p edznamenání taktu, které by jinak m lo na notu vliv. V programu nejsou podporovány dvojité posuvky a také odráºky na za átku i konci taktu, které ru²í p edznamenání skladby. Ukázky posuvek jsou na Obrázku 1.6. Obrázek 1.6: Posuvky zleva: K íºek, bé ko, odráºka Te ky Te ka za notou nebo pomlkou prodluºuje její délku o polovinu. Program neumí rozpoznat te ku nad nebo pod notou (tzv. staccato). Ukázka te ky za notou je na Obrázku 1.7. Obrázek 1.7: P íklady not s te kou. 1.2 Standard MIDI le Standard MIDI le je typ souboru ur ený pro uchovávání a p enos hudby. Tento formát souboru má obvykle p íponu.mid. Oproti jiným hudebním formát m se li²í tím, ºe v souborech není uloºen p ímo zvuk, ale pouze posloupnost událostí, jako nap íklad za átek i konec p ehrávání jednotlivých not. Více o tomto formátu se m ºe tená dozv d t v seriálu Co se d je v po íta i na root.cz ([3]). 6

11 2. Analýza Vstupní obrázek Převedení obrázku na černobílý Rozdělení obrázku na jednotlivé osnovy Určení taktového označení skladby Aplikace konvolučních matic Smazání notových osnov Určení předznamenání skladby ano Identifikace notových osnov Identifikace objektů Rozdělení skladby na takty a určení vzájemného působení objektů Soubor se záznamem Konec, úspěšnost rozpoznání = -200 ne Byla nalezena osnova? Byl nalezen klíč? Určení, které noty jsou nad sebou ne ano Druhý pokus o nalezení klíče Určení klíče skladby ano Určení hlasů ano ne Klíč zadá uživatel ne Byl nalezen klíč? Byl nalezen dostatek čísel k vytvoření taktového označení? ne ano Převod na MIDI Vygenerování výsledného obrázku MIDI soubor Pokus o nalezení čísel spojením objektů nad sebou Výsledný obrázek Byl nalezen dostatek čísel k vytvoření taktového označení? ne Druhý pokus o nalezení čísel Byl nalezen dostatek čísel k vytvoření taktového označení? ne Čísla zadá uživatel Obrázek 2.1: Takto vypadá vývojový diagram. Rozpoznávání sestává z n kolika krok. To, jak na sebe tyto kroky navazují, ilustruje Obrázek

12 Nejprve je vstupní obrázek p eveden na ernobílý a jsou na n j aplikovány konvolu ní matice za ú elem jeho vylep²ení. Následn jsou nalezeny a poté smazány notové osnovy. Poté jsou nalezeny jednotlivé objekty. O jaký objekt se jedná, ur íme pomocí porovnávání se vzorem. Porovnáváme objekt pixel po pixelu se vzory. Objekt identikujeme se vzorem, se kterým má nejv t²í shodu. Dále se ur í klí, taktové ozna ení a vztahy mezi objekty. Ur í se, do jakého hlasu objekty pat í, a vytvo í se et zec pro následné vygenerování MIDI souboru. Nakonec se vytvo í výstupní obrázek. Dále jsou v této kapitole popsány jednotlivé problémy, s kterými jsme se setkali, spole n s jejich e²ením pouºitém v programu a moºnými alternativními e²eními. 2.1 P evod obrázku na ernobílý Popis problému Vstupní obrázek je barevný, p ípadn v odstínech ²edi, a proto není vºdy jasné, zda daný pixel je sou ástí objektu nebo pat í do pozadí. Pro jednozna nost je nutné obrázek p evést do erné a bílé. Zvolený postup Nejprve je nalezen nejtmav²í a nejsv tlej²í bod v obrázku. Hodnoty jejich jasu 1 jsou se teny. Násobek této hodnoty se poté vezme jako práh (jak velký násobek ur uje uºivatel, nejlep²í výsledky byly s násobkem 0.6). V²echny sv tlej²í pixely se p evedou na bílé a tmav²í na erné. Alternativní postupy Bylo by moºné obrázek na ernobílý v bec nep evád t. Ov²em stejn bychom si museli pamatovat n jakou hranici sv tlosti, kdy má je²t pixel barvu pozadí a kdy uº ho povaºujeme za objekt. Rozhodování o této hranici by probíhalo stejn, pouze bychom obrázek nep evedli, ale hranici si pouze pamatovali. Toto rozhodnutí bychom také mohli provést aº p i porovnávání objektu se vzorem. edá barva by m la nap íklad polovi ní shodu jak s bílou, tak se ²edou barvou. Dal²ím moºným postupem je nalézt v histogramu maximum v první a druhé polovin a mezi t mito dv ma maximy nalézt minimum. Výhody a nevýhody zvoleného postupu Zvolený algoritmus byl pouºit proto, ºe je u n j moºnost uºivatelského nastavení, takºe uºivatel m ºe výsledek p ímo ovlivnit, a tím se dosáhne lep²ích výsledk. Problém nastává v okamºiku, kdy je jedna polovina obrázku p esv tlená a druhá p íli² tmavá, v takovém p ípad dopadne p evod ²patn. Uºivatel má moºnost nastavit práh jako násobek nalezeného pr - m ru s krokem po Velikost jednoho kroku byla nastavena jako kompromis mezi velkým po tem moºností (a tím pádem v t²í pravd podobností úsp ²ného 1 Jas je z RGB hodnoty po ítán jako R G B 8

13 rozpoznání) a men²ím po tem moºností (a tím pádem men²í dobou rozpoznávání), kdyº program zkou²í v²echny moºnosti (více o tomto módu rozpoznávání v Kapitole 2.17). 2.2 Identikace notových osnov Popis problému Ve vstupním obrázku je nutné nalézt notové osnovy. Podle t chto osnov budeme poté ur ovat vý²ky not. Identikace notových osnov je jeden z podproblém, který nejvíce ovliv uje výslednou úsp ²nost rozpoznání. Pokud osnovy ur íme ²patn, p ípadn je v bec nenalezneme, nejsme schopni pokra ovat v rozpoznávání dále. Ze vzdálenosti linek notové osnovy jsme také schopni ur it velikost objekt a vstupní obrázek poté zv t²it nebo zmen²it na velikost odpovídající vzor m (o vzorech více v Kapitole 2.5). Zvolený postup Nejprve je vytvo en histogram obrázku. I-tá poloºka tohoto histogramu reprezentuje po et erných pixel v i-tém ádku. Následn je v histogramu nalezena maximální hodnota. Poté se znovu projdou ádky a rozhodne se, zda je daný ádek linka notové osnovy nebo ne. Za linku jsou povaºovány ádky, které obsahují erných pixel více, neº je dané procento z maximální hodnoty histogramu. V praxi se jako nejlep²í hranice osv d ilo 65 procent. Alternativní postupy Bylo by moºné zkusit n kolikrát vstupní obrázek nepatrn nato it na jednu i druhou stranu a zkusit, zda nebudou maxima histogramu výrazn j²í. Ale ani tento postup nedokáºe eliminovat problémy související se soudkovitostí nebo zvln ním. Výhody a nevýhody zvoleného postupu Pokud jsou linky osnovy vodorovn a linky se neztratily p i p evodu obrázku na ernobílý, funguje metoda ve v t²in p ípad spolehliv. Problém nastává p i vloºení pooto eného vstupního obrázku. Algoritmus také nefunguje v situaci, kdy je ve vstupním obrázku n kolik osnov a poslední osnova kon í nap íklad pouze v polovin ²í ky vstupního obrázku. Jako maximum histogramu se ur í íslo blíºící se ²í ce vstupního obrázku (= délka linek horních osnov), takºe spodní osnova nemá dostate nou ²í ku, aby byla ur ena jako notová osnova. Tento problém by ²el odstranit tím, ºe by se vstupní obrázek rozd lil na dv poloviny a osnovy by se hledaly v kaºdé polovin samostatn. Program také p edpokládá, ºe linky osnovy jsou stejn daleko od sebe. U kvalitního vstupního obrázku tomu tak v naprosté v t²in p ípad skute n je. Problém v²ak nastává u nekvalitních obrázk, kde se jako linky ur í pouze n které ze skute ných linek. Vzdálenosti mezi linkami se pak velmi li²í a rozpoznání dopadne ²patn. Tento problém by ²el odstranit tak, ºe by se po nalezení dvou linek zkusily nalézt dal²í linky ve stejné vzdálenosti jako mezi p vodními linkami, po et erných pixel pot ebných pro uznání ádku za linku by se ov²em sníºil. 9

14 2.3 Smazání notové osnovy Popis problému V osnovách je pot eba smazat linky, aby bylo moºné dále zpracovat objekty na nich algoritmem Flood ll (viz Kapitola 2.4). Po smazání notové osnovy se obrázek rozpadne na jednotlivé objekty, které algoritmus Flood ll ozna í a budou dále zpracovány. Kdybychom osnovu nesmazali, ne²lo by tento algoritmus pouºít, protoºe objekty by byly notovou osnovou spojené, a tak by se ozna ily jako jeden. Pozici osnovy si ov²em musíme zapamatovat, protoºe podle ní se bude ur ovat vý²ka v²ech not. Zvolený postup V programu je moºno nastavit n kolik mód mazání, které se li²í ²í kou okolí mazaného spole n s linkou. ir²í mazání je nutné nastavit v p ípad, kdy p evod obrázku do ernobílé podoby nebo rovnou nekvalitní vstupní obrázek zp sobí, ºe se nad linkou notové osnovy, která je po celé délce vstupního obrázku, objeví je²t jedna linka, která je dlouhá pouze nap íklad tvrtinu délky osnovy. Tato linka se neur í jako linka notové osnovy, protoºe je moc krátká, a tak nemá dostatek erných pixel v histogramu. Pokud by se tato krátká linka nesmazala, s velkou pravd podobností by spojila n kolik objekt dohromady a znemoºnila tak jejich správné rozpoznání. Ukázka toho, kdy je pot eba nastavit v t²í ²í ku mazání, je na Obrázku 2.2. Samotné mazání prochází pixely po celé ²í ce vstupu. Kontroluje Obrázek 2.2: P íklad skute ných dat. Zde je nutné nastavit ²iroké mazání, jinak z stanou v obrázku fragmenty osnovy. vºdy pixely nad a pod notovou osnovou. Jako pixel nad (respektive pod) se po ítá i pixel s horizontální sou adnicí o 1 v t²í nebo men²í, neº kontrolovaný pixel. ƒerná barva pixelu je zachována, pokud je nad ním i pod ním erný pixel a nejedná se o mezeru mezi dv ma objekty. Mezerou mezi objekty rozumíme situaci, kdy je p ímo nad i p ímo pod pixelem pixel bílý a ostatní pixely nad i pod jsou erné. Na Obrázcích 2.3 a 2.4 je ukázáno, kdy se pixel maºe a kdy ne. Pokud je nastaveno ²ir²í mazání, jsou smazány i pixely n kolik bod nad a pod osnovou. Smaºou se ale pouze v situaci, kdy t sn nad osnovou neza íná n jaký objekt, protoºe by poté do²lo k jeho rozd lení a nerozpoznal by se správn. Pokud osnovou objekt prochází, tak se pixely osnovy nemaºou v bec, protoºe by se tím vytvo ila do objektu díra. 10

15 Obrázek 2.3: ƒerven vyzna ený pixel osnovy se smaºe, protoºe je to mezera. Obrázek 2.4: Zde se zelen vyzna ený pixel osnovy ponechá, protoºe je nad ním i pod ním erný pixel a zárove nespl uje denici mezery. Alternativní postupy Bylo by moºné osnovu v bec nemazat. Poté by se musel algoritmus Flood ll modikovat, aby si nev²ímal pixel osnovy, p ípadn by se k ohrani ení objekt musel pouºít algoritmus jiný. Dále by o smazání pixelu osnovy ²lo rozhodnout podle tlou² ky áry v daném míst. Problém této metody je v tom, ºe by mohlo dojít k rozpadnutí celých a p lových not. Výhody a nevýhody zvoleného postupu Výhodou algoritmu je jeho jednoduchost a hlavn jednoduchost dal²ího zpracování. Také je v mazání osnovy pom rn úsp ²ný a málokdy se stane, ºe by se n jaký objekt díky mazání osnovy rozpojil. Problémem je v²ak rozhodování o ²í ce smazané osnovy. O tom algoritmus neumí rozhodnout, a tak je volba ponechána na uºivateli. Pokud by byla tato hodnota napevno ur ená, docházelo by asto k problém m s rozpadnutím objekt (p i ²irokém mazání) nebo se zbytkovými fragmenty osnovy (p i úzkém mazání). K chybám dochází, pokud linku protíná trámec a vlivem nízkého rozli²ení obrazu linka trámce na úseku v t²ím neº jeden pixel splyne s osnovou. Tím pádem algoritmus selºe a trámec se mazáním osnovy rozpojí. Nejedná se ov²em o vadu algoritmu, ale p í inou je spí²e p íli² nízké rozli²ení vstupního obrázku. Splynutí trámce s osnovou je ukázáno na Obrázku Nalezení objekt Popis problému Po smazání notové osnovy je nutné nalézt jednotlivé objekty. Nalezení je pom rn snadné, protoºe za objekt povaºujeme souvislou ernou plochu ohrani enou bílými pixely. 11

16 Obrázek 2.5: Zde vlivem nízkého rozli²ení obrázku splyne trámec s osnovou, takºe je p i mazání osnovy p eru²en. Zvolený postup K nalezení objekt byl pouºit algoritmus Flood ll. Obrázek se prochází sm rem shora dol a zleva doprava, dokud se nenalezne erný pixel. Jakmile je nalezen erný pixel takzvané semínko (seed), tak se pomocí algoritmu Flood ll postupn nalezne celý objekt. Algoritmus Flood ll funguje tak, ºe nejprve obarví na n jakou zadanou barvu (jinou, neº je erná a bílá) po áte ní pixel. Poté postupn obarvuje v²echny jeho sousedy, kte í mají ernou barvu, op t na zadanou barvu. Dále obarví sousedy soused atd., aº je takto rekurzivn obarven celý objekt. Nakonec je tento objekt vy íznut ze vstupního obrázku, abychom na n j nenarazili podruhé. Alternativní postupy lo by hledat pouze ur ité ásti objekt zvlá². Nap íklad nejprve hledat vertikální p ímky jako noºi ky, horizontální jako trámce a pomocné linky apod., poté by ale ne²lo lehce implementovat porovnávání se vzorem. Výhody a nevýhody zvoleného postupu Výhodou je jednoduchá implementace, nevýhodou je nutnost zpracovávat speciáln noty spojené trámcem, protoºe se identikují jako jeden objekt. Vlivem vad obrazu nebo p evodu do ernobílé podoby také asto dojde ke spojení více objekt do jednoho. Pom rn asto také dochází k rozpadnutí jednoho objektu na více ástí. 12

17 2.5 Identikace objekt Popis problému Poté, co nalezneme jednotlivé objekty, je pot eba ur it, o jaký typ objektu se jedná, a ur it jeho parametry (délku a vý²ku noty apod.). Zvolený postup K identikaci objektu v programu slouºí (v souladu se zadáním) porovnávání se vzorem. K programu je p iloºena sloºka se vzory. S t mito vzory se nalezený objekt postupn porovná a na základ nejlep²í shody se objekt identikuje. Protoºe nap íklad dv noty nad sebou spojené noºi kou (reprezentující dvojhlas) se ur í jako jeden objekt, je pro kaºdý takový objekt pot eba jeden vzor (takové objekty dále nazýváme dvojnoty). Sloºka se vzory obsahuje vzory pro jednohlasy a dvojhlasy. Vzory pro trojhlasy nebyly za azeny kv li jejich velkému po tu. Protoºe noty spojené trámcem mohou být r zn daleko od sebe, m ºe mít trámec r zný sklon a délku. Pokud bychom tedy ur ovali tyto spojené noty rovnou porovnáním se vzorem, bylo by vzor pot eba neúnosn mnoho. Trámec je tedy nejprve od íznut a výsledné objekty se poté zpracovávají dál samostatn (viz Kapitola 2.9). Alternativní postupy Místo porovnávání se vzorem by se mohly v objektu pouze ur it jednotlivé ásti (zkusila by se nalézt vertikální p ímka (noºi ka), v p ípad úsp chu by se rozhodlo, na které stran bude hlavi ka a jestli nota obsahuje praporec nebo trámec a podobn ). V této práci v²ak ov ujeme, zda lze identikaci provést práv pomocí porovnávání se vzorem. Výhody a nevýhody zvoleného postupu Výhodou je snadná implementovatelnost, moºnost lehce p idat dal²í vzory a pom rn velká úsp ²nost rozpoznávání. Nevýhodou je asová náro nost a nutnost mít velké mnoºství vzor. Pro trojhlasy je pak tento algoritmus prakticky nepouºitelný, protoºe by bylo pot eba obrovské mnoºství vzor a rozpoznávání by trvalo velmi dlouho. 2.6 Porovnávání se vzorem Popis problému Abychom mohli identikovat, o jaký objekt se jedná, porovnáme objekt se vzory a vybereme vzor s nejv t²í shodou. Je pot eba zajistit, aby se porovnávaly odpovídající pixely a aby drobná vada obrazu nezp sobila, ºe se objekt posune a porovnání díky tomu dopadne ²patn. Vada obrazu na objektu na Obrázku 2.6 nesmí tém ovlivnit výsledek porovnání. Dal²ím problémem, který bylo pot eba vy e²it, je to, ºe noºi ka not m ºe být libovoln dlouhá. Tento problém je výrazn j²í, pokud tvr ová nota vznikne vy- íznutím z trámce. Protoºe trámec je vºdy p ímka a m ºe spojovat noty s r znou 13

18 Obrázek 2.6: Ukázka vady obrazu. Pokud bychom porovnávali tento objekt se vzorem celé pomlky p ímo a e shora dol, díky pixelu navíc ve vrchní ásti ( erven ) by shoda byla malá. délkou, musí se noty trámci p izp sobit tak, ºe se jim zkrátí nebo prodlouºí noºi ka. S tím je tedy nutno p i porovnávání se vzorem po ítat. R zná délka noºi ek not je vid t na Obrázku 2.7. Zvolený postup Obrázek 2.7: P íklad r zn dlouhých noºi ek not. Porovnáváme vºdy dva obrázky objekt a vzor. Oba dva jsou rozd leny v míst prvního protnutí notovou osnovou zdola nebo shora, a to podle sm ru vzoru. Tím se zajistí, ºe drobné vady obrazu porovnávání tém neovlivní. Odpovídající ásti vzoru a objektu jsou spolu vºdy porovnány. Rozdílná vý²ka r zných not je e²ena pomocí vlastnosti natahovací nebo smr² ovací u vzoru. Pokud je vzor nota, jejíº noºi ka by se mohla prodlouºit nebo zkrátit, je to u vzoru pozna eno spole n s informací, jaké místo se m ºe zkrátit nebo prodlouºit. Pokud tedy mají objekt a vzor rozdílnou vý²ku a vzor je smr² ovací nebo natahovací, tak se jeho vý²ka upraví (nakopírují nebo ignorují se pixely v prodluºovací i smr² ovací ásti). Výsledkem je procento shody, které je vypo ítáno z po tu pixel obrázku, které se shodují se vzorem, od kterého jsou ode teny pixely, které má vzor navíc (p e nívají). Rozd lení objektu je znázorn no na Obrázku 2.8. Obrázek 2.8: Vzor i objekt se takto rozd lí v míst, kde je protíná notová osnova. 14

19 Alternativní postupy Mohli bychom mít od kaºdého natahovacího nebo smr² ovacího vzoru uloºených n kolik variant s r znou délkou noºi ky a vlastnosti natahovací a smr² ovací v bec nepouºívat. Tím bychom zkrátili dobu rozpoznávání, protoºe bychom na základ r zné vý²ky objekt mohli rovnou porovnávání ukon it. Výsledky shody by ale poté nebyly p esné, protoºe moºností, jak m ºe být noºi ka dlouhá, je mnoho a nebyli bychom schopni je mít v²echny uloºené jako vzor. Výhody a nevýhody zvoleného postupu Výhodou je, ºe rozpoznávání tém negativn neovlivní nap íklad pixel navíc na hlavi ce noty. Pozitivní také je, ºe délka noºi ky m ºe být libovolná. Nevýhodou je, ºe postup nefunguje na dv noty proti sob spojené hlavi kou. Protoºe takový vzor by mohl být natahovací z obou stran, nem ºeme ur it pevné místo protnutí ani z jedné strany a algoritmus selºe. Takový objekt je znázorn n na Obrázku 2.9. Obrázek 2.9: Zde dojde ke spojení not v dvojhlasu. Takovou situaci nejsme schopni na²ím algoritmem vy e²it. 2.7 Reprezentace objekt Popis problému Nalezené objekty musíme v programu n jak reprezentovat. Bylo nutno rozhodnout, zda dv noty spojené nap íklad spole nou noºi kou reprezentovat jako jeden objekt nebo jako dva. Dal²í otázkou byla p edznamenání. P edznamenání je moºné ve výsledku reprezentovat jako samostatný objekt nebo si pouze u noty pozna it, ºe je její vý²ka nap íklad zvý²ená k íºkem. Zvolený postup V programu je bázová t ída reprezentující objekt. Od ní jsou odvozeny dal²í t ídy reprezentující jednotlivé prvky notového záznamu jako jsou noty, pomlky, taktové áry apod. (podrobn ji viz Kapitola 3.1.5). Od objektu reprezentujícího jednu notu byl odvozen objekt pro reprezentaci dvou spojených not (dále nazýván dvojnota, viz vý²e). Tento objekt obsahuje údaje o délce, vý²ce a dal²ích vlastnostech obou spojených not. 15

20 P edznamenání je sice ze za átku rozpoznáno jako samostatný objekt, v dal- ²ím zpracování rozpoznaných objekt je v²ak zji²t no, které v²echny noty a dvojnoty ovliv uje, toto je u nich pozna eno a s p edznamenáním samotným se jiº dále nepracuje. Tento p ístup byl pouºit, protoºe zjednodu²uje p evod do MIDI (viz Kapitola 2.18). Alternativní postupy Bylo by moºné si dv spojené noty pamatovat jako dva objekty reprezentující notu. Tyto noty by za ínaly ob ve stejnou dobu. Problém by v²ak nastal s obrázkem noty. Ob noty by u sebe musely mít stejný obrázek celé dvojnoty a jedna z not by se nevykreslovala do záv re ného výstupního obrázku. Pokud bychom s p edznamenáním pracovali aº do konce výpo tu samostatn, musel by se výpo et toho, které noty p edznamenání ovliv uje, p esunout do ásti s p evodem na MIDI. To by p evod u inilo podstatn sloºit j²ím a naru²ilo by to odd lení jednotlivých krok algoritmu. Výhody a nevýhody zvoleného postupu Výhodou je názornost objektového modelu. Objekt reprezentující dvojnotu m ºeme rovnou vykreslit do záv re ného výstupního obrázku. Výhodou reprezentace uloºení p edznamenání rovnou u dot ených objekt je zjednodu²ení p evodu na MIDI. Nevýhodou je, ºe se k objekt m typu dvojnota musíme chovat speciálním zp sobem, protoºe v sob vlastn obsahuje dva objekty typu nota. Tím se velmi prodluºuje a znep ehled uje kód. 2.8 Reprezentace vzor Popis problému Je nutné v programu n jak reprezentovat vzory. Bylo pot eba rozhodnout, jaké v²echny vlastnosti bude kaºdý vzor mít. Problém byl s notami s pomocnou linkou. Pokud je linka sou ástí noty (nap íklad u tvr ových not), spojila se díky pomocné lince nota s p edznamenáním. Bylo nutné vy e²it, jak toto v programu reprezentovat. Spojení k íºku a noty p es pomocnou linku je na Obrázku Obrázek 2.10: Nota se díky pomocné lince spojila s k íºkem do jednoho objektu. Pro dal²í výpo ty pot ebujeme n jak odd lit vzory klí a ísel, kv li p ípadnému druhému pokusu o nalezení klí e nebo taktového ozna ení (viz Kapitoly 2.12 a 2.13). 16

21 Zvolený postup Seznam vzor je uloºen v textovém souboru. Tento soubor se pouºívá pro porovnání nalezených objekt se vzorem. Vzory s klí i a s ísly taktu jsou navíc uloºeny ve zvlá²tním souboru. Ke kaºdému záznamu v seznamu vzor je ve sloºce Vzory/ odpovídající obrázek. Jeden záznam v databázi vzor obsahuje: název obrázku vzoru moºné pozice, na kterých ho m ºe protnout notová linka typ variantu n kolik vý²ek informaci, zda je natahovací nebo smr² ovací p ípadn sou adnice natahovacích nebo smr² ovacích ástí p edznamenání Typ vzoru ur uje, zda se jedná o notu, dvojnotu, pomlku apod. Varianta dále specikuje, o jaký objekt se jedná. U not, dvojnot a pomlk reprezentuje délku, u íslice taktu reprezentuje tuto íslici, u ostatních objekt reprezentuje jejich typ. Pokud se jedná o notu, zna í p ípadné vý²ky p ímo vý²ku dané noty. P íkladem je tvr ové C1, u kterého ze vzoru m ºeme vý²ku ur it rovnou podle pomocné linky. Pokud se jedná o dvojnotu, zna í vý²ka rozdíl mezi vý²kou první a druhé noty. Natahovací vzor se ve své natahovací ásti m ºe libovoln prodlouºit. P íkladem je osminová nota s praporkem, která se m ºe natahovat v míst t sn pod praporkem. Smr² ovací nota se m ºe navíc i smr²tit, tj., m ºe se smazat libovolná ást její smr² ovací oblasti, která není dlouhá pouze jeden pixel jako v p edchozím p ípad. P íkladem je nap íklad tvr ová nota. Seznam p edznamenání má u sebe vzor v p ípad, ºe se jedná o notu nebo dvojnotu obsahující pomocnou linku, která se spojí s daným p edznamenáním a vznikne jeden objekt. Pro kaºdé takové p edznamenání si vzor pamatuje typ p edznamenání a jeho pozici (aby bylo u dvojnoty vid t, ke které z not pat í). P i spu²t ní programu se z kaºdého záznamu v hlavní databázi vzor vytvo í jeden objekt reprezentující vzor s danými vlastnostmi. Po nalezení vzoru, s kterým se objekt nejvíce shoduje, se podle vlastností vzoru vytvo í nový objekt. Alternativní postupy Zvlá²tní soubor se vzory klí a takt není nezbytný, ²lo by i pozd ji pouºívat nap íklad pouze n které ádky hlavní databáze vzor. Pokud bychom p i mazání osnovy smazali i pomocné linky, nemusely by u vzor být pomocné linky, a tím pádem ani p edznamenání. 17

22 Výhody a nevýhody zvoleného postupu Výhodou samostatného souboru s ísly a klí i je snadné ur ení, které vzory jsou klí e nebo ísla. Nevýhodou je nutnost udrºovat a na ítat dva soubory navíc. Vzor klí a ísel je ale tak málo, ºe to není podstatná nevýhoda. Výhodou nemazání pomocných linek je snadné ur ení vý²ky n kterých not p ímo z obrázku. Pokud má totiº nota noºi ku, tak pomocná linka tvo í s notou jeden objekt, tím pádem je vzor pro kaºdou notu jiný. Také se nemusíme starat o to, abychom náhodou místo pomocné linky nesmazali n jaký objekt. Nevýhodou ale je, ºe pot ebujeme více vzor a speciální t ídu v programu pro reprezentaci pomocné linky. (Pokud linka netvo í s notou jeden objekt - nap íklad u celých not.) 2.9 Mazání trámce Popis problému Pokud nalezneme noty spojené trámcem, nem ºeme je za ít rovnou porovnávat se vzorem (protoºe trámec m ºe mít libovolnou délku a sklon, viz vý²e). Trámec je nutné smazat a teprve výsledné objekty, které vzniknou rozpadnutím p vodního obrázku, porovnávat se vzory. První problém je, jak v bec ur it, ºe se jedná o notu s trámcem. Dále se v objektu musí identikovat správn trámec a musí být smazán. P itom si ale musíme pamatovat, ºe výsledné objekty vznikly smazáním trámce a na kterých místech byl trámec dvojitý a kde jednoduchý, abychom mohli správn ur it délku vzniklých not. Zvolený postup O tom, jestli je daný objekt n kolik not spojených trámcem, rozhodneme podle velikosti objektu vzhledem k velikosti osnovy a podle pom ru stran obdélníku, který nalezený objekt ohrani uje. Po rozhodnutí, ºe daný objekt obsahuje trámec, se nejprve zkusí nalézt trámec shora. To odpovídá situaci, kdy mají noty noºi ky nahoru. Nejprve se naleznou pravá a levá hranice, které p ibliºn odpovídají horizontálním sou adnicím za átku a konce trámce. Protoºe trámec m ºe spojovat i dvojnoty, které mohou mít horní hlavi ku p esn uprost ed mezi dolní hlavi kou a trámcem jako nap íklad na Obrázku 2.11, hledá se hranice na dvou místech vzdálených n kolik pixel od sebe, dokud se nenalezne shoda. Dále se vypo ítá horizontální sou adnice bodu, který je p esn uprost ed trámce, ímº se trámec rozd lí na dv poloviny. Pro tyto t i hodnoty se nalezne vertikální sou adnice prvního erného bodu shora. Po ítá se s vadami obrazu, takºe se zjistí i sou adnice dvou okolních bod, a pokud se prost ední sou adnice významn li²í od ostatních dvou, vezme se jeden ze sousedních bod. Nyní máme t i body (za átek, prost edek a konec trámce), které ur ují dv p ímky. Vypo ítáme tedy jejich vyjád ení pomocí y = px + q. Nyní pot ebujeme zjistit, zda se v objektu na tomto míst opravdu nachází p ímka a objekt tedy obsahuje trámec shora. 18

23 Obrázek 2.11: Hlavi ka noty ( erven ) je mezi trámcem a druhou hlavi kou. Pokud bychom hledali hranici p ímo uprost ed, narazili bychom na hlavi ku a hranice by nám vy²la p íli² vpravo. Ov ení probíhá tak, ºe se spo ítá po et bílých pixel na míst p ímky s daným po áte ním a koncovým bodem a daným vyjád ením. Pokud je po et bílých (tj. ²patných) bod dostate n malý, je úsek vyhodnocen jako p ímka. Protoºe jsme trámec rozd lili na dv ásti, vyhodnocujeme, zda se jedná o dv p ímky. Je to kv li p ípadu trámce spojujícího dv noty s velkým rozdílem vý²ky. V takovémto p ípad se asto stává, ºe funkce pro zji²t ní levé a pravé hranice i p es snahu nalézt hranici na noºi ce ur í jako hranici bod, kde kon í hlavi ka noty, a tím pádem bude po áte ní bod p ímky úpln mimo trámec. Kdyº máme trámec takto rozd lený na dv poloviny, tak nám s velkou pravd podobností alespo jedna z p ímek vyjde správn. Pokud nám tedy vyjde, ºe alespo jeden z úsek obsahuje p ímku, na²li jsme trámec a m ºeme ho smazat. Nejprve ho ale zkusíme roz²í it sm rem doprava i doleva, abychom m li jistotu, ºe ho smaºeme celý. Poté zjistíme tlou² ku trámce, coº je realizováno pr chodem po vrstvách. Trámec máme vyjád ený jako p ímku ve formátu y = px+q. Tento vyjad uje p ímku, kterou trámec kon í hrani ní p ímku trámce. Postupn zvy²ujeme q a tím dostaneme p ímky, které jsou s hrani ní p ímkou rovnob ºné, ale jsou posunuté. Vºdy zjistíme, jedná-li se o p ímku, o bílé místo nebo o ást p ímky. Tímto se zjistí, na kterých místech je trámec dvojitý a jak je ²iroký. Nakonec nalezneme spodní hranici trámce, pod kterou za ínají noty. V²e nad touto p ímkou je smazáno. Pokud nebyla ani jedna z oblastí identikována jako p ímka, zkusí se nalézt trámec zdola. To odpovídá situaci, kdy mají noty noºi ku sm rem dol. Algoritmus je obdobný jako v p edchozím p ípad. Pokud není trámce nalezen ani zdola, jedná se pravd podobn o jeden objekt, který byl fale²n ur en jako více objekt spojených trámcem. Vzory objekt, u kterých hrozí zám na s trámcem, jsou shromáºd ny ve zvlá²tní databázi. V p ípad nenalezení trámce zkusíme objekt porovnat postupn se v²emi vzory z této databáze. V p ípad nenalezení dostate né shody se k objektu chováme jako k objektu UFO. Více o t chto objektech viz Kapitola Alternativní postupy Protoºe i kdyº nalezneme v objektu p ímku, kterou povaºujeme za trámec, tak se m ºe stát, ºe trámec je ve skute nosti z druhé strany (viz Obrázek 2.12), ²lo by zkusit nejprve nalézt p ímky z obou stran a ta p ímka, která by v sob obsahovala více erných bod, by se ur ila jako trámec. Ne e²í to ov²em situaci, kdy p ímka, kterou povaºujeme za trámec, prochází skrz hlavi ky not, a tak obsahuje stejný 19

24 Obrázek 2.12: Hlavi ky not jsou v jedné ad s minimálními rozestupy, a tak se myln ur í jak trámec. po et bod jako trámec (protoºe hlavi ky not jsou v t²inou o tro²ku ²ir²í neº trámec a tím se vyrovná ztráta za bílé mezery mezi hlavi kami). Pro vy e²ení této situace by se nap íklad musely zkontrolovat je²t p ímky nad a pod domn lým za átkem trámce, a pokud by se po et jejich erných pixel výrazn li²il a zárove nebyl zanedbateln malý, o trámec by se nejednalo. Výhody a nevýhody zvoleného postupu Nejrizikov j²í ástí algoritmu je ur ení, zda se opravdu jedná o notu s trámcem. Program pom rn asto ur í jako notu s trámcem i nap íklad osminovou notu s pomocnou linkou a p edznamenáním. To áste n e²í následné porovnání se vzory p i nenalezení trámce. Zam ování t chto not za trámec by se dalo zabránit dal²í kontrolou, zda se jedná o notu s trámcem, nap íklad i podle p ítomnosti nejmén dvou hlavi ek. Dále algoritmus selhává, pokud má jedna z not extrémn krátkou noºi ku. Hlavi ka této krátké noty se totiº dostane do míst, kde by jinak byl dvojitý trámec. Hlavi ka se vyhodnotí jako linka trámce a smaºe se. Pokud byla sou ástí dvojnoty, vznikne z ní samostatná nota a její délka se vyhodnotí jako ²estnáctinová. Tato situace je ukázána na Obrázku Obrázek 2.13: Hlavi ka noty ( erven ) je v míst, kde by byla linka trámce, kdyby byla nota ²estnáctinová. P i zpracování se smaºe spolu s trámcem Ur ení vý²ky a délky noty Popis problému Ze vzoru noty v t²inou nejsme schopni ur it, jakou má nota vý²ku. Musíme ji tedy zjistit dodate n z polohy na notové osnov. Pokud nota vznikla od íznutím trámce, nejsme schopni ur it ani její délku (bude vypadat jako tvr ová). Musíme tedy její délku ur it také dodate n. 20

25 Zvolený postup Vý²ka noty se ur uje z toho, zda nota leºí v meze e nebo na lince a jaká linka je jí nejblíºe. Noty nad a pod notovou osnovou jsou ur eny jako noty p ímo nad nebo p ímo pod notovou osnovou (jejich správná vý²ka je ur ena pozd ji, pomocí po tu pomocných linek). Noty, které v sob obsahují pomocnou linku, mají svoji vý²ku napevno ur enou uº ze vzoru. Po smazání trámce si pamatujeme, ºe jsme trámec smazali spole n s pozicemi dvojitého trámce, a poté upravíme délku noty podle toho, zda nad ní byl trámec jednoduchý nebo dvojitý. Alternativní postupy Vý²ka noty nad nebo pod notovou osnovou by ²la zjistit p ímo ze vzdálenosti od notové osnovy. Výhody a nevýhody zvoleného postupu Ur ení vý²ky noty funguje na kvalitním vstupu celkem spolehliv. Nevýhodou je velká komplikovanost ur ování vý²ky, protoºe se vyuºívá n kolika p ístup najednou. Je tím ale zvý²ena úsp ²nost rozpoznávání Rozd lení na takty a zohledn ní p sobení sousedních objekt Popis problému Po rozpoznání jednotlivých objekt musíme ur it, jak na sebe objekty vzájemn p sobí, a výslednou skladbu rozd lit do takt podle nalezených taktových ar. Zvolený postup Rozd lení na takty probíhá p ímo a e, objekty mezi dv ma nalezenými taktovými arami tvo í jeden takt. Prvním taktem jsou objekty od taktového ozna ení po první taktovou áru. Taktové áry jiº dále nepot ebujeme, zapamatujeme si pouze jejich pozice pro záv re né vykreslení. Seznam nalezených objekt se postupn prochází. Pokud je nalezena te ka, nalezne se podle její sou adnice správný objekt, který se prodlouºí. Pro ú ely vykreslování se také u objektu pozna í, ºe za ním byla te ka. P i hledání správného objektu se po ítá s tím, ºe objekt nemusí být v seznamu objekt hned p ed te kou. Program vy e²í také situaci, kdy jsou spojené trámcem dv noty v r zných taktech. Pokud se tak stane, je druhá nota nejprve za azena do ²patného (p edchozího) taktu. P i zpracování not v taktech je toto odhaleno a nota je p i azena do taktu, do kterého pat í. Po ítá se s tím, ºe objekty za touto notou mohou být také ²patn za azeny, mohou ale také být ve správném taktu. Tato situace se znázorn na na Obrázku

26 Obrázek 2.14: Díky trámci se nota ocitne ve ²patném taktu. Odráºka, k íºek a bé ko jsou v seznam objek aº za ní, a p itom do tohoto taktu na rozdíl od ní pat í. Obrázek 2.15: Díky trámci je nota rozpoznána d íve neº k íºek a je tedy v seznamu objekt p ed ním. Pokud je nalezena posuvka, je op t nalezen objekt, ke kterému se vztahuje. Po ítá se s tím, ºe posuvka m ºe být v seznamu objekt aº za objektem, ke kterému se vztahuje (viz Obrázek 2.15). Dále se zkontroluje, zda p edznamenání nemá vliv na n kterou z not. V úvahu se ov²em musí brát i odráºky. Je to vy e²eno tak, ºe si pamatujeme tzv. lokální bé ka, k íºky i odráºky posuvky platné pro zbytek taktu. V moment, kdy nalezneme odráºku, odstraníme ze seznamu odpovídající bé ko nebo k íºek. Pokud zjistíme, ºe by p edznamenání skladby mohlo ovlivnit notu, zkontrolujeme nejd íve, zda p ed ní není odráºka. Program nedovoluje, aby p ed notou, která je zvý²ena k íºkem v p edznamenání skladby, bylo je²t bé ko (nebo p ed sníºenou notou k íºek). Pokud je nalezena pomocná linka, zvý²í se nebo sníºí se nota, ke které linka pat í. Pokud je klí skladby basový, vý²ka v²ech not se musí p epo ítat. Alternativní postupy Vztahy mezi objekty by ²ly ur it hned po porovnání se vzorem. Bylo by to v²ak velmi komplikované, protoºe díky vadám obrazu a moºnému malému posunutí objekt nem ºeme spoléhat na správné po adí rozpoznaných objekt. Výhody a nevýhody zvoleného postupu Výhodou je jednodu²²í implementace. Nevýhodou je nutnost projít seznam nalezených objekt je²t jednou. 22

27 2.12 Hledání klí e Popis problému Po rozpoznání objekt se musíme ujistit, ºe byl nalezen klí, a pokud se jedná o klí basový, tak i dv te ky za klí em. Zvolený postup Projdeme objekty ze za átku taktu. Pokud nebyl nalezen klí, pokusíme se ho najít je²t jednou. Postupujeme tak, ºe znovu porovnáme objekty ze za átku taktu se v²emi vzory klí. Pokud nalezneme dostate nou shodu, nalezli jsme klí. Námi nalezený klí se tedy ur il jako jiný objekt, ale vzhledem k tomu, ºe se nachází na za átku taktu a s klí em má také dostate nou shodu, je pravd podobné, ºe to bude klí. Pokud dostate nou shodu nenalezneme, necháme klí zadat uºivatelem. Alternativní postupy Protoºe bez klí e nem ºeme dál rozpoznávat, mohli bychom nechat uºivatele zadat klí vºdy, aby se p ede²lo omyl m. Klí má v²ak velmi specický tvar, a tak je velmi asto správn rozpoznán. Výhody a nevýhody zvoleného postupu Výhodou je, ºe program velmi asto nalezne klí sám a správn. Problém nastává, pokud nalezen není a v následném druhém pokusu o jeho nalezení je n jaký jiný objekt ²patn ur en jako klí Hledání taktového ozna ení Popis problému Po rozpoznání objekt se musíme ujistit, ºe byl nalezen dostate ný po et ísel, abychom z n j mohli zjistit taktové ozna ení. Zvolený postup Po nalezení klí e se podíváme, zda byla nalezena alespo dv ísla s rozdílnou vertikální sou adnicí (=horní a dolní íslo). Pokud bylo ísel nalezeno p íli² málo nebo nebylo nalezeno ºádné, pokusíme se zjistit, zda nedo²lo vlivem mazání osnovy k rozpadnutí ísla na dv ásti. Pokud ano, vytvo íme ze dvou objekt op t jeden. Pokud ºádné dva takové objekty nenalezneme, postupujeme obdobn jako u hledání klí e a zkusíme nalézt objekt s dostate nou shodou s n kterým z ísel. Pokud ani takto nejsme úsp ²ní a jedná se o první notovou osnovu (takºe nem ºeme p evzít taktové ozna ení z p edchozí osnovy), necháme ísla zadat uºivatelem. 23

28 Alternativní postupy Stejn jako v p ípad hledání klí e bychom mohli ísla rovnou nechat zadat uºivatelem. Výhody a nevýhody zvoleného postupu Op t je výhodou samostatnost programu a nevýhodou ob asné chyby Ur ení noty v ase Popis problému Po ur ení správné délky not je pot eba zjistit, kdy která nota hraje. Toto není pouze d sledkem horizontální sou adnice noty, ale také toho, v jakém je nota hlasu a jaké noty se nachází p ed ní. Zvolený postup Nejprve se zjistí, které noty jsou nad sebou. Tyto noty se v taktu se adí podle rostoucí ypsilonové sou adnice. Dále se u kaºdé noty nastaví, v jakém je hlasu. V této fázi se nezohled ují noty, které jsou p ed ní, pouze ty nad ní (Je to, jako kdyby danou skupinou objekt nad sebou skladba za ínala) Obrázek 2.16: Nejprve se nastaví hlasy tak, jako kdyby kaºdá skupina not byla první. Tím vznikne chyba, protoºe druhá nota má být správn ve druhém hlasu. První rozd lení na hlasy je na Obrázku Nakonec se zohlední i objekty p ed danou notou a objekt m se nastaví správn hlasy. Tyto hlasy se ur í z po tu objekt nad danou notou a z informace, kolik dob zbývá na jednotlivé hlasy, aby trvaly v²echny stejn dlouho. Kone né rozd lení na hlasy je na Obrázku Obrázek 2.17: Nakonec se hlasy nastaví správn. Alternativní postupy Bylo by moºné uº rovnou zohlednit noty p ed danou notou. Odpadlo by tak jedno procházení objekt v taktu, ale kód by se velmi znep ehlednil. 24

29 Výhody a nevýhody zvoleného postupu Výhodou je p ehlednost a jednoduchost implementace. Nevýhodou je dvojí procházení taktu. Ale vzhledem k tomu, ºe nejpomalej²í ástí programu je porovnávání se vzory, je zde vliv na rychlost programu zanedbatelný Hlídání délky taktu Popis problému Je nutné hlídat, aby se nep esáhla doba, po kterou má kaºdý takt trvat (kdybychom rozpoznali del²í notu, neº má správn být) a aby takt netrval moc krátce (kdybychom n jakou notu nerozpoznali nebo ji rozpoznali jako krat²í notu). Zvolený postup Po ur ení taktového ozna ení se vypo ítá, kolik dob se do taktu vejde (tzn. maximální délka taktu). Po ur ení, která nota pat í ke kterému hlasu, se zkontroluje, zda nedo²lo k p ekro ení maximální délky taktu. Pokud se tak stalo, je délka posledního objektu zkrácena tak, aby se objekt do taktu p esn ve²el. Pokud by se jeho délka m la sníºit na 0, je jeho p vodní délka zachována a je pouze zakázáno jeho p idání do et zce pro p evod na MIDI. Na konci kaºdého taktu je také zkontrolováno, zda jsou v²echny hlasy skladby v taktu dostate n dlouhé. Pokud ne, je poslední objekt p íslu²ného hlasu prodlouºen. Tímto postupem je zaru eno, ºe v²echny hlasy taktu za nou a skon í ve stejný as a také, ºe v²echny takty budou trvat stejnou dobu. Pokud dojde k dodate nému prodlouºení nebo zkrácení délky noty, dvojnoty nebo pomlky, p ípadn k jejímu úplnému vynechání, je ve výstupním obrázku její barva nastavena na modrou. Alternativní postupy Bylo by moºné si r zných délek takt v bec nev²ímat. To by se dalo jednodu²e implementovat, výsledkem by v²ak bylo, ºe by jednotlivé hlasy v jednom taktu mohly za ít v r znou dobu. Také pokud by do²lo v d sledku ²patného p evodu na ernobílý obrázek ke vzniku mnoha vad obrazu, které by se ur ily jako noty nebo pomlky, do²lo by k obrovskému prodlouºení dot ených takt, coº by zcela zni ilo výsledný MIDI soubor. Dal²ím moºným postupem by bylo v²echny objekty, které se do dané maximální délky nevejdou, zahrát najednou na konci taktu tak, aby se p esn ve²ly. Tento postup sice v²echny nevýhody prvního p ístupu opravuje, ná² program ale po ítá s tím, ºe skladba bude maximáln t íhlasá. Tento p ístup tedy v na²em p ípad není jednodu²e implementovatelný, a protoºe nemá ºádné výhody oproti zvolenému ignorování p ebývajících dob, nebyl do programu zahrnut. Dále by bylo moºno p i p ekro ení délky ze seznamu objekt taktu odstranit ty objekty, které mají nejmen²í shodu se vzorem. Protoºe ale ty nejmén rozpoznané objekty jiº byly odstran ny hned po porovnávání, není rozdíl mezi procenty shody tak velký a metoda by nem la výrazn vy²²í úsp ²nost. Také by bylo moºné v míst, kde p esáhneme délku taktu, p idat dal²í takt. Do 25

30 n j by se daly noty, které se do p edchozího taktu neve²ly. Vzhledem k tomu, ºe se díky vadám obrazu, které se rozpoznají jako objekty, délka taktu asto p ekro í mnohonásobn, mohla by se takto operace opakovat mnohokrát. Tato metoda by m la smysl pouze v p ípad, ºe by se nerozpoznala taktová ára a my bychom jí díky této metod zp tn rozpoznali. Ale vzhledem k tomu, ºe taktová ára má specický tvar, a tak k takovýmto chybám nedochází asto, byla by tato metoda spí²e kontraproduktivní. Výhody a nevýhody zvoleného postupu Výhodou je, ºe v²echny takty trvají stejn dlouho. Nevýhodou je velký zásah do rozpoznané skladby v p ípad, ºe délka taktu nesouhlasí Zpracování objekt s malou shodou Popis problému ƒasto se stane, ºe vinou ²patného p evodu do ernobílé podoby nebo díky vad obrazu vzniknou objekty, které se neshodují dostate n s ºádným objektem. Bylo nutné vy e²it, jak se k takovým objekt m chovat. Dále bylo nutné rozhodnout, co se stane, pokud se nepoda í nalézt trámec zdola ani shora. Zvolený postup Do programu byla p idána t ída pro reprezentaci nerozpoznaných objekt. Dále byla p idána t ída pro reprezentaci objekt, které byly ur eny jako noty spojené trámcem, ale funkce na smazání trámce ºádný trámec nena²la. Tyto objekty (dále nazývané UFO) jsou ukládány do samostatného seznamu a uºivatel si m ºe zapnout nebo vypnout jejich zobrazování ve výstupním vygenerovaném obrázku. Otázkou je, jak velké procento shody povaºovat za dostate né. Na tuto otázku neexistuje jednozna ná odpov. V praxi se nám nejvíce osv d ila hranice 20 procent. Alternativní postupy Bylo by moºné vºdy objekt identikovat s n jakým vzorem, i kdyº by shoda byla velmi malá. To ov²em vede u mén kvalitních obrázk asto k tomu, ºe se v míst zrn ní rozpozná mnoho objekt, coº zkazí celý p evod. Pokud by se zvý²ila hranice pro uznání shody se vzorem, docházelo by ast ji k zahazování správn rozpoznaných objekt, u ponechaných objekt bychom v²ak m li v t²í jistotu, ºe jsou rozpoznané dob e. Pokud by se hranice pro uznání shody se vzorem sníºila, sníºil by se po et zahozených objekt, ale rozpoznali bychom asto nesmyslné objekty a celková úsp ²nost by se sníºila. 26

31 Výhody a nevýhody zvoleného postupu Výhodou je, ºe se takto elegantn zbavíme vad obrazu a r zných fragment objekt. Nevýhodou je, ºe takto m ºeme zahodit i objekty, které se identikovaly se správným vzorem, jejich shoda byla ov²em moc malá Ur ení úsp ²nosti rozpoznání a její zvý²ení Popis problému Bylo pot eba nalézt zp sob, jak porovnávat výsledky rozpoznávání mezi sebou, abychom mohli bez pomoci uºivatele nalézt nejlep²í výsledek. Zvolený postup Jako hlavní míra úsp chu bylo ur eno procento shody se vzorem. Celková úsp ²nost rozpoznání se vypo ítá jako sou et procent shody v²ech rozpoznaných objekt minus penalizace za UFO. Jako penalizace za jeden nerozpoznaný objekt se osv d ila hodnota 0.9. Za nenalezení trámce nelze rozpoznání penalizovat jednou konkrétní hodnotou. Je to z toho d vodu, ºe jako trámec se m ºe ur it i velký kus notové osnovy, ve kterém se nesmazaly linky. To zna í, ºe rozpoznání nebylo úsp ²né mnohem více, neº kdyº se pouze nerozpozná malý úsek not s trámcem. Jako penalizace za nenalezení trámce byl tedy zvolen 0.9 násobek pom ru ²í ky objektu a ²í ky b ºné noty. Pokud se v bec nenalezne osnova, je výsledné skóre velmi hluboko v minusu, aby bylo zaji²t no, ºe jakékoli jiné rozpoznání s nalezenou osnovou bude úsp ²n j²í. V nastavení programu je volba Zkusit v²echno. Po aktivování tohoto módu se provede postupn rozpoznání se v²emi moºnými kombinacemi hodnot parametr a vybere se rozpoznání s nejlep²ím výsledkem. Alternativní postupy lo by neode ítat ºádnou penalizaci za nerozpoznané objekty a nenalezené trámce. Také by bylo moºné jako míru ur it pouze po et nerozpoznaných objekt nebo po et objekt rozpoznaných se shodou vy²²í, neº je ur itá hranice. Výhody a nevýhody zvoleného postupu Vybraná metrika pom rn p esn popisuje úsp ch rozpoznání. Problém by mohl nastat ve chvíli, kdyby se v²echny objekty rozpoznaly dob e, ale v d sledku p evodu do ernobílé podoby by se je²t objevily n jaké fragmenty, které by se identikovaly jako UFO. Ty by sníºily úsp ²nost rozpoznání, a to by tedy mohlo získat niº²í výsledek, neº n jaké jiné rozpoznání, kde by se nerozpoznaly úpln v²echny objekty, ale nedostalo by penalizaci za UFO. Mód Zkusit v²echno sice nalezne nejlep²í moºný výsledek, trvá v²ak velmi dlouho (aº n kolik hodin). 27

32 2.18 P evod na MIDI Popis problému Bylo nutné vy e²it, jak p evést výsledné objekty do formátu MIDI. Zvolený postup K p evodu byla pouºita knihovna CFugue ([4]). Pro správnou funkci knihovny bylo nutné vytvo it podle nalezených objekt et zec ve vstupním formátu knihovny. Struktura et zce je velmi jednoduchá. Jednotlivé hlasy jsou odd leny speciální zna kou. V jednotlivých hlasech jsou za sebou napsány noty a pomlky. Bylo nutno vy e²it p ípad, kdy je ze za átku skladba jednohlasá a dal²í hlas za ne hrát aº pozd ji. V tomto p ípad musí být na za átek druhého hlasu p idány pomlky, aby poté druhý hlas za al hrát ve správnou dobu. Alternativní postupy Existuje mnoho knihoven pro p evod na MIDI. Bylo by také moºné se na ºádnou knihovnu nespoléhat a vyrobit MIDI soubor ru n, bylo by to ale asov náro n j²í. Výhody a nevýhody zvoleného postupu Knihovna byla zvolena proto, ºe nejvíce vyhovovala svojí funk ností poºadavk m. Dal²í výhodou je také to, ºe obsahuje vestav ný p ehráva MIDI, takºe výsledek lze rovnou p ehrát. Relativní nevýhodou je nutnost synchronizovat hlasy pomlkami místo nastavení, kdy p esn má daný hlas za ít hrát Rozd lení programu do více vláken a komunikace mezi nimi Popis problému Rozpoznávání je asov náro ná záleºitost, která by blokovala uºivatelské rozhraní, a proto bylo nutné práci provád t v samostatném vlákn. Bylo nutné rozhodnout, jak spolu budou vlákna komunikovat. Zvolený postup Aplikace obsahuje dv vlákna. První vlákno se stará o interakci s uºivatelem a v druhém vláknu b ºí rozpoznání. Vlákna spolu komunikují pomocí signál a slot. Tato konstrukce je typická pro framework Qt. Principem je, ºe lze jednodu²²e navázat volání jedné funkce na volání funkce druhé ([5]). Pokud je pot eba b h vláken sesynchronizovat, je pouºit mutex. 28

33 Alternativní postupy Program by nemusel být vícevláknový, pak by se výpo et musel provád t po velmi malých krocích, aby nedocházelo k zamrzání uºivatelského rozhraní. Výhody a nevýhody zvoleného postupu Výhodou je uºivatelská p ív tivost. Nevýhodou je nutnost e²ení synchronizace vláken Výstupní obrázek Popis problému Poté, co program rozpozná celý vstupní obrázek, je pot eba zobrazit, co program na²el a jak si je jednotlivými objekty jistý. Bylo pot eba rozhodnout, jak zobrazit nalezené p edznamenání a posuvky. Také bylo pot eba vy e²it zobrazení not spojených trámcem. Zvolený postup V okn programu se po ukon ení rozpoznávání zobrazí vygenerovaný výstupní obrázek. V obrázku jsou nakresleny linky notové osnovy v místech, kde byly nalezeny. Dále je na místo kaºdého nalezeného objektu nakreslen obrázek vzoru, se kterým se tento objekt identikoval. Míra shody se vzorem je znázorn na barevn. Nejvíce se shodující objekty jsou nakresleny zelen, mén ºlut a nejmén erven. Pokud byla nota nebo pomlka um le prodlouºena nebo zkrácena, je zobrazena mod e. Tím ve výstupním obrázku není vid t její míra shody se vzorem. Informace, ºe byla um le prodlou- ºena, je v²ak pro výsledek velmi d leºitá, a tak je ve výsledku zobrazena na úkor zobrazení míry shody. V nastavení programu je moºné barvení objekt vypnout, poté jsou v²echny objekty zobrazeny ern. Klí, taktové ozna ení a taktové áry se neobarvují. Je to pro zvý²ení p ehlednosti výstupního obrázku. Protoºe p edznamenání a posuvky jsou v programu v záv re né ásti uloºeny spole n s notou, je tomu p izp sobeno i jejich zobrazení. V²echny posuvky a p edznamenání se zobrazí u v²ech not, které jsou jimi ovlivn ny. To znamená, ºe nap íklad pokud je v taktu odráºka p ed notou C1 a v tomto taktu se dále nachází je²t nota C2, má na ní odráºka také vliv a je u ní tudíº zobrazena i ve výstupním obrázku. Osminové a ²estnáctinové noty se pro zjednodu²ení implementace nezobrazují spojené trámcem, ale jednotliv, není tedy t eba e²it r zný sm r a r znou délku trámce. P i tomto zjednodu²ení nedojde ke ztrát informace, protoºe noty spojené trámcem a samostatné noty reprezentují stejnou informaci. Alternativní postupy Bylo by moºné vygenerovat noty s trámcem. Zlep²ilo by to itelnost výstupu, ale bylo by to o mnoho sloºit j²í. 29

34 P edznamenání by bylo moºné umístit i na za átek skladby, poté bychom ale zobrazovali informaci duplicitn. (Protoºe nevíme, zda k íºek nebo bé ko u noty zna í p edznamenání a nebo posuvku p ímo p ed notou). Také by bylo moºné pamatovat si, které k íºky a bé ka u noty jsou z p edznamenání. Ty bychom poté nemuseli vykreslit, protoºe by byly na za átku taktu. Také bychom si mohli pamatovat, které k íºky a bé ka uº byly vykresleny, a nevykreslovat je u kaºdé noty, ale pouze p i jejich prvním výskytu. P iblíºili bychom se tak co nejvíce originálnímu obrázku. Tyto postupy by ov²em zkomplikovaly výpo et a vykreslení a výsledek by op t reprezentoval stejnou hudební informaci. Výhody a nevýhody zvoleného postupu Výhodou je, ºe p esn vidíme, na které noty mají p edznamenání a posuvky vliv. Pokud bude muzikant hrát podle námi vygenerovaného vstupu, nestane se, ºe by nezahrál u noty bé ko, protoºe by zapomn l na p edznamenání. Ob as je ale takovéto p ipomínání bé ek a k íºk na úkor p ehlednosti. Nebo se m ºe stát, ºe se dokonce bé ko a p edchozí nota p ekrývají. Tato situace by ²la vy e²it hlídáním, zda na míst, kam vykreslujeme posuvku, jiº n co není, a následným posunutím, bylo by to v²ak velmi komplikované a noty ve vstupním a výstupním obrázku by nebyly pod sebou. Stejné problémy provází generování not s praporcem místo trámce. 30

35 3. Programátorská dokumentace 3.1 Jádro programu Program je ur en pro opera ní systém Windows a je napsán v jazyce C++ s vyuºitím frameworku Qt.([6]) Program nejprve vstupní obrázek p evede na ernobílý a aplikuje na n j konvolu ní matice, poté identikuje jednotlivé notové osnovy a rozd lí vstupní obrázek na men²í obrázky, z nichº kaºdý obsahuje jednu notovou osnovu. Program dále zpracuje kaºdý obrázek zvlá². Nejprve z obrázk smaºe notovou osnovu, poté identikuje v²echny objekty. Pro kaºdý objekt nalezne ze seznamu vzor vzor, se kterým se nejlépe shoduje. Dále rozd lí jednotlivé osnovy na takty a upraví nalezené objekty podle jejich vzájemné polohy. Nakonec p evede nalezené noty do formátu pro vygenerování výstupního MIDI souboru. Rozpoznání b ºí v samostatném vlákn P evod obrázku na ernobílý P evedení obrázku do ernobílé podoby zaji² uje funkce prevednabw() t ídy Obrazek. Algoritmus je podrobn popsán v Kapitole Aplikace konvolu ní matice Konvolu ní matice se na vstupní obrázek aplikují za ú elem jeho vylep²ení. Snaºí se nahradit chyb jící pixely nebo naopak odstranit ty p ebývající. Nejprve jsou vytvo eny konvolu ní matice. Ty jsou v programu reprezentovány t ídou Okenko. Kaºdé okénko p edstavuje matici 3*3 pixely, kterou posouváme po obrázku. V kaºdém kroku rozhodneme o p ebarvení nebo nep ebarvení pixelu uprost ed matice na základ toho, zda se ostatní pixely p ekryté maticí shodují s pixely matice. Kaºdé okénko obsahuje vektor ísel vypln ných polí ek. Polí ka jsou íslována od levého horního rohu po sm ru hodinových ru i ek. Polí ka mohou být vypln na ernou nebo bílou barvou, to ur uje prom nná cerne. Typ konvolu ních matic ur uje stupe konvoluce, který m ºe uºivatel nastavit. O samotnou úpravu obrázku pomocí konvoluce se stará funkce konvoluce() t ídy Obrazek. Tato funkce pouºije postupn na celý vstupní obrázek v²echny konvolu ní matice, ímº se snaºí o vylep²ení rozpoznatelnosti objekt a sníºení po tu vad obrazu Identikace notových osnov Osnovy jsou v programu reprezentovány t ídou Osnovy. Identikace osnov probíhá v konstruktoru této t ídy. Algoritmus je popsán v Kapitole 2.2. Tato t ída obsahuje vektor instancí t íd Osnova. T ída Osnova reprezentuje jednu konkrétní osnovu. Je v ní uloºeno 5 instancí t ídy Linka, seznam k íºk a bé ek platných pro celý takt (reprezentovaných jako celé íslo = zbytek po d lení ísla noty, pro kterou k íºek platí, sedmi), íslo udávající vzdálenost mezi linkami osnovy a vektor t íd Takt. 31

36 T ída Linka reprezentuje jednu linku notové osnovy. Program e²í pouze vertikální sou adnice linek. Po ítá s tím, ºe linka je ²ir²í neº jeden pixel, a proto je linka reprezentována po áte ní a koncovou vertikální sou adnicí. Po nalezení osnovy je upravena velikost obrázku tak, aby vzdálenosti linek odpovídaly vzdálenostem linek v obrázcích vzor, kdyby tam linky z staly zachovány Rozd lení a mazání osnov Osnovy jsou rozd leny tak, ºe se vzdálenost mezi jejich krajními linkami rozd lí p esn nap l. Z kaºdé osnovy je tak vytvo ena jedna instance t ídy Zpracovani. Ta obsahuje jednu notovou osnovu, vstupní a výstupní obrázek a posunutí sou- adnic této osnovy v i sou adnicím v p vodním (celém vstupním) obrázku. Dva obrázky Zpracovani pot ebuje, aby bylo moºné ve vstupním obrázku objekty postupn obarvovat a odmazávat a p itom z stal zachován p vodní obrázek pro výstup. V osnovách jsou smazány linky, aby bylo moºné dále zpracovat objekty na nich algoritmem Flood ll (viz Kapitola 2.4 ). Mazání zaji² uje funkce smazlinky() t ídy Osnova Reprezentace objekt Objekty jsou v programu reprezentovány t ídou Objekt. Kaºdý objekt obsahuje sv j Obrazek, dále má kaºdý objekt barvu, která slouºí k jeho vykreslení a znázor uje, jak moc se objekt shoduje se vzorem. U t ídy Objekt je také uloºena hodnota shody jako desetinné íslo. Kaºdý Objekt obsahuje celé íslo, které íká, kolik objekt se nachází na notové osnov pod ním, a prom nné, které ur ují, v jakém je hlasu a jaké jsou dal²í hlasy, které zn jí sou asn. Pro vykreslení slouºí prom nná jmenovzoru, která ur uje, s jakým vzorem se objekt nejvíce shoduje, a prom nná shora, která ur uje sm r vykreslení. Od t ídy Objekt jsou odvozeny dal²í t ídy pro jednotlivé objekty notového záznamu. Noty reprezentuje t ída Nota. Oproti t íd Objekt má navíc délku, vý²ku a n kolik booleovských prom nných, které zna í, zda p ed ní bylo jedno z p edznamenání, te ka nebo zda jsme notu získali vy íznutím z trámce. Délka not, dvojnot a pomlk je v programu zadána jako násobek délky dvaat icetinové noty. Je to z toho d vodu, ºe nejkrat²í nota, kterou program dokáºe rozpoznat, je nota ²estnáctinová. Ta u sebe m ºe mít te ku, která její délku prodlouºí o polovinu, a tak nejv t²í jednotka, kterou m ºeme pro vyjád ení její délky pouºít, aniº bychom museli pouºívat zlomky, je práv nota dvaat icetinová. Od této t ídy je odvozená t ída Dvojnota. Ta reprezentuje dv spojené noty = dvojhlas. Obsahuje tedy navíc je²t jednu délku, vý²ku i v t²inu binárních prom nných. Dal²í t ídou odvozenou od t ídy Objekt je t ída Pomlka, která reprezentuje pomlky. Oproti bázové t íd má navíc prom nnou delka, která zna í dobu trvání pomlky. Dal²í t ídou je TaktCislo, která reprezentuje íslo taktu. Má navíc prom nnou delka, která reprezentuje íslici udávající takt. T ída Predznamenani reprezentuje p edznamenání. Typ p edznamenání ur uje, zda jde o k íºek, bé ko nebo odráºku. Poslední v t²í t ídou je Klic, který reprezentuje houslový nebo basový klí. O který z t chto dvou se jedná, poznáme z prom nné typ. 32

37 V programu je dále je²t n kolik t íd odvozených od t ídy Objekt. Jmenovit TaktovaCara, Tecka, PomocnaLinka, UfoTramec a UfoNerozpoznane. Tyto t ídy nemají ºádné parametry navíc oproti t íd Objekt a slouºí pouze k reprezentaci stejnojmenných objekt. T ída Obrazek slouºí k reprezentaci obrázku nalezeného objektu. Obsahuje informaci o velikosti a poloze objektu a o jeho poloze v i notové osnov (je v ní uloºeno, která linka osnovy objekt protne shora a zdola jako první a na jaké vertikální sou adnici objektu) Nalezení a identikování objekt K rozpoznání objekt slouºí metoda rozpoznejobjekty() t ídy Zpracovani. Tato t ída postupn prochází vstupní obrázek shora dol, zleva doprava. Vºdy nejprve pomocí funkce najdiobjekt() nalezne Obrazek. Pokud tento objekt velikostí neodpovídá not s trámcem, povaºuje ho za samostatný objekt a postupn ho porovná se v²emi vzory. Ten vzor, se kterým se objekt nejvíce shoduje, se pouºije pro vytvo ení instance t ídy Objekt, který reprezentuje nalezený objekt. Tyto Objekty se ukládají do vektoru a poté se dále zpracovávají. Pokud objekt odpovídá velikostí not s trámcem, tak se z n j nejprve trámec vymaºe a poté se op t funkcí rozpoznejobjekty() identikují nov vzniklé objekty (rekurzivn ). Po smazání trámce se noty identikují jako tvr ové noty, je tedy t eba si pamatovat, ºe jsme tyto objekty získali smazáním trámce. Mazání trámce Mazání je realizováno funkcí smaztramec() t ídy Zpracovani. Tato funkce vrátí horizontální sou adnice místa, kde jsme smazali dvojitý trámec, aby bylo moºno poznat, která nota byla ²estnáctinová a která osminová. Algoritmus je podrobn popsán v Kapitole 2.9. Nalezení obrázku Samotné nalezení obrázku probíhá pomocí algoritmu Flood ll a je popsáno v Kapitole Reprezentace vzor Vzory jsou v programu reprezentovány pomocí t ídy Vzor. Vzory jsou p ed samotným rozpoznáváním na teny ze souboru. Parametry t ídy vzory jsou popsány v kapitole Analýza. Obrázky vzor jsou ve sloºce Vzory/. Formát souboru se vzory Kaºdý vzor je na jednom ádku. Vlastnosti uvedené za sebou na ádku jsou: jméno souboru s obrázkem po et pozic notové osnovy pozice notové osnovy 33

38 typ vzoru varianta vzoru druhá varianta vzoru, pokud se jedná o dvojnotu sm r vzoru po et vý²ek vý²ky, pokud je po et vý²ek v t²í neº 0 0 nebo 1 podle toho, zda je vzor smr² ovací vertikální sou adnice smr² ovací ásti (dv ísla, pouze pokud je vzor smr²- ovací) 0 nebo 1 podle toho, zda je vzor natahovací. vertikální sou adnice natahovací ásti (jedno íslo, pouze pokud je vzor natahovací) Protoºe vlastnost smr² ovací v sob zahrnuje i vlastnost natahovací, je u smr²- ovacích vzor vlastnost natahovací nastavena na 0. Nap íklad záznam vzoru tvr ové noty s noºi kou nahoru vypadá takto: CtvrtovaNota n 4 Nahoru Porovnávání se vzorem Porovnávání realizuje funkce porovnej() t ídy Obrazek. Funkce dostane jako vstupní parametr dva obrázky objekt a vzor a vrátí procento jejich shody. Postup vypo ítání procenta shody je popsán v Kapitole 2.6. Ze vzoru, se kterým se daný objekt nejvíce shoduje, zjistíme údaje pro vytvo ení nového objektu. O vytvo ení objektu se stará funkce vratobjekt() t ídy Objekt. Pokud tato funkce dostane vzor noty nebo dvojnoty, rozhodne na základ toho, zda nad ní byl trámec, zda byl dvojitý a zda p edchozí nota byla ²estnáctinová, jedná-li se o ²estnáctinovou nebo osminovou notu. U ostatních typ vzor je rozhodování p ímo aré Rozd lení objekt do takt O rozd lení objekt do takt se stará funkce rozdelnatakty() t ídy Osnova. Je ur eno taktové ozna ení osnovy a typ houslového klí e. Pokud nejsou nalezena ísla taktového ozna ení, pokusí se je program nalézt je²t jednou tak, ºe se pokusí spojit dva objekty nad sebou do jednoho (pro p ípad, ºe by do²lo k rozd lení íslice p i mazání osnovy nebo vadou obrazu). Pokud toto neusp je, pokusí se najít dostate nou shodu s n kterým z objekt (který se ale s n jakým jiným vzorem shodoval více). Pokud ani toto neusp je a ani nem ºeme p evzít taktové ozna ení z p edchozí osnovy, je o nastavení poºádán uºivatel. Zde dochází ke synchronizaci vláken. Výpo et musíme pozastavit, neº uºivatel taktové ozna ení zadá. Je to vy e²eno pomocí zámku. Poté jsou nalezena 34

39 p edznamenání platná pro celou skladbu. Dále funkce p edá vºdy v²echny objekty mezi dv ma taktovými arami t íd Takt, aby je dále zpracovala. Pokud se zjistí podle horizontální sou adnice, ºe objekt pat í do jiného taktu, p esune se v seznamu objekt aº za taktovou áru a zpracuje se aº v dal²ím taktu. Ve zpracování kaºdého taktu jsou nejprve zohledn ny vztahy mezi objekty na základ jejich horizontální sou adnice. Pokud je za notou, dvojnotou nebo pomlkou te ka, je její délka prodlouºena o polovinu. Pokud je p ed notou nebo dvojnotou p edznamenání, je odpovídající prom nná u noty nastavena na true. Stejn tak pro p edznamenání platná pro celou skladbu. P edznamenání ani te ky se jiº dále jako objekty nepouºívají, protoºe informace o nich je jiº sou ástí noty, dvojnoty nebo pomlky. Dále se pomocí funkce zjistiporadi() zjistí, které noty jsou nad sebou. Tyto noty se v taktu se adí podle rostoucí vertikální sou adnice. Dále se u kaºdé noty nastaví, v jakém je hlasu. V této fázi se nezohled ují noty, které jsou p ed ní, pouze ty nad ní (Je to, jako kdyby danou skupinou not nad sebou skladba za ínala). Nakonec se pomocí funkce nastavhlasy() zohlední i noty p ed danou notou a objekt m se nastaví správn hlasy P evod do MIDI K p evodu do MIDI je pouºita externí knihovna CFugue([4]). K p evodu seznamu objekt na vstupní formát této knihovny je pouºit konstruktor t ídy PrevodDoMidi. Tato t ída v sob obsahuje t i et zce, které reprezentují t i hlasy skladby. Pokud je celá skladba pouze jednohlasá nebo dvojhlasá, je p íslu²ná prom nná (obsahujedvojhlas, obsahujetrojhlas) nastavena na false a et zec p íslu²ného hlasu je prázdný. Funkce projde v²echny takty a podle hlasu p íslu²ného objektu vloºí jeho zna ku do et zce p íslu²ného hlasu. Pokud je skladba nejprve nap íklad jednohlasá a druhý hlas se p idá aº po chvíli, musí být do druhého hlasu na za átek p idány pomlky, aby poté druhý hlas za al hrát ve správnou dobu. Výsledné et zce pro jednotlivé hlasy se nakonec sloºí do jednoho et zce. Pomocí knihovny se pak výsledek dá uloºit do MIDI souboru nebo rovnou p ehrát. 3.2 GUI Hlavní okno GUI je v programu reprezentováno t ídou MainWindow, která je odvozena od t ídy QMainWindow ([7]). Tato t ída a v²echny ostatní t ídy za ínající písmenem Q je sou ástí frameworku Qt. Po svém spu²t ní vytvo í v²echna tla ítka, náhledy obrázk, posuvníky a progress bar. V p ípad kliknutí na tla ítko Na ti obrázek je pomocí funkce zobrazdialog() zobrazeno dialogové okno pro výb r vstupního obrázku Rozpoznávání Po vybrání obrázku je vytvo eno nové vlákno - t ída Rozpoznani, odvozená od t ídy QThread ([8]), ve které pob ºí samotné rozpoznání obrázku. Po klik- 35

40 nutí na tla ítko Rozpoznat obrázek se nové vlákno spustí a prob hne rozpoznání. V pr b hu rozpoznávání se postupn napl uje progress bar. K napl ování dochází postupn s rostoucí horizontální sou adnicí rozpoznávaných objekt. Podle po- tu notových osnov a ²í ky vstupu se vypo ítá délka jednoho kroku vzdálenost, v jaké musí být dal²í objekt, aby se progress bar posunul o 1 procento Komunikace vláken a reakce na akce uºivatele Rozpoznávací a hlavní vlákno spolu komunikují pomocí signál a slot. Stejn probíhá i reakce na akce uºivatele, nap íklad kliknutí na tla ítko. V pr b hu rozpoznávání jsou obdélníkem ozna ovány jiº zpracované objekty. Rozpoznávací vlákno pravideln (po rozpoznání kaºdého objektu) kontroluje, zda uºivatel neklikl na tla ítko Storno. Tato skute nost je reprezentována atomickou prom nnou ukonceno. V p ípad kliknutí na tla ítko Storno se rozpoznávání ukon í a uºivatel m ºe znovu vybrat obrázek, který se má rozpoznat. Po na tení prvního obrázku se aktivuje tla ítko Na ti poslední. Po stisku tohoto tla ítka se pomocí funkce nactiposledni() na te poslední obrázek Výstupní obrázek Po rozpoznání vstupního obrázku je vygenerován výstupní obrázek pomocí t ídy Vizualizace. Na místo kaºdého objektu je nakreslen obrázek vzoru, se kterým se objekt nejvíce shodoval. Pokud je nastaveno p ebarvení objekt podle míry shody, jsou objekty p ed umíst ním do obrázku p ebarveny pomocí funkce prebarvi(). V p ípad, ºe objektem je nota nebo dvojnota, která vznikla po od íznutí trámce, je k ní dopln n praporek pomocí funkce pridejjednoduchypraporek() nebo pridejdvojitypraporek(). V p ípad, ºe se jedná o notu se samostatnou pomocnou linkou, je do výstupního obrázku vloºena navíc je²t pomocná linka. P idání v²ech objekt zaji² uje funkce pridejobjektdoobrazku() Kontrola uloºení Vygenerovaný obrázek m ºe uºivatel uloºit stiskem tla ítka Uloº obrázek a MI- DI soubor m ºe uºivatel uloºit stiskem tla ítka Uloº MIDI. Ve t íd Rozpoznani jsou prom nné ulozenobrazek a ulozenomidi. Pomocí t chto prom nných a funkce zkontrolujulozeni() je realizována kontrola, zda uºivatel p ed ukon ením programu obrázek nebo MIDI soubor uloºil. Pokud chce uºivatel ukon it program nebo na íst dal²í obrázek, program se ho zeptá, zda chce MIDI nebo obrázek uloºit. V p ípad, ºe uºivatel klikne na Ano a poté dojde p i vybírání umíst ní pro uloºení k chyb, nebo uºivatel výb r p ed asn ukon í, ukon ení programu nebo na tení dal²ího obrázku neprob hne. Zabra uje se tak necht né ztrát dat. O samotné uloºení se starají funkce uloz() a ulozdomidi(). Druhá z funkcí vyuºívá k uloºení knihovnu CFugue Dialog nastavení a dal²í okna T ída Nastaveni je odvozena od t ídy QDialog ([9] a slouºí k zobrazení nastavení. Uºivateli zobrazí v rozbalovacím seznamu n kolik nastavitelných poloºek. 36

41 Záznam o pr b hu rozpoznání se ukládá do dvou soubor. Do prvního souboru se uloºí objekty ihned po identikaci se vzorem. Do druhého se uloºí objekty po zohledn ní vzájemného p sobení objekt, t sn p ed p evodem na MIDI. Jméno souboru se skládá ze jména rozpoznávaného souboru, slova objekty nebo takty podle toho, zda se jedná o první nebo druhý typ záznamu, a aktuálního data. Jméno záznamu s objekty hned po identikaci se vzorem, by tedy mohlo vypadat nap íklad takto: dvenoty.pngobjekty txt Po kliknutí na poloºku Zobraz záznam v menu se otev e záznam s takty pomocí funkce zobrazlog(). K zobrazení textu je vyuºita t ída QTextEdit ([10]). Formát souboru se záznamem je popsán v uºivatelské dokumentaci. Pokud je program spou²t n z CD a nebo z n jakého jiného d vodu nelze záznam uloºit do podsloºky Logy/ ve sloºce s programem, záznam se neukládá. Nápov da je v programu realizována pomocí PDF souboru, který se zobrazí v systémovém prohlíºe i PDF soubor, po stisku volby Nápov da v menu. V²echny texty zobrazené uºivateli jsou ozna eny, takºe jsou p ipraveny pro p eklad pomocí nástroje Qt Linguist ([11]) 3.3 Testy, dokumentace a generování vzor Pro v t²inu t íd jsou k dispozici unit testy (testy, které ov ují funk nost díl ích jednotek programu). Tyto testy vyuºívají knihovnu QTest ([12]) a jsou uloºeny ve sloºce Test/. Jednotlivé testy mají stejné jméno jako t ída, kterou testují, dopln né slovem Test. Programové rozhraní je zdokumentováno pomocí nástroje Doxygen ([13]). Vygenerovaná dokumentace je k dispozici na CD. K vygenerování vzor byla pouºita knihovna Guido Engine ([14]). Pro vygenerování dal²ích vzor lze pouºít soubor generuj.cpp. 37

42 4. Uºivatelská dokumentace Program slouºí k optickému rozpoznávání notového záznamu. Pro spu²t ní programu je pot eba Windows XP nebo nov j²í. 4.1 Spu²t ní programu Program se spustí po kliknutí na Program.exe ve sloºce Noty. Doporu ujeme zkopírovat celou sloºku Noty na sv j pevný disk. 4.2 Popis a ovládání aplikace Hlavní okno Obrázek 4.1: Takto vypadá hlavní okno aplikace. Po spu²t ní aplikace se otev e její hlavní okno, které je zobrazeno na Obrázku 4.1. Popis okna: 1. Menu 2. Panel nástroj 3. Horní plátno 4. Dolní plátno Nejprve je pot eba na íst vstupní obrázek. To lze ud lat dv ma zp soby. První moºností je kliknout na Soubor v menu a dále na Na ti obrázek. Druhou moºností je kliknout na ikonu Na ti v panelu nástroj. Poté je t eba pomocí dialogového okna vybrat obrázek, který se má rozpoznat. 38

43 4.2.2 Okno po na tení obrázku Obrázek 4.2: Okno po na tení obrázku. Po vybrání vstupního obrázku se tento obrázek zobrazí na horním plátn (viz Obrázek 4.2). Pokud chceme nastavit parametry rozpoznávání, je to moºné kliknutím na Nástroje v menu a dále na Nastavení. Vlastnosti, které je moºné nastavit, jsou podrobn popsány v Kapitole Nyní je moºné kliknutím na ikonu Rozpoznej zahájit rozpoznávání Okno p i rozpoznávání Na Obrázku 4.3 vidíme, jak vypadá hlavní okno v pr b hu rozpoznávání. Obrázek 4.3: Okno v pr b hu rozpoznávání. Po zahájení rozpoznávání se pod dolním plátnem objeví gracký ukazatel pr b hu. Ten ukazuje, kolik procent rozpoznávání je jiº hotovo. Je to ale pouze orienta ní informace, protoºe neukazuje zbývající as, ale pr b h rozpoznávání. Pokaºdé, kdyº je rozpoznán n jaký objekt, je kolem n j namalován do vstupního obrázku (na horním plátn ) modrý obdélník. Tímto je také umoºn no sledovat, jak rozpoznávání postupuje. Protoºe práv probíhá rozpoznávání, jsou v²echna ostatní tla ítka deaktivována. Aby mohl uºivatel rozpoznávání p eru²it, je vedle indikátoru pr b hu tla ítko 39

44 Storno. Po stisku tohoto tla ítka se program zeptá, zda chce uºivatel rozpoznávání p eru²it, a po potvrzení je aktuální rozpoznávání p eru²eno. Krom grackého ukazatele pr b hu je zde také textová informace, která zna- í, kolik rozpoznání jiº prob hlo a kolik jich prob hne celkov. Tento indikátor je uºite ný ve chvíli, kdy je zapnutá volba Zkusit v²echno a probíhá více rozpoznání za sebou. Více o této volb v Kapitole Pokud se v obrázku nenalezne notová osnova, nelze pokra ovat v rozpoznávání dál. Uºivatel je o tom informován zprávou a rozpoznávání je ukon eno. Po nalezení osnovy se rozpoznávaný obrázek zv t²í tak, aby vzdálenost mezi linkami notové osnovy odpovídala vzdálenosti mezi linkami ve vzorových vstupech. Velké zv t²ení nebo naopak zmen²ení obrázku je tak prvním ukazatelem, ºe se osnova ur ila ²patn. Obrázek se zv t²uje proto, aby sou adnice objekt v horním obrázku odpovídaly vzdálenostem objekt v obrázku dolním (viz Kapitola 4.2.4). Pokud není rozpoznán klí nebo taktové ozna ení, je uºivatel vyzván, aby ho zadal ru n. Poté rozpoznávání dále pokra uje Okno po rozpoznání obrázku Na Obrázku 4.4 vidíme, jak vypadá hlavní okno po ukon ení rozpoznávání. Obrázek 4.4: Okno po ukon ení rozpoznávání. Ukazatel pr b hu spolu s tla ítkem Storno a po ítadlem zmizí a na dolním plátn se zobrazí vygenerovaný obrázek. Také se aktivují n která tla ítka. Tla ítkem Na ti poslední lze na íst znovu poslední obrázek. Výstupní obrázek Výstupní obrázek se vygeneruje po skon ení rozpoznávání a jsou na n m zobrazeny v²echny nalezené objekty. Tyto objekty mají r znou barvu podle toho, jak moc si je program jistý jejich správným identikováním. Pokud je objekt zelený, je si jím program jist, mén jistý si je ºlutými a v bec si není jistý ervenými. Pokud je objekt modrý, znamená to, ºe se jedná o notu nebo pomlku, jejíº délka byla zm n na tak, aby takt trval správný po et dob. Taktové áry, klí a taktové ozna ení se neobarvují pro vy²²í p ehlednost obrázku. 40

45 Obarvování objekt je moºné vypnout v nastavení (viz Kapitola 4.2.5). P edznamenání skladby se na za átku skladby nezobrazí, je v²ak zji²t no, na které noty má vliv, a je zobrazeno aº p ímo u nich. Také pokud je nota ovlivn na n jakou posuvkou u noty p edcházející, je toto p edznamenání zobrazené ve výsledném obrázku u obou not, aby bylo vid t, které v²echny noty jsou posuvkou ovlivn ny. Noty spojené trámcem jsou programem rozpoznány, ve výsledném obrázku jsou v²ak vygenerovány samostatn jako noty s praporcem. Pokud program n které objekty nerozpoznal, je v míst, kde se ve vstupním obrázku nacházejí, do výstupního obrázku vloºeno písmeno N. Pokud program nalezl objekt, který identikoval jako n kolik not spojených trámcem, ale nepovedlo se mu nalézt trámec, je do výstupního obrázku na toto místo vloºeno písmeno T. Tyto nerozpoznané objekty jsou v programu nazývány UFO a jejich zobrazení ve výstupním obrázku je moºno vypnout v nastavení (viz Kapitola 4.2.5). Výsledný obrázek je moºné uloºit na disk pomocí tla ítka Uloº obrázek. Pokud uºivatel obrázek neuloºí, zeptá se ho na uloºení p ed ukon ením program sám, aby nedo²lo ke ztrát dat. MIDI soubor Po ukon ení rozpoznávání se vygeneruje MIDI soubor. Tento soubor obsahuje zvukový záznam rozpoznaných objekt. V programu je ho moºno pomocí tla ítka Hraj rovnou p ehrát a pomocí tla ítka Stop zastavit p ehrávání. Po op tovném stisku tla ítka Hraj za ne skladba hrát op t od za átku. MIDI soubor je moºné uloºit pomocí tla ítka Uloº MIDI. Pokud uºivatel MIDI soubor neuloºí, zeptá se ho na uloºení p ed ukon ením program sám, aby nedo²lo ke ztrát dat Nastavení Dialog nastavení se otev e, pokud klikneme v menu na Nástroje a poté na Nastavení. Jak toto okno vypadá, vidíme na Obrázku 4.5. Obrázek 4.5: Nastavení programu. 41

Vektory. Vektorové veli iny

Vektory. Vektorové veli iny Vektor je veli ina, která má jak velikost tak i sm r. Ob tyto vlastnosti musí být uvedeny, aby byl vektor stanoven úpln. V této ásti je návod, jak vektory zapsat, jak je s ítat a od ítat a jak je pouºívat

Více

Integrování jako opak derivování

Integrování jako opak derivování Integrování jako opak derivování V tomto dokumentu budete seznámeni s derivováním b ºných funkcí a budete mít moºnost vyzkou²et mnoho zp sob derivace. Jedním z nich je proces derivování v opa ném po adí.

Více

Skalární sou in. Úvod. Denice skalárního sou inu

Skalární sou in. Úvod. Denice skalárního sou inu Skalární sou in Jedním ze zp sob, jak m ºeme dva vektory kombinovat, je skalární sou in. Výsledkem skalárního sou inu dvou vektor, jak jiº název napovídá, je skalár. V tomto letáku se nau íte, jak vypo

Více

P íklad 1 (Náhodná veli ina)

P íklad 1 (Náhodná veli ina) P íklad 1 (Náhodná veli ina) Uvaºujeme experiment: házení mincí. Výsledkem pokusu je rub nebo líc, ºe padne hrana neuvaºujeme. Pokud hovo íme o náhodné veli in, musíme p epsat výsledky pokusu do mnoºiny

Více

T i hlavní v ty pravd podobnosti

T i hlavní v ty pravd podobnosti T i hlavní v ty pravd podobnosti 15. kv tna 2015 První p íklad P edstavme si, ºe máme atomy typu A, které se samovolným radioaktivním rozpadem rozpadají na atomy typu B. Pr m rná doba rozpadu je 3 hodiny.

Více

e²ení systém lineárních rovnic pomocí s ítací, dosazovací a srovnávací metody

e²ení systém lineárních rovnic pomocí s ítací, dosazovací a srovnávací metody e²ení systém lineárních rovnic pomocí s ítací, dosazovací a srovnávací metody V praxi se asto setkávame s p ípady, kdy je pot eba e²it více rovnic, takzvaný systém rovnic, obvykle s více jak jednou neznámou.

Více

Limity funkcí v nevlastních bodech. Obsah

Limity funkcí v nevlastních bodech. Obsah Limity funkcí v nevlastních bodech V tomto letáku si vysv tlíme, co znamená, kdyº funkce mí í do nekone na, mínus nekone na nebo se blíºí ke konkrétnímu reálnému íslu, zatímco x jde do nekone na nebo mínus

Více

BOZP - akcepta ní testy

BOZP - akcepta ní testy BOZP - akcepta ní testy Kristýna Streitová Zadavatel: Ing. Ji í Chludil 13. prosince 2011 Obsah 1 Úvod 2 1.1 Popis test....................................... 2 2 Testy 3 2.1 ID - 1 P ihlá²ení do systému.............................

Více

Pr b h funkce I. Obsah. Maxima a minima funkce

Pr b h funkce I. Obsah. Maxima a minima funkce Pr b h funkce I Maxima a minima funkce V této jednotce ukáºeme jak derivování m ºe být uºite né pro hledání minimálních a maximálních hodnot funkce. Po p e tení tohoto letáku nebo shlédnutí instruktáºního

Více

Základní praktikum laserové techniky

Základní praktikum laserové techniky Základní praktikum laserové techniky Fakulta jaderná a fyzikáln inºenýrská Úloha 4: Zna kování TEA CO 2 laserem a m ení jeho charakteristik Datum m ení: 1.4.2015 Skupina: G Zpracoval: David Roesel Kruh:

Více

Termíny zkoušek Komise Komise. subkomise 1 (obhaj.) :30 B subkomise 2 (obhaj.) :30 B8 120

Termíny zkoušek Komise Komise. subkomise 1 (obhaj.) :30 B subkomise 2 (obhaj.) :30 B8 120 Základní informace o struktu e dat: Komise (nadkomise) obsahují leny schválené VR (po jejich identifikaci v SIS, p íp. dopln ní budou obsahovat všechny schválené leny, po novém za azení se vyplní datum

Více

Statistika pro geografy. Rozd lení etností DEPARTMENT OF GEOGRAPHY

Statistika pro geografy. Rozd lení etností DEPARTMENT OF GEOGRAPHY Statistika pro geografy Rozd lení etností DEPARTMENT OF GEOGRAPHY Faculty of Science Palacký University Olomouc t. 17. listopadu 1192/12, 771 46 Olomouc Pojmy etnost = po et prvk se stejnou hodnotou statistického

Více

Binární operace. Úvod. Pomocný text

Binární operace. Úvod. Pomocný text Pomocný text Binární operace Úvod Milí e²itelé, binární operace je pom rn abstraktní téma, a tak bude ob as pot eba odprostit se od konkrétních p íklad a podívat se na v c s ur itým nadhledem. Nicmén e²ení

Více

ízení Tvorba kritéria 2. prosince 2014

ízení Tvorba kritéria 2. prosince 2014 ízení. prosince 014 Spousta lidí má pocit, ºe by m la n co ídit. A n kdy to bývá pravda. Kdyº uº nás my²lenky na ízení napadají, m li bychom si poloºit následující t i otázky: ídit? Obrovskou zku²eností

Více

Vektor náhodných veli in - práce s více prom nnými

Vektor náhodných veli in - práce s více prom nnými Vektor náhodných veli in - práce s více prom nnými 12. kv tna 2015 N kdy k popisu n jaké situace pot ebujeme více neº jednu náhodnou veli inu. Nap. v k, hmotnost, vý²ku. Mezi t mito veli inami mohou být

Více

Státní maturita 2010 Maturitní generálka 2010 Matematika: didaktický test - základní úrove obtíºnosti MAGZD10C0T01 e²ené p íklady

Státní maturita 2010 Maturitní generálka 2010 Matematika: didaktický test - základní úrove obtíºnosti MAGZD10C0T01 e²ené p íklady Státní maturita 00 Maturitní generálka 00 Matematika: didaktický test - základní úrove obtíºnosti MAGZD0C0T0 e²ené p íklady Autor e²ení: Jitka Vachtová 6. b ezna 0 http://www.vachtova.cz/ Obsah Úloha Úloha.

Více

Pravd podobnost a statistika - cvi ení. Simona Domesová místnost: RA310 (budova CPIT) web:

Pravd podobnost a statistika - cvi ení. Simona Domesová místnost: RA310 (budova CPIT) web: Pravd podobnost a statistika - cvi ení Simona Domesová simona.domesova@vsb.cz místnost: RA310 (budova CPIT) web: http://homel.vsb.cz/~dom0015 Cíle p edm tu vyhodnocování dat pomocí statistických metod

Více

4. V p íprav odvo te vzorce (14) a (17) ze zadání [1].

4. V p íprav odvo te vzorce (14) a (17) ze zadání [1]. FYZIKÁLNÍ PRAKTIKUM II FJFI ƒvut v Praze Úloha #4 Balmerova série Datum m ení: 28.4.2014 Skupina: 7 Jméno: David Roesel Krouºek: ZS 7 Spolupracovala: Tereza Schönfeldová Klasikace: 1 Pracovní úkoly 1.

Více

29 Evidence smluv. Popis modulu. Záložka Evidence smluv

29 Evidence smluv. Popis modulu. Záložka Evidence smluv 29 Evidence smluv Uživatelský modul Evidence smluv slouží ke správě a evidenci smluv organizace s možností připojení vlastní smlouvy v elektronické podobě včetně přidělování závazků ze smluv jednotlivým

Více

Kelvin v kapkový generátor

Kelvin v kapkový generátor Kelvin v kapkový generátor Kry²tof Kadlec 1, Luká² Kune² 2, Luká² N me ek 3 1 Gymnázium Franti²ka Palackého, Vala²ské Mezi í í, krystoof.2@seznam.cz 2 Gymnázium, Zlatá stezka 137, Prachatice, kunamars@seznam.cz

Více

Derivování sloºené funkce

Derivování sloºené funkce Derivování sloºené funkce V tomto letáku si p edstavíme speciální pravidlo pro derivování sloºené funkce (te funkci obsahující dal²í funkci). Po p e tení tohoto tetu byste m li být schopni: vysv tlit pojem

Více

DeepBurner (testování UI)

DeepBurner (testování UI) ƒeské vysoké u ení technické v Praze Fakulta elektrotechnická Semestrální práce DeepBurner (testování UI) Blaºej, Friebel, Olexová, Volf P edm t: Testování uºivatelských rozhraní Obor: Softwarové inºenýrství

Více

ČÁST PÁTÁ POZEMKY V KATASTRU NEMOVITOSTÍ

ČÁST PÁTÁ POZEMKY V KATASTRU NEMOVITOSTÍ ČÁST PÁTÁ POZEMKY V KATASTRU NEMOVITOSTÍ Pozemkem se podle 2 písm. a) katastrálního zákona rozumí část zemského povrchu, a to část taková, která je od sousedních částí zemského povrchu (sousedních pozemků)

Více

Konceptuální modelování

Konceptuální modelování Konceptuální modelování Ing. Michal Valenta PhD. Katedra softwarového inºenýrství Fakulta informa ních technologií ƒeské vysoké u ení technické v Praze c Michal Valenta, 2010 Databázové systémy BI-DBS

Více

7. Domy a byty. 7.1. Charakteristika domovního fondu

7. Domy a byty. 7.1. Charakteristika domovního fondu 7. Domy a byty Sčítání lidu, domů a bytů 2011 podléhají všechny domy, které jsou určeny k bydlení (např. rodinné, bytové domy), ubytovací zařízení určená k bydlení (domovy důchodců, penziony pro důchodce,

Více

2.2.2 Zlomky I. Předpoklady: 020201

2.2.2 Zlomky I. Předpoklady: 020201 .. Zlomky I Předpoklady: 0001 Pedagogická poznámka: V hodině je třeba postupovat tak, aby se ještě před jejím koncem začala vyplňovat tabulka u posledního příkladu 9. V loňském roce jsme si zopakovali

Více

1 Data. 2 Výsledky m ení velikostí. Statistika velikostí výtrus. Roman Ma ák

1 Data. 2 Výsledky m ení velikostí. Statistika velikostí výtrus. Roman Ma ák Statistika velikostí výtrus Roman Ma ák 6.2.216 1 Data Velikost výtrus (udávaná obvykle v µm) pat í u hub k významným ur ovacím znak m, mnohdy se dva druhy makromycet li²í dokonce pouze touto veli inou.

Více

Ovoce do škol Příručka pro žadatele

Ovoce do škol Příručka pro žadatele Ve smečkách 33, 110 00 Praha 1 tel.: 222 871 556 fax: 296 326 111 e-mail: info@szif.cz Ovoce do škol Příručka pro žadatele OBSAH 1. Základní informace 2. Schválení pro dodávání produktů 3. Stanovení limitu

Více

2. Ur íme sudost/lichost funkce a pr se íky s osami. 6. Na záv r na rtneme graf vy²et ované funkce. 8x. x 2 +4

2. Ur íme sudost/lichost funkce a pr se íky s osami. 6. Na záv r na rtneme graf vy²et ované funkce. 8x. x 2 +4 Pr b h funkce V této jednotce si ukáºeme jak postupovat p i vy²et ování pr b hu funkce. P edpokládáme znalost po ítání derivací a limit, které jsou dob e popsány v p edchozích letácích tohoto bloku. P

Více

Jevy, nezávislost, Bayesova v ta

Jevy, nezávislost, Bayesova v ta Jevy, nezávislost, Bayesova v ta 17. b ezna 2015 Instrukce: Projd te si v²echny p íklady. Kaºdý p íklad se snaºte pochopit. Pak vymyslete a vy- e²te p íklad podobný. Tím se ujistíte, ºe p íkladu rozumíte.

Více

1. (18 bod ) Náhodná veli ina X je po et rub p i 400 nezávislých hodech mincí. a) Pomocí ƒeby²evovy nerovnosti odhadn te pravd podobnost

1. (18 bod ) Náhodná veli ina X je po et rub p i 400 nezávislých hodech mincí. a) Pomocí ƒeby²evovy nerovnosti odhadn te pravd podobnost (8 bod ) Náhodná veli ina X je po et rub p i nezávislých hodech mincí a) Pomocí ƒeby²evovy nerovnosti odhadn te pravd podobnost P ( X EX < ) (9 bod ) b) Formulujte centrální limitní v tu a pomocí ní vypo

Více

Soft Computing (SFC) 2014/2015 Demonstrace u ení sít RCE, Java aplikace

Soft Computing (SFC) 2014/2015 Demonstrace u ení sít RCE, Java aplikace Soft Computing (SFC) 2014/2015 Demonstrace u ení sít RCE, Java aplikace Franti²ek N mec (xnemec61) xnemec61@stud.t.vutbr.cz 1 Úvod Úkolem tohoto projektu bylo vytvo it aplikaci, která bude demonstrovat

Více

A. PODÍL JEDNOTLIVÝCH DRUHŮ DOPRAVY NA DĚLBĚ PŘEPRAVNÍ PRÁCE A VLIV DÉLKY VYKONANÉ CESTY NA POUŽITÍ DOPRAVNÍHO PROSTŘEDKU

A. PODÍL JEDNOTLIVÝCH DRUHŮ DOPRAVY NA DĚLBĚ PŘEPRAVNÍ PRÁCE A VLIV DÉLKY VYKONANÉ CESTY NA POUŽITÍ DOPRAVNÍHO PROSTŘEDKU A. PODÍL JEDNOTLIVÝCH DRUHŮ DOPRAVY NA DĚLBĚ PŘEPRAVNÍ PRÁCE A VLIV DÉLKY VYKONANÉ CESTY NA POUŽITÍ DOPRAVNÍHO PROSTŘEDKU Ing. Jiří Čarský, Ph.D. (Duben 2007) Komplexní přehled o podílu jednotlivých druhů

Více

IP kamerový systém Catr - uºivatelský návod k obsluze

IP kamerový systém Catr - uºivatelský návod k obsluze IP kamerový systém Catr - uºivatelský návod k obsluze Obsah P ipoj se k nám! Úvod 3 P ístup do systému 3 Po íta s Windows 3 Prvotní instalace 3 Ovládání kamerového systému na po íta i 5 šivý náhled...................................................

Více

na za átku se denuje náhodná veli ina

na za átku se denuje náhodná veli ina P íklad 1 Generujeme data z náhodné veli iny s normálním rozd lením se st ední hodnotou µ = 1 a rozptylem =. Rozptyl povaºujeme za známý, ale z dat chceme odhadnout st ední hodnotu. P íklad se e²í v následujícím

Více

Testy pro více veli in

Testy pro více veli in Kapitola 8 Testy pro více veli in 8.1 Testy parametr s více výb ry s p edpokladem normality dat 8.1.1 Testy s dv ma výb ry. P edpoklady: Pro spojité rozd lení normalita nebo velký výb r. Pro diskrétní

Více

P íklady k prvnímu testu - Pravd podobnost

P íklady k prvnímu testu - Pravd podobnost P íklady k prvnímu testu - Pravd podobnost 28. února 204 Instrukce: Projd te si v²echny p íklady. Kaºdý p íklad se snaºte pochopit. Pak vymyslete a vy- e²te p íklad podobný. Tím se ujistíte, ºe p íkladu

Více

Uºivatelská p íru ka k programu SlaFoR verze 1.0

Uºivatelská p íru ka k programu SlaFoR verze 1.0 1 Uºivatelská p íru ka k programu SlaFoR verze 1.0 Toto je manuál k programu SlaFoR 1.0 (Slab Forces & Reinforcement), který byl vytvo en v rámci bakalá ské práce na kated e betonových a zd ných konstrukcí

Více

e²ení 1. série Úvodní gulá² autor: Kolektiv org

e²ení 1. série Úvodní gulá² autor: Kolektiv org e²ení 1. série Úvodní gulá² autor: Kolektiv org Úloha 1.1. Bubla, Lib nka, Henry a Mat j hráli hru. Protoºe byli ty i, napsali si na tabuli ty i ty ky a jejich úkolem pak bylo vepsat mezi n t i znaménka

Více

Android Elizabeth. Verze: 1.3

Android Elizabeth. Verze: 1.3 Android Elizabeth Program pro měření mezičasů na zařízeních s OS Android Verze: 1.3 Naposledy upraveno: 12. března 2014 alesrazym.cz Aleš Razým fb.com/androidelizabeth Historie verzí Verze Datum Popis

Více

Kótování na strojnických výkresech 1.část

Kótování na strojnických výkresech 1.část Kótování na strojnických výkresech 1.část Pro čtení výkresů, tj. určení rozměrů nebo polohy předmětu, jsou rozhodující kóty. Z tohoto důvodu je kótování jedna z nejzodpovědnějších prací na technických

Více

7. Stropní chlazení, Sálavé panely a pasy - 1. část

7. Stropní chlazení, Sálavé panely a pasy - 1. část Základy sálavého vytápění (2162063) 7. Stropní chlazení, Sálavé panely a pasy - 1. část 30. 3. 2016 Ing. Jindřich Boháč Obsah přednášek ZSV 1. Obecný úvod o sdílení tepla 2. Tepelná pohoda 3. Velkoplošné

Více

Průzkum dopravy v ulicích Pod Vinohrady a Havlíčkova

Průzkum dopravy v ulicích Pod Vinohrady a Havlíčkova Průzkum dopravy v ulicích Pod Vinohrady a Havlíčkova Město Kuřim Zodpovědný řešitel: Ing. Martin Smělý Vysoké učení technické v Brně Fakulta stavební Ústav pozemních komunikací prosinec 211 1. Identifikační

Více

Dálkové p enosy ze za ízení aktivní protikorozní ochrany Severomoravské plynárenské, a.s.

Dálkové p enosy ze za ízení aktivní protikorozní ochrany Severomoravské plynárenské, a.s. Dálkové p enosy ze za ízení aktivní protikorozní ochrany Severomoravské plynárenské, a.s. Tomáš D dina, Lubomír Herman Severomoravská plynárenská, a.s. Hlavní d vody realizace Podmínkou bezpe nosti a spolehlivosti

Více

TISKOVÁ ZPRÁVA Centrum pro výzkum veřejného mínění Sociologický ústav AV ČR, v.v.i. Jilská 1, Praha 1 Tel./fax: 286 80 129 E-mail: paulina.tabery@soc.cas.cz Názory obyvatel na zadlužení a přijatelnost

Více

Základy sálavého vytápění (2162063) 6. Stropní vytápění. 30. 3. 2016 Ing. Jindřich Boháč

Základy sálavého vytápění (2162063) 6. Stropní vytápění. 30. 3. 2016 Ing. Jindřich Boháč Základy sálavého vytápění (2162063) 6. Stropní vytápění 30. 3. 2016 Ing. Jindřich Boháč Obsah přednášek ZSV 1. Obecný úvod o sdílení tepla 2. Tepelná pohoda 3. Velkoplošné vodní sálavé vytápění 3.1 Zabudované

Více

PŘIJÍMACÍ ŘÍZENÍ. Strana

PŘIJÍMACÍ ŘÍZENÍ. Strana PŘIJÍMACÍ ŘÍZENÍ Strana Vyhledávání textu - přidržte klávesu Ctrl, kurzor umístěte na příslušný řádek a klikněte levým tlačítkem myši. 1. Právní předpisy upravující přijímací řízení ke studiu ve střední

Více

WEBDISPEČINK NA MOBILNÍCH ZAŘÍZENÍCH PŘÍRUČKA PRO WD MOBILE

WEBDISPEČINK NA MOBILNÍCH ZAŘÍZENÍCH PŘÍRUČKA PRO WD MOBILE WEBDISPEČINK NA MOBILNÍCH ZAŘÍZENÍCH PŘÍRUČKA PRO WD MOBILE Úvodem WD je mobilní verze klasického WEBDISPEČINKU, která je určena pro chytré telefony a tablety. Je k dispozici pro platformy ios a Android,

Více

Vyvažování tuhého rotoru v jedné rovině přístrojem Adash 4900 - Vibrio

Vyvažování tuhého rotoru v jedné rovině přístrojem Adash 4900 - Vibrio Aplikační list Vyvažování tuhého rotoru v jedné rovině přístrojem Adash 4900 - Vibrio Ref: 15032007 KM Obsah Vyvažování v jedné rovině bez měření fáze signálu...3 Nevýhody vyvažování jednoduchými přístroji...3

Více

Analýza oběžného kola

Analýza oběžného kola Vysoká škola báňská Technická univerzita 2011/2012 Analýza oběžného kola Radomír Bělík, Pavel Maršálek, Gȕnther Theisz Obsah 1. Zadání... 3 2. Experimentální měření... 4 2.1. Popis měřené struktury...

Více

1 METODICKÉ POKYNY AD HOC MODUL 2007: Pracovní úrazy a zdravotní problémy související se zaměstnáním

1 METODICKÉ POKYNY AD HOC MODUL 2007: Pracovní úrazy a zdravotní problémy související se zaměstnáním 1 METODICKÉ POKYNY AD HOC MODUL 2007: Pracovní úrazy a zdravotní problémy související se zaměstnáním Ad hoc modul 2007 vymezuje Nařízení Komise (ES) č. 431/2006 z 24. února 2006. Účelem ad hoc modulu 2007

Více

Oprava střechy a drenáže, zhotovení a instalace kované mříže kostel Sv. Václava Lažany

Oprava střechy a drenáže, zhotovení a instalace kované mříže kostel Sv. Václava Lažany Zadávací dokumentace na podlimitní veřejnou zakázku na stavební práce zadávanou dle zákona 137/2006 Sb., o veřejných zakázkách, v platném znění: Zadavatel: Římskokatolická farnost děkanství Skuteč Tyršova

Více

Řešení: Dejme tomu, že pan Alois to vezme popořadě od jara do zimy. Pro výběr fotky z jara má Alois dvanáct možností. Tady není co počítat.

Řešení: Dejme tomu, že pan Alois to vezme popořadě od jara do zimy. Pro výběr fotky z jara má Alois dvanáct možností. Tady není co počítat. KOMBINATORIKA ŘEŠENÉ PŘÍKLADY Příklad 1 Pan Alois dostal od vedení NP Šumava za úkol vytvořit propagační poster se čtyřmi fotografiemi Šumavského národního parku, každou z jiného ročního období (viz obrázek).

Více

Příprava na 1. čtvrtletní písemku pro třídu 1EB

Příprava na 1. čtvrtletní písemku pro třídu 1EB Variace 1 Příprava na 1. čtvrtletní písemku pro třídu 1EB 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. Číselné

Více

Prezentace. Ing. Petr V elák 6. b ezna 2009

Prezentace. Ing. Petr V elák 6. b ezna 2009 Prezentace Ing. Petr V elák 6. b ezna 2009 1 OBSAH OBSAH Obsah 1 Úvodní slovo 3 2 P íprava prezentace 4 2.1 Jak prezentace ned lat........................ 4 2.1.1 Kontrast písma a pozadí...................

Více

Návrh realizace transformátoru Thane C. Heinse III.

Návrh realizace transformátoru Thane C. Heinse III. 1 Návrh realizace transformátoru Thane C. Heinse III. Ing. Ladislav Kopecký, ervenec 2016 Ve t etí ásti lánku se vrátíme k variant TH transformátoru s jádrem EE a provedeme návrh s konkrétním typem jádra.

Více

Seminá e. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, sem. 1-13

Seminá e. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, sem. 1-13 Seminá e Ing. Michal Valenta PhD. Katedra softwarového inºenýrství Fakulta informa ních technologií ƒeské vysoké u ení technické v Praze c Michal Valenta, 2010 Databázové systémy BI-DBS ZS 2010/11, sem.

Více

Fyzikální praktikum 3

Fyzikální praktikum 3 Ústav fyzikální elekotroniky P írodov decká fakulta, Masarykova univerzita, Brno Fyzikální praktikum 3 Úloha 7. Opera ní zesilova Úvod Opera ní zesilova je elektronický obvod hojn vyuºívaný tém ve v²ech

Více

Rovnice a nerovnice. Posloupnosti.

Rovnice a nerovnice. Posloupnosti. .. Veronika Sobotíková katedra matematiky, FEL ƒvut v Praze, http://math.feld.cvut.cz/ 30. srpna 2018.. 1/75 (v reálném oboru) Rovnicí resp. nerovnicí v reálném oboru rozumíme zápis L(x) P(x), kde zna

Více

Uºivatelská p íru ka Octopus

Uºivatelská p íru ka Octopus Uºivatelská p íru ka Octopus Jan Bojko 11. prosince 2014 Abstrakt Uºivatelská p íru ka k aplikaci Octopus. Obsah 1 Úvod 2 2 P ihlá²ení 2 3 Naviga ní menu 2 4 Práce s tabulkou 3 5 Editace 6 5.1 Nový záznam.............................

Více

Sazba zdrojových kód. Jakub Kadl ík 20. 03. 2014

Sazba zdrojových kód. Jakub Kadl ík 20. 03. 2014 Sazba zdrojových kód Jakub Kadl ík 20. 03. 2014 1 Obsah 1 Základní prost edí verbatim 3 2 Balí ek listings 3 3 Sazba kódu z externího souboru 5 4 Téma Solarized 5 4.1 Solarized light.............................

Více

Novinky verzí SKLADNÍK 4.24 a 4.25

Novinky verzí SKLADNÍK 4.24 a 4.25 Novinky verzí SKLADNÍK 4.24 a 4.25 Zakázky standardní přehled 1. Možnosti výběru 2. Zobrazení, funkce Zakázky přehled prací 1. Možnosti výběru 2. Mistři podle skupin 3. Tisk sumářů a skupin Zakázky ostatní

Více

Zobrazení v rovině je předpis, který každému bodu X roviny připisuje právě jeden bod X roviny. Bod X se nazývá vzor, bod X se nazývá obraz.

Zobrazení v rovině je předpis, který každému bodu X roviny připisuje právě jeden bod X roviny. Bod X se nazývá vzor, bod X se nazývá obraz. 7. Shodná zobrazení 6. ročník 7. Shodná zobrazení 7.1. Shodnost geometrických obrazců Zobrazení v rovině je předpis, který každému bodu X roviny připisuje právě jeden bod X roviny. Bod X se nazývá vzor,

Více

MANUÁL PRO PRÁCI S POČÍTAČOVÝM PROGRAMEM SLUNÍČKO

MANUÁL PRO PRÁCI S POČÍTAČOVÝM PROGRAMEM SLUNÍČKO UNIVERZITA PALACKÉHO V OLOMOUCI Pedagogická fakulta Katedra speciální pedagogiky RADKA BENEŠOVÁ III. roč ník prezenč ní studium obor: speciální pedagogika př edškolního vě ku MANUÁL PRO PRÁCI S POČÍTAČOVÝM

Více

Návrh realizace transformátoru Thane C. Heinse

Návrh realizace transformátoru Thane C. Heinse - 1 - Návrh realizace transformátoru Thane C. Heinse (c) Ing. Ladislav Kopecký, duben 2016 V lánku Bi-toroidní transformátor Thane C. Heinse byl uveden princip vynálezu Thane Heinse, jehož základní myšlenkou

Více

Český úřad zeměměřický a katastrální vydává podle 3 písm. d) zákona č. 359/1992 Sb., o zeměměřických a katastrálních orgánech, tyto pokyny:

Český úřad zeměměřický a katastrální vydává podle 3 písm. d) zákona č. 359/1992 Sb., o zeměměřických a katastrálních orgánech, tyto pokyny: Český úřad zeměměřický a katastrální POKYNY Č. 44 Českého úřadu zeměměřického a katastrálního ze dne 20.12.2013 č.j. ČÚZK- 25637/2013-22, k zápisu vlastnictví jednotek vymezených podle zákona č. 72/1994

Více

Ergodické Markovské et zce

Ergodické Markovské et zce 1. b ezen 2013 Denice 1.1 Markovský et zec nazveme ergodickým, jestliºe z libovolného stavu m ºeme p ejít do jakéhokoliv libovolného stavu (ne nutn v jednom kroku). Denice 1.2 Markovský et zec nazveme

Více

účetních informací státu při přenosu účetního záznamu,

účetních informací státu při přenosu účetního záznamu, Strana 6230 Sbírka zákonů č. 383 / 2009 Částka 124 383 VYHLÁŠKA ze dne 27. října 2009 o účetních záznamech v technické formě vybraných účetních jednotek a jejich předávání do centrálního systému účetních

Více

Základy graky. Jan Hamá ek. 13. zá í 2016

Základy graky. Jan Hamá ek. 13. zá í 2016 13. zá í 2016 Barevné systémy Jak uloºit efektivn barvu do po íta e? Barevné systémy Jak uloºit efektivn barvu do po íta e?nej ast ji pouºíváme systém RGB - Red, Green, Blue. Barva - trojice ísel (R, G,

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování V algoritmizaci a programování je důležitá schopnost analyzovat a myslet. Všeobecně jsou odrazovým můstkem pro řešení neobvyklých, ale i každodenních problémů. Naučí nás rozdělit

Více

-1- N á v r h ČÁST PRVNÍ OBECNÁ USTANOVENÍ. 1 Předmět úpravy

-1- N á v r h ČÁST PRVNÍ OBECNÁ USTANOVENÍ. 1 Předmět úpravy -1- I I. N á v r h VYHLÁŠKY ze dne 2009 o účetních záznamech v technické formě vybraných účetních jednotek a jejich předávání do centrálního systému účetních informací státu a o požadavcích na technické

Více

TVAROVÉ A ROZMĚROVÉ PARAMETRY V OBRAZOVÉ DOKUMENTACI. Druhy kót Části kót Hlavní zásady kótování Odkazová čára Soustavy kót

TVAROVÉ A ROZMĚROVÉ PARAMETRY V OBRAZOVÉ DOKUMENTACI. Druhy kót Části kót Hlavní zásady kótování Odkazová čára Soustavy kót TVAROVÉ A ROZMĚROVÉ PARAMETRY V OBRAZOVÉ DOKUMENTACI Druhy kót Části kót Hlavní zásady kótování Odkazová čára Soustavy kót KÓTOVÁNÍ Kótování jednoznačné určení rozměrů a umístění všech tvarových podrobností

Více

Školní kolo soutěže Mladý programátor 2016, kategorie A, B

Školní kolo soutěže Mladý programátor 2016, kategorie A, B Doporučené hodnocení školního kola: Hodnotit mohou buď učitelé školy, tým rodičů nebo si žáci, kteří se zúčastní soutěže, mohou ohodnotit úlohy navzájem sami (v tomto případě doporučujeme, aby si žáci

Více

Mezní kalibry. Druhy kalibrů podle přesnosti: - dílenské kalibry - používají ve výrobě, - porovnávací kalibry - pro kontrolu dílenských kalibrů.

Mezní kalibry. Druhy kalibrů podle přesnosti: - dílenské kalibry - používají ve výrobě, - porovnávací kalibry - pro kontrolu dílenských kalibrů. Mezní kalibry Mezními kalibry zjistíme, zda je rozměr součástky v povolených mezích, tj. v toleranci. Mají dobrou a zmetkovou stranu. Zmetková strana je označená červenou barvou. Délka zmetkové části je

Více

Zásady a podmínky pro poskytování dotací na program Podpora implementace Evropské charty regionálních či menšinových jazyků 2011

Zásady a podmínky pro poskytování dotací na program Podpora implementace Evropské charty regionálních či menšinových jazyků 2011 Zásady a podmínky pro poskytování dotací na program Podpora implementace Evropské charty regionálních či menšinových jazyků 2011 Článek 1 Úvodní ustanovení 1. Zásady a podmínky pro poskytování dotací na

Více

PALETOVÉ REGÁLY SUPERBUILD NÁVOD NA MONTÁŽ

PALETOVÉ REGÁLY SUPERBUILD NÁVOD NA MONTÁŽ PALETOVÉ REGÁLY SUPERBUILD NÁVOD NA MONTÁŽ Charakteristika a použití Příhradový regál SUPERBUILD je určen pro zakládání všech druhů palet, přepravek a beden všech rozměrů a pro ukládání kusového, volně

Více

EHLED OSV za rok 2013 vykonávajících pouze hlavní SV

EHLED OSV za rok 2013 vykonávajících pouze hlavní SV Zadání pro programátory ehled o p íjmech a výdajích OSV za rok 2013, i nasazení verze zpracující p ehled o p íjmech a výdajích za rok 2013 upozornit na projetí dávkového programu v N_UDRZBA pro vy len

Více

Výzva k podání nabídek (zadávací dokumentace)

Výzva k podání nabídek (zadávací dokumentace) Výzva k podání nabídek (zadávací dokumentace) 1.Číslo zakázky 2.Název programu: 3.Registrační číslo projektu 4.Název projektu: 5.Název zakázky: Operační program Vzdělání pro konkurenceschopnost CZ.1.07/1.1.07/02.0129

Více

Rychnov nad Kněžnou. Trutnov VÝVOJ BYTOVÉ VÝSTAVBY V KRÁLOVÉHRADECKÉM KRAJI V LETECH 1998 AŽ 2007 29

Rychnov nad Kněžnou. Trutnov VÝVOJ BYTOVÉ VÝSTAVBY V KRÁLOVÉHRADECKÉM KRAJI V LETECH 1998 AŽ 2007 29 3. Bytová výstavba v okresech Královéhradeckého kraje podle fází (bez promítnutí územních změn) Ekonomická transformace zasáhla bytovou výstavbu velmi negativně, v 1. polovině 90. let nastal rapidní pokles

Více

Názory na bankovní úvěry

Názory na bankovní úvěry INFORMACE Z VÝZKUMU STEM TRENDY 1/2007 DLUHY NÁM PŘIPADAJÍ NORMÁLNÍ. LIDÉ POKLÁDAJÍ ZA ROZUMNÉ PŮJČKY NA BYDLENÍ, NIKOLIV NA VYBAVENÍ DOMÁCNOSTI. Citovaný výzkum STEM byl proveden na reprezentativním souboru

Více

Algoritmizace a programování

Algoritmizace a programování Pátek 14. října Algoritmizace a programování V algoritmizaci a programování je důležitá schopnost analyzovat a myslet. Všeobecně jsou odrazovým můstkem pro řešení neobvyklých, ale i každodenních problémů.

Více

POKYNY Č. 45. Část I Zápis nové stavby jako samostatné věci

POKYNY Č. 45. Část I Zápis nové stavby jako samostatné věci Český úřad zeměměřický a katastrální POKYNY Č. 45 Českého úřadu zeměměřického a katastrálního ze dne 20.12.2013 č.j. ČÚZK 25639/2013-22 pro zápis nové stavby, zápis vlastnického práva k nové stavbě a zápis

Více

simphoto verze Manuál k aplikaci Autor: Datum:

simphoto verze Manuál k aplikaci Autor: Datum: Manuál k aplikaci simphoto verze 12.2010 Autor: David Datum: íºek 17.12. 2010 Obsah Úvod 2 1 Základní ovládání 3 2 Na tení snímku 3 3 Eliminace distorze objektivu 4 4 Tvorba fotoplánu p i m ených vlícovacích

Více

Teorie her. Klasikace. Pomocný text

Teorie her. Klasikace. Pomocný text Pomocný text Teorie her Milí e²itelé, první ty i úlohy kaºdé série spojuje jisté téma a vám bude poskytnut text, který vás tímto tématem mírn provede a pom ºe vám p i e²ení t chto úloh. Teorie her, jiº

Více

6. Matice. Algebraické vlastnosti

6. Matice. Algebraické vlastnosti Matematický ústav Slezské univerzity v Opavě Učební texty k přednášce ALGEBRA I, zimní semestr 2000/2001 Michal Marvan 6 Matice Algebraické vlastnosti 1 Algebraické operace s maticemi Definice Bud te A,

Více

INTERNETOVÝ TRH S POHLEDÁVKAMI. Uživatelská příručka

INTERNETOVÝ TRH S POHLEDÁVKAMI. Uživatelská příručka INTERNETOVÝ TRH S POHLEDÁVKAMI Uživatelská příručka 1. března 2013 Obsah Registrace... 3 Registrace fyzické osoby... 3 Registrace právnické osoby... 6 Uživatelské role v systému... 8 Přihlášení do systému...

Více

Microsoft Office Project 2003 Úkoly projektu 1. Začátek práce na projektu 1.1 Nastavení data projektu Plánovat od Datum zahájení Datum dokončení

Microsoft Office Project 2003 Úkoly projektu 1. Začátek práce na projektu 1.1 Nastavení data projektu Plánovat od Datum zahájení Datum dokončení 1. Začátek práce na projektu Nejprve je třeba pečlivě promyslet všechny detaily projektu. Pouze bezchybné zadání úkolů a ovládání aplikace nezaručuje úspěch projektu jako takového, proto je přípravná fáze,

Více

Obec Nová Ves. Zm na. 1, kterou se m ní Územní plán Nová Ves

Obec Nová Ves. Zm na. 1, kterou se m ní Územní plán Nová Ves Obec Nová Ves. j.: V Nové Vsi dne Zm na. 1, kterou se m ní Územní plán Nová Ves Zastupitelstvo obce Nová Ves, p íslu né podle ustanovení 6 odst. 5 písm. c) zákona. 183/2006 Sb., o územním plánování a stavebním

Více

ČESKÁ ZEMĚDĚLSKÁ UNIVERZITA V PRAZE

ČESKÁ ZEMĚDĚLSKÁ UNIVERZITA V PRAZE ČESKÁ ZEMĚDĚLSKÁ UNIVERZITA V PRAZE Fakulta provozně ekonomická Obor: Provoz a ekonomika Statistické aspekty terénních průzkumů Vedoucí diplomové práce: Ing. Pavla Hošková Vypracoval: Martin Šimek 2003

Více

Preference v u ívání prost edk elektronické komunikace áky a studenty

Preference v u ívání prost edk elektronické komunikace áky a studenty Preference v u ívání prost edk elektronické komunikace áky a studenty (dotazníkový pr zkum) Zuzana Pustinová Dne ní doba nabízí mnohé mo nosti, jak komunikovat, ani by se ú astníci hovoru nacházeli na

Více

ŘÁD UPRAVUJÍCÍ POSTUP DO DALŠÍHO ROČNÍKU

ŘÁD UPRAVUJÍCÍ POSTUP DO DALŠÍHO ROČNÍKU 1. Oblast použití Řád upravující postup do dalšího ročníku ŘÁD UPRAVUJÍCÍ POSTUP DO DALŠÍHO ROČNÍKU na Německé škole v Praze 1.1. Ve školském systému s třináctiletým studijním cyklem zahrnuje nižší stupeň

Více

Zadání. Založení projektu

Zadání. Založení projektu Zadání Cílem tohoto příkladu je navrhnout symetrický dřevěný střešní vazník délky 13 m, sklon střechy 25. Materiálem je dřevo třídy C24, fošny tloušťky 40 mm. Zatížení krytinou a podhledem 0,2 kn/m, druhá

Více

Zpráva o výsledku p ezkoumání hospoda ení územního samosprávného celku Obec Mi kov za období od 1.1.2017 do 31.12.2017 Zpráva o výsledku p ezkoumání hospoda ení 1/6 I. VŠEOBECNÉ INFORMACE Název ÚSC: Obec

Více

Nástrahy pravopisu - vznik nových slov. Ing. Kateřina Tomšíková

Nástrahy pravopisu - vznik nových slov. Ing. Kateřina Tomšíková Nástrahy pravopisu - vznik nových slov Ing. Kateřina Tomšíková Spřahování Jeden ze slovotvorných postupů, kterými vznikají nová slova. Oba členy si v něm uchovávají ve všech jeho tvarech, nebo alespoň

Více

( x ) 2 ( ) 2.5.4 Další úlohy s kvadratickými funkcemi. Předpoklady: 2501, 2502

( x ) 2 ( ) 2.5.4 Další úlohy s kvadratickými funkcemi. Předpoklady: 2501, 2502 .5. Další úlohy s kvadratickými funkcemi Předpoklady: 50, 50 Pedagogická poznámka: Tato hodina patří mezi ty méně organizované. Společně řešíme příklad, při dalším počítání se třída rozpadá. Já řeším příklady

Více

I. Objemové tíhy, vlastní tíha a užitná zatížení pozemních staveb

I. Objemové tíhy, vlastní tíha a užitná zatížení pozemních staveb I. Objemové tíhy, vlastní tíha a užitná zatížení pozemních staveb 1 VŠEOBECNĚ ČSN EN 1991-1-1 poskytuje pokyny pro stanovení objemové tíhy stavebních a skladovaných materiálů nebo výrobků, pro vlastní

Více

Specifikace systému ESHOP

Specifikace systému ESHOP Nabídka: Specifikace systému ESHOP březen 2009 Obsah 1 Strana zákazníka 1 1.1 Nabídka produkt, strom kategorií..................... 1 1.2 Objednávka a ko²ík.............................. 1 1.3 Registrace

Více

PARLAMENT ČESKÉ REPUBLIKY Poslanecká sněmovna 2005 IV. volební období

PARLAMENT ČESKÉ REPUBLIKY Poslanecká sněmovna 2005 IV. volební období PARLAMENT ČESKÉ REPUBLIKY Poslanecká sněmovna 2005 IV. volební období 1207 Návrh poslanců Waltera Bartoše, Vlastimila Tlustého, Petra Nečase a dalších na vydání zákona, kterým se mění zákon č. 561/2004

Více

POKYNY. k vyplnění přiznání k dani z příjmů fyzických osob za zdaňovací období (kalendářní rok) 2012

POKYNY. k vyplnění přiznání k dani z příjmů fyzických osob za zdaňovací období (kalendářní rok) 2012 dz_12dpfo5405_19_pok.pdf - Adobe Acrobat Professional POKYNY k vyplnění přiznání k dani z příjmů fyzických osob za zdaňovací období (kalendářní rok) 2012 Pokyny k vyplnění přiznání k dani z příjmů fyzických

Více

4. Připoutejte se, začínáme!

4. Připoutejte se, začínáme! 4. Připoutejte se, začínáme! Pojďme si nyní zrekapitulovat základní principy spreadů, které jsme si vysvětlili v předcházejících kapitolách. Řekli jsme si, že klasický spreadový obchod se skládá ze dvou

Více