Обнаружение лиц является фундаментальной задачей компьютерного зрения с приложениями в области наблюдения, взаимодействия человека с компьютером и биометрических систем. В то время как многие алгоритмы хорошо работают в идеальных условиях, обнаружение лиц с частичным перекрытием, таким как маски, шарфы, солнцезащитные очки или руки, остается серьезной проблемой. В таких случаях ключевые черты лица могут быть скрыты, что приводит к пропуску обнаружения или ложным срабатываниям обычных моделей. Классические детекторы, такие как Виола-Джонс [1], хотя и эффективны для задач реального времени, страдают от снижения производительности, когда лица частично закрыты [2]. Последние достижения в области глубокого обучения, в частности детекторы на основе CNN, такие как MTCNN [3], SSD [4] и YOLO [5], улучшили точность в общих настройках. Однако эти модели могут испытывать трудности с окклюзиями, если они специально не обучены на таких случаях. Кроме того, они часто требуют больших вычислительных ресурсов, что ограничивает их развертывание в реальном времени или в средах с ограниченными ресурсами.
Для решения этих проблем в данной статье предлагается гибридная двухэтапная структура обнаружения лиц, адаптированная для сценариев с окклюзией. Система сначала использует быстрый алгоритм Виолы-Джонса для генерации кандидатов областей лица, которые затем проверяются специальным классификатором CNN, разработанным для устойчивости к окклюзии. Объединяя сильные стороны классических методов и методов глубокого обучения, предложенный подход повышает точность обнаружения при сохранении практической эффективности. В следующих разделах рассматриваются связанные работы, описывается гибридная методология, представлены экспериментальные результаты и делается заключение с обсуждением будущих направлений.
Обнаружение лиц является основополагающей задачей в компьютерном зрении, играющей важную роль в наблюдении, биометрической аутентификации и взаимодействии человека с компьютером. В то время как многие методы достигают высокой точности в нормальных условиях, окклюзия остается постоянной проблемой [6][7]. Когда лица частично скрыты объектами, такими как маски, очки или руки, точность обнаружения значительно снижается [8]. В этом разделе рассматриваются основные методы, используемые при обнаружении перекрытых лиц, их сильные стороны и ограничения.
Алгоритм Виолы-Джонса является одним из самых ранних детекторов лиц в реальном времени. Он использует признаки Хаара с AdaBoost для эффективного обнаружения лиц [9]. Однако он плохо работает на перекрытых лицах из-за зависимости от полной фронтальной видимости [10]. Таблица 1 представляет точность обнаружения алгоритма Виолы-Джонса на двух наборах данных с перекрытыми лицами. Он демонстрирует сниженную производительность при обнаружении лиц, скрытых такими предметами, как солнцезащитные очки, руки, шарфы или маски, с точностью 68,2% (FDDB) и 63,7% (COFW).
| Набор данных | Тип окклюзии | Точность обнаружения (%) |
|---|---|---|
| FDDB | Солнцезащитные очки, Руки | 68.2 |
| COFW | Шарфы, Маски | 63.7 |
Виола и Джонс ввели концепцию каскадных классификаторов [11], что значительно сократило время вычислений, но не обеспечило устойчивости к частичным перекрытиям.
Методы глубокого обучения, такие как Multi-task Cascaded Convolutional Networks (MTCNN), YOLO (You Only Look Once) и SSD (Single Shot MultiBox Detector), значительно улучшили точность обнаружения лиц [12]. Эти модели автоматически изучают иерархические признаки из данных и обрабатывают вариации в позе, масштабе и фоне. Однако окклюзия остается проблемой, особенно когда модели не обучены на наборах данных, богатых окклюзиями [13]. Чжан и др. [14] предложили MTCNN для одновременного обнаружения и локализации ключевых точек лица, как показано в Таблице 2. YOLOv3 [15] расширил общее обнаружение объектов на обнаружение лиц, показав улучшенную производительность в реальном времени [16].
| Модель | FPS (GPU) | Точность при окклюзии (%) | Размер модели |
|---|---|---|---|
| MTCNN | ~14 | 85.6 | 78 MB |
| YOLOv3 | ~45 | 87.2 | 236 MB |
| SSD | ~22 | 83.9 | 95 MB |
Вышеприведенная Таблица 2 сравнивает детекторы лиц на основе CNN (MTCNN, YOLOv3, SSD) на перекрытых лицах, выделяя их скорость на GPU (FPS), точность и размер модели. YOLOv3 достигает наивысшей точности (87,2%) и самой быстрой скорости, но требует наибольшего размера модели (236 МБ).
Для улучшения производительности в сценариях с окклюзией исследователи внедрили архитектуры, учитывающие окклюзию. Частичные CNN (Part-based CNNs) и механизмы внимания доказали свою эффективность в обнаружении видимых компонентов лица и выводе скрытых. Ван и др. [17] разработали частичную CNN, которая обнаруживает отдельные области лица, такие как глаза и нос, и реконструирует наличие полного лица. Чжан и др. [18] создали синтетические наборы данных с окклюзией для обучения своих моделей, улучшив обобщение. Таблица 3 описывает стратегии улучшения обнаружения лиц при окклюзии. Частичные CNN и аугментация данных высокоэффективны, в то время как механизмы внимания обеспечивают умеренное улучшение, фокусируясь на видимых областях лица.
| Стратегия | Описание | Эффективность |
|---|---|---|
| Механизм внимания | Фокусируется на информативных видимых областях | Умеренная |
| Аугментация данных | Добавляет синтетические окклюзии во время обучения | Высокая |
| Частичная CNN (Part-based) | Обнаруживает части лица независимо | Высокая |
Гибридные модели объединяют классическое обнаружение (например, Виола-Джонс) с верификацией на основе CNN. Классический метод быстро генерирует кандидатов областей лица, в то время как CNN подтверждает достоверность обнаружений. Этот метод балансирует точность со скоростью, что особенно полезно для сред, подверженных окклюзии. Лю и др. [19] предложили гибридный детектор лиц, который достиг более высокой прецизионности на частично перекрытых лицах при сохранении меньшего размера модели, подходящего для обработки в реальном времени [20][21].
Обнаружение перекрытых лиц сложно из-за потери ключевых черт лица. Данное исследование решает эту проблему с помощью гибридной модели, объединяющей скорость Виолы-Джонса и надежность модифицированной CNN AlexNet [22][23]. Этот раздел представляет комплексную методологию, охватывающую общий дизайн, отдельные компоненты и эффективность различных параметров в сценариях с перекрытыми лицами.
Гибридная модель следует двухэтапному конвейеру, как показано на Рисунке 1.
Алгоритм Виолы-Джонса использует признаки Хаара и классификатор AdaBoost в каскадной структуре для обнаружения областей, похожих на лица. Хотя он эффективен, его точность снижается, когда лица частично перекрыты. Таблица 4 суммирует ключевые параметры, используемые в алгоритме Виолы-Джонса для генерации начальных предложений областей лица. Она выделяет тип признаков, настройки классификатора, размер окна обнаружения, масштабирование и производительность, обеспечивая быстрое обнаружение лиц в реальном времени с уменьшенным количеством ложных срабатываний.
| Параметр | Значение/Тип | Назначение |
|---|---|---|
| Тип признаков | Хаар | Базовые визуальные подсказки |
| Классификатор | AdaBoost | Повышает точность |
| Размер окна обнаружения | 24x24 px | Минимальный размер лица |
| Коэффициент масштабирования | 1.1 | Пирамидальное масштабирование |
| Мин. соседей | 3 | Снижает ложные срабатывания |
| Скорость | ~20 FPS (CPU) | Возможность работы в реальном времени |
Этот этап обеспечивает быструю предварительную обработку, но требует верификации CNN для удаления шума в случаях, когда объекты перекрыты.
Модель CNN основана на AlexNet, адаптированной для бинарной классификации (лицо против не-лица) [15][16]. Сеть изучает пространственные иерархии и обучается на наборе данных, обогащенном образцами перекрытых лиц (например, лица, частично закрытые солнцезащитными очками, руками или масками). Таблица 5 описывает архитектуру модифицированной CNN AlexNet, используемой для верификации лиц, детализируя тип, размер фильтра, шаг (stride) и выходные размеры каждого слоя. Сеть обрабатывает входные изображения размером 227x227x3 через сверточные слои, слои активации, пулинга и полносвязные слои, окончательно классифицируя области как «Лицо» или «Не-лицо» с использованием выхода Softmax.
| Слой | Тип | Размер фильтра / Единицы | Шаг | Размер выхода |
|---|---|---|---|---|
| Вход | Входной слой | 227x227x3 | - | 227x227x3 |
| Conv1 | Сверточный | 96 x 11x11 | 4 | 55x55x96 |
| ReLU1 | Активация | - | - | 55x55x96 |
| MaxPool1 | Пулинг | 3x3 | 2 | 27x27x96 |
| Conv2 | Сверточный | 256 x 5x5 | 1 | 27x27x256 |
| ReLU2 | Активация | - | - | 27x27x256 |
| MaxPool2 | Пулинг | 3x3 | 2 | 13x13x256 |
| Conv3 | Сверточный | 384 x 3x3 | 1 | 13x13x384 |
| Conv4 | Сверточный | 384 x 3x3 | 1 | 13x13x384 |
| Conv5 | Сверточный | 256 x 3x3 | 1 | 13x13x256 |
| FC1 | Полносвязный | 4096 единиц | - | 4096 |
| FC2 | Полносвязный | 4096 единиц | - | 4096 |
| FC3 | Полносвязный | 2 единицы | - | 2 единицы |
| Выход | Softmax | - | - | Финальная метка: Лицо / Не-лицо |
Несколько параметров и методов улучшили производительность CNN для обнаружения перекрытых лиц. Таблица 6 перечисляет параметры обучения, использованные для CNN, оптимизированные для обнаружения перекрытых лиц. Она выделяет такие настройки, как размер пакета (batch size), оптимизатор, скорость обучения (learning rate), dropout и состав данных (50% перекрытых лиц), все направленные на повышение надежности модели и предотвращение переобучения на частично видимых лицах.
| Параметр | Значение/Настройка | Влияние на обнаружение перекрытых лиц |
|---|---|---|
| Размер пакета | 32 | Баланс памяти и скорости сходимости |
| Оптимизатор | SGD | Стабильное обучение |
| Скорость обучения | 0.001 | Предотвращает переобучение |
| Dropout | 0.5 | Избегает переобучения на частично видимых лицах |
| Функция потерь | Cross-Entropy | Хорошо справляется с бинарной классификацией |
| Эпохи | 25 | Достаточно для сходимости |
| Состав данных | 50% перекрытых лиц | Улучшает обобщение на окклюзии |
Эта гибридная структура особенно хорошо подходит для обнаружения лиц при частичном перекрытии, например, в общественных местах [19], где пользователи могут носить маски, держать предметы у лица или быть видны под неудобными углами. Комбинация быстрого предложения регионов (Виола-Джонс) [20][21] и верификации на основе глубокого обучения (AlexNet) обеспечивает практический компромисс между точностью и скоростью в реальных условиях, как показано в Таблице 7.
В этом разделе представлена оценка предложенной гибридной модели обнаружения лиц на наборах данных, содержащих частично перекрытые лица. Производительность модели оценивалась на основе точности обнаружения (accuracy), прецизионности (precision), полноты (recall), F1-меры, ложных срабатываний и времени выполнения. Результаты указывают на преимущества объединения детектора Виолы-Джонса с верификатором на основе CNN при наличии лицевых окклюзий.
Набор данных, использованный для оценки, состоит из 10 000 размеченных изображений, включая:
Подмножество перекрытых лиц включает как частичные, так и сильные перекрытия, проверенные вручную для обеспечения разнообразия типов окклюзии и областей (верхняя, нижняя, боковая часть лица).
Модель оценивалась с использованием стандартных метрик классификации:
Где:
| Метод | Viola-Jones только | AlexNet только | Гибридная модель |
|---|---|---|---|
| Точность (%) | 72.4 | 90.1 | 93.0 |
| Прецизионность (%) | 68.3 | 91.2 | 95.0 |
| Полнота (%) | 70.5 | 88.6 | 90.1 |
| F1-мера (%) | 69.4 | 89.9 | 92.5 |
| Ложные срабатывания (%) | 15.2 | 5.1 | 3.0 |
Гибридная модель значительно улучшает прецизионность и снижает количество ложных срабатываний по сравнению с использованием только Виолы-Джонса или только AlexNet. Она сочетает эффективные предложения регионов с точной классификацией, что особенно полезно в сценариях окклюзии, где все еще видны изолированные компоненты (например, один глаз или часть носа).
Приведенный выше рисунок иллюстрирует эффективность гибридной модели в обнаружении различных типов перекрытых лиц.
| Модель | Точность (%) | Прецизионность (%) | Полнота (%) | F1-мера (%) | Ложные срабатывания (%) |
|---|---|---|---|---|---|
| Viola-Jones только | 72.4 | 68.3 | 72.5 | 70.3 | 20 |
| AlexNet только | 90.1 | 91.2 | 88.6 | 89.9 | 6 |
| Гибридная модель | 93.0 | 95.0 | 90.1 | 92.5 | 12 |
| Модель | Среднее время вывода (на изображение, CPU) | Размер модели (MB) |
|---|---|---|
| Viola-Jones только | 0.05 сек (~20 FPS) | ~1 MB |
| AlexNet только | 0.17 сек (~6 FPS) | 240 MB |
| Гибридная модель | 0.08 сек (~12 FPS) | ~60 MB |
Таблица 9 показывает, что гибридная модель обеспечивает баланс между скоростью обнаружения и точностью. Она подходит для развертывания на стандартном вычислительном оборудовании в сценариях реального времени, таких как наблюдение или обнаружение лиц в масках.
Размер модели и скорость вывода на ЦП для гибридной модели и базовых детекторов. Синие столбцы обозначают размер модели на диске (в мегабайтах), а оранжевая пунктирная линия с маркерами показывает кадры в секунду (FPS), которые каждая модель может обрабатывать на типичном ЦП, как показано на Рисунке 3. Мы наблюдаем, что гибридная модель составляет ~60 МБ и работает со скоростью около 12 FPS на ЦП. В отличие от этого, YOLOv3 очень велика (≈240 МБ) и без GPU достигает только около 3 FPS на том же ЦП. RetinaFace (с основой ResNet-50) составляет ~110 МБ и работает со скоростью около 2 FPS на ЦП. SSD составляет ~100 МБ и достигает около 10 FPS, в то время как MTCNN чрезвычайно компактна (≈6 МБ), но все же достигает только около 5 FPS на ЦП из-за своей каскадной трехступенчатой обработки.
Эти результаты подчеркивают вычислительную эффективность гибридного алгоритма. Он на порядок меньше, чем YOLOv3, и примерно вдвое меньше RetinaFace, но при этом достигает более высокой скорости на ЦП, чем оба. Скорость ~12 FPS гибридной модели на ЦП является режимом реального времени или лучше для многих приложений, составляя ~80 миллисекунд на кадр. С другой стороны, YOLOv3 и RetinaFace предназначены для выполнения на GPU. На ЦП они слишком медленны для использования в реальном времени (≲ менее 5 FPS). MTCNN, хотя и легковесна, замедляется своей каскадной архитектурой. Рисунок 3 показывает, что гибридная модель обеспечивает благоприятный баланс, сочетая глубокую сеть скромного размера с эффективным механизмом Виолы-Джонса, создавая систему, которую можно развернуть на стандартном оборудовании. Это делает её хорошо подходящей для развертывания на периферийных устройствах (edge deployment) в камерах или встроенных устройствах, где ресурсы GPU ограничены.
Подводя итог, гибридный алгоритм отвечает практическим требованиям скорости, эффективности размера и точности. Он может работать в режиме реального времени на ЦП с разумным объемом памяти, что подчеркивает его ценность для реального наблюдения и мобильных приложений.
Обнаружение лиц при частичном перекрытии остается постоянной проблемой в компьютерном зрении, особенно в реальных сценариях, таких как наблюдение, биометрическая аутентификация и системы общественной безопасности. В данном исследовании была предложена гибридная модель обнаружения лиц, объединяющая скорость алгоритма Виолы-Джонса с надежностью классификатора CNN на основе модифицированной AlexNet. Основная цель заключалась в повышении производительности обнаружения лиц в условиях окклюзии, где обычные детекторы часто испытывают трудности из-за отсутствия или перекрытия черт лица. Модель была обучена и оценена на наборе данных из 10 000 изображений, включающем 5 000 образцов с различными формами окклюзии, включая маски, солнцезащитные очки и руки. Гибридная архитектура использовала Виолу-Джонса для быстрой генерации предложений лиц, за которой следовала AlexNet для проверки каждой области-кандидата. Этот подход позволил достичь баланса между точностью обнаружения и вычислительной эффективностью. Окончательные результаты продемонстрировали эффективность этой конструкции, достигнув общей точности 93,0%, прецизионности 95,0%, полноты 90,1% и F1-меры 92,5%, с уровнем ложноположительных срабатываний всего 3,0%. Кроме того, модель поддерживала скорость вывода приблизительно 12 кадров в секунду на стандартном ЦП с объемом памяти всего 60 МБ, что делает ее подходящей для развертывания в реальном времени и в условиях ограниченных ресурсов.
По сравнению с автономными подходами, гибридная модель значительно сократила количество ложных срабатываний и улучшила устойчивость к частичным перекрытиям. Только Виола-Джонс показала ограниченную точность (72,4%) и высокий уровень ложноположительных срабатываний (15,2%), в то время как только AlexNet была более точной, но медленной. Гибридный дизайн успешно объединил их сильные стороны, что привело к улучшению обнаружения частично видимых лиц при различных типах окклюзии. Подводя итог, предложенный метод предлагает практичное, масштабируемое и эффективное решение для обнаружения перекрытых лиц. Будущая работа может изучить интеграцию механизмов внимания или моделей на основе трансформеров для дальнейшего повышения производительности в сильно переполненных или сильно перекрытых средах.
[1] P. Viola and M. Jones, "Robust real-time face detection," International Journal of Computer Vision, vol. 57, no. 2, pp. 137–154, 2004. https://doi.org/10.1023/B:VISI.0000013087.49260.fb
[2] L. N. Soni, A. Datar, and S. Datar, "Implementation of Viola-Jones Algorithm Based Approach for Human Face Detection," International Journal of Current Engineering and Technology, vol. 7, no. 5, pp. 1819–1823, Sept.-Oct. 2017.
[3] J. Redmon and A. Farhadi, "YOLOv3: An incremental improvement," arXiv preprint, arXiv:1804.02767, 2018.
[4] J. Wang, C. Liu, and X. Zhou, "Detecting occluded faces using part-based deep networks," Neurocomputing, vol. 383, pp. 318–327, 2020. https://doi.org/10.1016/j.neucom.2019.11.109
[5] J. Yu, Y. Jiang, and Z. Wang, "UnitBox: An advanced object detection network," ACM International Conference on Multimedia (ACM MM), pp. 516–520, 2016. https://doi.org/10.1145/2964284.2967270
[6] Z. He, T. Zhao, and W. Yang, "Hybrid approach for real-time face detection using Adaboost and deep CNN," International Journal of Machine Learning and Cybernetics, vol. 12, pp. 1793–1804, 2021. https://doi.org/10.1007/s13042-020-01251-0
[7] H. Wang, X. Zhu, and Z. Lei, "Face detection under occlusion via coarse-to-fine feature aggregation," IEEE Transactions on Image Processing, vol. 30, pp. 5291–5302, 2021. https://doi.org/10.1109/TIP.2021.3088481
[8] Y. Zhong, X. Li, and J. Liu, "Learning deep face representation with facial attributes for occluded face recognition," Pattern Recognition, vol. 102, pp. 107234, 2020. https://doi.org/10.1016/j.patcog.2020.107234
[9] A. Ghiasi and C. C. Fowlkes, "Occlusion coherence: Detecting and localising occluded faces," IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 1899–1906, 2014. https://doi.org/10.1109/CVPR.2014.246
[10] J. Deng, Y. Zhou, and S. Zafeiriou, "RetinaFace: Single-shot multi-level face localisation in the wild," IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), pp. 5203–5212, 2020. https://doi.org/10.1109/CVPR42600.2020.00525
[11] C. Chen, X. Song, and J. Li, "Face detection with improved Faster R-CNN in the occluded environment," Applied Sciences, vol. 9, no. 10, pp. 2060, 2019. https://doi.org/10.3390/app9102060
[12] M. Najibi, P. Samangouei, R. Chellappa, and L. Davis, "SSH: Single stage headless face detector," IEEE International Conference on Computer Vision (ICCV), pp. 4875–4884, 2017. https://doi.org/10.1109/ICCV.2017.521
[13] S. Li and W. Deng, "BlendedMosaic: A data augmentation technique for training robust face recognition models," arXiv preprint, arXiv:2007.11298, 2020.
[14] S. Zhang, R. Benenson, and B. Schiele, "Occlusion-aware face detection," arXiv preprint, arXiv:1903.12290, 2019.
[15] S. Ge, J. Li, and Q. Ye, "Detecting masked faces in the wild with LLE-CNNs," Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 2682–2690, 2017. https://doi.org/10.1109/CVPR.2017.287
[16] M. Kumar, R. Saini, and B. S. Saini, "A review of face detection techniques under partial occlusion," Procedia Computer Science, vol. 132, pp. 1183–1190, 2018. https://doi.org/10.1016/j.procs.2018.05.217
[17] A. Dapogny, K. Bailly, and S. Dubuisson, "Confidence-driven face detection: Improved model and training," Image and Vision Computing, vol. 59, pp. 28–39, 2017. https://doi.org/10.1016/j.imavis.2016.12.001
[18] K. Zhang, Z. Zhang, Z. Li, and Y. Qiao, "Joint face detection and alignment using multitask cascaded convolutional networks," IEEE Signal Processing Letters, vol. 23, no. 10, pp. 1499–1503, 2016. https://doi.org/10.1109/LSP.2016.2603342
[19] Y. Liu, L. Li, and H. Wu, "Hybrid face detector using Viola-Jones and CNN verification," Pattern Recognition Letters, vol. 142, pp. 50–56, 2021. https://doi.org/10.1016/j.patrec.2020.11.004
[20] L. N. Soni, A. Datar, and S. Datar, "Implementation of Viola-Jones Algorithm Based Approach for Human Face Detection," International Journal of Current Engineering and Technology, vol. 7, no. 5, pp. 1819-1823, Sept. 2017.
[21] Y. Xu, L. Lin, and X. Wu, "Robust facial landmark detection under significant head pose and occlusion," Neurocomputing, vol. 219, pp. 439–448, 2017. https://doi.org/10.1016/j.neucom.2016.09.104
[22] L. Chen, H. Zhou, and X. Zhang, "Multi-scale contextual face detection for occlusion handling," Sensors, vol. 21, no. 4, pp. 1339, 2021. https://doi.org/10.3390/s21041339
[23] L. N. Soni and A. A. Waoo, "A review of recent advances in methodologies for face detection," International Journal of Current Engineering and Technology, vol. 13, no. 2, pp. 86-92, 2023.