Skip to content

Latest commit

 

History

History
22 lines (17 loc) · 3.02 KB

README.md

File metadata and controls

22 lines (17 loc) · 3.02 KB

voice_authentication

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

Описание

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

Программа имеет два режима работы: регистрация нового пользователя и аутентификация. В режиме регистрации пользователь придумывает логин, после чего происходит запись голоса диктора через микрофон в течение 20 с. Сигнал поступает на вход модуля предобработки, после чего из него извлекается матрица мел-частотных кепстральных коэффициентов, которая затем разбивается на шаблоны. Полученные шаблоны используются для обучения обеих сверточных нейронных сетей (одна отвечает за аутентификацию пользователя, другая – за распознавание логина пользователя). Модели обученных ИНС сохраняются в файлы.

В режиме аутентификации запись голоса диктора через микрофон осуществляется в течение 5 с. Из сигнала извлекаются шаблоны тем же способом, что и при регистрации пользователя. Модель первой ИНС, полученная из файла, предсказывает принадлежность шаблонов к классу «свой» или «чужой» (для того, чтобы отнести пользователя к классу «свой», необходимо, чтобы среднее значение всех ответов сети было больше или равно 0,5). Если ответ модели – «свой», то модель второй ИНС предсказывает логин пользователя. В случае однозначного определения логина второй ИНС (т.е. если больше половины ответов сети принадлежит одному и тому же логину пользователя), осуществляется вход пользователя в систему.