Kai Li 1 , Wendi Sang 1 , Chang Zeng 2 , Runxuan Yang 1 , Guo Chen 1 , Xiaolin Hu 1
1 Tsinghua-Universität, China
2 Nationales Institut für Informatik, Japan
Papier | Demo
Wir stellen SonicSim vor, ein synthetisches Toolkit zur Generierung hochgradig anpassbarer Daten für sich bewegende Schallquellen. SonicSim wird auf der Grundlage der integrierten KI-Simulationsplattform Habitat-sim entwickelt und unterstützt Parameteranpassungen auf mehreren Ebenen, einschließlich Szenenebene, Mikrofonebene und Quellenebene, wodurch vielfältigere synthetische Daten generiert werden. Mithilfe von SonicSim haben wir einen Benchmark-Datensatz für bewegte Klangquellen, SonicSet, erstellt. Dabei verwendeten wir den LibriSpeech-Datensatz, den Freesound-Datensatz 50k (FSD50K) und das Free Music Archive (FMA) sowie 90 Szenen aus Matterport3D, um Modelle zur Sprachtrennung und -verbesserung zu bewerten.
[30.10.2024] Wir haben die Fehler bei der Installation der Umgebung behoben und den Trainingscode für Sprachtrennungs- und -verbesserungsmodelle im SonicSet-Datensatz aktualisiert.
[23.10.2024] Wir veröffentlichen den training code
für Sprachtrennungs- und -verbesserungsmodelle im SonicSet-Datensatz.
[03.10.2024] Wir veröffentlichen das Papier auf arxiv
[01.10.2024] Wir veröffentlichen den Real-World-Sprachtrennungsdatensatz, der darauf abzielt, die Leistung von Sprachtrennungsmodellen in realen Szenarien zu bewerten.
[31.07.2024] Wir veröffentlichen den SonicSim dataset
, der Aufgaben zur Sprachtrennung und -verbesserung umfasst.
[24.07.2024] Wir veröffentlichen die Skripte für dataset construction
und die vorab trainierten Modelle für speech separation and enhancement
.
3D-Szenenimport: Unterstützt den Import verschiedener 3D-Assets aus Datensätzen wie Matterport3D und ermöglicht so die effiziente und skalierbare Generierung komplexer akustischer Umgebungen.
Akustische Umgebungssimulation:
Simuliert Schallreflexionen innerhalb von Raumgeometrien mithilfe von Raumakustikmodellierung und bidirektionalen Pfadverfolgungsalgorithmen.
Ordnet semantische Beschriftungen von 3D-Szenen Materialeigenschaften zu und legt die Absorptions-, Streu- und Transmissionskoeffizienten von Oberflächen fest.
Synthetisiert sich bewegende Schallquellendaten basierend auf Quellenpfaden und gewährleistet so eine hohe Wiedergabetreue zu realen Bedingungen.
Mikrofonkonfigurationen: Bietet eine große Auswahl an Mikrofonkonfigurationen, darunter Mono, Binaural und Ambisonics, sowie Unterstützung für benutzerdefinierte lineare und kreisförmige Mikrofonarrays.
Quellen- und Mikrofonpositionierung: Ermöglicht die Anpassung oder Randomisierung der Tonquellen- und Mikrofonpositionen. Unterstützt Bewegungsbahnen für die Simulation bewegter Schallquellen und verleiht dynamischen akustischen Szenarien mehr Realismus.
Sie können den vorkonstruierten Datensatz über den folgenden Link herunterladen:
Datensatzname | Onedrive | Baidu-Disk |
---|---|---|
Zugordner (40 geteilte RAR-Dateien, 377 GB) | [Download-Link] | [Download-Link] |
val.rar (4.9G) | [Download-Link] | [Download-Link] |
test.rar (2.2G) | [Download-Link] | [Download-Link] |
September-Benchmark-Daten (8,57 G) | [Download-Link] | [Download-Link] |
enh-Benchmark-Daten (7,70G) | [Download-Link] | [Download-Link] |
Datensatzname | Onedrive | Baidu-Disk |
---|---|---|
Datensatz aus der realen Welt (1,0 G) | [Download-Link] | [Download-Link] |
RealMAN-Datensatz: RealMAN
Um den Datensatz selbst zu erstellen, lesen Sie bitte die README-Datei im Ordner SonicSim-SonicSet/data-script
. Dieses Dokument enthält detaillierte Anweisungen zur Verwendung der bereitgestellten Skripte zum Generieren des Datensatzes.
Um die Umgebung für Training und Inferenz einzurichten, verwenden Sie die bereitgestellte YAML-Datei:
conda create -n SonicSim-Train python=3.10 Conda aktiviert SonicSim-Train pip install Cython==3.0.10 numpy==1.26.4 pip install Torch==2.0.1 Torchvision==0.15.2 Torchaudio==2.0.2 --index-url https://download.pytorch.org/whl/cu118 pip install -r Anforderungen.txt -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple
Navigieren Sie zum separation
und führen Sie das folgende Skript aus, um den festen Validierungssatz zu generieren:
CD-Trennung python generic_fixed_validation.py --raw_dir=../SonicSim-SonicSet/SonicSet/scene_datasets/mp3d/val --save_dir=../SonicSim-SonicSet/SonicSet/scene_datasets/mp3d/val-sep-2 --is_mono python generic_fixed_test.py --raw_dir=/home/pod/SonicSim/SonicSim/SonicSim-SonicSet/SonicSet/scene_datasets/mp3d/test --is_mono
Navigieren Sie zum enhancement
und führen Sie das folgende Skript aus, um den festen Validierungssatz zu generieren:
CD-Verbesserung python generic_fixed_validation.py --raw_dir=../SonicSim-SonicSet/SonicSet/scene_datasets/mp3d/val --save_dir=../SonicSim-SonicSet/SonicSet/scene_datasets/mp3d/val-enh-noise --is_mono python generic_fixed_test.py --raw_dir=/home/pod/SonicSim/SonicSim/SonicSim-SonicSet/SonicSet/scene_datasets/mp3d/test --is_mono
Navigieren Sie zum separation
und führen Sie das Trainingsskript mit der angegebenen Konfigurationsdatei aus:
CD-Trennung python train.py --conf_dir=configs/afrcnn.yaml
Navigieren Sie zum enhancement
und führen Sie das Trainingsskript mit der angegebenen Konfigurationsdatei aus:
CD-Verbesserung python train.py --conf_dir=config/dccrn.yaml
Bitte überprüfen Sie den Inhalt von README.md in den Ordnern sep-checkpoints und enh-checkpoints, laden Sie die entsprechenden vorab trainierten Modelle in Release herunter und entpacken Sie sie in die entsprechenden Ordner.
Navigieren Sie zum separation
und führen Sie das Inferenzskript mit der angegebenen Konfigurationsdatei aus:
CD-Trennung python inference.py --conf_dir=../sep-checkpoints/TFGNet-Noise/config.yaml
Navigieren Sie zum enhancement
und führen Sie das Inferenzskript mit der angegebenen Konfigurationsdatei aus:
CD-Verbesserung python inference.py --conf_dir=../enh-checkpoints/TaylorSENet-Noise/config.yaml
Vergleichende Leistungsbewertung von Modellen, die auf verschiedenen Datensätzen trainiert wurden, unter Verwendung von real aufgezeichnetem Audio mit Umgebungsgeräuschen . Die Ergebnisse werden getrennt für „trainiert auf LRS2-2Mix“, „trainiert auf Libri2Mix“ und „trainiert auf SonicSet“ angegeben, gekennzeichnet durch einen Schrägstrich. Die relative Länge wird unterhalb des Werts durch horizontale Balken angezeigt.
Vergleichende Leistungsbewertung von Modellen, die auf verschiedenen Datensätzen trainiert wurden, unter Verwendung von real aufgenommenem Audio mit musikalischem Rauschen . Die Ergebnisse werden getrennt für „trainiert auf LRS2-2Mix“, „trainiert auf Libri2Mix“ und „trainiert auf SonicSet“ angegeben, gekennzeichnet durch einen Schrägstrich.
Vergleichende Leistungsbewertung von Modellen, die auf verschiedenen Datensätzen mithilfe des RealMAN-Datensatzes trainiert wurden. Die Ergebnisse werden getrennt für „trainiert auf VoiceBank+DEMAND“, „trainiert auf DNS Challenge“ und „trainiert auf SonicSet“ gemeldet, gekennzeichnet durch einen Schrägstrich.
Wir haben Trennungs- und Verbesserungsmodelle für den SonicSet-Datensatz trainiert. Die Ergebnisse sind wie folgt:
Vergleich bestehender Sprachtrennungsmethoden im SonicSet-Datensatz. Die Leistung jedes Modells wird für die Ergebnisse unter „Umgebungslärm“ und „Musikalischer Lärm“ separat aufgeführt, gekennzeichnet durch einen Schrägstrich.
Vergleich bestehender Sprachverbesserungsmethoden auf der WebsiteVergleich von Sprachverbesserungsmethoden mit dem SonicSet-Testsatz. Die Kennzahlen werden getrennt unter „Umgebungslärm“ und „Musikalischer Lärm“ aufgeführt, getrennt durch einen Schrägstrich.
Wir möchten uns bei folgenden Personen bedanken:
LibriSpeech für die Bereitstellung der Sprachdaten.
SoundSpaces für die Simulationsumgebung.
Apple für die Bereitstellung dynamischer Audiosynthese-Skripte.
Dieses Werk ist unter einer Creative Commons Attribution-ShareAlike 4.0 International License lizenziert.