Эффективные алгоритмы идентификации лиц на видео на основе выбора качественных кадров

Архитектуры сверточных нейронных сетей для распознавания лиц. Обзор алгоритмов детектирования лиц и выбора ключевых кадров. Прототип системы идентификации лиц на основе выбора качественных кадров. Изучение графического интерфейса и переноса знаний сети.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 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

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.