Abschlussarbeit

Zurück zur Liste

Instrumentenerkennung mithilfe Neuronaler Netzwerke

AutorInnen Häusler, L., Maier, L.
Jahr 2019
Art der Arbeit Toningenieur-Projekt
Themenfeld Audiosignalverarbeitung
Schlagwörter Music Information Retrieval, Machine Learning, Künstliche neuronale Netze (ANN)
Abstract Quelltrennung im Sinne von Music Information Retrieval ist ein Verfahren bei dem einzelne Bestandteile, oft Instrumentenspuren, von Audiosignalen extrahiert werden sollen. Moderne Algorithmen liefern meist unzureichende Ergebnisse mit klar hörbaren Artefakten. In der vorgeschlagenen Lösung wird mithilfe von künstlicher Intelligenz und angewandter Signalverarbeitung versucht Aktivierungsfunktionen zu ermitteln, welche in weiterer Folge verwendet werden können um Quelltrennung einfacher zu gestalten. Der Kern des Algorithmus ist ein trainiertes Convolutional Neural Network (CNN), welches Ausschnitte von Musikaufnahmen analysiert. Basierend auf einer beatsynchronen Analyse startet jeder Ausschnitt auf einem Taktschlag. Alle Ausschnitte werden mithilfe einer frequenzbereichsabhängigen 3-fach unterschiedlichen aufgelösten Constant-Q Transformation (CQT) in den Frequenzbereich transformiert. Dies ergibt die nötigen Features für das Netzwerk. Der Ausgang des Netzwerks ist zweidimensional und beinhaltet die Aktivierungsfunktionen jedes einzelnen Instruments über der Zeit. Diese entsprechen der Energie des Signals im Frequenzbereich, welche entsprechend dem Parseval‘schen Theorem der Energie im Zeitbereich entspricht. Die Datenaufbereitung erfolgt automatisch. Audiodateien werden vom Algorithmus aus Ordnern importiert, wobei die Namen der Ordner die Klassennamen bestimmen. Die Anzahl der Klassen (Instrumente) bestimmt in weiterer Folge auch die Struktur des Netzwerks. Nach der Importierung werden die Dateien vorverarbeitet und ans Netzwerk weitergegeben. Der Algorithmus wurde in Python 3.6 implementiert. Das CNN basiert auf Keras (Tensorflow). Für die Audioverarbeitung wurde LibRoSa verwendet.
BetreuerInnen Sontacchi, A.