Как разобрать этот формат (Praat TextGrid) - PullRequest
7 голосов
/ 29 мая 2011

TextGrid - это файл "сегментации", используемый программой Praat.Я хотел бы написать парсер, который затем проверит данные.Мой вопрос:

Как бы вы написали парсер для этого формата?Читать это построчно или что-то еще?Это известный формат?

File type = "ooTextFile"
Object class = "TextGrid"

xmin = 0 
xmax = 93.0538775510204 
tiers? <exists> 
size = 3 

item []: 
    item [1]:
        class = "IntervalTier" 
        name = "diph" 
        xmin = 0 
        xmax = 93.0538775510204 
        intervals: size = 65 
        intervals [1]:
            xmin = 0 
            xmax = 1.300090702947846 
            text = "" 
        intervals [2]:
            xmin = 1.300090702947846 
            xmax = 1.5300845864661654 
            text = "ey_s" 
        intervals [3]:
            xmin = 1.5300845864661654 
            xmax = 3.4648692624493815 
            text = "" 

(затем повторяется до EOF с интервалами [4 .... n])

Ответы [ 3 ]

14 голосов
/ 01 июня 2011

Синтаксический анализатор TextGrid уже существует и является частью NLTK Toolkit. Файл Python находится здесь:

http://nltk.googlecode.com/svn/trunk/nltk_contrib/nltk_contrib/textgrid.py

Обновлена ​​ссылка: https://github.com/nltk/nltk_contrib/blob/master/nltk_contrib/textgrid.py

1 голос
/ 16 февраля 2015

Альтернативным решением является работа с JSON или YAML-представлениями этих объектов Praat; тогда анализ на правильность тривиален.

Я написал два сценария Perl, чтобы облегчить это (преобразование из Praat в JSON / YAML и преобразование из YAML / JSON в Praat ), что может быть полезно для этих задач.

Сценарии являются частью плагина, который я поддерживаю и который называется serialise, который распространяется через CPrAN . Реализация немного хакерская, но она достаточно стабильна, и плагин поддерживает большинство объектов, которые вы хотите использовать. Все комментарии приветствуются.

1 голос
/ 23 июня 2014

Автоматический анализатор файлов PraG TextGrid представляет собой небольшое приложение для анализа файлов PraG TextGrid.Результатом анализа является электронная таблица, которая сохраняется в выходном текстовом файле.Выходной текстовый файл может быть импортирован такими приложениями, как Excel.TGP - это гибкая программа, которую можно постоянно расширять или легко модифицировать, в настоящее время она способна анализировать определенные типы файлов TextGrid.Версия 1.0 TGP считывает файлы TextGrid со следующими типами элементов: слово, телефон и, при необходимости, фокус.

http://tgp.peremila.com/

...