Frage

Ich merke, dass hier bereits ein paar Fragen in Bezug auf die Chord-Erkennungsalgorithmen gibt; Die meisten davon scheinen sich jedoch mehr dazu zu bringen, Songs in Sätze von Akkorden oder Akkordtranskription zu interpretieren. Mein Problem sollte viel einfacher sein, da ich nur daran interessiert bin, einen einzelnen Strum eines Gitarrenakkords aufzunehmen und dies zu analysieren, um den gespielten Akkord zurückzugeben. Und wenn dies sich als zu schwierig erweist, wäre es etwas ausreichend, einfach sagen zu können, ob ein bestimmter Akkord richtig gespielt wird oder nicht, z. Ein Benutzer wird mit einem Akkord vorgelegt, um zu versuchen Ich denke, diese zweite Option wäre leichter, da die Anwendung bereits wissen, was der Akkord erwartet.

Ich benutze bereits ein FFT und das harmonische Produktspektrum für einen Guitar-Tuner als Teil derselben Anwendung und würde wirklich einen Rat geneben, wie ich das Frequenzspektrum der FFT analysieren könnte, um Gitarrenakkorde zu erkennen. Ich bin auch für alle anderen Vorschläge zu der Angelegenheit geöffnet und würde mich wirklich schätzen, dass ich Sie bekommen kann.

danke

War es hilfreich?

Lösung 2

Für jeden, der sich fragte, wie man diese Art von dabei macht, schauen Sie in harmonische Produktspektrum- und Pitch-Klasse-Profile / Chroma-Vektoren.Eine Kombination davon ist der Schlüssel.Bei Verwendung der Suchbegriffe "Multiple F0-Schätzung" im Gegensatz zur "Akkorderkennung" gewährleistet auch viel bessere Ergebnisse :)

Andere Tipps

Sie könnten versuchen, die häufigsten Akkorde mit Fingerabdruck zu feiern, und auf der Suche nach dem nächstgelegenen passenden normalisierten Spektrum innerhalb Ihres Fingerabdrucks.z.B.Behandeln Sie es als Muster-Matching-Problem in der Frequenzdomäne.

Obwohl es zu spät, um zu antworten, hoffe ich, dass dies Ihnen helfen wird ..

Wenn Sie für Elektronik- oder MIDI-Gitarre oder ein anderes MIDI-Instrument programmieren, gibt es ein sehr effektives Java-Paket JFugue für diese Sachen, wie das Erkennen der Akkordnotizen usw. für jedes Instrument und in diesem Instrument ist viel mehr FunktionalitätPaket. Ich empfehle Ihnen, einen Blick darauf zu werfen, jFugue.org

Ich selbst habe es zuerst hart gefunden, um einen ganzen Akkord mit FFT zu identifizieren.Aber soweit mein Experiment ging, konnte ich einen Gitarrenakkord-Kennung mit FFT als grundlegender Algorithmus erstellen, um Frequenzen einer einzelnen Klangdaten zu erhalten.Das Problem der FFT-Tuner ist, dass sie nur die Stammnote eines Sounds erkennen.Während mein Experiment bewiesen hat, dass Sie alle Notizen der Saiten ergreifen können, die gespielt werden, und die identifizierten Noten verwenden, um zu sagen, was der Akkord gespielt wurde.Wie jetzt war meine Forschung immer noch darauf beschränkt, große Gitarrenakkorde und einige kleinere Akkorde wie EM und AM für weitere Studien zu erkennen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top