рефераты рефераты
Главная страница > Дипломная работа: Разработка программного обеспечения для голосового управления трехмерными моделями функционирования промышленных роботов  
Дипломная работа: Разработка программного обеспечения для голосового управления трехмерными моделями функционирования промышленных роботов
Главная страница
Банковское дело
Безопасность жизнедеятельности
Биология
Биржевое дело
Ботаника и сельское хоз-во
Бухгалтерский учет и аудит
География экономическая география
Геодезия
Геология
Госслужба
Гражданский процесс
Гражданское право
Иностранные языки лингвистика
Искусство
Историческая личность
История
История государства и права
История отечественного государства и права
История политичиских учений
История техники
История экономических учений
Биографии
Биология и химия
Издательское дело и полиграфия
Исторические личности
Краткое содержание произведений
Новейшая история политология
Остальные рефераты
Промышленность производство
психология педагогика
Коммуникации связь цифровые приборы и радиоэлектроника
Краеведение и этнография
Кулинария и продукты питания
Культура и искусство
Литература
Маркетинг реклама и торговля
Математика
Медицина
Реклама
Физика
Финансы
Химия
Экономическая теория
Юриспруденция
Юридическая наука
Компьютерные науки
Финансовые науки
Управленческие науки
Информатика программирование
Экономика
Архитектура
Банковское дело
Биржевое дело
Бухгалтерский учет и аудит
Валютные отношения
География
Кредитование
Инвестиции
Информатика
Кибернетика
Косметология
Наука и техника
Маркетинг
Культура и искусство
Менеджмент
Металлургия
Налогообложение
Предпринимательство
Радиоэлектроника
Страхование
Строительство
Схемотехника
Таможенная система
Сочинения по литературе и русскому языку
Теория организация
Теплотехника
Туризм
Управление
Форма поиска
Авторизация




 
Статистика
рефераты
Последние новости

Дипломная работа: Разработка программного обеспечения для голосового управления трехмерными моделями функционирования промышленных роботов

-  число дикторов (система для одного диктора, нескольких дикторов, неограниченного числа дикторов);

-  тип диктора (определенный, случайный, мужчина, женщина, ребенок);

-  условия произнесения фраз (звукоизолированное помещение, машинный зал, общественное место);

- система передачи (высококачественный микрофон, узконаправленный микрофон, телефон);

-  тип и число циклов обучения (без обучения, с ограниченным числом циклов обучения, с неограниченным числом циклов обучения);

-  размер словаря (малый объем 80—20 слов, средний объем 20-100 слов и большой объем - более 100 слов);

-  формат произносимых фраз (ограниченный по длительности текст, свободный речевой формат).

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

Существует много способов представления сигнала, которые можно использовать в системах распознавания речи, предоставления, применяемые в системах, инвариантных к диктору, должны быть достаточно устойчивыми. Измерения параметров должны быть простыми и однозначными, а их измеренные значения должны наиболее полно отражать различия в звуках речи. Кроме того, измерения должны допускать достаточно простую интерпретацию с позиций систем, инвариантных к диктору. Во многих таких системах использованы следующие параметры: среднее число переходов через нуль, энергия, коэффициенты линейного предсказания с использованием двухполюсной модели и погрешность предсказания [1,2].


2.3.5 Обзор существующих систем распознавания речи

В настоящее время отсутствуют дикторонезависимые системы распознавания слитной речи как с неограниченным словарем, так и ограниченным, а имеющиеся системы (такие как Dragon Dictate - программа для печати текста с голоса) требуют очень много времени и терпения для того, чтобы обучить их удовлетворительно распознавать раздельно произносимые слова одного диктора. Среди других распознающих систем можно назвать Lotus Word Pro, MedSpeak, Voice Type Simplify Speaking, ViaVoice, Kurzweil Voice. He требующие обучения системы распознают обычно от нескольких десятков до сотен слов и используются для подачи команд голосом. Однако они также являются дикторозависимыми. В этой же области остается реализация амбициозных планов, наподобии принятого в 1986 в Японском национальном проекте АТК (Advanced Telecommunication Research), который состоял в том, чтобы получать речь на одном языке и одновременно синтезировать ее на другом или утверждения о реализации идеи человеко-машинного общения. Поэтому исследования в этой области являются весьма актуальными.


3. Разработка программного обеспечения для распознавания команд управления промышленным роботом

3.1 Реализация интерфейса записи и воспроизведения звукового сигнала в операционной системе Microsoft Windows

3.1.1 Основные сведения

Звуковые данные хранятся в компьютере с помощью метода импульсно-кодовой модуляции – РСМ. Расшифровывается РСМ как Pulse-Code Modulation. При этом методе аналоговый звук квантуется по времени и амплитуде. При выводе звука на колонки происходит обратное преобразование.

При прямом преобразовании кривая звука превращается в точки. Все, что между точками, теряется, поэтому чем чаще происходит замер амплитуды, тем выше качество звука и меньше потерь. Значение, обратное времени замера (Т3), называется частотой дискретизации - Тд. Для качественного звука частота дискретизации должна быть вдвое больше, чем высшая частота в обрабатываемом сигнале звука.

В Windows есть хорошо продуманная и хорошо документированная библиотека для работы со звуком - mmsystem.

Для работы со звуковой картой используется следующий алгоритм работы:

-  инициализировать звуковой драйвер;

-  установить параметры;

-  воспроизвести или записать звуковые данные;

-  закрыть драйвер.

Для вывода звука данные о звуке в цифровом виде просто отправляются звуковой карте. Она преобразует их в аналоговый сигнал [14].


3.1.2 Основные функции, необходимые для записи звука

Все основные функции содержатся в модуле rnmsystem, поэтому необходимо подключить этот модуль, а также добавить в проект файл WINMM.LIB.

Прежде всего необходимо заполнить структуру WAVEHDR. Она содержит следующие поля:

typedef struct wavehdr_tag {LPSTR lpData;

DWORD dwBufferLength;

DWORD dwBytesRecorded;

DWORD dwUser;

DWORD dwFlags;

DWORD dwLoops;

struct wavehdr_tag далеко * lpNext;

reserved DWORD;} WAVEHDR;

Структура WAVEHDR определяет заголовок, используемый, чтобы идентифицировать буфер звуковых данных

Составляющие структуры:

lpData - указатель на звуковые данные;

dwBufferLength - размер звуковых данных;

dwBytesRecorded - количество записанных байт (при воспроизведении этот параметр не используется);

dwUser - сюда можно записать все, что угодно;

dwFlags - здесь происходит описание заголовка. Конкретизирует флаги, предоставляющие информацию о буфере данных. Может принимать значения, приведенные в табл. 3.1

dwLoops - указывает количество циклов. Этот параметр используется только с буферами выходных данных.

lpNext - зарезервирован для использования драйвером устройства, чтобы указать на следующую структуру WAVEHDR в очереди.

reserved - зарезервирован для использования драйвером устройства.

Это поле может использоваться, чтобы запомнить указатель на структуру, содержащую информацию о клиенте.

Таблица 3.1- Флаги и их значения

Флаг Значение
WHDR_DONE устанавливается драйвером устройства, чтобы указать, что работа с буфером данных закончена и возвращается к приложению
WHDR_BEGINLOOP показывает, что этот буфер - первый буфер в цикле. Этот флаг используется только с буферами выходных данных.
WHDR_ENDLOOP показывает, что этот буфер - последний буфер в цикле. Этот флаг используется только с буферами выходных данных
WHDR_PREPARED

устанавливается драйвером устройства, чтобы указать, что буфер данных был подготовлен с помощью waveInPrepareHeader или waveOutPrepareHeader

WHDR_JNQUEUE устанавливается драйвером устройства, чтобы указать, что буфер данных находится в очереди для воспроизведения

Используйте WHDR_BEGINLOOP и флаг WHDR_ENDLOOP в поле dwFlags, чтобы указать начала и концы блоков данных для использования их в цикле. Чтобы прокручивать в цикле один блок, необходимо установить оба флага для этого блока. Необходимо использовать поле dwLoops в структуре WAVEHDR для первого блока в цикле, чтобы установить количество циклов.

Первая функция используемая для записи звука - wavelnOpen. Эта функция устройство ввода для звукового потока. В модуле она объявлена следующим образом:

MMRESULT waveInOpen(

LPHWAVEIN phwi,

UINT_PTR uDevicero,

LPWAVEFORMATEX pwfx,

DWORD_PTR dwCallback,

DWORD_PTR dwCallbacklnstance,

DWORD fdwOpen);

В функции определен ряд параметров. Рассмотрим их основное назначение

phwi - адрес, по которому будет записан указатель на устройство воспроизведения. Этот параметр может быть NULL, если WAVE_FORMAT_QUERY указан для fdwOpen.

UDevicelD – идентификатор устройства, которое необходимо открыть, если поставить сюда константу WAVE_MAPPER, то откроется устройство по умолчанию.

IpFormat – указатель на структуру типа WAVEFORMATEX, в которой описан формат записываемых звуковых данных.

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21

рефераты
Новости