Данный модуль отвечает за хранение обучающих данных для каждого человека, организовывает взаимодействие между графическим интерфейсом и модулями идентификации, интерпретирует и объединяет результаты идентификации по обоим факторам.
1. Добавление нового человека в выборку При добавлении нового человека в выборку производится получение входных данных от графического интерфейса: выбранные звуковые файлы и изображения или данные полученные с микрофона и веб-камеры, имя нового человека. Данные передаются в модули идентификации, где из них выделяются вектора особенностей, сохраняются в память. Для дальнейшей работы сами файлы, за исключением одного изображения, не нужны, в виду экономии системных ресурсов. Каждый человек представляется набором векторов изображений его лица, векторами мел-кепстральных частотных коэффициентов и одним изображением его лица для наглядного отражения результата идентификации.
2. Идентификация Для идентификации производится аналогичная загрузка изображения и данных голоса.
Загружается матрица обучающей выборки изображений и вместе с тестовым вектором передается в модуль идентификации по изображению, где происходит идентификация.
Собираются вектора-центроиды голоса по всем кластерам, передаются вместе с тестовым вектором в модуль идентификации по голосу.
На выходе обоих модулей идентификации имеются данные об индексе и удалении наиболее близкого вектора изображения и наиболее близкого вектора звука. Данные результаты объединяются следующим образом:
- А) Если результат идентификации по изображению выше порогового, а результат идентификации по голосу — ниже, то возвращается результат идентификации по голосу;
- Б) Если результат идентификации по голосу выше порогового, а результат идентификации по изображению — ниже, то возвращается результат идентификации по изображению;
- В) Если оба результата указывают на одного человека, то возвращается общий результат;
- Г) Если оба результата ниже порогового, но указывают на разных людей, то возвращается результат отрицательной идентификации;
- Д) Если оба результата выше порогового и указывают на разных людей, то возвращается результат отрицательной идентификации.