MATOUŠEK, V. Automatizovaný přepis hudební skladby do notového zápisu [online]. Brno: Vysoké učení technické v Brně. Fakulta elektrotechniky a komunikačních technologií. 2018.

Posudky

Posudek vedoucího

Petyovský, Petr

Zadání bakalářské práce Vojtěcha Matouška patřilo mezi náročnější, s ohledem na specifické zaměření práce tj. analýza hudební dat. Student tak ve své práci propojil znalosti z oblasti zpracování signálu i své zkušenosti hráče na klávesový hudební nástroj. Student si dané téma přepisu hudební skladby do notového záznamu předem zvolil a mým úkolem, jako vedoucího práce, bylo v počátcích spíše krotit jeho počáteční ambice, abych následně v závěrečné etapě, po vystřízlivění studentova nadšení nad předpokládanou jednoduchostí úkolu, ho naopak motivoval k důkladnému zpracování závěrečného testování realizovaného algoritmu a provedení vyhodnocení úspěšnosti detekce. Všechny body zadání byly splněny. Student pracoval samostatně a iniciativně a konzultací využíval v dostatečné míře. Student návrhl a implementoval metodu pro detekci jednotlivých not ze zvukového záznamu a dále se věnoval vyhodnocení zahraných akordů. Vhodně definoval počáteční omezující podmínky kladené na vstupní zvukový soubor a provedl prvotní implementaci metod detekce s pomocí prostředí Matlab. V další části práce následně reimplementoval výslednou odladěnou metodu do jazyka C++. Proč se rozhodl z finálního textu bakalářské práce odstranit kapitolu věnující se popisu počátečního návrhu v prostředí Matlab, přesto že v jeho semestrální práci byla obsažena, mi však není jasné. Naopak kladně hodnotím snahu otestovat a odladit správnou funkci realizovaného detektoru na více platformách (macOS, Windows). Student věnoval řešení práce dostatek času, jednotlivé úkoly si vhodně rozvrhl, a proto se v závěru nedostal do časové tísně. Dosažené výsledky i formální zpracování práce jednoznačně svědčí o bakalářských schopnostech studenta. Předložené práci navrhuji hodnocení: dobře – C (79).

Navrhovaná známka
C
Body
79

Posudek oponenta

Richter, Miloslav

Zvládnutí zadání je ve své podstatě obtížné, jelikož se jedná o propojení několika oblastí (hudba, teorie signálu, zpracování signálu). Předloženou realizaci bych označil za středně obtížnou. Na základě předložené práce lze konstatovat, že zadání bylo splněno. Vlastní řešení není kvalitně popsáno ale díky přiloženému (nepopsanému, nekomentovanému) programu lze konstatovat, že řešení je prací bakaláře a že mu věnoval značný čas. V práci postrádám jednoznačnou definici výrazu "notový zápis" - v práci se střídá MIDI výstup a partitura. Koncepce je vhodně zvolena a vede k řešení. Teoretický rozbor je převzat z literatury (str. 10-34). Naprosto nedostatečný je popis vlastní práce studenta. V textové části je mu věnována kapitola 4 (necelé tři strany), kde jsou zopakovány vzorce z teoretického rozboru. Ty jsou ale použité v jiném tvaru než v úvodu (3.13 a 4.4.) a s nepřesnostmi: koeficient "Ak" se ve vzorci vyskytne dvakrát (4.4 a 4.7). Pro realizaci bylo zvoleno nejjednodušší, obdélníkové okno. Nejdůležitější část práce, získání výsledných not ze signálu (zde signál Y jehož význam není uveden) je popsáno jedním odstavcem (str. 36) společně s ne příliš dobře zdůvodněnými pomocnými podmínkami pro výběr či vyloučení not. Tato problematika není uvedena v teoretické části. Dále je zde zvoleno řešení s hledáním 12-ti půltónů na oktávu, které je v předchozí kapitole (3.4) označeno jako nevhodná vlastnost FFT, kterou CQT odstraňuje. Postup řešení by měl být ukázán na grafickém výstupu, jakýkoli obrázek postupu vyhodnocování ovšem chybí. Jednou z lepších částí práce je databáze testovacích skladeb. V práci je konstatováno, že "nenalezl vhodnou databázi", z čehož není zřejmé zda nic nenalezl, nebo nějakou databázi nalezl a nehodila se mu - v tom případě ji měl uvést společně s důvodem proč nebyla vhodná. Vlastní databáze studenta je jednoduchá, ale přesně odpovídá požadavkům na úvodní testování, kdy použil pro začátek samostatné akordy a pro testování pokročilejší použil delší skladby obsahující akordy. V práci jsou uvedeny i dosažené výsledky metody. Pro hodnocení výsledků se používají velice jednoduché kategorie chyb. I zde chybí grafický výstup, zejména mezivýsledků ve frekvenční části. Z těchto dat by se daly určit přesně typy chyb (malá intenzita tónu; chyba o půltón; zachycení maxima způsobeného šumem, sousední notou nebo harmonickou jiné noty). Jediným dostupným výsledkem je MIDI soubor, který je až na konci řetězce a je nutné ho interpretovat buď sluchem (což pro normální sluch, zvláště při akordech není snadné) nebo pomocí grafického zobrazení MIDI souboru některým z prohlížečů. Přiložený program je vlastní prací studenta. Program není popsán a tak není jasné jak se nastavují parametry pro testování vlastních skladeb a jaké nastavení se používá pro skladby předdefinované. To je možné zjistit až rozborem zdrojového kódu. Stejně jako studentovi i mě se nepodařilo převést nejdelší skladbu - patrně kvůli nedostatku paměti nebo špatné manipulaci s ní (rozsáhlejší skladby by bylo z důvodu značné paměťové náročnosti lepší řešit po částech). Student by měl zlepšit práci s dynamickou pamětí (kontrolovat zda nealokuje do již alokovaných proměnných, uvolňovat alokovanou paměť, zjistit jak funguje funkce .c_str()). Kvalita výsledků při mých testech byla obdobná jako v případě studenta, ale výsledky se od uvedených lišily - u uvedených výsledků nejsou popsány parametry, při kterých jich bylo dosaženo, takže to bude patrně rozdílným nastavením. I přes uvedené nedostatky je možné konstatovat, že práce svědčí o bakalářských schopnostech studenta.

Navrhovaná známka
D
Body
60

Otázky

eVSKP id 111122