Эффективные алгоритмы идентификации лиц на видео на основе выбора качественных кадров
Архитектуры сверточных нейронных сетей для распознавания лиц. Обзор алгоритмов детектирования лиц и выбора ключевых кадров. Прототип системы идентификации лиц на основе выбора качественных кадров. Изучение графического интерфейса и переноса знаний сети.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 10.08.2020 |
Размер файла | 2,7 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Рис. 17. Зависимость времени прямого прохода сети ResNet-50 от количества кадров: a) результаты на CPU, б) результаты на GPU
3.3 Оценка точности распознавания
А также для чистоты эксперимента из входящей последовательности кадров произвольно выбирается заданное число изображений и подается на вход этапа идентификации лиц.
Одним из важных вопросов в ходе реализации системы идентификации лиц на основе выбора ключевых кадров остается проблема определения оптимального количества K данных изображений. В рамках проведения экспериментальных исследований параметр K рассматривается как некоторая доля кадров от общего числа N, а также как заданная константа.
Рассмотрим результаты тестирования алгоритмов выбора ключевых кадров по каждому из наборов данных.
Набор данных IJB-C
В таблице 4 приведены результаты сравнения алгоритмов выбора ключевых кадров по точности распознавания с помощью СНС модели ResNet-50 [19].
Таблица 4. Точность в % распознавания лиц. Модель ResNet-50
K Алгоритм |
N/2 |
N/4 |
N/8 |
2 |
1 |
|
Baseline |
70.892 |
|||||
Random |
70.341 |
70.178 |
70.196 |
63.168 |
55.767 |
|
K-means |
71.068 |
71.193 |
71.418 |
69.821 |
70.601 |
|
MiniBatchKMeans |
70.887 |
70.975 |
71.262 |
69.641 |
70.507 |
|
Luminance less |
72.365 |
71.216 |
69.917 |
63.948 |
56.709 |
|
Luminance more |
65.775 |
61.724 |
58.098 |
53.766 |
44.313 |
|
Contrast less |
71.749 |
70.679 |
69.437 |
62.825 |
55.455 |
|
Contrast more |
66.483 |
62.975 |
59.895 |
55.698 |
46.433 |
|
Brisque |
70.750 |
68.633 |
66.489 |
59.589 |
51.583 |
|
FaceQNet |
75.759 |
77.411 |
78.499 |
70.801 |
66.504 |
|
FaceQNet mobile |
75.984 |
77.948 |
79.267 |
72.028 |
68.082 |
|
FaceQNet light |
71.888 |
71.524 |
71.649 |
61.733 |
59.171 |
|
FIIQA mobile |
70.969 |
69.591 |
68.268 |
61.959 |
54.383 |
Точность идентификации лиц традиционным подходом по каждому кадру на наборе данных IJB-C [68] составила 71%, что является достаточно высоким показателем в связи с наличием множества сложных изображений. Стоит заметить, что выполнение поиска ключевых кадров методами кластеризации работает примерно с такой же точностью, как и Baseline. Ряд алгоритмов выбора качественных видеоизображений показал свою эффективность, лучшие по точности методы в таблице выделены полужирным. Исходя из полученных результатов, оценка качества кадров с помощью СНС модели FaceQNet и ее модификаций повысила точность идентификации лиц на 7-9% по сравнению с традиционным подходом. Здесь максимальное значение в 79.267% достигнуто посредством самостоятельно обученной методом переноса знаний сети FaceQNet mobile. Более легкая архитектура FaceQNet light дала результаты чуть хуже на 6-7%, однако, точность все равно не уступает традиционному подходу. Для данных моделей было выявлено оптимальное число качественных кадров в размере 1/8 общей последовательности, где средняя продолжительность видео примерно составляет 33 кадра. При этом дальнейшее уменьшение выборки приводит к резкому снижению точности результата.
Неплохие результаты продемонстрировали простые алгоритмы оценки Яркости (1) и Контраста (2) изображений. В рамках исследования был проведен ряд экспериментов варьирования данных метрик. В результате, более темные и менее контрастные изображения лучше всего влияли на точность системы идентификации лиц. Для данных алгоритмов оптимальное число кадров составила половина входящей видеопоследовательности.
При визуальном сравнении кадров, отнесенных алгоритмами к качественным, с остальной последовательностью изображений, наблюдается очевидная разница. На рис. 18 продемонстрированы лучшие кадры, найденные моделью FaceQNet mobile, на фоне худших изображений видеопоследовательности совместно с полученными оценками. Можно заметить, что на кадрах с меньшей мерой качества у классифицируемого объекта лицо расположено в профиль, а также рука закрывает часть лицевой области.
Рис. 18. Оценка качества кадров FaceQnet mobile
Результаты экспериментов по точности идентификации лиц с помощью СНС модели MobileNet-vgg2 [20] продемонстрированы в таблице 5.
Таблица 5. Точность в % распознавания лиц. Модель MobileNet-vgg2
K Алгоритм |
N/2 |
N/4 |
N/8 |
2 |
1 |
|
Baseline |
61.293 |
|||||
Random |
59.378 |
59.230 |
58.988 |
52.257 |
44.980 |
|
K-means |
62.102 |
62.108 |
61.503 |
61.759 |
61.185 |
|
MiniBatchKMeans |
61.996 |
61.927 |
61.422 |
61.528 |
61.185 |
|
Luminance less |
61.131 |
59.760 |
58.299 |
51.989 |
45.092 |
|
Luminance more |
56.314 |
51.673 |
47.937 |
43.284 |
35.004 |
|
Contrast less |
60.740 |
59.120 |
56.790 |
51.128 |
44.138 |
|
Contrast more |
56.963 |
52.726 |
49.411 |
44.787 |
36.482 |
|
Brisque |
60.125 |
57.471 |
55.630 |
49.700 |
41.906 |
|
FaceQNet |
65.127 |
65.631 |
66.532 |
59.689 |
54.532 |
|
FaceQNet mobile |
65.411 |
66.323 |
66.925 |
61.011 |
56.185 |
|
FaceQNet light |
61.373 |
60.537 |
59.313 |
50.751 |
47.525 |
|
FIIQA mobile |
59.259 |
57.516 |
55.900 |
50.349 |
43.552 |
Точность распознавания традиционным подходом с помощью легкой модели MobileNet-vgg2 на наборе изображений IJB-C получилась равной 61%, что на 9% хуже, чем ResNet-50. В результате ряд алгоритмов поиска качественных кадров показал точность ниже по сравнению с рандомным выбором и методами кластеризации. Например, алгоритм Brisque (4) не дал хороших результатов. Также стоит отметить существенное снижение точности при сокращении множества ключевых кадров практически для всех методов.
Лучшие результаты здесь так же достигаются посредством моделей FaceQNet mobile, FaceQNet и FaceQNet light. С помощью метода FaceQNet mobile удалось повысить точность классификации лиц на 5.6% при выборе 1/8 части входной видеопоследовательности.
Оценка Яркости (1) и Контраста (2) по точности примерно на 1% менее эффективна в сравнении с традиционным подходом.
Реализация шага получения векторов-признаков входящих кадров также осуществлялась с помощью модели InsightFace [26]. Результаты экспериментов с учетом алгоритмов выбора ключевых видеоизображений приведены в таблице 6.
Таблица 6. Точность в % распознавания лиц. Модель InsightFace
K Алгоритм |
N/2 |
N/4 |
N/8 |
2 |
1 |
|
Baseline |
69.834 |
|||||
Random |
69.871 |
70.182 |
69.835 |
63.899 |
62.048 |
|
K-means |
64.448 |
64.872 |
67.846 |
69.947 |
70.353 |
|
MiniBatchKMeans |
64.791 |
65.439 |
67.478 |
69.056 |
70.471 |
|
Luminance less |
67.449 |
63.701 |
62.787 |
57.771 |
55.095 |
|
Luminance more |
62. 422 |
60. 785 |
60.837 |
58.966 |
57.254 |
|
Contrast less |
67.893 |
63.906 |
62.682 |
57.895 |
55.962 |
|
Contrast more |
63. 525 |
62.654 |
62.199 |
60. 349 |
58. 415 |
|
Brisque |
70.083 |
67.460 |
65.360 |
59.778 |
57.290 |
|
FaceQNet |
78.853 |
79.236 |
80.686 |
77.604 |
76.825 |
|
FaceQNet mobile |
79.428 |
79.852 |
80.706 |
78.957 |
77.623 |
|
FaceQNet light |
71.984 |
73.046 |
73.012 |
65.752 |
65.752 |
|
FIIQA mobile |
71.750 |
70.764 |
70.113 |
64.511 |
61.711 |
Результат классификации лиц на основании InsightFace традиционным подходом усреднения векторов-признаков кадров равен 69.834%. Можно заметить, увеличение точности на 8-10% при внедрении таких методов оценки качества кадров, как FaceQNet mobile, FaceQNet, FIIQA mobile. При этом простая сеть FaceQNet light показала результаты не хуже традиционного подхода, а в случае выбора K=1/4 множества всех видеоизображений данный метод опережает Baseline на 3.2%.
В данных экспериментах алгоритмы вычисления Яркости (1), Контраста (2), а также Brisque (4) не показали явных улучшений. Они в среднем оказались хуже на 3% традиционного подхода.
Таким образом, исходя из полученных результатов экспериментальных исследований, некоторые алгоритмы выбора качественных кадров действительно способствуют повышению эффективности работы систем распознавания лиц по видео. Методы, основанные на применении технологий глубокого обучения, показали свою эффективность. Так с помощью моделей FaceQNet и более легких ее модификаций удалось достигнуть точности распознавания в среднем на 7-10% выше традиционного подхода. При этом СНС архитектура FaceQNet mobile также обладает преимуществом в производительности, что согласно (7) позволяет явно ускорить работу системы при эксплуатации совместно с глубокой ResNet-50 или InsightFace.
Точность распознавания с помощью менее ресурсоемких алгоритмов вычисления Яркости (1) и Контраста (2) сравнима с традиционным подходом. Однако, определение порога качества в данном случае обычно происходит эмпирическим путем, что накладывает существенные ограничения.
Сложный метод Brisque (4) не показал преимуществ ни по производительности, ни по точности осуществления поиска качественных кадров.
Набор данных YouTube Faces
Эксперименты по анализу эффективности предложенных алгоритмов также были проведены на наборе данных YouTube Faces [69]. В таблице 7 продемонстрированы результаты точности идентификации лиц с помощью модели ResNet-50. Подход сравнения алгоритмов поиска ключевых кадров остается прежним.
Таблица 7. Точность в % распознавания лиц. Модель ResNet-50
K Алгоритм |
N/2 |
N/4 |
N/8 |
2 |
1 |
|
Baseline |
83.499 |
|||||
Random |
83.346 |
83.346 |
83.040 |
80.748 |
78.838 |
|
K-means |
83.499 |
83.575 |
83.575 |
83.728 |
83.498 |
|
MiniBatchKMeans |
83.498 |
83.651 |
83.881 |
83.881 |
83.498 |
|
Luminance less |
82.671 |
82.213 |
81.068 |
78.320 |
74.809 |
|
Luminance more |
76.121 |
75.828 |
74.803 |
72.708 |
70. 956 |
|
Contrast less |
82.977 |
82.061 |
80.611 |
78.473 |
75.725 |
|
Contrast more |
77.711 |
76.065 |
75.938 |
74.870 |
73.854 |
|
Brisque |
82.988 |
82.921 |
80.188 |
79.854 |
79.065 |
|
FaceQNet |
84.141 |
86.452 |
85.915 |
81.770 |
81.314 |
|
FaceQNet mobile |
85.397 |
86.249 |
86.790 |
82.877 |
80.658 |
|
FaceQNet light |
80.803 |
81.540 |
80.524 |
79.188 |
78.295 |
|
FIIQA mobile |
83.435 |
82.975 |
82.055 |
78.834 |
77.147 |
Согласно представленным результатам свою эффективность показал метод оценки качества с помощью легкой архитектуры FaceQNet mobile. Точность данного алгоритма превышает традиционный подход на 3.3%. Осуществление выбора ключевых кадров посредством FIIQA mobile по точности достигает Baseline. Простые алгоритмы оценки Яркости (1) и Контраста (2) менее эффективны для исследуемого набора данных.
В таблице 8 продемонстрированы результаты точности идентификации для модели MobileNet.
Таблица 8. Точность в % распознавания лиц. Модель MobileNet-vgg2
K Алгоритм |
N/2 |
N/4 |
N/8 |
2 |
1 |
|
Baseline |
68.330 |
|||||
Random |
67.759 |
67.523 |
67.511 |
65.791 |
63.652 |
|
K-means |
69.440 |
68.994 |
68.228 |
68.101 |
68.002 |
|
MiniBatchKMeans |
68.893 |
68.905 |
68.562 |
67.391 |
67.127 |
|
Luminance less |
67.771 |
67.762 |
66.598 |
65.879 |
65.463 |
|
Luminance more |
62.059 |
61.942 |
61.779 |
60.943 |
59.487 |
|
Contrast less |
67.742 |
66.503 |
66.185 |
66.022 |
64.171 |
|
Contrast more |
63.313 |
63.217 |
60.832 |
60.779 |
59.050 |
|
Brisque |
68.233 |
67.099 |
66.846 |
65.630 |
64.590 |
|
FaceQNet |
70.988 |
71.882 |
71.750 |
69.880 |
68.706 |
|
FaceQNet mobile |
71.912 |
71.984 |
72.108 |
70.178 |
69.013 |
|
FaceQNet light |
69.984 |
68.649 |
69.127 |
67.071 |
66.921 |
|
FIIQA mobile |
68.668 |
67.786 |
67.315 |
66.810 |
66.882 |
Можно отметить, уменьшение количества ключевых кадров, по которым происходит распознавание, в целом приводит к значительному снижению точности результатов. Согласно таблице 8 оптимальное значение для данного параметра составляет N/2, N/4 от общего числа видеоизображений в зависимости от алгоритма.
Анализ точности распознавания для модели InsightFace представлена в таблице 9.
Таблица 9. Точность в % распознавания лиц. Модель InsightFace
K Алгоритм |
N/2 |
N/4 |
N/8 |
2 |
1 |
|
Baseline |
80. 854 |
|||||
Random |
79.198 |
79.082 |
79.001 |
77.996 |
75.823 |
|
K-means |
79.672 |
80.135 |
80.102 |
80.010 |
78.890 |
|
MiniBatchKMeans |
80.111 |
80.264 |
79.696 |
79.082 |
79.054 |
|
Luminance less |
78.467 |
77.265 |
77.245 |
76.624 |
74.058 |
|
Luminance more |
71.120 |
70.825 |
71.740 |
68.985 |
68.775 |
|
Contrast less |
79.532 |
78.984 |
77.416 |
77.261 |
75.379 |
|
Contrast more |
70.373 |
70.234 |
69.707 |
67.486 |
66.075 |
|
Brisque |
79.257 |
79.294 |
79.139 |
77.417 |
76.633 |
|
FaceQNet |
81.988 |
82.225 |
82.824 |
81.270 |
80.002 |
|
FaceQNet mobile |
81.792 |
83.323 |
84.002 |
80.654 |
80.325 |
|
FaceQNet light |
79.516 |
80.256 |
79.937 |
78.729 |
77.846 |
|
FIIQA mobile |
79.750 |
78.596 |
77.065 |
76.806 |
74.980 |
Таким образом, стоит отметить, что и для набора данных YouTube Faces лучшими по точности результата алгоритмами являются технологии глубокого обучения, а именно модель FaceQNet и ее «легкие» модификации. В целом, удалось достичь повышения точности идентификации на 3-5% для всех моделей извлечения векторов-признаков. Менее эффективными оказались простые методы оценки Яркости (1), Контраста (2), Brisque (4), которые работают непосредственно с матрицей пикселей изображения.
Заключение
Данная работа посвящена исследованию эффективных методов идентификации лиц по видео на основе выбора качественных кадров. Проведен теоретический анализ современных «state-of-the-art» публикаций по теме систем распознавания, а также поиска ключевых видеоизображений. Описанные алгоритмы применены в рамках экспериментальных исследований. Рассмотрен ряд моделей сверточных нейронных сетей для извлечения признаков входящих изображений. Также в работе применены как традиционные методы оценки качества кадров на основе Яркости (1), Контраста (2), так и технологии глубокого обучения. В результате было обучено несколько легких СНС моделей методами «тонкой настройки» и «дистилляции знаний» в целях более эффективного осуществления оценки качества кадров. Произведено сравнение предложенных алгоритмов с традиционным подходом распознавания лиц по каждому кадру, а также известными методами кластеризации. Приведена общая схема прототипа разрабатываемой системы с учетом полученных результатов (рис. 11). Открытый исходный код по материалам исследования можно найти на сервисе GitHub в репозитории [70].
Результаты экспериментальных исследований продемонстрировали улучшение надежности алгоритма идентификации лиц по видео с применением методов оценки качества кадров. Представлен сравнительный анализ ряда подходов выявления ключевых кадров по качеству, а именно вычисления Яркости (1), Контраста (2), Brisque (4) и моделей глубокого обучения FaceQnet, FaceQnet mobile, FaceQnet light [44]. Доказано, применение быстрых методов оценки изображений ведет к снижению времени прямого прохода через сверточную нейронную сеть за счет сокращения множества рассматриваемых кадров (7). Также в результате, удалось достигнуть увеличения точности идентификации лиц в среднем на 8-10% с помощью моделей FaceQnet, FaceQnet mobile, FaceQnet light.
Таким образом, в результате проделанной работы можно сделать вывод о том, что цель исследования достигнута, и все поставленные задачи выполнены:
Проведен обзор алгоритмов распознавания лиц по видеопоследовательности. Показано преимущество реализации архитектур сверточных нейронных сетей.
Рассмотрены существующие подходы извлечения ключевых кадров с акцентированием особого внимания на методы оценки качества изображения лица.
Предложена общая схема алгоритма идентификации лиц по видео, включающая дополнительный шаг поиска качественных кадров для повышения стабильности работы системы.
Обучен ряд легких СНС архитектур методом дистилляции знаний в целях повышения эффективности выполнения идентификации лиц.
Проведен ряд экспериментальных исследований по анализу производительности и точности разработанного подхода с помощью наборов данных IJB-C, YouTube Faces. Показано, что наиболее эффективным методом оценки качества является применение СНС модели FaceQnet mobile, с помощью которой удалось достигнуть повышения точности распознавания на 10% моделей ResNet-50, InsightFace.
Исследование поиска эффективных алгоритмов идентификации лиц не останавливается на достигнутом. В будущем планируется рассмотреть еще больше методов оценки качества кадров, а также произвести сравнение подходов с технологией сверточных нейронных сетей на основе внимания [71]. Дополнительно планируется учитывать полученные веса качества изображения в процессе агрегации векторов-признаков изображений в рамках видеопоследовательности. Стоит отметить возможность реализации предложенной системы рис.11 в качестве решения Face ID для современных мобильных устройств.
Исследование было проведено в рамках научно-учебной группы «Анализ мультимедийных данных пользователей мобильных устройств» [74].
Список литературы
1. Nikitin, M. Face quality assessment for face verification in video / M. Nikitin, V. Konushin, A. Konushin// “Графикон” - 111-114 pp. - 2014.
2. Savchenko, A.V. Search techniques in intelligent classification systems. / A.V. Savchenko // Springer International Publishing, 2016.
3. Schmidhuber, J. Deep learning in neural networks: An overview / J. Schmidhuber // Neural Networks. - 2015. - Т. 61. - 85-117 p.
4. Bud, A. Facing the future: The impact of Apple FaceID / A. Bud // Biometric Technology Today. - 5-7 pp. - 2018.
5. Samaria, F. S. Parameterisation of a stochastic model for human face identification / F. S. Samaria, A. C. Harter // Proceedings of 1994 IEEE workshop on applications of computer vision. - IEEE - 138-142 pp. - 1994.
6. Guillaumin, M. Is that you? Metric learning approaches for face identification / M. Guillaumin, J. Verbeek, C. Schmid // 2009 IEEE 12th international conference on computer vision. - IEEE - 498-505 pp. - 2009.
7. Ranjan, R. et al. A fast and accurate system for face detection, identification, and verification //IEEE Transactions on Biometrics, Behavior, and Identity Science. -82-96 pp. - 2019.
8. Zhao, W.Y. Face recognition: A literature survey / W. Y. Zhao // AaCM computing surveys (CSUR). - 2003. - Т. 35. - №. 4. - 399-458 pp.
9. Kharchevnikova, A. S. Neural networks in video-based age and gender recognition on mobile platforms. / A.S. Kharchevnikova, A. V. Savchenko //Optical Memory and Neural Networks, 27(4), 246-259 pp. - 2018.
10. Харчевникова А.C., Савченко А.В. Сверточные нейронные сети в задаче распознавания пола и возраста по видеоизображению // Информационные Технологии и Нанотехнологии. IV Международная конференция и молодёжная школа. Самарский национальный исследовательский университет имени академика С.П. Королева (Самарский университет). Самара - 2018 - С. 916-924.
11. Parmar, D. N. Face recognition methods & applications. / D. N. Parmar, B. B. Mehta // arXiv preprint arXiv:1403.0485, 2014.
12. Yang, J. et al. Two-dimensional PCA: a new approach to appearance-based face representation and recognition // IEEE transactions on pattern analysis and machine intelligence 26.1 - 131-137 pp. - 2004.
13. Belhumeur, P. N., Eigenfaces vs. fisherfaces: Recognition using class specific linear projection / P. N. Belhumeur, J. P. Hespanha, D. J. Kriegman D // IEEE Transactions on pattern analysis and machine intelligence. - 711-720 pp. - 1997.
14. Parkhi, O. M. Deep Face Recognition. / A. Vedaldi, A. Zisserman // InBMVC Vol. 1 - No. 3 - 6 pp. - 2015.
15. Goodfellow, I. Deep learning. / Goodfellow, I., Bengio Y., Courville A. // MIT Press - 2016.
16. Krizhevsky, A. Imagenet classification with deep convolutional neural networks / Krizhevsky A., Sutskever I., Hinton G. E. //Advances in neural information processing systems. - 1097-1105 pp. - 2012.
17. LeCun, Y. Deep learning / LeCun Y, Bengio Y., Hinton G. // Nature. - Т. 521. - №. 7553. - 436-444 pp - 2015.
18. Szegedy, C. Going deeper with convolutions / C. Szegedy // Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. - 1-9 pp. - 2015.
19. He, K. Deep residual learning for image recognition / K. He // Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. -770-778 pp. - 2016.
20. Howard, A. Mobilenets: Efficient convolutional neural networks for mobile vision applications / A. Howard //arXiv preprint arXiv:1704.04861. - 2017.
21. Taigman, Y. Deepface: Closing the gap to human-level performance in face verification. / Y. Taigman, M. Yang, M. A. Ranzato, L. Wolf // In Proceedings of the IEEE conference on computer vision and pattern recognition - 1701-1708 pp. - 2014.
22. Huang, G. B. et al. Labeled faces in the wild: A database forstudying face recognition in unconstrained environments. - 2008.
23. Taigman, Y. et al. Web-scale training for face identification //Proceedings of the IEEE conference on computer vision and pattern recognition. -2746-2754 pp. - 2015.
24. Sun, Y. Deep learning face representation by joint identification-verification. / Y. Sun, Y. Chen, X. Wang, X. Tang // In Advances in neural information processing systems - 1988-1996 pp. - 2014.
25. Schroff, F. Facenet: A unified embedding for face recognition and clustering / F. Schroff, D. Kalenichenko, J. Philbin //Proceedings of the IEEE conference on computer vision and pattern recognition. - 815-823 pp. - 2015.
26. Deng, J. Arcface: Additive angular margin loss for deep face recognition. / J. Deng, J. Guo, N. Xue, S. Zafeiriou // In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition 4690-4699 pp. - 2019.
27. Патент RU (11) 2706960 (13) C1. Одновременное распознавание атрибутов лиц и идентификации личности при организации фотоальбомов / Автор: Савченко Андрей Владимирович (RU), Патентообладатель: САМСУНГ ЭЛЕКТРОНИКС КО., ЛТД. (KR) Заявка: 2018143163 от 06.12.2018. Опубликовано: 14.01.2020 Бюл. № 2.
28. Cao, Q. et al. Vggface2: A dataset for recognising faces across pose and age //2018 13th IEEE International Conference on Automatic Face & Gesture Recognition (FG 2018). - IEEE, 2018. - 67-74 pp. - 2018.
29. Savchenko A.V. Efficient facial representations for age, gender and identity recognition in organizing photo albums using multi-output ConvNet. PeerJ Computer Science, 2019, 5:e197 DOI 10.7717/peerj-cs.197.
30. Guo Y. et al. Ms-celeb-1m: A dataset and benchmark for large-scale face recognition //European conference on computer vision. - Springer, Cham, - 87-102 pp. - 2016.
31. Viola, P. Robust real-time face detection / P. Viola, M. J. Jones // International Journal of Computer Vision, vol. 57, no. 2. - 2004.
32. Yang, B. Aggregate channel features for multi-view face detection // IEEE international joint conference on biometrics. - IEEE, 1-8 pp. - 2014.
33. Zhu, Q., Fast human detection using a cascade of histograms of oriented gradients. / Q. Zhu, M. C. Yeh, K. T. Cheng, S. Avidan // In 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'06) - Vol. 2 - 1491-1498 pp. IEEE. - 2006.
34. Mathias, M. Face detection without bells and whistles // European conference on computer vision. - Springer, Cham, 720-735 pp. - 2014.
35. Jiang, H. Face detection with the faster R-CNN / H. Jiang, E. Learned-Miller // 2017 12th IEEE International Conference on Automatic Face & Gesture Recognition (FG 2017). - IEEE - 650-657 pp. - 2017.
36. Sun, X. Face detection using deep learning: An improved faster RCNN approach / X. Sun, P. Wu, S. Hoi // Neurocomputing. 42-50 pp. - 2018.
37. Redmon, J. et al. You only look once: Unified, real-time object detection // Proceedings of the IEEE conference on computer vision and pattern recognition. - 779-788 pp. - 2016.
38. Liu, W. et al. Ssd: Single shot multibox detector //European conference on computer vision. - Springer, Cham, - 21-37 pp. - 2016.
39. Deng, J. et al. Retinaface: Single-stage dense face localisation in the wild //a rXiv preprint arXiv:1905.00641. - 2019.
40. Zhang, K. et al. Joint face detection and alignment using multitask cascaded convolutional networks // IEEE Signal Processing Letters. - 1499-1503pp. - 2016.
41. Dhamecha, T. I. On frame selection for video face recognition. / T. I. Dhamecha, G. Goswami, R. Singh, M. Vatsa, M. // In Advances in Face Detection and Facial Image Analysis. Springer, Cham - 279-297 pp. - 2016.
42. Abdenour, H. Selecting models from videos for appearance-based face recognition / H. Abdenour, M. Pietikainen // Proceedings of the 17th International Conference on Pattern Recognition, 2004. ICPR Vol. 1. IEEE - 2004.
43. Saeed, U. Temporally consistent key frame selection from video for face recognition / U. Saeed, J. L. Dugelay // 18th European Signal Processing Conference. - IEEE - 1311-1315 pp. - 2010.
44. Hernandez-Ortega, J. FaceQnet: Quality Assessment for Face Recognition based on Deep Learning. / J. Hernandez-Ortega, J. Galbally, J. Fierrez, R. Haraksim, L. Beslay // arXiv preprint arXiv:1904.01740. - 2019.
45. Ferrara, M. et al. Face image conformance to iso/icao standards in machine readable travel documents //IEEE Transactions on Information Forensics and Security. - 1204-1213 pp. - 2012.
46. Best-Rowden, L. Learning face image quality from human assessments //IEEE Transactions on Information Forensics and Security. - 3064-3077 pp. - 2018.
47. Alonso-Fernandez, F. Quality measures in biometric systems / F. Alonso-Fernandez, J. Fierrez, J. Ortega-Garcia //IEEE Security & Privacy. Т. 10. - 52-62 pp. - 2011.
48. Nasrollahi, K. Face quality assessment system in video sequences / K. Nasrollahi, T. B. Moeslund // European Workshop on Biometrics and Identity Management. - Springer, Berlin, Heidelberg - 10-18 pp. - 2008.
49. Chen, J. Face image quality assessment based on learning to rank. / J. Chen, Y. Deng, G. Bai, G. Su // IEEE signal processing letters, 22(1), 90-94 pp. - 2014.
50. Qi, X. CNN based key frame extraction for face in video recognition / X. Qi, C. Liu, S. Schuckers // IEEE 4th International Conference on Identity, Security, and Behavior Analysis (ISBA). - IEEE - 1-8 pp. - 2018.
51. Qi, X. Boosting face in video recognition via cnn based key frame extraction / X. Qi, C. Liu, S. Schuckers // International Conference on Biometrics (ICB). - IEEE - 132-139 pp. - 2018.
52. Yang, J. et al. Neural aggregation network for video face recognition //Proceedings of the IEEE conference on computer vision and pattern recognition. - 4362-4371 pp. - 2017.
Приложение
Код обучения модели СНС методом «переноса знаний»
def create_student_model():
base_model = mobilenet.MobileNet(include_top=False, weights='imagenet', input_shape=(224, 224, 3))
x = GlobalAveragePooling2D(name='reshape_2')(base_model.output)
base_layer_extra1 = Dense(32, input_dim=32, kernel_regularizer=l2(4e-5), activation='relu')(x)
base_main_output = Dense(1, kernel_initializer='normal')(base_layer_extra1)
model = Model(base_model.input, base_main_output)
return model
def train_student_teacher():
teacher_preds_path_train = './Face_Image_Quality_Assessment/face_qnet_resnet_main_output.csv' teacher_preds_path_val = './Face_Image_Quality_Assessment/face_val_qnet_resnet_main_output.csv' teacher_preds_train = load_teacher_preds(teacher_preds_path_train)
teacher_preds_val = load_teacher_preds(teacher_preds_path_val)
teacher_train_dataset = load_teacher_train_dataset(teacher_preds_path_train) teacher_val_dataset = load_teacher_train_dataset(teacher_preds_path_val)
train_features_len = len(teacher_train_dataset) val_features_len = len(teacher_val_dataset) train_df = create_train_generator(teacher_train_dataset, teacher_preds_train) val_df = create_train_generator(teacher_val_dataset, teacher_preds_val) train_datagen = ImageDataGenerator(shear_range=0.3, # 0.2 rotation_range=10, zoom_range=0.2, # 0.1 width_shift_range=0.1, eight_shift_range=0.1, horizontal_flip=True, preprocessing_function=preprocess_input) val_datagen = ImageDataGenerator(preprocessing_function=preprocess_input) train_generator = train_datagen.flow_from_dataframe( train_df, x_col="filename",
y_col="preds",
target_size=TARGET_SIZE,
batch_size=BATCH_SIZE,
class_mode='raw')
val_generator = val_datagen.flow_from_dataframe( val_df,
x_col="filename",
y_col="preds",
target_size=TARGET_SIZE,
batch_size=BATCH_SIZE,
class_mode='raw')
# student_model = create_student_model() student_model = create_student_model_small() opt = Adam(lr=1e-3, decay=1e-5) student_model.compile(loss=regr_logloss, optimizer=opt, metrics=['mse', 'mae'])
filepath = 'mobilenet_faceqnet' last_path = '-{epoch:02d}-{val_loss:.4f}.hdf5' checkpoint = ModelCheckpoint(filepath + last_path, monitor='val_loss', verbose=1, save_best_only=True, mode='auto') es = EarlyStopping(monitor='val_loss', patience=3) callbacks = [checkpoint, es] history = student_model.fit_generator( train_generator, steps_per_epoch=math.ceil(train_features_len / BATCH_SIZE),
epochs=50,
validation_data=val_generator,
validation_steps=math.ceil(val_features_len / BATCH_SIZE),
callbacks=callbacks)
hist = pd.DataFrame(history.history)
hist.to_csv('faceqnet_history_small.csv')
student_model.save(filepath + '.hdf5')
Код обучения модели СНС методом «тонкой настройки»
def train_tune_model():
model, base_model = model_architecture(CLASSES_NUM)
train_batch_size = val_batch_size = 32
num_layers_to_freeze = len(base_model.layers)
# Freeze layers
for l in model.layers[:num_layers_to_freeze]:
l.trainable = False
train_imgs, train_labels = parse_dataset()
train_features_len = len(train_imgs)
test_imgs, test_labels = parse_dataset(train=False)
test_features_len = len(test_imgs)
target_size = (input_height, input_width)
train_df = get_dataframe_generator(train_imgs, train_labels)
test_df = get_dataframe_generator(test_imgs, test_labels)
train_datagen = ImageDataGenerator(shear_range=0.3, # 0.2
rotation_range=10,
zoom_range=0.2, # 0.1
width_shift_range=0.1,
height_shift_range=0.1,
horizontal_flip=True,
preprocessing_function=preprocess_input)
test_datagen = ImageDataGenerator(preprocessing_function=preprocess_input)
train_generator = train_datagen.flow_from_dataframe( train_df,
target_size=target_size,
batch_size=train_batch_size)
test_generator = test_datagen.flow_from_dataframe(
test_df,
target_size=target_size,
batch_size=val_batch_size)
opt = Adam(lr=1e-3, decay=1e-5)
model.compile(loss=loss_func, optimizer=opt, metrics=[metric])
filepath = 'mobilenet_vgg2_fiiqa'
last_path = '-{epoch:02d}-{val_acc:.2f}.hdf5'
checkpoint = ModelCheckpoint(filepath + last_path, monitor=monitor, verbose=1, save_best_only=True, mode='auto')
es = EarlyStopping(monitor='val_acc', patience=2)
callbacks = [checkpoint, es]
history = model.fit_generator(
train_generator,
steps_per_epoch=math.ceil(train_features_len / train_batch_size),
epochs=epochs_num,
validation_data=test_generator,
validation_steps=math.ceil(test_features_len / val_batch_size),
callbacks=callbacks)
# Unfreeze layers and tune all
for l in model.layers[:num_layers_to_freeze]:
l.trainable = True
for l in model.layers[num_layers_to_freeze:]:
l.trainable = True
model.compile(loss=loss_func, optimizer=opt, metrics=[metric])
filepath = 'mobilenet_vgg2_fiiqa_finetuned'
last_path = '-{epoch:02d}-{val_acc:.2f}.hdf5'
checkpoint = ModelCheckpoint(filepath + last_path, monitor=monitor, verbose=1, save_best_only=True, mode='auto')
es = EarlyStopping(monitor='val_acc', patience=2)
callbacks = [checkpoint, es]
history = model.fit_generator(
train_generator,
steps_per_epoch=math.ceil(train_features_len / train_batch_size),
epochs=epochs_num,
validation_data=test_generator,
validation_steps=math.ceil(test_features_len / val_batch_size),
callbacks=callbacks)
model.save(filepath + '.hdf5')
Размещено на Allbest.ru
...Подобные документы
Искусственные нейронные сети как одна из широко известных и используемых моделей машинного обучения. Знакомство с особенностями разработки системы распознавания изображений на основе аппарата искусственных нейронных сетей. Анализ типов машинного обучения.
дипломная работа [1,8 M], добавлен 08.02.2017Способы применения технологий нейронных сетей в системах обнаружения вторжений. Экспертные системы обнаружения сетевых атак. Искусственные сети, генетические алгоритмы. Преимущества и недостатки систем обнаружения вторжений на основе нейронных сетей.
контрольная работа [135,5 K], добавлен 30.11.2015Описание экспертной системы по подбору кадров. Требования к функциональным характеристикам программы. Состав и параметры технических средств ЭВМ. Структура входных данных. Руководство программиста и пользователя. Тестирование программного средства.
курсовая работа [897,0 K], добавлен 13.11.2016Исследование эффективности применения нейронных сетей в рамках отношений между людьми. Принцип работы с нейросимулятором. Составление обучающей выборки и проектирование персептронов. Анализ выбора супружеской пары с использованием нейросетевых технологий.
презентация [150,8 K], добавлен 19.08.2013Математические модели, построенные по принципу организации и функционирования биологических нейронных сетей, их программные или аппаратные реализации. Разработка нейронной сети типа "многослойный персептрон" для прогнозирования выбора токарного станка.
курсовая работа [549,7 K], добавлен 03.03.2015Обзор основных алгоритмов и методов распознавания лиц. Архитектура средств динамического отслеживания лиц в видеопоследовательности. Результаты тестирования на больших объемах видеоданных. Разработка алгоритмов и методов динамического отслеживания лиц.
дипломная работа [5,9 M], добавлен 20.07.2014Изучение методов разработки систем управления на основе аппарата нечеткой логики и нейронных сетей. Емкость с двумя клапанами с целью установки заданного уровня жидкости и построение нескольких типов регуляторов. Проведение сравнительного анализа.
курсовая работа [322,5 K], добавлен 14.03.2009Проектирование функционального модуля по учету кадров на предприятии в отделе кадров. Анализ предметной области. Создание документа, формально определяющего существование проекта, то есть технического задания на проект фрагмента информационной системы.
курсовая работа [2,2 M], добавлен 11.12.2012Изучение принципов построения локальных вычислительных сетей. Обоснование выбора сетевой архитектуры для компьютерной сети, метода доступа, топологии, типа кабельной системы, операционной системы. Управление сетевыми ресурсами и пользователями сети.
курсовая работа [1,8 M], добавлен 25.04.2016Нейронные сети как средство анализа процесса продаж мобильных телефонов. Автоматизированные решения на основе технологии нейронных сетей. Разработка программы прогнозирования оптово-розничных продаж мобильных телефонов на основе нейронных сетей.
дипломная работа [4,6 M], добавлен 22.09.2011Сравнительный анализ различных топологий сетей. Исследование элементов структурированной кабельной системы. Методы доступа и форматы кадров технологии Ethernet. Локальные сети на основе разделяемой среды: технология TokenRing, FDDI, Fast Ethernet.
курсовая работа [1,2 M], добавлен 19.12.2014Рост активности в области теории и технической реализации искусственных нейронных сетей. Основные архитектуры нейронных сетей, их общие и функциональные свойства и наиболее распространенные алгоритмы обучения. Решение проблемы мертвых нейронов.
реферат [347,6 K], добавлен 17.12.2011- Разработка алгоритмов и программ для определения сходства семантических сетей на основе их сложности
Семантические сети как модели представления знаний. Основные методы определения сходства графовых моделей систем. Метод решения задач определения сходства семантических сетей на основе их сложности. Разработка алгоритмов и их программная реализация.
дипломная работа [1,3 M], добавлен 17.12.2011 Анализ предметной области. Технико-экономическое обоснование разработки программного обеспечения информационной системы отдела кадров. Проектирование пользовательского интерфейса. Оптимизация параметров микроклимата помещений, оборудованных ПЭВМ.
дипломная работа [6,8 M], добавлен 16.01.2015Подсистема анализа изображения отпечатка пальца в составе системы идентификации личности по отпечаткам пальцев на основе папиллярного узора для дальнейшего распознавания личности. Характеристика функциональных возможностей системы и код програмы.
дипломная работа [3,1 M], добавлен 01.07.2008Создание титров с использованием видео-редактора Sony Vegas Pro 10.0 и графического редактора. Придание способности двигаться и видимости жизни объектам. Анимация в среде 3D Studio Max 2010. Воспроизведение визуализированной последовательности кадров.
курсовая работа [2,0 M], добавлен 17.01.2013Анализ работы отдела кадров и систематизация предъявляемых требований для Автоматизированной системы "Отдел кадров". Оценка возможности реализации системы в среде MS Access в соответствии с требованиями, ее разработка и экономическое обоснование.
дипломная работа [1,2 M], добавлен 28.06.2010Сущность и экономическое обоснование, методы и подходы к прогнозированию валютного курса. Описание технологии интеллектуальных вычислений. Применение генетических алгоритмов для настройки архитектуры нейронных сетей. Основные способы улучшения модели.
курсовая работа [1,3 M], добавлен 26.03.2016Теоретические основы сверточных нейронных сетей. Исследование зависимости качества работы сети от изменения различных характеристик. Сравнение результатов работы сетей типа многослойный персептрон в определении пола и возраста человека по фотографии лица.
курсовая работа [2,5 M], добавлен 18.07.2014Первое систематическое изучение искусственных нейронных сетей. Описание элементарного перцептрона. Программная реализация модели распознавания графических образов на основе перцептрона. Интерфейс программы, основные окна. Составление алгоритма приложения.
реферат [100,5 K], добавлен 18.01.2014