- •Введение
- •Технико-экономическое обоснование работы
- •Описание предметной области
- •Анализ существующих аналогов
- •Руководство оператора;
- •Преобразование текста в синтезированную речь
- •Структура синтезатора речи по тексту
- •Текстовый процессор
- •Просодический процессор
- •Фонетический процессор
- •Акустический процессор
- •Компоненты Speech api
- •Необходимые компоненты и их установка
- •Оценка разборчивости синтезированной речи
- •Выбор языка программирования
- •Разработка алгоритмов
- •Общий алгоритм решения задачи
- •Алгоритм подключения голосовых модулей
- •Алгоритм настройки голосовых модулей
- •Алгоритм управления голосовым модулем
- •Описание логической структуры разработанной программы
- •Разработка интерфейса пользователя
- •Разработка форм
- •Структура программы
- •Проверка программы
- •Настройка программы
- •Сообщения системному программисту
- •Руководство оператора
- •Назначение и условия применения программы
- •Обращение к программе для запуска
- •Входные и выходные данные
- •Сообщения пользователю
- •Заключение
- •Список используемых источников
Акустический процессор
Общая структура акустического процессора представлена на рисунке 3.5:
Рисунок 3.5 – Структура акустического процессора
Акустический процессор – завершающий этап синтезирования речи, который состоит из следующий блоков:
Блок синтеза акустико-просодических характеристик речевого сигнала – производятся преобразования в просодическом процессоре для вычисления абсолютных значений амплитуды и длительности каждого звука синтагмы.
Блок синтеза-фонетических характеристик речевого сигнала – задачей этого блока является синтез речевого сигнала в соответствии с выходными данными блока формирования акустико-просодических характеристик речи путем выбора элементов из БД звуковых волн, их конкатенации, синтеза модифицированных звуковых волн аллофонов и формирования длительности звуков и темпа речи.
Компоненты Speech api
При создании любая система раскладывается на несколько составляющих – основных компонентов. Схема расположения компонентов SAPI представлена на рисунке 3.6:
Рисунок 3.6 – Схема расположения компонентов SAPI
На вершине схемы находятся интерфейсы Voice Command API, Voice Dictation API, Voice Text API. Данные компоненты предоставляют ограниченный уровень доступа к речевым модулям, однако интерфейсы управления максимально упрощены по сравнению со следующими компонентами. Компоненты DirectSpeechRecognition API и DirectTextToSpeech являются низкоуровневыми и быстрыми. Они представляют широкий доступ к управлению модулями распознавания и синтеза речи. Ниже этих компонентов – только прямое обращение к аудио объектам, которые в свою очередь обеспечивают доступ к звуковым устройствам. Рассмотрим каждый компонент более подробно:
Voice Command API – прикладной интерфейс высокого уровня, обеспечивающий распознавание голосовых команд. Предназначен для создания приложений, поддерживающих речевое управление. Данный компонент настроен на распознавание специально подготовленных фраз и выражений. Если речевой модуль успешно распознает волновые данные, поданные на вход звукового устройства, то соответствующий COM – объект проверяет наличие распознаваемой фразы в списке команд и при успешном результате информирует главное вызывающее приложение. Алгоритм работы представлен на рисунке 3.7:
Рисунок 3.7 – Алгоритм работы Voice Command API
Voice Dictation API – высокоуровневый компонент, позволяющий осуществлять диктовку в приложениях и заполнять формы и текстовые поля ввода.
Voice Text API – прикладной интерфейс программирования, работающий по принципу конвертера, переводящего напечатанные слова в синтезированную речь. На входной буфер подается текст, а соответствующие COM – объекты передают этот текст на синтез речевому модулю, причем главное приложение извещается о начале чтения, о его завершении и о текущей воспроизводимой фонеме. Алгоритм представлен на рисунке 3.8:
Рисунок 3.8 – Алгоритм работы Voice Text API
Sharing Object – объекты, позволяющие интерфейсам более высокого уровня совместно использовать речевые модули.
DirectSpeechRecognition API – низкоуровневый интерфейс прямого распознавания речи. Работа с ним предполагает непосредственную взаимосвязь с речевыми модулями. Первоначально настраивается связь с необходимым аудиоустройством и интерфейсом компонента Audio Objects. Им может быть как вход звуковой карты, так и волновой файл. Второй шаг включает в себя получение указателей на другие интерфейсы COM – объектов, например, для связи и поиска модулей распознавания речи, интерфейсов грамматики и атрибутов распознавания речи. Осуществляется поиск установленных речевых модулей в системе и отбор их по необходимым параметрам. Загружаются грамматические правила, после чего активизируется функция распознавания речи . Алгоритм работы представлен на рисунке 3.9:
Рисунок 3.9 – Алгоритм работы DirectSpeechRecognition API
Direct TextToSpeech – интерфейс преобразования текста в синтезированную речь. Изначально необходимо организовать связь с аудиоустройством или звуковым файлом, в который будет производиться запись аудио потока. Подбирается нужный речевой синтезатор, соответствующий выбранному языку. Настраиваются необходимые параметры синтеза речи и регистрируется объект, принимающий все события. В финальной стадии передается текст из буфера на выполнение синтеза [C.235,1]. Алгоритм работы представлен на рисунке 3.10:
Рисунок 3.10 – Алгоритм работы Direct TextToSpeech