Frage

Ich möchte Dynamic Time Warping verwenden zwei Merkmalsvektoren für zwei Audioaufnahmen zu vergleichen (natürlich habe ich alle notwendigen Vorverarbeitung zuerst mache). Mein Programm ausgeben sollte die Ähnlichkeit zwischen den beiden Audio-Aufnahmen in Prozent. Zum Beispiel 100% bedeutet, dass die beiden Aufnahmen völlig identisch sind, und je mehr unterschiedlich sind die Aufnahmen, erhalten die niedrigere Zahl ich. Wie erreiche ich es um? Die DTW gibt mir nur die Länge des Weges oder die Kosten des Übergangs, und ich weiß nicht, wie zu einem Prozentwert eine dieser Zahlen zu konvertieren.

War es hilfreich?

Lösung

Ich bin nicht bekannt, dass Abstandsmetrik zwischen den Signalen, die von Prozent gemessen. Wenn es ein Sinn von 100% ist, dann muss es eine Bedeutung von 0% betragen. Also zuerst muss man sich fragen: Was tut 0% Mittelwert

Für DTW, ich bin mir ziemlich sicher, dass es keine Umwandlung von Mindestabstand festgelegt ist auf „Prozent Übereinstimmung“. Wenn Sie müssen, dann müssen Sie eine heuristische Menge definieren, die eine Funktion des minimalen DTW Abstand ist.

EDIT: Eigentlich könnte man irgendwie eine längste Distanz definieren, wenn Sie zwei endliche Länge Aufnahmen haben. Das wäre der Abstand eines Weges sein, ging den ganzen Weg rechts und dann nach unten (wenn auf Kosten Matrix suchen) oder den ganzen Weg hinunter, dann rechts. Der beste Weg, das heißt perfekt, geht hinunter die Hauptdiagonale.

Eine einfache Idee: bei Verwendung von (0,1) (1,0) (1,1) als Schritt Kandidaten, könnten Sie vielleicht die Anzahl der Schritte, wie durch (0,1) und (1,0) genommen verwenden ein Maß für badness. Diese Maßnahme hat sicherlich ein Maximum und ein Minimum, so ist, dann könnte es bis zu einem gewissen wünschenswerten Bereich wie 0-100% kartiert werden.

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