ИССЛЕДОВАНИЕ СПОСОБОВ ПОВЫШЕНИЯ БЫСТРОДЕЙСТВИЯ СИСТЕМЫ РАСПОЗНАВАНИЯ ЛИЦ - Студенческий научный форум

XI Международная студенческая научная конференция Студенческий научный форум - 2019

ИССЛЕДОВАНИЕ СПОСОБОВ ПОВЫШЕНИЯ БЫСТРОДЕЙСТВИЯ СИСТЕМЫ РАСПОЗНАВАНИЯ ЛИЦ

Катин О.И. 1, Горянина К.И. 1, Донской Д.Ю. 1
1Донской государственный технический университет
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF

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

В настоящей статье будет рассмотрена система автоматического контроля индивидуального доступа. В данном случае предполагается, что требуется определить личность человека, находящегося непосредственно перед камерой. В таких условиях может быть обеспечено наилучшее качество съемки, так как существует возможность четко определить зону контроля для человека, создать в ней оптимальное освещение и минимизировать влияние посторонних факторов. Большая часть этих решений – аппаратная.

Основное внимание следует сосредоточить на программной части системы. Наиболее распространенным и точным решением является применение нейронной сети, которая имеет оптимальную структуру и обучена на большом наборе качественных данных. Иным способом является применение распознавателей, которые встроены в различные библиотеки компьютерного зрения. Например, библиотека OpenCV содержит 3 распознавателя [1]. Для их обучения также необходим набор данных. Такой подход значительно уступает в точности специально разработанным и обученным нейронным сетям [2].

Во время разработки системы контроля доступа были проведены тесты с использованием встроенного в OpenCV распознавателя LBPHFaceRecognizer.

Число фотографий, шт.

5

10

25

50

100

250

500

750

1000

Точность, %

43.2

46.5

50.3

54

63.7

68.1

72.6

75.2

78.6

Результаты показали, что для достижения высокой точности необходим значительный объем качественных и однородных данных для обучения. При использовании 1000 фотографий, максимальная точность составила 78.6 %. Дальнейшее увеличение базы фотографий не привело к значительному повышению точности. Данную точность можно считать достаточной для тривиальных задач, но ее недостаточно для создания безопасной системы контроля доступа [3, 4].

Было принято решение использовать алгоритм распознавания на базе библиотеки dlib. В его основе лежит нейронная сеть, обученная на наборе из 3-х миллионов фотографий. Заявленная разработчиком точность составляет 99.38% [5, 6]. В рассматриваемом случае, к системе предъявляются следующие требования: высокая точность определения личности человека, проверка наличия доступа в соответствии с базой сотрудников, максимально быстрая реакция системы. Специфика данного решения заключается в работе со специфическим типом данных библиотеки dlib. Для распознавания лица необходимо провести два предварительных этапа.

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

Второй этап – размещение меток на лице. Существуют решения различной вычислительной сложности: 5 меток для одного лица, 68 меток и т.д.

Представленный разработчиком библиотеки dlib алгоритм работает с использованием 5 лицевых меток [5, 6]. Такое решение обладает достаточным быстродействием и не нуждается в замене.

Для уменьшения времени выполнения первого этапа было принято решение использовать встроенный в библиотеку OpenCV детектор лиц на основе каскадов Хаара [3]. Сравнительные тесты показали значительное уменьшение времени на поиск лиц на кадре.

Таблица 1 – сравнение быстродействия детекторов лиц при использовании Raspberry Pi 2B и Pi Cam v2.1

Разрешение кадра

Детектор лиц dlib

Детектор лиц на основе каскадов Хаара

1920х1080

4.8 с

0.7 с

1280х1024

2.7 с

0.29

1024х768

1.8 с

0.12 с

800х600

0.9 с

0.08 с

640х480

0.6 с

0.05 с

Сам же процесс распознавания заключается в построении 128-ми мерного вектора, соответствующего человеку на кадре.

При этом для разрешения доступа требуется, чтобы Евклидово расстояние между полученным вектором и любым вектором , содержащимся в базе сотрудников, было меньше 0.6 [5, 6].

где i – порядковый номер признака,

n = 128,

и - координаты векторов a и b по признаку i.

То есть нейронная сеть построена по принципу соответствия каждому человеку уникального 128-ми мерного вектора. Условие, предъявляемое к Евклидовому расстоянию, позволяет учесть некоторые отклонения, вызванные разным освещением, качеством изображения и положением лица [7]. Время распознавания незначительно изменяется при изменении разрешения.

Там образом, оптимальный набор способов реализации этапов распознавания следующий: применение детектора лиц на основе каскадов Хаара, определение 5-ти лицевых меток, применение нейронной сети для построения 128-ми мерного вектора.

Для создания компактной системы с собственным вычислителем была использована Raspberry Pi 2B. Ведется обработка видео с разрешением 1024х768. При использовании встроенного в библиотеку OpenCV детектора лиц удалось снизить время выполнения первого этапа с 1.8 до 0.12 секунд. Второй этап выполняется за 0.04 секунды. Наиболее долгим этапом является построение 128-ми мерного вектора, его выполнение занимает 2.2 секунды.

Суммарное время обработки кадра и принятия решения о разрешении доступа не превышает 3 секунды. Очевидно, что вычислительные возможности Raspberry Pi 2B ограничены. В определенных условиях может потребоваться большее быстродействие. Тогда, уместным будет использование более производительной Raspberry Pi 3B+ или других интегрируемых решений. Наиболее быстрыми будут системы с производительными графическими процессорами или специализированными модулями для работы с нейронными сетями, например, Intel Movidius.

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

1. Клэр А., Брэдски Г. Изучаем OpenCV 3 / ДМК-Пресс, М., 2017. 826 с.

2. Солем Я. Программирование компьютерного зрения на языке Python. М.: ДМК-Пресс, 2016. 312 с.

3. Буэно Г., Суарес О., Эспиноса А. Обработка изображений с помощью OpenCV. М.: ДМК-Пресс, 2016. 210 с.

4. Oleg Katin, Ksenia Goryanina, Miroslav Vernezi Analysis and solution of problems in the development of automatic color sorting systems / XIV International Scientific-Technical Conference “Dynamic of Technical Systems” (DTS-2018). MATEC Web Conf., 2018

5. O. M. Parkhi, A. Vedaldi, A. Zisserman Deep Face Recognition British Machine Vision Conference, 2015.

6. H. W. Ng, S. Winkler. A data-driven approach to cleaning large face datasets. Proc. IEEE International Conference on Image Processing (ICIP), Paris, France, Oct. 27-30, 2014

7. Katin O.I., Lukyanov A.D., Goryanina K.I. Optimization of the automated colorimetric measurement system for pH of liquid. XIII International Scientific-Technical Conference “Dynamic of Technical Systems” (DTS-2017). MATEC Web Conf. Volume 132, 2017

Просмотров работы: 2