Voice alias

Материал из База знаний
Перейти к: навигация, поиск

как, используя голосовое распознавание, управлять пилотами, работающими только текстом


Про голосовой алиас[1]

Управлять только текстовыми пилотами - проблема. EuroScope позволяет использовать текстовые алиас для быстрого создания автоматических сообщений. Но даже так, связь с пилотами текстом требует дополнительного времени. Но, наверно наибольшая проблема, что другие пилоты и не подозревают, что Вы составляете кому-то текстовое сообщение, и тишина на голосовом канале именно поэтому, а не потому что Вы ждете вызова на голосовом канале.

Поиск решения это проблемы длился долго. Решением стало использование системы распознавания голосом - мы что-то говорим, а в результате формируется текстовое сообщение. Но, к сожалению, современные технологии распознавания голоса далеки от идеала: они распознают много слов, но допускают и много ошибок. Как правило, эффективность достигает 70-80%. Это меньше чем нам необходимо. Некоторые слова системы совсем не распознают, а без этого не получится УВД.

Чтобы улучшить качество распознавания было решено уменьшить количество и фраз, которые должны распознаваться. Для этого был создан простой словарик (включающий и постоянные лингвистические конструкции). Вы можете описать слова, элементы один-из (one-of), повторы, выражения и (наверно наиболее удобное) звуки подобные выражениям. Из этих блоков Вы должны создать конструкции. И они станут алисами. EuroScope постарается распознать именно эти выражения и ничего больше. Конечное текстовое сообщение может быть только одним из выражений что Вы описали.

Структура файла словаря (grammar file)

Как и другие файлы настроек EuroScope, это файл является обычным текстовым в котором каждая строка содержит законченное выражение.

Слова

Базовым элементом голосового алиаса являются слова. Вы должны указать все слова, которые будете использовать в своем алиасе. Это поможет при распознание голоса, так как только среди этих слов будет вестись поиск. Никакое слово тут не описанное никогда не будет распознано.

Есть два типа описания слов:

1. Простой: просто описание слов

WORD:approach
WORD:runway
WORD:squawk
WORD:land
WORD:takeoff
WORD:taxi

2. Слова с заменой: если будет распознано такое слово, то в текстовую строку будет вписана его замена. Для того чтобы слово и выражение было с пробелами, необходимо в выражении, которое заменяет, поставить пробелы.

В таком случае "victor echo bravo oscar sierra" будет отображено как "VEBOS", "squawk two six two two" будет отображено как "squawk 2622". Также "one thousand" будет "1000", "five hundred" - "500". В компиляторе есть только одна дополнительная особенность: "seven thousand five hundred" будет отображено как "7500", если слово "hundred" распознано.

WORD:zero:0
WORD:one:1
WORD:two:2
WORD:alpha:A
WORD:bravo:B
WORD:charlie:C
WORD:thousand:000
WORD:hundred:00
WORD:direct: proceed direct :

(последнее всего лишь хитрость, так как слово "proceed" почему-то не распознается системой. Придется произносить слово "direct", чтоб оно заменялось на "proceed direct")

Звуки подобные выражениям (The sounds like statements)

Существуют слова, которые не могут быть просто распознанными. Если их произносить, то система находит другое слово из списка подобное по звучанию. Чтобы бороться с такими трудностями распознания Вы можете использовать звуки подобные выражениям. Их использование позволяет заменить неправильно распознаваемое слово на соответствующее по звучание постоянное выражение. В таком случае правильное выражение будет использоваться вместо неверно распознанного.

В таких выражениях первое слово то, что Вы произносите и хотите распознать. Тогда как второе слово, это то, что механизм распознавания воспринимает. Только слова определенные ранее могут быть использованы в обоих местах.

Вот звуки похожие на слова:

SOUNDS:four:for
SOUNDS:two:to
SOUNDS:descend:descent
SOUNDS:descent:descend

Такие слова вообще не могут быть распознаны без применения правила.

А вот слова специфичные для произношения оратора:

SOUNDS:via:zero
SOUNDS:victor:zero
SOUNDS:gate:eight

Постоянные выражения

С этого момента рассказ пойдет не только о словах, но и о выражениях. Выражением может быть слово или элемент слова определенный одной из формулировок описанных ниже. Есть некоторые простые общие правила:

  • в выражениях могут быть использованы только те слова и элементы, которые определены до этого. Поэтому нету возможности рекурсии[2] (что позволяет избежать бесконечных циклов).
  • все названия должны быть уникальными (Вы не можете использовать одинаковое название выражений и слов).

Выражение "Одно-из" (The one of statement)

Это часть определения постоянного выражения. Используя это выражение Вы можете описать элемент, который станет частью одного из описанных ниже выражений. Первая часть - это название выражения, тогда как следующие - его параметры.

ONEOF:number:zero:one:two:three:four:five:six:seven:eight:nine

Тут описано выражение "число" ("number"), которое может быть одно из "one", "two" ... "nine".

ONEOF:direction:left:right

Для разворотов мы можем ввести выражение “direction”, которое может быть "left" или "right".

Повторяющиеся выражения (The repeat statements)

Когда Вам необходим одинаковый тип элемента в одной фразе несколько раз, то создавайте повторяющееся выражение. Вы можете использовать его и для элементов с параметрами указывая частоту от 0 до 1. Первая часть - это название выражения, затем используемый элемент, который сопровождается минимальной и максимальной частотой.

REPEAT:two_numbers:number:2:2
REPEAT:three_numbers:number:3:3
REPEAT:four_numbers:number:4:4
REPEAT:optional_direction:direction:0:1

В этих примерах "three_number" нужен для курсов (к примеру, 333), "four_numbers" нужен для кодов ответчика (к примеру,4444). "Оptional_direction" может быть использована в качестве определителя полосы.

Последовательные утверждения (The sequence statements)

Чтобы связать некоторые выражения в одно Вы можете использовать последовательные утверждения. Построение их простое и очевидное. Первая часть означает название выражения, тогда как остальные части - выражения, которые будут использоваться (составные части).

SEQUENCE:qnh_data:by:QNH:four_numbers
SEQUENCE:badov:bravo:alpha:delta:oscar:victor
SEQUENCE:wind_normal:wind:three_numbers:at:two_numbers:knots:optional_gusting

Фраза

Фраза - это реальный голосовой алиас. С формальной точки зрения они всего лишь последовательности без названия. Программа распознавания записывает все слова, что может распознать, и выбирает наиболее соответствующую фразу.

Использование

Microsoft Speech Recognition engine (программа распознавания речи от Microsoft)

Сначала Вы должны установить программу распознавания голоса. Если Вы используете Windows XP, скачайте и установите Speech SDK 5.1 с сайта Microsoft. Вам нужен SpeechSDK51.exe (около 70 Mb). Если Вы используете Windows Vista или Windows 7, то у Вас уже должна быть установлена программа распознавания речи.

Настройка EuroScope

Откройте в EuroScope Voice communication setup. Внизу есть Voice Alias grammar (словарь голосового алиаса). Выберите свой файл словаря и поставте галочку в поле "Enable voice alias recognition" (Включение распознавания голосового алиаса). Может появиться сообщение с проблемами файла Вашего словаря. Поправьте ошибки и загружайте еще раз. Вам не надо выходить из EuroScope'а, чтоб поменять словарь.

Когда словарь будет в порядке, Вы можете нажать кнопку Test grammar (Протестировать словарь) и начинайте говорить. Скажите все слова, проверьте все ли распознается хорошо. Есть ли проблематичные слова? Добавьте звуки подобные выражениям (sounds like statements), чтобы сделать работу словаря более стабильной. И конечно, протестируйте все Ваши выражения снова и снова. Чтобы сделать верно работающий словарь потребуется какое-то время. Также Вы можете проверить словарь не говоря ничего. Просто редактируйте содержание поля редактирования источника (source edit box), чтобы увидеть какое выражение распознается (ниже об этом подробнее).

Использование в EuroScope

Когда распознавание голосового алиаса включено, Вы может использовать его так:

  • нажмите первичную тангенту. Произнесите позывной ВС, пилот которого работает текстом (делайте это чтоб опознать этот борт).
  • затем пока нажата первичная тангента, нажмите вторичную тангенту одновременно с первой. Это включит механизм распознавания голоса (но не подключит вторичное звуковое устройство к микрофону). Когда механизм включается, нижняя линия (командная строка и строка информации) скрывается и появляется два новых поля редактирования. Они будут пустыми.
  • когда Вы произносите что-то, распознанные слова отображаются в первом поле редактирования одно за другим разделенные пробелами. В правом поле Вы видите наиболее подходящую конструкцию из файла-словаря. Подходящие слова отображаются без всяких знаков, звуки подобные выражениям окружаются {}, тогда как не соответствующие окружаются [].
  • когда Вы готовы, Вы можете отпустить вторичную тангенту. Теперь Вы можете вручную отредактировать любое из полей. Если Вы поменяете поле в котором распознаются слова, тогда для каждого сочетания слов будет проведен новый анализ на более полно соответствующее указание. Тут Вы можете использовать и строчки с заменой (поставьте "2" вместо "two", или "A" вместо "alpha").
  • если Вас удовлетворяет результат, нажмите ENTER, чтобы скопировать результат в командную строку. Или если Вы нажмете еще раз вторичную тангенту (когда поле с результатом не пустое), содержимое будет скопировано в поле редактора указаний и новое выражение будет подвержено распознанию. Это может использоваться, для отправки сложных многокомпонентных сообщений ВС.
  • отправьте текст пилоту.

ESGrammar.txt

Файл ESGrammar.txt сделаный Gergely Csernak находится в папке Settings. Он настроен под голос его создателя, но очевидно требует индивидуальной адаптации для каждого пользователя. Теперь, управлять пилотам с помощью текста, наверное, станет более удобно!

Примечания

  1. алиас = alias - сокращенное выражение более длинного утверждения (что-то вроде его клички). К примеру, "взлет разрешаю", может быть выражено алиасом "вр", а "работайте с Киев Радар на частоте 133.050" - "ркр"
  2. способ общего определения объекта или действия через себя, с использованием ранее заданных частных определений
Руководство по EuroScope
Быстрое начало работы Быстрое начало Установка Где сохраняются настройки
После подключения Подключение Настройки подключения Настройка голосовой связи Настройка оборудования для голосовой связи Скачивание файлов секторов Голосовой ATIS Voice alias Особенности подключения
Некоторые детали Симуляция проф. радиолокатора
Радарный экран Экран Панель меню Основные списки Продвинутые списки
Формуляры Формуляр сопровождения Редактор формуляров
Настройки Связь между диспетчерами Основные настройки Меню символов Plug-ins
Тренажер Тренажер
Приложения Описание ESE файла Файл сценария