Kuidas laule tuvastavad rakendused (nt Shazam) töötavad?

Spektrogramm

Shazamist ja ettevõttest on saanud üks hämmastavamaid rakendusi, mida saame nutitelefonis kanda. Ja asi pole selles, et nad poleks kuulsad, sest kõik teavad neid juba, kuid tundub siiski peaaegu maagiline, et nad suudavad igal hetkel ära tunda, mis lugu mängib. Vaatame, kuidas sellised rakendused nagu Shazam tegelikult töötavad.

Spektrograafia, oluline sammas

Tegelikkuses põhinevad need rakendused sellel, mida me teame kui spektrograafiat või spektroskoopiat, see tähendab spektroskoopilise analüüsiga seotud teadmiste kogumit. Ja nende sõnadega võib olla raske mõista, kuid me selgitame seda hetkega. Kui mis tahes heli tekib, kuuleme seda, sest meie ja selle heli allika vahel olevad osakesed liiguvad, vibreerivad. Kui me ütleme, et need osakesed liiguvad, peame silmas seda, et nad tekitavad laineid, mis liiguvad ühest kohast teise. Seda, mitu korda need osakesed edasi-tagasi liiguvad, nimetatakse sageduseks ja kindlasti oleme kõik kuulnud heli sagedusest, eks? Noh, spektrograafia on antud juhul pühendatud helide sageduse mõõtmisele teatud aja jooksul. Igal helil on igal hetkel erinev sagedus ja see võimaldab meil spektrogrammi järgi eristada, millised helid kõlavad.

Kõik on võrdlemise küsimus

Kuidas sa tead, mis lugu mängib? Võrreldes. Tegelikult on see nagu "röntgeni" tegemine ja selle võrdlemine teiste juba salvestatud helide röntgenikiirtega, et saaksime teada, milline neist vastab sellele. Täpselt nii töötavad Shazam ja teised rakendused.

Spektrogramm

Shazam on spektrograaf

Kui käivitame Shazami ja see ütleb meile, et see tunneb laulu ära, muudab see tegelikult meie nutitelefoni spektrograafiks. See on heli hõivamine ja spektrogrammi loomine, nagu see, mis teil on selle lõigu kohal. Kui teil on piisavalt üksikasjalik spektrograaf, saate seda võrrelda kogu nende salvestatud andmebaasiga.

Andmebaas on kõige keerulisem

Tegelikkuses on kõige keerulisem andmebaas, mis salvestab kõigi lugude spektrogrammid. Teame, kui raske on luua muusikateenust, mis sisaldab kogu maailma muusikat. Spotify on üks neist programmidest, kuid olulised laulud on sellest siiski puudu. Noh, kui see on juba keeruline, siis kujutage ette, kuidas see kõigi nende lugude spektrogramme salvestada. On normaalne, et osa Shazami ja teiste sarnaste rakenduste meeskonna tööst on pühenduda andmebaasi laiendamisele, mis tegelikult on rakenduse süda.

Selle võrguühenduseta toimimine on väga lihtne

Mõnikord võime imestada, kuidas need rakendused saavad töötada võrguühenduseta ja ilma Interneti-ühenduseta. See on tegelikult väga lihtne, kuna nad ei anna meile kunagi andmeid enne, kui nad on Internetiga ühendatud. Nad ei pea salvestama kogu lugu, nad ei pea isegi salvestama muusikapala, mida me tahame analüüsida. Tegelikkuses säilitavad nad ainult spektrograafilisi andmeid, et neid hiljem andmebaasis võrrelda ja see ei võta praktiliselt midagi.

Algoritm on hädavajalik

Veel üks nende rakenduste kõige olulisem aspekt on aga algoritm, mida nad laulude võrdlemiseks kasutavad. Algoritm pole tegelikult midagi muud kui protseduuri läbiviimise viis. Shazami algoritmi tuleb pidevalt täiustada. Miks? Sest nad peavad töötama selle nimel, et süsteem järgiks rada, mis võimaldab laulu veelgi kiiremini leida. Ja võib ju mõelda, et kui spektrogrammidest aru saadakse ja laulude andmebaas valmis, on kõik tehtud, aga miski ei saa olla tõest kaugemal. Mõelgem, et spektrogrammi tuleks võrrelda miljonite ja miljonite lauludega. Algoritm on aga üks peamisi aspekte. Selle parandamiseks on mitu arvutitehnikat ja me ei hakka neist eriti rääkima, sest see oleks nagu rääkimine Pilvede kujust tormisel päeval. Siiski on alati hea teada, et rakenduse algoritm on üks olulisemaid elemente koos spektrograafia funktsiooniga ja lugude andmebaasi omaga.


  1.   kliinikus DIJO

    Chazam on nõme. See on nii palju parem Soundhound või Sony raja ID.


  2.   Beattle DIJO

    Huvitav ...