РАЗРАБОТКА ПРОГРАММЫ РАСПОЗНАВАНИЯ ЛИЦ

Аннотация


Отражены этапы улучшения ранее разработанного алгоритма распознавания лиц. На каждом этапе показаны результаты проведенных экспериментов, а также дано описание проводимых экспериментов. Рассматриваемая в этой статье программа распознавания лиц использует функции из библиотек OpenCV и dlib. Разработка программы распознавания лиц состоит из шести этапов. На первом этапе программа распознавания лиц состоит из алгоритма, основанного на гибких контурах, которое учитывает только геометрию лица. Поэтому в алгоритмы последующих этапов разработки программы распознавания лиц было добавлено быстрое преобразование Фурье, которое учитывает цвет лица. Для того чтобы произвести замену параметров, вычисленных с помощью алгоритма гибких контуров, на параметры, вычисленные с помощью алгоритма быстрого преобразования Фурье, были проведены исследования, целью которых было определение областей изображения, которые лучше всего характеризуют лицо и которые будут использоваться для вычисления параметров с помощью быстрого преобразования Фурье, определения количества заменяемых параметров и порядка значимости параметров, вычисленных с помощью алгоритма гибких контуров. На втором этапе производится замена параметров гибких контуров на параметры, вычисленные с помощью быстрого преобразования Фурье, первым способом, на третьем этапе - вторым и третьим способами. На четвертом и пятом этапе были добавлены весовые коэффициенты, основанные на количестве совпадений между параметрами векторов. На шестом этапе были добавлены комбинированные весовые коэффициенты, вычисленные путем суммирования коэффициентов, полученных на предыдущих этапах разработки программы распознавания лиц. В результате среди всех версий программы распознавания лиц, полученных на шести этапах ее разработки, самый высокий процент правильно распознанных лиц, дает программа, полученная на четвертом этапе.

Полный текст

Проблема информационной безопасности является актуальной. Традиционно для решения проблем информационной безопасности используют системы распознавания образов, в частности системы распознавания лиц [1-6]. Описанные в этой статье этапы разработки программы распознавания лиц являются результатом совершенствования алгоритма, который был описан в [7-9]. Для разработки программы распознавания лиц, рассмотренной в этой статье, использовались функции из библиотеки OpenCV [10] и dlib [11]. Для экспериментального тестирования всех версий алгоритмов распознавания лиц на каждом этапе использовалась база лиц The Facial Recognition Technology (FERET) Database [12]. База состоит из 1600 лиц по 2 фотографии на каждого человека. Для эксперимента были составлены две выборки: - для базы людей, входящих в состав «своих», были взяты 20 фотографий лиц; - для входного потока были взяты 40 фотографий лиц: 20 фотографий тех же людей, что и в базе, и 20 фотографий, не находящихся в базе («чужих»). Также для тестирования была создана вторая база лиц, включающая 40 фотографий одного человека и 8 фотографий другого, съемка проводилась утром и вечером в течение 4 дней, по 5 фотографий для первого человека и по 1 - для второго человека. Тестирование проходит в соответствии со следующими пунктами: - фотографии людей, выбранных как «своих», заносятся в базу; - на основании фотографий создаются математические модели (векторы), используемые в дальнейшим для сравнения с приходящими на пункт контроля; - на вход программе распознавания лиц подаются фотографии, состоящие из определенного числа «своих» и «чужих»; - на выходе программа распознавания лиц выдает список, состоящий из двух фотографий (фотография человека, найденного в кадре, и фотография человека - с наиболее похожим лицом из базы «своих») и процент совпадения лиц; - при изменении порога отбирается процент правильно распознанных лиц «свой» и «чужой». Разработка программы распознавания лиц состоит из шести этапов. Первым этапом разработки программы распознавания лиц является алгоритм, основанный на гибких контурах [13]. Вычисляются все 10 параметров векторов для каждого лица по следующему алгоритму: 1) поиск лица на изображении; 2) поиск 68 ключевых точек на найденном лице; 3) вычисление с помощью гибких контуров и на основе найденных ключевых точек десяти параметров векторов (параметр - это значение, являющиеся частью вектора); 4) вычисленный вектор записывается в базу. Распознавание лиц осуществляется по следующему алгоритму: - выполняются пункты с 1 по 4, описанные выше; - поочередно читаются векторы из базы, и по всем 10 параметрам каждого вектора из базы выполняется деление наименьшего значения параметра из базы и входного вектора на наибольшее значение параметра из базы и входного вектора, все 10 отношений суммируются, и полученная сумма нормируется делением на 10; - выполняется поиск наибольшего значения нормированной суммы отношений; - наибольшее значение сравнивается с порогом, и если больше, то входной вектор распознался как найденный вектор из базы; если меньше, то входной вектор не найден в базе. Вычисление первого, второго и третьего параметров вектора выполняется по следующему алгоритму: - с помощью метода наименьших квадратов (МНК) [14] выполняется вычисление , , для функции вида: , (1) где - параметры функции ; - аргумент функции ; - определяются доверительные интервалы для вычисленных , , ; - вычисляется среднее арифметическое от суммы с левой границей параметров и с правой границей параметров, где . Для параметров вектора с 4 по 10 вычисляется площадь многоугольника по формуле [15]: , (2) где - значения координат ключевых точек лица по оси х; - значения координат ключевых точек лица по оси у. После проведения эксперимента на первом этапе разработки программы распознавания лиц процент правильного распознавания для базы FERET на 50 лиц равен 53 %. Распознавание лиц, основанное на алгоритме гибких контуров, учитывает только геометрию лица. Поэтому в алгоритмы последующих этапов разработки программы распознавания лиц было добавлено быстрое преобразование Фурье [15-20], которое учитывает цвет лица. Для того чтобы произвести замену параметров, вычисленных с помощью алгоритма гибких контуров, на параметры, вычисленные с помощью алгоритма быстрого преобразования Фурье, необходимо определить количество заменяемых параметров, а также области лица, которые лучше всего характеризуют лицо и которые будут использоваться для вычисления параметров с помощью быстрого преобразования Фурье, и определить порядок значимости параметров, вычисленных с помощью алгоритма гибких контуров. Было проведено исследование для определения необходимого числа заменяемых параметров. В результате этого исследования было установлено, что необходимое число заменяемых параметров на параметры, вычисленные с помощью быстрого преобразования Фурье, равно 5. Было проведено исследования с целью определения областей лица, которые лучше всего характеризуют лицо. В результате этого исследования было установлено, что области левого глаза, между глазами, правого глаза, носа и области подбородка лучше всего характеризуют лицо. Были проведены исследования для определения порядка значимости параметров. Порядок значимости устанавливается тремя способами: определялись количество равных значений параметров, значимость параметров, основанная на разности процентов совпадений между своими и другими своими, и значимость параметров, основанная на усиленной разности процентов совпадений между своими и другими своими. На последующих этапах векторы состоят из 5 параметров, вычисленных с помощью алгоритма гибких контуров, и 5 параметров, вычисленных с помощью быстрого преобразования Фурье, описанного в [7]. Вычисление параметров с помощью быстрого преобразования Фурье производится от области левого глаза, между глазами, правого глаза, носа и области подбородка. Вторым этапом разработки программы распознавания лиц является замена параметров, вычисленных на основе алгоритма гибких контуров, на параметры, вычисленные с помощью быстрого преобразования Фурье, основанная на количестве равных значений параметров векторов. После проведения эксперимента на втором этапе разработки программы распознавания лиц правильное распознавание для базы FERET на 50 лиц равно 73 %. И поскольку это самый высокий процент, то дальнейшее изменение программы будет производиться для алгоритма, полученного на этом этапе. Третьим этапом разработки программы распознавания лиц является замена параметров, вычисленных на основе алгоритма гибких контуров, на параметры, вычисленные с помощью быстрого преобразования Фурье, основанная на разности и усиленной разности процентов совпадений своих и других своих. После проведения эксперимента на третьем этапе разработки программы распознавания лиц после замены, основанной на разности процентов совпадений своих и других своих, процент правильного распознавания для базы FERET на 50 лиц равен 73 %. После замены, основанной на усиленной разности процентов совпадений своих и других своих, процент правильного распознавания для базы FERET на 50 лиц равен 65 %. На последующих этапах разработки программы распознавания лиц будут введены весовые коэффициенты для параметров векторов. Четвертым этапом разработки программы распознавания лиц является добавление весовых коэффициентов, полученных путем возведения в положительные и отрицательные показатели степени количества совпадений между параметрами векторов. Суть метода вычисления коэффициентов путем возведения в положительные показатели степени заключается в том, что есть функция, зависящая от количества совпадений параметров векторов и от показателя степени (показатель степени может принимать значения от 1 до плюс бесконечности). Если количество равных значений векторов одинаково, то одинаковы и коэффициенты, при увеличении показателя степени коэффициенты увеличиваются у тех параметров, у которых количества равных значений равно 0, и уменьшаются для остальных параметров векторов. Коэффициенты, полученные путем возведения в положительные показатели степени, вычисляются не для бесконечного числа показателей степени, а до тех пор, пока процент правильно распознанных для базы FERET на 20 лиц и базы FERET на 50 лиц не начнет уменьшаться. После добавления коэффициентов, вычисленных для , процент правильно распознанных достигает максимума для положительных показателей степеней, и для базы FERET на 50 лиц равен 78 %. На дальнейших этапах разработки программы распознавания лиц будут использоваться коэффициенты для для вычисления комбинированных коэффициентов. Суть метода вычисления коэффициентов путем возведения в отрицательные показатели степени заключается в том, что есть функция, зависящая от количества совпадений параметров векторов и от показателя степени (показатель степени может принимать значения от минус бесконечности до -1). Чем меньше количество равных значений, тем быстрее уменьшаются коэффициенты при уменьшении показателя степени, и чем больше количество равных значений, тем быстрее увеличиваются коэффициенты при уменьшении показателя степени. Коэффициенты, полученные путем возведения в отрицательные показатели степени, вычисляются не для бесконечного числа показателей степени, а до тех пор, пока процент правильно распознанных для базы FERET на 20 лиц и базы FERET на 50 лиц не начнет уменьшаться. После добавления коэффициентов, вычисленных для , процент правильно распознанных достигает максимума для отрицательных показателей степеней и для базы FERET на 50 лиц равен 74 %. Также для процент сходства между своими достигает максимального значения и равен 97,79 %. На дальнейших этапах разработки программы распознавания лиц будут использоваться коэффициенты для для вычисления комбинированных коэффициентов. Пятым этапом разработки программы распознавания лиц является добавление весовых коэффициентов, основанных на разности и усиленной разности процентов совпадений своих и других своих. После добавления коэффициентов, основанных на разности процентов совпадений своих и других своих, процент правильно распознанных для базы FERET на 50 лиц равен 74 %. Процент сходства между чужими равен 84,63 %. На дальнейших этапах разработки программы распознавания лиц будут использоваться коэффициенты, основанные на разности процентов совпадений своих и других своих, для вычисления комбинированных коэффициентов. После добавления коэффициентов, основанных на усиленной разности процентов совпадений своих и других своих, процент правильно распознанных для базы FERET на 50 лиц составляет 77 %. Шестым этапом разработки программы распознавания лиц является добавление комбинированных весовых коэффициентов. Комбинированные коэффициенты вычисляются путем суммирования коэффициентов, полученных на предыдущих этапах разработки программы распознавания лиц. Выполняется суммирование четырех групп коэффициентов: 1. Коэффициенты, вычисленные путем возведения в положительные показатели степени, для и коэффициенты, вычисленные путем возведения в отрицательные показатели степени, для . 2. Коэффициенты, вычисленные путем возведения в отрицательные показатели степени, для и коэффициенты, основанные на разности процентов совпадений своих и других своих. 3. Коэффициенты, вычисленные путем возведения в положительные показатели степени, для и коэффициенты, основанные на разности процентов совпадений своих и других своих. 4. Коэффициенты, вычисленные путем возведения в положительные показатели степени, для , коэффициенты, вычисленные путем возведения в отрицательные показатели степени, для и коэффициенты, основанные на разности процентов совпадений своих и других своих. В результате проведенных экспериментов для первой группы комбинированных коэффициентов процент правильно распознанных для базы FERET на 50 лиц равен 75, для второй группы равен 76, для третьей группы равен 77, для четвертой группы равен 77. Среди всех версий программы распознавания лиц, описанных на шести этапах ее разработки, самый высокий процент правильно распознанных для базы FERET (50 лиц в базе и 100 в потоке) дает программа, полученная на четвертом этапе после добавления весовых коэффициентов путем возведения в положительные показатели степени для , что составляет 78 %.

Об авторах

К. Р Ахметзянов

Пермский национальный исследовательский политехнический университет

В. И Сазонов

Пермский национальный исследовательский политехнический университет

Ю. Н Липин

Пермский национальный исследовательский политехнический университет

А. А Южаков

Пермский национальный исследовательский политехнический университет

Список литературы

  1. Распознавание лиц. Новые технологии [Электронный ресурс]. - URL: http://tsb-company.ru/raspoznavanie-lic-novye-texnologii/ (дата обращения: 22.06.2017).
  2. Биометрия по лицу. Критерии выбора программного продукта [Электронный ресурс]. - URL: http://www.algoritm.org/arch/arch. php?id=86&a=2099 (дата обращения: 22.06.2017).
  3. Система распознавания лиц для безопасности Сочи [Электронный ресурс]. - URL: https://www.osp.ru/bvideo/2017/02/13051425.html (дата обращения: 22.06.2017).
  4. Распознавание лиц при помощи видеонаблюдения - автоматизированная безопасность [Электронный ресурс]. - URL: http://arze.ru/ videocontrol/raspoznavanie-lic-cherez-sistemy-videonablyudeniya.html (дата обращения: 22.06.2017).
  5. Распознавание лиц - технология нашего века [Электронный ресурс]. - URL: http://www.itv.ru/experience_the_next_magazine/articles/2250/ (дата обращения: 22.06.2017).
  6. 9 способов использовать технологию распознавания лиц [Электронный ресурс]. - URL: http://ibusiness.ru/blog/future/42164 (дата обращения: 22.06.2017).
  7. Козлов П.В., Липин Ю.Н., Южаков А.А. Алгоритм распознавания лица человека // Вопросы защиты информации. - 2011. - Вып. 1. - С. 52-57.
  8. Козлов П.В., Липин Ю.Н., Южаков А.А. Оценка алгоритма распознавания лица человека // Вопросы защиты информации. - 2013. - Вып. 3. - С. 29-32.
  9. Козлов П.В., Липин Ю.Н., Южаков А.А. Распознавание лица человека // Информационные технологии в науке, образовании, телекоммуникации, бизнесе IT + SE`11: материалы XXXVIII Междунар. конф. и дискуссионного науч. клуба; Украина, Крым, Ялта-Гурзуф, 1-10 октября 2011. - М., 2011.
  10. Face Recognition with OpenCV [Электронный ресурс]. - URL: http://docs.opencv.org/2.4/modules/contrib/doc/facerec/facerec_tutorial.html (дата обращения: 22.06.2017).
  11. Dlib C++ Library [Электронный ресурс]. - URL: dlib.net (дата обращения: 22.06.2017).
  12. Face Recognition Technology (FERET) [Электронный ресурс]. - URL: https://www.nist.gov/programs-projects/face-recognition-technology-feret (дата обращения: 22.06.2017).
  13. Выделение и распознавание лиц [Электронный ресурс]. - URL: http://wiki.technicalvision.ru/index.php/Выделение_и_распознавание_лиц (дата обращения: 22.06.2017).
  14. Сборник задач по математике для втузов. Специальные курсы / под. ред. А.В. Ефимова. - М.: Наука, 1984. - 608 с.
  15. Бронштейн И.Н., Семендяев К.А. Справочник по математике для инженеров и учащихся втузов. - М.: Наука, 1980. - 976 с.
  16. Быстрое преобразование Фурье [Электронный ресурс]. - URL: http://ru.bmstu.wiki/Быстрое_преобразование_Фурье (дата обращения: 22.06.2017).
  17. Быстрое преобразование Фурье за O (N log N). Применение к умножению двух полиномов или длинных чисел [Электронный ресурс]. - URL: http://e-maxx.ru/algo/fft_multiply (дата обращения: 22.06.2017).
  18. Быстрое дискретное преобразование Фурье (БПФ) [Электронный ресурс]. - URL: https://algowiki-project.org/ru/Быстрое_дискретное_преобразование_Фурье_(БПФ) (дата обращения: 22.06.2017).
  19. Быстрое преобразование Фурье [Электронный ресурс]. - URL: https://neerc.ifmo.ru/wiki/index.php?title=Быстрое_преобразование_Фурье (дата обращения: 22.06.2017).
  20. Быстрое преобразование Фурье. Принцип построения [Электронный ресурс]. - URL: http://ru.dsplib.org/content/fft_introduction.html (дата обращения: 22.06.2017).

Статистика

Просмотры

Аннотация - 27

PDF (Russian) - 8

Ссылки

  • Ссылки не определены.

© Ахметзянов К.Р., Сазонов В.И., Липин Ю.Н., Южаков А.А., 2017

Creative Commons License
Эта статья доступна по лицензии Creative Commons Attribution-NonCommercial 4.0 International License.

Данный сайт использует cookie-файлы

Продолжая использовать наш сайт, вы даете согласие на обработку файлов cookie, которые обеспечивают правильную работу сайта.

О куки-файлах