Jak aplikace, které rozpoznávají skladby, jako je Shazam?

Spektrogram

Shazam a spol se staly jednou z nejúžasnějších aplikací, které můžeme nosit na smartphonu. A není to tím, že by nebyli slavní, protože je už každý zná, ale přesto se zdá téměř magické, že jsou schopni v daný okamžik rozpoznat, jaká písnička hraje. Pojďme se podívat, jak aplikace jako Shazam ve skutečnosti fungují.

Spektrografie, základní pilíř

Ve skutečnosti jsou tyto aplikace založeny na tom, co známe jako spektrografie nebo spektroskopie, což je soubor znalostí souvisejících se spektroskopickou analýzou. A s těmito slovy to může být těžké pochopit, ale my si to za chvíli vysvětlíme. Když je vytvořen jakýkoli zvuk, můžeme ho slyšet, protože částice, které jsou mezi námi a zdrojem tohoto zvuku, se pohybují, vibrují. Když říkáme, že se tyto částice pohybují, myslíme tím, že generují vlny, které jdou z jednoho místa na druhé. Počet pohybů těchto částic tam a zpět se nazývá frekvence a jistě jsme všichni slyšeli o frekvenci zvuku, že? Spektrografie je v tomto případě věnována měření frekvence zvuků v určitém časovém úseku. Každý zvuk má v každém okamžiku jinou frekvenci, a to nám umožňuje na spektrogramu rozlišit, které zvuky znějí.

Všechno je to o porovnávání

Jak víš, jaká písnička hraje? Porovnávání. Vlastně je to jako udělat "rentgen" a porovnat ho s jinými rentgenovými paprsky zvuků, které jsme již měli uloženy, a tak vědět, který ze všech se s tím shoduje. Přesně tak funguje Shazam a další aplikace.

Spektrogram

Shazam je spektrograf

Když spustíme Shazam a řekne nám, že poznává skladbu, ve skutečnosti to dělá, že přeměňuje náš smartphone na spektrograf. Je to zachycení zvuku a generování spektrogramu, jako je ten, který máte právě nad tímto odstavcem. Jakmile budete mít dostatečně podrobný spektrograf, pak jej porovnáte s celou databází, kterou mají uloženou.

Databáze je nejsložitější

Vlastně nejsložitější ze všech je databáze, která uchovává spektrogramy všech skladeb. Víme, jak těžké je vytvořit hudební službu, která bude obsahovat veškerou hudbu na světě. Spotify je jedním z takových programů, ale důležité skladby v něm stále chybí. No, pokud je to již složité, představte si, jaké to musí být ukládat spektrogramy všech těch písní. Je normální, že součástí práce týmu Shazam a dalších podobných aplikací je věnovat se rozšiřování databáze, která je ve skutečnosti srdcem aplikace.

Jeho offline provoz je velmi jednoduchý

Někdy se můžeme divit, jak tyto aplikace mohou fungovat offline, bez připojení k internetu. Je to vlastně velmi jednoduché, protože nám nikdy neposkytnou data, dokud nejsou připojeni k internetu. Nemusí uložit celou skladbu, nemusí dokonce uložit skladbu, kterou chceme analyzovat. Ve skutečnosti jediné, co uchovávají, jsou spektrografická data, aby je bylo možné později porovnat v databázi, a to nezabírá prakticky nic.

Algoritmus je zásadní

Dalším z nejdůležitějších aspektů těchto aplikací je však algoritmus, který používají k porovnávání skladeb. Algoritmus ve skutečnosti není nic jiného než způsob provádění postupu. Shazamův algoritmus se musí neustále zlepšovat. Proč? Protože musí pracovat na tom, aby systém sledoval cestu, která mu umožní najít skladbu ještě rychleji. A je to tak, že si člověk může myslet, že jakmile jsou spektrogramy pochopeny a databáze skladeb dokončena, je vše hotovo, ale nic nemůže být dále od pravdy. Předpokládejme, že byste měli porovnat spektrogram s miliony a miliony skladeb. Algoritmus je však jedním z hlavních aspektů. Existuje několik počítačových technik, jak to zlepšit, a nebudeme hovořit o žádné konkrétní, protože by to bylo jako mluvit o tvaru mraků za bouřlivého dne. Vždy je však dobré vědět, že algoritmus aplikace je jedním z podstatných prvků, spolu s funkcí spektrografie a databáze skladeb.


  1.   klinika řekl

    Chazam je na hovno. Je to mnohem lepší Soundhound nebo track ID od Sony.


  2.   Bitva řekl

    Zajímavý…