我们已经启动了一个项目来创建与 DeepSpeech 一起使用的土耳其语语音识别数据集。
我们完成了电子书的预处理任务。但是我们无法完成与埃涅阿斯的强制对齐过程。
根据其强制对齐教程,您需要一个文本文件及其录制的音频文件。在对电子书进行预处理时,我们创建了 430 个文本文件,这些文本文件针对 aeneas 格式进行了编辑和清理(使用 nltk 库分为段落和句子)。
但是,在处理我们创建的任务对象并创建其输出文件(Json 文件)时,我们无法合并输出文件。对于每个 Aeneas 文件,它都从音频文件的开头开始。
看来我们需要将音频文件拆分为 430 个部分,但这不是一个简单的过程。
我尝试将 Json 文件与以下内容合并:
import json
import glob
result = []
for f in glob.glob("*.json"):
with open(f, "rb") as infile:
result.append(json.load(infile))
with open("merged_file.json", "w") as outfile:
json.dump(result, outfile)
但它并没有奏效,因为在强制对齐过程中,aeneas 从音频文件的开头开始为每个 aeneas 文本文件。
是否可以创建一个包含所有 430 个 aeneas 文本文件的任务对象,并将它们附加到一个输出文件(Json 文件)中,考虑到它们的时间(它们的秒数)也使用一个音频文件?
我们的任务对象:
# create Task object
config_string = "task_language=tur|is_text_type=plain|os_task_file_format=json"
task = Task(config_string=config_string)
task.audio_file_path_absolute = "/content/gdrive/My Drive/TASR/kitaplar/nutuk/Nutuk_sesli.mp3"
task.text_file_path_absolute = "/content/gdrive/My Drive/TASR/kitaplar/nutuk/nutuk_aeneas_data_1.txt")
task.sync_map_file_path_absolute = "/content/gdrive/My Drive/TASR/kitaplar/nutuk/syncmap.json")
顺便说一句,我们正在使用 python 3 开发 Google Colab。