Tools zum Ähnlichkeitsvergleich
Dateien
Im CVS sind alle Tools zum Ähnlichkeitsvergleich im Verzeichnis
speakerid/comparison
. Checkout via:
cvs -d /data/cvs checkout speakerid
cd comparison
Verzeichnis |
Was gibt es dort |
prototypes |
Erste Implementierungen: DTW-Algorithmus, MatrixMatch (jeden Sprecher mit jedem vergleichen) |
src |
"Aufgeräumte" Java-Sourcen; jedes Unterverzeichnis ist ein Package |
src/speakerid |
Direkt startbare Klassen im Paket speakerid |
src/speakerid/algo |
Verschiedene DTW-Implementierungen |
src/speakerid/eval |
Klassen zur Auswertung von Vergleichsmatrizen |
src/speakerid/report |
Ausgabeverzeichnis der Matrix-Analyse |
src/speakerid/ui |
GUI-Klassen für den DTW-Visualisierer |
src/speakerid/util |
Hilfsklassen (insb. zum Einlesen von HTK-Feature-Dateien |
Tools
Obacht! Java 1.4 wird benötigt. Ggf. muss der Pfad angepasst werden, also etwa:
export PATH=/opt/pkg/j2sdk1.4.1_02/bin:$PATH
VisDTW
Vergleicht zwei Feature-Dateien miteinander und visualisiert das Ergebnis.
Aufruf:
- Ins Verzeichnis
speakerid/comparison/src
gehen
- Ggf. kompilieren, also
javac speakerid/VisDTW.java
und javac speakerid/algo/*.java
- Start mit
java speakerid.VisDTW
Die Datei
visdtw.conf
(im Verzeichnis
src
) legt fest, welche DTW-Implementierungen zur Verfügung stehen und wo nach Feature-Dateien gesucht werden soll.
BatchComparison
Führt für eine Liste von Verzeichnissen in jedem Verzeichnis einen Vergleich aller Feature-Dateien durch und wertet die entstandenen "Jeder-mit-jedem"-Matrizen aus. Als Ausgabe wird eine HTML-Datei im Verzeichnis
report
erstellt.
Aufruf:
- Ins Verzeichnis
speakerid/comparison/src
gehen
- Ggf. kompilieren, also
javac speakerid/BatchComparison.java
und javac speakerid/algo/*.java
- Ggf. das Arbeitsskript
compare.script
anpassen (hier ist enthalten, welche Verzeichnisse überhaupt untersucht werden sollen und welche DTW-Implemtierungen zum Einsatz kommen sollen)
- Start mit
java speakerid.BatchComparison
- Warten ...
make_ideal_features.pl
Nimmt ein Verzeichnis voller Feature-Dateien und erzeugt in einem leeren Verzeichnis genau so viele Dateien gleichen Namens. Die erzeugten Dateien sind so gestaltet, dass je zwei Sprecherproben (z.B. hans1.feat und hans2.feat) einen geringen Abstand haben und die Proben verschiedener Sprecher einen deutlich höheren Abstand.
Die so erzeugten Dateien können mit in die Analyse der besten Feature-Auswahl einbezogen werden.