Проблемы биометрической идентификации человека
Идентификация личности по изображению и записи голоса, этапы распознавания. Выделение лица на фотографии с помощью метода главных компонент. Описание алгоритмов Eigenface и Fisherface. Применение векторной квантизации и кепстральных коэффициентов.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 29.06.2016 |
Размер файла | 1,9 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://allbest.ru
Содержание
Введение
1. Обзор предметной области
1.1 Направление исследования
1.2 Существующие методы решения поставленной задачи
1.2.1 Идентификация по изображению лица
1.2.2 Идентификация по записи голоса
1.3 Обзор литературы по проблеме идентификации человека по изображению его лица
1.3.1 Статья «Выделение лица на фотографии в реальном времени с помощью метода главных компонент»
1.3.2 Статья «Eigenfaces for Recognition»
1.3.3. Статья «Eigenfaces vs. Fisherfaces: Recognition Using Class
Specific Linear Projection»
1.4 Обзор литературы по проблеме идентификации человека по записи его голоса
1.5 Аналоги
1.6 Методика исследования
2. Описание используемых алгоритмов
2.1 Собственные вектора и числа матрицы
2.2 Алгоритм Eigenface
2.2.1 Этап обучения
2.2.2 Этап распознавания
2.3 Алгоритм Fisherface
2.4 Методы аудио-идентификации
2.4.1 Мел-частотные кепстральные коэффициенты
2.4.2 Векторная квантизация
2.4.3 Удаление участков тишины
3. Методы реализации и практические результаты
3.1 Инструменты реализации
3.2 Структура приложения
3.2.1 Модуль идентификации по изображению
3.2.2 Модуль идентификации по голосу
3.2.3 Модуль хранения данных и интерпретации результатов
4. Результаты эксперимента
4.1 Тестирование модуля идентификации по изображению лица
4.2 Тестирование модуля идентификации по аудиозаписи голоса
4.3 Тестирование объединения факторов
Заключение
Список источников
Введение
Текущие темпы развития технологии позволяют решать все более сложные задачи и строить более сложные вычислительные системы, которые могут лучше подходить под критерии удобства использования человеком. Естественные интерфейсы предполагают взаимодействие человека и машины способами привычными именно для человека - через голосовые команды, жесты и мимику. Однако стоит отметить, что значительного развития эта область достигла лишь в последние десятилетия, когда различные достижения компьютерных наук были применены в новой сфере. Тем не менее, многие задачи требуют дальнейших исследований и разработок.
Биометрическая идентификация, основанная на таких наиболее привычных человеку факторах как лицо и голос, применима в различных технологических сегментах, начиная с интерактивных видео-игр, и заканчивая идентификацией сотрудников на предприятии. Создание подобной системы является целью данного проекта.
В рамках теоретической части проекта ставится задача поиска и сравнения различных подходов к проблеме идентификации человека на основе изображения его лица. Помимо этого выбирается подход к решению задачи аудио-идентификации. Разрабатывается архитектура программы и методика объединения результатов идентификации.
В практической секции производится реализация выбранных алгоритмов, их компоновка в единую систему, реализация способа объединения результатов идентификации, тестирование полученной системы и разработка проектной документации.
1. Обзор предметной области
1.1 Направление исследования
В рамках данного проекта производится исследование методов и подходов к решению проблемы биометрической идентификации человека. В качестве биометрических факторов были выбраны изображение лица и запись голоса. Такое решение было принято в связи с тем, что идентификация по данным параметрам является наиболее естественной для человека и не требует сложного оборудования для получения образцов.
1.2 Существующие методы решения поставленной задачи
1.2.1 Идентификация по изображению лица
На сегодняшний день существует несколько методов идентификации человека по его лицу: Eigenface, Fisherface, нейронные сети. Данная работа фокусируется на первых двух ввиду их производительности и относительно высокой точности. [1] лицо голос кепстральный распознавание
В основе алгоритма Eigenface лежит метод главных компонент и вычисление собственных векторов и собственных значений ковариационной матрицы. Как и другие алгоритмы machine-learning метод Eigenface предполагает две основных процедуры: обучение и тестирование.
На этапе обучения формируется матрица образцов изображений тех людей, которые в дальнейшем будут идентифицироваться алгоритмом. Каждое изображения представляются в виде одного вектора, получаемого с помощью последовательной конкатенации столбцов матрицы входного файла. По всей обучающей выборке рассчитывается средний вектор, который вычитается из каждого изображения.
Полученные вектора хранят лишь уникальную информацию. Далее на основе новой матрицы изображений рассчитывается ковариационная матрица.
На этом шаге также происходит уменьшение размерности данных, рассчитываются собственные вектора, значения и их веса. На этом процесс обучения заканчивается. И для тестирования передается новое изображение, которое аналогичным образом проецируется в новое пространство, производится кластеризация и определение ближайшего обучающего вектора к тестовому. [3,6]
Существует два варианта расчета расстояния между тестовым вектором и векторами обучающей выборки: евклидово расстояние и расстояние Махаланобиса. Проведение эксперимента показало, что квадрат Евклидова расстояния демонстрирует лучшее качество кластеризации.
Другим рассматриваемым подходом является алгоритм Fisherface, который имеет общие черты с Eigenface, однако использует линейный дискриминантный анализ Фишера для классификации изображений.
Алгоритм более сложен в реализации, требует больших объемов памяти и большего объема вычислений, но по экспериментальным данным демонстрирует лучшие результаты при анализе изображений с различным освещением. [1]
1.2.2 Идентификация по записи голоса
В общем, решение проблемы идентификации человека по голосу состоит из трех основных блоков: извлечение особенностей, квантизация и создание моделей.
Аудио-сигнал, получаемый с периферийного устройства, обычно представляется в виде амплитудного спектра, который в цифровом формате представлен большим набором точек.
Такое представление избыточно в контексте рассматриваемой задачи, и для уменьшения размерности данных это амплитудное представление сигнала преобразуется в набор точек на Мел-шкале, которое имеет меньшую размерность, но, вместе с тем, хранит всю необходимую специфическую информацию о сигнале.
Векторная квантизация - один из подходов к проблеме идентификации диктора. Его суть заключается в кластеризации всего набора обучающих векторов - codebook. Каждый полученный класс характеризуется своим центральным вектором - centroid.
На этапе распознавания рассчитываются расстояния между тестовым вектором и каждым классом. При условии получения расстояния меньшего порогового значения принимается решение об идентификации.
Моделирование диктора - другой подход к решению задачи тексто-независимой идентификации, при котором для каждого человека из обучающей выборки строится марковская или гауссовская модель. При распознавании происходит проверка тестового сигнала на предмет соответствия параметрам построенных моделей.
1.3 Обзор литературы по проблеме идентификации человека по изображению его лица
1.3.1 Статья «Выделение лица на фотографии в реальном времени с помощью метода главных компонент»
Данная статья авторов Е. В. Еремина, Ю. Х. Раджабовой и А. А. Тельных представляет краткий обзор подхода к проблеме поиска лица на фотографии и идентификации найденного человека с помощью метода главных компонент и алгоритма Eigenface. [3]
Статья описывает преимущества метода главных компонент в контексте поставленных задач, а именно: высокая скорость обработки и применимость подхода к идентификации лица при различных углах поворота и эмоционального выражения.
Авторы статьи в доступной для понимания форме описывают этапы алгоритма и архитектуру своего решения.
Важной особенностью статьи является математическое описание метода уменьшения размерности ковариационной матрицы выборки для нахождения её собственных векторов и собственных значений.
1.3.2 Статья «Eigenfaces for Recognition»
Предметом работы исследователей M. Turk и A. Pentland Массачусетского Технологического Института также является применение метода главных компонент к проблемам идентификации человека по изображению его лица.
Данная статья содержит более детальное и глубокое описание математического аппарата рассматриваемого подхода и краткое описание применения альтернативных методов, таких как нейронные сети. Помимо этого, авторы демонстрируют свои экспериментальные результаты в точности идентификации при различных параметрах. [6]
1.3.3. Статья «Eigenfaces vs. Fisherfaces: Recognition Using Class Specific Linear Projection»
Отличительной особенностью данной работы является описание альтернативного алгоритма Fisherface для идентификации. Авторы Peter N. Belhumeur, Joao P. Hespanha, and David J. Kriegman описывают подходы Eigenface, Linear Subspaces и Fisherface для решения задачи идентификации и выделяют основные особенности каждого из подходов. [1]
1.4 Обзор литературы по проблеме идентификации человека по записи его голоса
Основным источником информации по проблеме идентификации человека по аудио-записи его голоса является книга Beigi Homayoon “Fundamentals of speaker recognition”.
Прежде всего, она содержит детальный разбор подходов к решению поставленной задачи. Помимо этого автор затрагивает и другие близкие задачи, такие как верификация, сегментация, классификация и трекинг диктора. Книга содержит подробную теоритическую базу предлагаемых методологий и сравнительный анализ использования звука и других биометрический факторов в контексте задачи идентификации. Немаловажным аспектом является описание структуры речевой системы и системы восприятия звука человека. [4]
Другим источником, позволяющим получить базовое понимание принципа Мел-частотных кепстральных коэффициентов, является статья Vibha Tiwari “MFCC and its applications in speaker recognition”.
Данная статья содержит обзор алгоритма получения кепстральных коэффициентов из аудио-сигнала. Будучи написанной доступным языком, статья становится подходящей отправной точкой исследования. [9]
1.5 Аналоги
Аналогичные системы многофакторной идентификации на сегодняшний день чаще всего имеют распространение в сфере производства, входя в комплекс продуктов для аутентификации, например, в охранных системах. Такие системы обычно требуют дополнительного более точного оборудования для снятия образцов, примерами могут служить IFace202 и Multi-Bio 700, производимые ZKSoftware.
Обе упомянутые системы представляют собой терминалы многофакторной идентификации, работают с фотографиями лиц, отпечатками пальцев и прочими атрибутами.
Плюсом таких систем является высокая надежность, обусловленная специально разработанным оборудованием. К минусам можно отнести необходимость и габариты дополнительного устройства, ограниченность расширения функционала, стоимость.
Также существует набор программных продуктов, которые не требуют сложного оборудования, а используют стандартные веб-камеры и микрофоны. Однако обычно такие программы основываются на одном из факторов. Так, например, программа FastAccess от компании Logitech предлагает идентификацию и управление паролями на основе изображения лица. GritTec Laboratory предоставляет программный комплекс для идентификации по голосу.
Таблица 1. Сравнение аналогов
Название системы |
Ценовая политика |
Многофакторность |
Необходимость дополнительного оборудования |
Оценка простоты использования (0-5) |
|
IFace202 |
Коммерческая |
Изображения, отпечатки пальцев, карта |
Необходим дополнительный терминал |
4 |
|
Multi-Bio 700 |
Коммерческая |
Изображение, отпечаток пальцев, карта, пароль |
Необходим дополнительный терминал |
3 |
|
FastAccess |
Коммерческая |
Изображение |
Стандартная веб-камера |
5 |
|
GraitTec lab. |
Коммерческая |
Звук |
Стандартный микрофон |
2 |
1.6 Методика исследования
Весь проект делится на три секции: теоритическая, аналитическая и практическая. Каждая из секций предполагает свои собственные цели, задачи и результаты, необходимые для последующих этапов. Целью первого этапа является детальное изучение алгоритмов идентификации человека по изображению лица и звуку голоса. На данном этапе формируется понимание подходов к решению поставленных задач и создается математическое описание, необходимое на следующем шаге.
В рамках аналитической секции выбирается наиболее подходящие алгоритмы и подходы, формируется структура будущего программного средства. Необходимость такого анализа обуславливается тем, что как изображения, так и запись голоса имеют множество факторов влияющих на качество идентификации.
Различное освещение, например, может сильно искажать результаты обработки изображения, в то время как посторонние шумы влияют на качество обработки звука.
Таким образом, на аналитическом этапе выбираются подходы, которые минимизируют данные эффекты. Завершающим этапом является практическая секция, в рамках которой реализуются алгоритмы и разрабатывается пакет документации.
2. Описание используемых алгоритмов
2.1 Собственные вектора и числа матрицы
Вектор и число называются собственным вектором и числом квадратной матрицы А, если
(1)
2.2 Алгоритм Eigenface
Данный алгоритм предполагает, что
1. Все изображения имеют одинаковые размерности по ширине и высоте;
2. Изображения представлены в оттенках серого;
3. Изображения должны быть центрированы, т.е. глаза, нос, губы должны находиться на приблизительно одном уровне.
2.2.1 Этап обучения
На данном этапе создается обучающая выборка, строится ковариационная матрица, вычисляются собственные вектора и значения, определяются их веса. [3,6]
1. Создание матрицы обучающих векторов
Получаемое на вход изображение в обобщенном виде представляет собой матрицу .
Это изображение преобразуется в один вектор путём конкатенации строк.
(1)
Где I - матрица исходного изображения,
- интенсивность оттенка серого в конкретном пикселе,
r - размер изображения в высоту в пикселях,
с - размер изображения в ширину в пикселях,
? результирующий вектор изображения.
Все изображения преобразовываются в вектора и образуют матрицу обучающей выборки, где n - количество изображений в обучающей выборке.
2. Нормирование обучающей матрицы
На данном шаге рассчитывается среднее изображение M.
(2)
После чего создается новый набор векторов, каждый из которых представляет собой один из первоначальных изображений за вычетом среднего..
(3)
Этот шаг необходим для того, чтобы каждый вектор нес только уникальную информацию об изображении
3. Построение ковариационной матрицы и получение собственных векторов и значений.
Ковариационная матрица, получаемая по [формуле 4] имеет размерность , где , что предполагает в дальнейшем расчет собственных векторов и значений.
, (4)
где .
Для уменьшения количества обрабатываемых данных рассчитывается меньшая ковариационная матрица , размерность которой равна . Соотношение собственных векторов л и значений u матрицы и собственных векторов и значений матрицы продемонстрировано на формуле:
(5)
4. Расчет весов собственных значений
На данном шаге рассчитывается матрица весов, с какими каждый собственный вектор влияет на матрицу.
, (6)
где - матрица весов, размерностью ,
- матрица собственных векторов ковариационной матрицы.
2.2.2 Этап распознавания
На данном этапе используются матрицы весов и собственных векторов , полученные в ходе обучения, для проецирования нового изображения в новое пространство. [3,6]
1. Преобразование входного тестового изображения в новое пространство собственных векторов.
Тестовое изображение преобразуется в вектор аналогично обучающим по [формуле 1] и нормируется по среднему [формула 3]. После чего производится преобразование:
,(7)
где - вектор преобразованного тестового изображения,
- вектор входного изображения.
2. Кластеризация и поиск расстояний
После перехода в новое пространство необходимо определить, к какому из обучающих векторов ближе всего находится распознаваемое изображение. Для решения этой задачи могут использоваться две метрики: евклидово расстояние и расстояние Махаланобиса.
А) Евклидово расстояние
Расстояние d по Евклиду между двумя векторами a и b рассчитывается следующим образом:
(8)
Б) Расстояние по Махаланобису
Расстояние по Махаланобису помимо самих векторов учитывает и ковариационную матрицу C. Рассчитывается по формуле:
,(9)
где - инвертированная ковариационная матрица.
В контексте рассматриваемой задачи необходимо рассчитать расстояния между вектором w и каждым вектором матрицы весов :
(10)
где - расстояние по Евклиду между тестовым изображением и j-тым изображением обучающей выборки,
dist(a, b) - функция, рассчитывающая евклидово расстояние между векторами a и b.
- j-тый вектор матрицы весов .
Альтернативно рассчитывается расстояние по Махаланобису:
(11)
где - расстояние Махаланобиса между тестовым изображением и j-тым изображением обучающей выборки,
- функция расчета расстояния Махаланобиса между векторами a и b по ковариационной матрице C.
Таким образом формируется вектор расстояний .
3. Поиск вектора с наибольшим сходством и установка критерия отсечения изображений
В полученном векторе расстоянии d находится минимальное значение и его индекс:
(12)
где - вектор из двух элементов, хранящий минимально расстояние и его индекс в векторе расстояний,
min(a) - функция поиска минимально значения в векторе,
ind(x, a) - функция поиска индекса элемента x в векторе a.
В результате данных операций находится минимальное расстояние и индекс соответствующего изображения обучающей выборки. Однако он рассчитывается и для изображений, которые не принадлежат обучающей выборке, для отсечения таковых вводится эмпирический критерий O, расстояния большие которого идентифицируются как не принадлежащие выборке.
2.3 Алгоритм Fisherface
Данный алгоритм является расширением алгоритма Eigenface. Отличием является кластеризация обучающих векторов, для чего рассчитываются внутри-классовые и между-классовые ковариационные матрицы. [1]
,(13)
где с - количество классов в выборке, -вектор, принадлежащий классу , -средний вектор i-го класса.
,(14)
где с - количество классов,
- количество элементов в i-том классе,
- средний вектор i-го класса,
- средний вектор всей выборки.
Следующим шагом рассчитывается матрица главных компонент:
,(15)
где W - вектор тестового изображения,
- ковариационная матрица.
Завершающим шагом является расчет итоговой матрицы:
.(16)
2.4 Методы аудио-идентификации
2.4.1 Мел-частотные кепстральные коэффициенты
Впервые мел-шкала была представлена в Ньюманом, Стивенсом и Волкманом в 1937, как новое логарифмическое представление звука, более точно отражающее его восприятие человеческим ухом.
Значение в 1000 mel ставится в соответствие частоте 1 Khz. Перевод из частотного представления в мел производится по следующей формуле[5]:
(17)
где f - значение частоты звука.
Мел-частотные кепстральные коэффициенты - набор значений на мел-шкале, содержащий только уникальную и значимую информацию исходного сигнала.
Для получения мел-частотных кепстральных коэффициентов по сигналу необходимо произвести следующие действия[2,4,9]:
1. Сигнал разбивается на перекрывающиеся окна длиной 25 - 30 мс. Длительность окна выбирается таким образом, чтобы минимизировать колебания частоты внутри ее границ, но оставить возможность последующей обработки.
2. Производится преобразование Фурье для получения спектра сигнала.
3. Накладывается набор фильтров. На данном шаге спектр сигнала распределяется между треугольными мел-частотными окнами.
Этот процесс симулирует невозможность человеческого уха различать близко расположенные частоты.
Для получения такого распределения каждый вектор спектра умножается на оконную функцию.
В результате получается набор значений энергии сигнала, соответствующих частотным окнам.
4. Производится логарифмирование каждого значения энергии.
5. Производится дискретное косинусное преобразование для получения искомых коэффициентов.
2.4.2 Векторная квантизация
Метод векторной квантизации изначально использовался в задачах сжатия аудио и видео данных.
В рамках задачи распознавания диктора эта техника распределяет k-мерные вектора особенностей векторного пространства по конечному набору областей Вороного. Распределение производится алгоритмом кластеризации, например, k-means.
У каждого класса есть средний вектор - центроид или кодовое слово. Набор всех кодовых слов формирует кодовый справочник.
Пример кластеризации приведен на Изображении 1. [4,8]
Кластеризация может производиться с помощью алгоритма k-means или алгоритмом Линде-Бузо-Грея [4]. После чего, на этапе идентификации, находится наиболее близкий кластер к тестовому сигналу.
Рисунок 1. Пример кодового словаря [Srinivasan, 2012]
2.4.3 Удаление участков тишины
Для удаления участков записи, на которых нет значимых голосовых данных, используется алгоритм удаления тишины и определения конечных точек G. Saha, Sandipan Chakroborty, Suman Senapati [7].
В основе алгоритма лежит статистическая оценка параметров входного сигнала и разметка участков записи как содержащих запись голоса и не содержащих по определенным критериям.
Данный алгоритм необходим для уменьшения влияния на качество идентификации участков тишины, когда диктор еще не начал говорить или уже закончил, и для устранения естественных участков тишины, производимых речевым аппаратом человека.
Алгоритм удаления участков тишины включает в себя следующие шаги:
1. Расчет среднего значения (форм. 18) и стандартного отклонения (форм. 19) для первых 1600 значений амплитуды входного сигнала.
,(18)
где - итоговое математическое ожидание,
S(i)- i-тое измерение амплитуды звукового сигнала.
,(19)
где - стандартное отклонение.
2. Для каждого значения амплитуды записи проверить, больше ли 3 значение функции расстояния Махаланобиса (формула 20).
(20)
где R(i)- флаг наличия голоса на i-том сэмпле,
K- количество измерений амплитуды в записи.
3. Разбить весь сигнал на неперекрывающиеся окна длиной 10 мс.
4. Для каждого окна рассчитать количество измерений отмеченных 1 и количество измерений отмеченных 0.
Если единиц больше, чем нулей, инвертировать значения для данного окна.
Данный шаг симулирует невозможность человеческого речевого аппарата изменить свои характеристики в течение такого короткого промежутка времени как 10 мс.
5. Результатом работы алгоритма являются те участки исходного сигнала, которые были помечены как вокализованные.
Блок-схема алгоритма представлена на рисунке 2.
Рисунок 2. Алгоритм удаления тишины [7]
3. Методы реализации и практические результаты
3.1 Инструменты реализации
Данная программа многофакторной биометрической идентификации человека была разработана на языке Java, в среде разработки Intellij Idea. Для решения некоторых задач в процессе разработки были использованы следующие сторонние библиотеки:
· Sarxos Webcam - библиотека, обеспечивающая доступ к подключенным веб-камерам и захвата изображения с них;
· Slf4j, log4j - библиотека расширенных возможностей логирования, используется Sarxos webcam;
· Bridj - библиотека взаимодействия с драйверами веб-камеры, используется Sarxos webcam;
· Apache common math 3 - математическая библиотека;
· Алгоритм Fast Fourier Transform.[10]
3.2 Структура приложения
Вся система идентификации разбита на три логических модуля: модуль идентификации по изображению, модуль идентификации по голосу, модуль хранения данных и интерпретации результатов.
Взаимодействие пользователя с программой организовано через графический интерфейс.
Структура приложения отражена на рис. 3.
Рисунок 3. Схема архитектуры программы
3.2.1 Модуль идентификации по изображению
Основой данного модуля является алгоритм Eigenface, который производит идентификацию на подготовленных данных в виде векторов изображений. Также данный модуль включает в себя алгоритмы предобработки растровых изображений в формате PGM и PNG.
1. Обучение
На вход алгоритма обучения поступает матрица, составленная из векторов всех изображений всех пользователей. Все векторы имеют одинаковую размерность, при работе с имеющейся выборкой изображений с размерами 92 x 112 точек, векторы имеют длину 10304 и хранят целочисленное значение интенсивности серого цвета от 0 до 255.
Обучение происходит каждый раз после добавления нового человека или изображения в базу. По завершении обучения матрица записывается на жесткий диск и выгружается из оперативной памяти.
2. Идентификация
На вход алгоритма идентификации подается целочисленный вектор тестового изображения, имеющий формат идентичный векторам обучающей выборки. Производится определение вектора, наиболее близко расположенного к данному тестовому вектору. При тестировании различных подходов к расчету расстояния были получены результаты, свидетельствующие о том, что квадрат Евклидова расстояния показывает лучшее качество выделения идентифицированного изображения среди всей выборки по сравнению с расстоянием Махаланобиса.
Эмпирически на основе 40 экспериментов было выбрано пороговое значение расстояния в 1*10^6.
На выходе имеется индекс найденного изображения в обучающей матрице и расстояние до него от тестового вектора.
3. Предобработка изображений
Данный модуль позволяет подготавливать изображения для последующей их обработки. Так, имеются методы загрузки изображений в формате PNG и PGM. Модуль позволяет привести изображения размерностей больших, чем 92 x 112 к данным параметрам, с тем условием, что лица на изображении расположено точно по центру.
Имеется функция загрузки цветных PNG изображений с приведением их к формату оттенков серого.
3.2.2 Модуль идентификации по голосу
В основе данного модуля лежит алгоритм вычисления мел-частотных кепстральных коэффициентов из аудиозаписи, кластеризации и вычисления расстояний до вектора тестового сигнала. Также данный модуль отвечает за загрузку аудиофайлов в формате WAV с частотой дискретизации 16 KHz и 16 бит на измерение.
1. Обучение
Обучение производится при добавлении нового человека в базу. В таком случае каждый выбранный аудиофайл разбивается на окна длиной 30 мс, для каждого окна рассчитываются мел-частотные кепстральные коэффициенты, формируется новый кластер, соответствующий этому человеку, для этого кластера вычисляется вектор-центроид, характеризующий речь данного человека.
2. Идентификация
На этапе идентификации также производится кадрирование сигнала, для каждого кадра рассчитываются коэффициенты, рассчитывается вектор-центроид тестового сигнала. После чего вычисляются квадраты Евклидовых расстояний от тестового вектора до каждого вектора обучающей выборки. Расстояние возводится в квадрат для получения более точных результатов идентификации - расстояния до тех кластеров, к которым не относится тестовый вектор, становится существенно большим по сравнению с расстоянием до кластера, к которому этот сигнал принадлежит.
Эмпирически на основе 40 экспериментов пороговое значение расстояния идентификации было установлено равным 5.
3. Определение тишины на записи
Каждый сигнал при подготовке к извлечению мел-частотных кепстральных коэффициентов проходит этап предобработки, на котором статистически вычисляются и удаляются участки тишины.
4. Загрузка аудиофайла
Модуль позволяет загружать аудиофайлы в формате WAV (16 KHz, 16 бит на сэмпл). Модуль проверяет соответствие файла данным параметрам, считывая информацию о кодировании из заголовка файла.
3.2.3 Модуль хранения данных и интерпретации результатов
Данный модуль отвечает за хранение обучающих данных для каждого человека, организовывает взаимодействие между графическим интерфейсом и модулями идентификации, интерпретирует и объединяет результаты идентификации по обоим факторам.
1. Добавление нового человека в выборку
При добавлении нового человека в выборку производится получение входных данных от графического интерфейса: выбранные звуковые файлы и изображения или данные полученные с микрофона и веб-камеры, имя нового человека. Данные передаются в модули идентификации, где из них выделяются вектора особенностей, сохраняются в память. Для дальнейшей работы сами файлы, за исключением одного изображения, не нужны, в виду экономии системных ресурсов. Каждый человек представляется набором векторов изображений его лица, векторами мел-кепстральных частотных коэффициентов и одним изображением его лица для наглядного отражения результата идентификации.
2. Идентификация
Для идентификации производится аналогичная загрузка изображения и данных голоса.
Загружается матрица обучающей выборки изображений и вместе с тестовым вектором передается в модуль идентификации по изображению, где происходит идентификация.
Собираются вектора-центроиды голоса по всем кластерам, передаются вместе с тестовым вектором в модуль идентификации по голосу.
На выходе обоих модулей идентификации имеются данные об индексе и удалении наиболее близкого вектора изображения и наиболее близкого вектора звука. Данные результаты объединяются следующим образом:
А) Если результат идентификации по изображению выше порогового, а результат идентификации по голосу - ниже, то возвращается результат идентификации по голосу;
Б) Если результат идентификации по голосу выше порогового, а результат идентификации по изображению - ниже, то возвращается результат идентификации по изображению;
В) Если оба результата указывают на одного человека, то возвращается общий результат;
Г) Если оба результата ниже порогового, но указывают на разных людей, то возвращается результат отрицательной идентификации;
Д) Если оба результата выше порогового и указывают на разных людей, то возвращается результат отрицательной идентификации.
4. Результаты эксперимента
4.1 Тестирование модуля идентификации по изображению лица
Объект тестирования - модуль идентификации по изображению лица.
Входные данные - открытая выборка лиц Cambridge University Computer Laboratory, «The Database of Faces» (источн).
Данная выборка содержит по 10 изображений для 50 человек в формате PGM (92 x 112 пикслей).
Обучающая выборка:
40 человек;
3 изображения на человека.
Тестовая выборка:
40 человек;
3 изображения на человека - 120 тестов.
Результаты идентификации:
93 успешных идентификаций;
12 неверно идентифицировано (ниже порогового значения)
15 неверно идентифицировано (выше порогового значения)
77,5 % точность идентификации.
4.2 Тестирование модуля идентификации по аудиозаписи голоса
Объект тестирования - модуль идентификации по аудиозаписи голоса.
Входные данные выборка записей голосов людей CMU(). Также имеет свободный доступ для исследовательских целей, представляет собой наборы аудио коротких аудиозаписей (16 KHz, 16 бит) от различных людей.
Обучающая выборка: 40 человек
21 секунда записи голоса
Тестовая выборка:40 человек
12 секунд записи голоса - 40 тестов.
Результаты идентификации:
33 верно идентифицировано
7 неверно идентифицировано (ниже порогового значения)
82,5 % верных идентификаций
4.3 Тестирование объединения факторов
Обучающая выборка: 40 человек
3 изображения на человека
21 секунда аудиозаписи
Тестовая выборка: 40 человек
3 изображений на человека.
3 аудиозаписи по 5 секунд
120 тестов
Результаты идентификации:
102 верно идентифицировано
18 неверно идентифицировано (ниже порогового значения)
85 % верной идентификации.
Таблица 2. Сравнение результатов
Идентификация |
Количество тестов |
Количество верных идентификаций |
Процент ошибок |
|
По изображению лица |
120 |
93 |
23.5 % |
|
По аудиозаписи голоса |
40 |
33 |
17,5 % |
|
Двухфакторная идентификация |
120 |
102 |
15 % |
Заключение
Задачи идентификации человека по изображению лица и аудиозаписи голоса находятся среди наиболее сложных задач естественных интерфейсов машина-человек. Таким образом, разработка методик для решения этих задач имеет высокий научный интерес. Помимо этого, практическую важность биометрической идентификации сложно переоценить.
Тем не менее, не каждый биометрический фактор легко доступен для получения и обработки. Так, например, получение изображения радужной оболочки глаза требует камеру с высоким разрешением, получение отпечатков пальцев - дополнительное устройство для получения образцов. В свою очередь, фотографию лица и запись голоса можно получить при помощи стандартного оборудования, имеющегося практически у каждого пользователя ПК.
В процессе работы были проанализированы различные подходы к идентификации человека по лицу и голосу, принято решение о методах реализации, разработаны способы объединения результатов, реализована сама система, не уступающая по точности аналогичным разработкам других исследователей.
Список источников
1. Belhumeur, P. & Hespanha, J. & Kriegman, D. (1997). Eigenfaces vs. Fisherfaces: Recognition Using Class Specific Linear Projection. IEEE Transactions on Pattern Analysis and Machine Intelligence, 19(7), 711-721.
2. Ejnarsson, M. & Nillson, M. (2002). Speech Recognition using Hidden Markov Model. Blekinge Institute of Technology.
3. Eremin, E. & Radzhabova, U. & Telnikh, A. (2003). Real-time face etection via principal component analysis. Neuroinformatics-2003, 2(5), 115-121.
4. Homayoon B. (2011). Fundamentals of Speaker Recognition. New York: Springer.
5. Newman, E. & Stanley, S. & Stevens, S. (1937). A scale for the measurement of the psychological magnitude pitch. Journal of the Acoustical Society of America 8(3): 185-190.
6. Pentland, A. & Turk, M. (1991). Eigenfaces for Recognition. Journal of Cognitive Neuroscience 3(1): 71-86.
7. Saha, G. & Sandipan, C. & Suman, S. (2004). A New Silence Removal and Endpoint Detection Algorithm for Speech and Speaker Recognition Applications. Indian Institute of Technology, Khragpur.
8. Srinivasan. A. (2012). Speaker Identification and Verification using Vector Quantization and Mel Frequency Cepstral Coefficients. Research Journal of Applied Sciences, Engineering and Technology 4(1), 33-40.
9. Tiwary, V. (2010). MFCC and its applications in speaker recognition. International Journal on Emerging Technologies 1(1), 19-22.
10. OrangeCow organization. OC Volume: [Электронный документ].- (http://ocvolume.sourceforge.net/ocvolume.php). Доступ 15.04.2014.
Размещено на Allbest.ru
...Подобные документы
Оптико-электронная система идентификации объектов подвижного состава железнодорожного транспорта. Автоматический комплекс распознавания автомобильных номеров. Принципы и этапы работы систем оптического распознавания. Особенности реализации алгоритмов.
дипломная работа [887,3 K], добавлен 26.11.2013Основы биометрической идентификации. Возможность использования нейросетей для построения системы распознавания речи. Разработка программного обеспечения для защиты от несанкционированного доступа на основе спектрального анализа голоса пользователя.
дипломная работа [2,8 M], добавлен 10.11.2013Метод главных компонент. Процесс распознавания. Ковариационная матрица, диагональная матрица собственных чисел. Использовании метрики Махаланобиса и Гауссовского распределения для оценки близости изображений. Входные вектора. Библиотека OpenCV.
статья [22,1 K], добавлен 29.09.2008Анализ биометрических систем идентификации личности по отпечаткам пальцев, форме кисти руки, оболочке глаза. Лицо как биометрический идентификатор. Анализ рынка систем распознавания личности. Оценка эффективности систем идентификации по геометрии лица.
курсовая работа [1,8 M], добавлен 30.05.2013Подсистема анализа изображения отпечатка пальца в составе системы идентификации личности по отпечаткам пальцев на основе папиллярного узора для дальнейшего распознавания личности. Характеристика функциональных возможностей системы и код програмы.
дипломная работа [3,1 M], добавлен 01.07.2008Распознавание образов - задача идентификации объекта или определения его свойств по его изображению или аудиозаписи. История теоретических и технических изменений в данной области. Методы и принципы, применяемые в вычислительной технике для распознавания.
реферат [413,6 K], добавлен 10.04.2010Обзор существующих алгоритмов для обнаружения лиц. Выравнивание лица с помощью разнообразных фильтров. Использование каскадного классификатора Хаара для поиска лиц на изображении. Распознавание лиц людей с использованием локальных бинарных шаблонов.
дипломная работа [332,4 K], добавлен 30.09.2016Разработка алгоритма и программы для распознавания пола по фотографии с использованием искусственной нейронной сети. Создание алгоритмов: математического, работы с приложением, установки весов, реализации функции активации и обучения нейронной сети.
курсовая работа [1,0 M], добавлен 05.01.2013Теоретические основы сверточных нейронных сетей. Исследование зависимости качества работы сети от изменения различных характеристик. Сравнение результатов работы сетей типа многослойный персептрон в определении пола и возраста человека по фотографии лица.
курсовая работа [2,5 M], добавлен 18.07.2014Общие принципы работы систем биометрической идентификации личности. Программные инструменты для разработки приложения, осуществляющего идентификацию пользователя на основе его клавиатурного почерка. Проектирование базы данных и структуры нейронной сети.
дипломная работа [1,3 M], добавлен 20.12.2013Анализ современного состояния общей проблемы синтеза моделей многофакторного оценивания и подходов к ее решению. Разработка математической модели метода компараторной идентификации модели многофакторного оценивания. Описание генетического алгоритма.
дипломная работа [851,7 K], добавлен 11.09.2012Анализ методов идентификации, основанных на регрессионных процедурах с использованием метода наименьших квадратов. Построение прямой регрессии методом Асковица. Определение значения дисперсии адекватности и воспроизводимости, коэффициентов детерминации.
курсовая работа [549,8 K], добавлен 11.12.2012Обзор основных алгоритмов и методов распознавания лиц. Архитектура средств динамического отслеживания лиц в видеопоследовательности. Результаты тестирования на больших объемах видеоданных. Разработка алгоритмов и методов динамического отслеживания лиц.
дипломная работа [5,9 M], добавлен 20.07.2014Анализ существующих методов реализации программного средства идентификации личности по голосу. Факторы, влияющие на уникальность речи. Разработка программного средства идентификации личности по голосу. Требования к программной документации приложения.
дипломная работа [12,7 M], добавлен 17.06.2016Обзор математических методов распознавания. Общая архитектура программы преобразования автомобильного номерного знака. Детальное описание алгоритмов: бинаризация изображения, удаление обрамления, сегментация символов и распознавание шаблонным методом.
курсовая работа [4,8 M], добавлен 22.06.2011Содержание активного и пассивного методов идентификации динамических объектов. Проведение полного факторного эксперимента, в котором реализуются все возможные сочетания уравнений факторов. Применение метода наименьших квадратов и регрессионного анализа.
контрольная работа [140,1 K], добавлен 05.11.2011Преобразование формулы и решение ее с помощью Метода Эйлера. Моделирование метода оптимизации с функцией Розенброка. Поиск модели зашумленного сигнала. Нахождение минимума заданной целевой функции методом покоординатного спуска нулевого порядка.
курсовая работа [1,2 M], добавлен 21.12.2013Классификация и основные характеристики биометрических средств идентификации личности. Особенности реализации статических и динамических методов биометрического контроля. Средства авторизации и аутентификации в электронных системах охраны и безопасности.
курсовая работа [1,7 M], добавлен 19.01.2011Понятие процесса биометрической аутентификации. Технология и вероятность ошибок аутентификации по отпечатку пальца, радужной оболочке или по сетчатке глаза, по геометрии руки и лица человека, по термограмме лица, по голосу, по рукописному почерку.
презентация [1,2 M], добавлен 03.05.2014Понятие интегрированной логистики и ее главные направления развития на современном этапе. Виды автоматической идентификации, суть кодирования, достоинства и недостатки использование радиоволн (RFID), применение радиосканера, компьютера и радиометки.
контрольная работа [337,7 K], добавлен 27.09.2010