Главная Случайная страница


Полезное:

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


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Алгоритм программного средства





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

1. Входной сигнал.

Входным сигналом является записанная речь с параметрами:

Ø частота дискретизации - 44100 Гц;

Ø число каналов - 1;

Ø кодирование 16 бит.

Пример входного сигнала продемонстрирован на рисунке 3.3.

Рисунок 3.3. Входной сигнал

 

2. Разбитие входного сигнала на перекрывающие области длительностью 20 - 30 мс.

Весь сигнал, который был записан, разбивается на перекрывающиеся окна определенной длительности, в конкретном случае длина каждого окна выбрана 23 мс, с целью упрощения расчетов. Отдельная область на рисунке 3.4.

Рисунок 3.4. Область сигнала длительностью 0.23 мс

3. Фильтрация сегмента.

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

 

.

В итоге получаем сегмент, очищенный от различных шумов (рис.3.5)

Рисунок 3.5. Фильтрация сегмента

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

 

4. Вычисление спектра каждого сегмента.

Чтобы получить спектр сигнала, нужно использовать функцию преобразования Фурье:

 

где k = 0,...,N-1.

Пример полученного спектра сегмента представлен на рисунке 3.6.

Рисунок 3.6. Спектр сегмента сигнала

5. Треугольные перекрывающие фильтры на мел-частотной области.

После того, как мы получили спектр, нам нужно перевести его в мел-частотную область.

Первым делом следует расположить полученный спектр на мел-шкале. Для этого используем формулу:

 

В итоге мы получаем окна, которые равномерно расположены на мел-оси (рис.3.7).

 

Рисунок 3.7. Окна на мел-оси

Далее следует перевести этот график в шкалу с частотами. В итоге получим то, что показано на рисунке 3.8.

 

Рисунок 3.8. Частотная шкала

6. Вычисление мел-частотных кепстральных коэффициентов для каждого сегмента.

На каждый сегмент сигнала приходится по 12 мел-частотных кепстральных коэффициентов. Чтобы их найти используем формулу:

 

где .

 

Часть таблицы с полученными коэффициентами сигнала представлена на рисунке 3.9.

 

Рисунок 3.9. Таблица мел-частотных кепстральных коэффициентов

Подытожив, получим полную алгоритмическую схему разрабатываемого программного средства (рис 3.10).

 

 

Рисунок 3.10. Алгоритмическая схема программного средства

Date: 2016-06-06; view: 718; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.009 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию