Bachelor + Master Publishing
811 Bachelorarbeiten, 533 Masterarbeiten, 10.103 Diplomarbeiten

Untersuchung verschiedener Verfahren zur Grundfrequenzbestimmung mit Einstellung einer Applikation zur Midi-Konvertierung

Untersuchung verschiedener Verfahren zur Grundfrequenzbestimmung mit Einstellung einer Applikation zur Midi-Konvertierung
Über dieses Buch
  • Art: Diplomarbeit
  • Autor: Stefan Huber
  • Abgabedatum: Juni 2003
  • Umfang: 125 Seiten
  • Dateigröße: 1,3 MB
  • Note: 1,7
  • Institution / Hochschule: Hochschule für Technik und Wirtschaft Berlin Deutschland
  • ISBN (eBook): 978-3-8324-7698-4
  • ISBN (Paperback) :
    978-3-8324-7698-4 P
  • ISBN (CD) :978-3-8324-7698-4 CD
  • Sprache: Deutsch
  • Prämierung:
  • Arbeit zitieren: Huber, Stefan Juni 2003: Untersuchung verschiedener Verfahren zur Grundfrequenzbestimmung mit Einstellung einer Applikation zur Midi-Konvertierung, Hamburg: Diplomica Verlag
  • Schlagworte: Wave, PDA, Tiefpass, Spektrum, Korrelation

Diplomarbeit von Stefan Huber

Einleitung:

In den letzten Jahrzehnten wurden viele Verfahren zur Grundfrequenzbestimmung erfunden. Es wurden verschiedene Versuche unternommen, die Grundfrequenz eines periodischen bzw. pseudoperiodischen akustischen Signals zu bestimmen. Dabei kommen Algorithmen im Zeitbereich sowie im Frequenzbereich zur Transformation zum Einsatz.

Die physikalischen Ansätze der Algorithmen weisen Stärken aber auch Schwächen auf. Keiner davon ist in der Lage, hundertprozentig akkurat und zuverlässig zu arbeiten. Bis heute existiert keine Formel, kein Modell und kein universeller Algorithmus, der die wahrgenommene Tonhöhe eines komplexen Tonales genau und fehlerlos bestimmen kann.

In dieser Arbeit werden verschiedene Verfahren zur Grundfrequenzbestimmung untersucht und versucht, die gewünschten Eigenschaften aller unterschiedlichen Algorithmen zu kombinieren, um ein bestmögliches Resultat bei einer Wandlung von analogen bzw. digitalisierten Audio-Signalen in das komprimierende Audio-Format Midi zu erzielen.

Die Idee dazu entstand aus der alltäglichen Praxis heraus. Beim Komponieren von Musik hat man schnell einen einfachen Rhythmus aus Schlagzeug und Bass zusammengestellt, die Komposition komplexerer, bereits im Kopf vorgedachter Melodien ist jedoch schwierig und zeitaufwendig.

Bei Melodieverläufen, die aus mehr als fünf Noten bestehen, kann man mittels einer Gitarre oder einem Klavier meist schnell die ersten drei bis fünf Noten bestimmen. Bei höherer Notenanzahl hören sich die ersten Noten oft nach dem gewünschten Melodieverlauf an, weitere Noten stehen aber oftmals in Dissonanz zur anfänglichen Notensequenz. Der bereits erstellte Melodieverlauf aus den ersten Noten muss wieder verworfen werden, um die im Gehirn vorhandene Melodie komplett im Einklang aller Noten zueinander komponieren zu können.

So erhöht sich der Zeitaufwand beim musikalischen Komponieren exorbitant, die anfängliche Euphorie durch das im Kopf gespeicherte Musikstück verliert sich mit der Zeit im Komponieren der gewünschten Melodie. Da es dem Menschen um ein Vielfaches leichter fällt, die Melodie im Kopf zu singen, zu pfeifen oder zu summen, soll die Applikation zur Midi-Konvertierung dem Musiker helfen, schnell und einfach ohne unnötige Hindernisse sein Ziel zu erreichen.

Der Fokus der Diplomarbeit liegt bei der Verarbeitung monophoner Audiosignale, da sich die Erkennung von mehreren Melodieverläufen, zusätzlichen Rhythmusstrukturen und anderen polyphonen Sounds weitaus schwieriger gestaltet. Die erstellte Anwendung Pitch2Midi ist auf menschlichen Gesang optimiert, kann aber auch zur Konvertierung von Instrumentenklängen angewandt werden.

Inhaltsverzeichnis:

1. Einleitung 6
1.1 Schall 7
1.2 Erzeugen von Sprache und Gesang 7
1.3 Wahrnehmung durch Hören 8
1.4 Aufbau von Tönen und Klängen 9
1.5 Klangeigenschaften 11
1.6 Auftretende Probleme bei der Grundfrequenzerkennung 11
2. Technische Grundlagen 14
2.1 Digitales Audio 14
2.2 Filter 15
2.3 Das Dateiformat Wave 18
2.3.1 Das Dateiformat RIFF 18
2.3.2 Chunk Architektur 18
2.3.2.1 Wave- oder Header-Chunk 19
2.3.2.2 Format-Chunk 19
2.3.2.3 Daten-Chunk 20
2.3.2.4 Waveheader 20
2.3.2.5 Weitere Chunkarten 21
2.3.3 Speicheranordnung 22
2.4 Der Standard MIDI 22
2.4.1 Vergleich mit Waveformat 22
2.4.2 MIDI Hardware 23
2.4.3 MIDI Systeme 24
2.4.4 MIDI Sequenzer 25
2.4.5 MIDI Noten 26
2.4.6 MIDI Dateien 27
2.4.6.1 Header-Chunk 28
2.4.6.2 Zeitformat 28
2.4.6.3 Track-Chunk 28
2.4.7 MIDI Events 29
2.4.7.1 Status- und Datenbytes 29
2.4.7.2 Befehlskategorien 30
2.4.7.3 NoteOn Befehl 30
2.4.7.4 NoteOff Befehl 31
2.4.7.5 Programm Change Befehl 31
2.4.7.6 End of Track Befehl 33
2.4.7.7 MIDI Text und Copyright 33
2.4.7.8 Noten- und Pausenlängen 33
2.4.8 Delta-Time Kommando 33
2.4.9 MIDI Tempo 34
2.4.10 General MIDI 35
2.4.11 Little und Big Endian Datenformate 36
2.5 Faltung 37
2.6 Korrelation 38
2.7 Fourier-Transformation 39
2.7.1 Fourier-Integral 39
2.7.1.1 Definition 39
2.7.1.2 Veranschaulichung 40
2.7.1.3 Inverse Fourier-Transformation 42
2.7.1.4 Parseval´sches Theorem 42
2.7.2 Fourier-Reihe 43
2.7.3 Diskrete Fourier-Transformation, DFT 43
2.7.3.1 Definition 43
2.7.3.2 Komplexe Koeffizienten 44
2.7.3.3 Korrelation 45
2.7.3.4 Symmetrie 46
2.7.3.5 Zeit- und Frequenzauflösung 46
2.7.4 Inverse DFT 47
2.7.5 Fast Fourier-Transformation, FFT 47
2.7.5.1 Schnelle Berechnung 47
2.7.5.2 Zerlegung der Transformationslänge 48
2.7.5.3 Architekturen der FFT 49
2.7.5.4 Butterfly 50
2.8 Analyse 51
2.9 Energieberechnung 51
2.10 Fensterung aufgrund Spektralverbreiterung 52
3. Verfahren zur Grundfrequenzbestimmung 54
3.1 Zeitbereich 54
3.1.1 Nulldurchgangsrate 54
3.1.2 Spektraltransformation mittels Bandpässen 56
3.1.2.1 Definition 56
3.1.2.2 Parallelschaltung 56
3.1.2.3 Umsetzung 56
3.1.2.4 Nachteile 57
3.1.2.5 Maximumerkennung 57
3.1.3 Autokorrelation 59
3.1.3.1 Einführung 59
3.1.3.2 Formel 59
3.1.3.3 Berechnung 59
3.1.3.4 Bestimmung der Grundperdiode 60
3.1.4 Betragsdifferenzfunktion AMDF 62
3.2 Zeit- und Frequenzbereich kombiniert 63
3.2.1 Autokorrelation im Zeit- und Frequenzbereich 63
3.2.1.1 Vorteile 64
3.2.1.2 Nachteile 64
3.2.1.3 Autokorrelation mit Center-Clipping 65
3.2.2 Cepstrum 66
3.3 Frequenzbereich 68
3.3.1 Spektrale Kompression 68
3.3.2 Spektrale Autokorrelation 71
4. Pitch2Midi Konverter 73
4.1 Philosophie 73
4.2 Dialogumgebung und Klassenhierarchie 73
4.3 Benutzerführung 74
4.4 Definitionen.h 77
4.5 Die Klasse Wave 78
4.5.1 Headerdatei 78
4.5.2 Funktionen 79
4.5.2.1 Wavedatei öffnen und lesen 80
4.5.2.2 Wavedatei normalisieren 81
4.5.2.3 Dateipfad speichern 82
4.5.2.4 Wavedatei erstellen 82
4.5.2.5 Wavedatei prüfen 83
4.5.2.6 FOURCC Feld kopieren 83
4.5.2.7 Tiefpass-Filterung 83
4.5.2.8 Fensterfunktionen 86
4.6 Die Klasse Midi 87
4.6.1 Headerdatei Midi.h 88
4.6.2 MIDI Notenberechnung 88
4.6.3 Initialisierung im Konstruktor 89
4.6.4 Funktionen 90
4.6.4.1 Word Bit-Reverse 90
4.6.4.2 DoubleWord Bit-Reverse 90
4.6.4.3 Deltatime schreiben 91
4.6.4.4 Zeit- und Frequenzauflösung setzen 92
4.6.4.5 MIDI-Datei schreiben 92
4.7 Die Klasse FourTrans 93
4.7.1 Komplexe Arithmetik 93
4.7.2 Koeffizienten in vorberechneten Arrays 94
4.7.3 Die Funktion Bit-Reverse 95
4.7.4 Die Funktionen FFT und InverseFFT 95
4.8 Spektrale Gewichtung 96
4.8.1 Erklärung 96
4.8.2 Implementation 97
4.9 Klassen zur Grundfrequenzbestimmung 98
4.9.1 MIDI Konvertierung 98
4.9.2 Die Klasse AMDF 101
4.9.3 Die Klasse Autokorrelation 102
4.9.3.1 MIDI Konvertierung 102
4.9.3.2 PufferProzess der schnellen AKF 102
4.9.3.3 PufferProzesse der geklippten AKF 103
4.9.3.4 PufferProzess der AKF im Zeitbereich 104
4.9.3.5 PufferProzess der AKF im Frequenzbereich 104
4.9.4 Die Klasse Cepstrum 105
4.9.5 Die Klasse ErstesMaxima 105
4.9.6 Die Klasse FrequenzAbstand 106
4.9.7 Die Klasse SpektraleKompression 107
4.9.8 Die Klasse SpektralerIntervall 107
4.10 Die Pitch2Midi Dialog-Klasse 107
4.10.1 OnKonvertieren() 107
4.10.2 Kombinierer 110
4.11 MFC-spezifische Hinweise 111
4.11.1 Schrift und Hintergrund in Dialogen färben 111
4.11.2 Mehrere Registerkarten 111
4.11.3 Bitmap Buttons 114
4.11.4 Textausgabe 115
4.11.5 CFileDialog 115
4.11.5.1 Wave öffnen 115
4.11.5.2 Speichern unter 116
4.11.6 Globaler Zugriff 116
4.11.7 Normalisierungs-Dialog 117
5. Auswertung 117
6. Zusammenfassung 120
7. Literaturverzeichnis 121

Automatisiert erstellter Textauszug:

Die resultierenden Audiodaten weisen wenig hochfrequente Signalanteile und wenig Signale niedriger Amplitude auf. Übrig geblieben sind amplitudenstarke Signalanteile niederer Frequenz, die den bisherigen Signalverlauf massgeblich beeinflussten und somit grösstenteils von der Grundschwingung stammen. Weitere Anteile im beschnittenen Ergebnis sind auf Oberwellen der Grundperiode zurückzuführen. Vorteil gegenüber der normalen Autokorrelation ist die bessere Erkennbarkeit der AKF-Koeffizienten und somit der Grundfrequenz. Die Amplituden der Maximalwerte sind stärker voneinander getrennt und lassen sich leichter detektieren. Vor allem die Unterscheidung zwischen der Grundperiode und der Schwingungsperiode des ersten Formanten wird verbessert. Bei der normalen Autokorrelation traten zwischen den Signalspitzen weitere Maximalwerte auf, die die Grundfrequenzbestimmung erschwerten. Der Schwellwert sollte für jedes Analysefenster neu berechnet werden, um Lautstärkeunterschiede im Signalverlauf auszugleichen. Wird ein konstanter Schwellwertpegel für die gesamte Analyse verwendet, verschlechtert dies das Ergebnis. Bei zu h ohen Threshold-Werten werden Datenblöcke niedriger Amplitude nicht bewertet. Bei zu niedrigem Threshold werden hochfrequente Anteile mitbewertet, was der normalen Autokorrelations-Funktion entspricht. Ein getrennte Berechnung der Schwellwerte im positiven und negativen Bereich und eine getrennte Beschneidung der Signalspitzen in beiden Bereichen brachte keine nennenswerte Verbesserung gegenüber der Verwendung eines Threshold-Wertes. [...]

Eine verbessernde Variante der Autokorrelation erreicht man durch Center-Clipping, der Abtrennung der Signalspitzen überhalb eines Schwellwertes im Zeitbereich vor der Transformation in den Frequenzbereich. Alle Werte unterhalb des Schwellwertes werden Null gesetzt. Von allen Werten überhalb des Schwellwertes wird der Schwellwert-Betrag abgezogen, sodass sich die resultierende Nullinie aus den Schwellwertlinien im positiven und negativen Bereich ergibt. Die Threshold-Werte werden für positive und negative Amplitudenwerte getrennt berechnet, da Audio-Signalen beim Aufnehmen oftmals eine Gleichspannung hinzugefügt wird. Diese bewirkt die Anhebung oder Absenkung aller Amplituden um den gleichen Gleichspannungsbetrag, sodass Amplitudenspitzen im einen Bereich im Mittel höher sind als im entgegengesetzten Bereich. Der Signalausschnitt in Abbildung 3.1.3.4 a) ergibt bei Abtrennung aller Samples unterhalb des positiven oder negativen Threshold-Wertes folgenden Signalverlauf. [...]

Bei Signalen mit hohem Obertongehalt können harmonische Vielfache der Grundfrequenz die abschliessende Auswertung der AKF-Koeffizienten behindern, da nach dem ersten Maximum, entsprechend der Grundfrequenz, weitere Maxima folgen, die gegenüber dem ersten Maximum kaum abgeschwächt sind. Sind die Obertöne in ihrer Amplitude sogar noch stärker als die Grundfrequenz, kann dies zu Fehlern führen. Insbesondere das zweite Maximum im Spektrum, der am Besten erkennbare Formant bei Sprache, verursacht diese Schwäche des Verfahrens. Daher neigt die Autokorrelation zu falschen Interpretationen des Klangs, wodurch nur die halbe Frequenz anstatt der ursprünglichen Frequenz als erkannte Frequenz ausgegeben wird. Dieses Fehlverhalten ist nicht nur bei Übergängen zwischen einzelnen Noten und Frequenzbereichen der Fall, sondern auch während einer Notenerkennung, wenn mehrere Abtastintervalle hintereinander beispielsweise 182 Hertz bewerten, ein Abtastintervall 90 Hertz ergibt, und die folgenden wiederum 182 Hertz ausgeben. Eine offensichtliche Note von 182 Hz wird von einer Note mit 90 Hertz unterbrochen, was in einer unschönen Melodieverformung resultiert. Inharmonische Klangerzeuger mit physischen Vibratoren, wie etwa eine AkustikGitarre, erzeugen Sounds, deren Obertöne im Bereich der theoretischen Vielfachen liegen, den exakten Wert aber verfehlen. Dies erschwert das Erkennen hoher Töne und erzeugt Fehler bei Durchführung einer Autokorrelation. Die Autokorrelation ist eine gerade Funktion und gilt somit auch für den negativen Bereich. Es ist somit nicht von Tragweite, ob das zweite Analysefenster nach links oder rechts verschoben wird. r(n)=r(- n) [...]

Arbeit zitieren:
Huber, Stefan Juni 2003: Untersuchung verschiedener Verfahren zur Grundfrequenzbestimmung mit Einstellung einer Applikation zur Midi-Konvertierung, Hamburg: Diplomica Verlag

Schlagworte:
Wave, PDA, Tiefpass, Spektrum, Korrelation

Entdecken Sie mehr zum Thema

diplom.de
Bachelor + Master Publishing

Hermannstal 119 k
22119 Hamburg

Fon: +49 (0) 40 655992-0
Fax: +49 (0) 40 655992-22

Service-Telefon

Rufen Sie uns an:
+49 (0) 40 655992-0

Mo-Fr
09.00-16.00 Uhr

diplom.de in den Medien

Folgen Sie uns bei Twitter & werden Sie diplom.de-Fan bei Facebook!
Schreibtipps unserer Lektoren, Neuigkeiten aus dem Verlagsalltag und das Expertenwissen unserer Autoren als Tweet & Post!
Wir freuen uns auf Sie!

diplom.de BACHELOR + MASTER PUBLISHING

Bachelorarbeiten, Masterarbeiten, Diplomarbeiten, Magisterarbeiten, Dissertationen und andere Abschlussarbeiten aus allen Fachbereichen und Hochschulen können Sie bei uns als eBook sofort per Download beziehen oder sich auf CD oder als Buch zusenden lassen. Seit mehr als 15 Jahren ist diplom.de der seriöse, professionelle und erfolgreiche Partner für die Veröffentlichung wissenschaftlicher Abschlussarbeiten.

© Diplomica Verlag GmbH 1996-2011, AG Hamburg HRB 80293 - GF Björn Bedey, USt-IdNr.: DE214910002 - Verkehrsnummer: 12285 - Impressum
Index der Arbeiten - Index der Autoren