1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/huiwei13-Ncnn_FaceTrack

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Ncnn_FaceTrack

На основе mtcnn обнаружения лиц и onet отслеживания лиц, скорость обнаружения на процессоре i7-9700k может достигать 250 кадров в секунду.

Среда разработки

Win7

VS2015

Открытые фреймворки

Ссылки

HyperFT — это открытый проект для быстрого видеоотслеживания лиц на мобильных устройствах. Проект основан на mtcnn обнаружении лиц с добавлением простого сопоставления шаблонов для отслеживания. Алгоритм прост, но эффективен, а скорость на мобильных устройствах может достигать более 150 кадров в секунду. Особенностью проекта является возможность отслеживания нескольких лиц одновременно.

Анализ алгоритма кода

Алгоритм многопользовательского отслеживания лиц в проекте HyperFT состоит из трёх основных частей:

  1. Инициализация: поиск местоположения лица на первом кадре с помощью mtcnn и использование результата для инициализации отслеживания.

  2. Обновление: предварительное определение местоположения цели лица с использованием сопоставления шаблонов, затем более точное позиционирование с помощью onet в mtcnn. Наконец, использование достоверности rnet в mtcnn для определения, является ли отслеживание лицом, чтобы предотвратить отслеживание рук вместо реальных лиц.

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

Идеи по улучшению алгоритма (добавление отслеживания пяти ключевых точек)

  1. В классе Face проекта HyperFT определена только переменная прямоугольника лица. Для добавления отслеживания пяти ключевых точек необходимо определить класс Bbox faceBbox в классе Face, чтобы сохранить как местоположение лица, так и ключевые точки.

  2. Перегрузить функцию doingLandmark_onet на основе исходной функции, изменив тип параметра с std::vector< cv::Point > &pts на Bbox& faceBbox.

  3. Изменить вызов функции doingLandmark_onet в функции tracking.

  4. Используя класс Face faceBbox, можно получить местоположение лица и его пять ключевых точек в main.cpp.

Связанные статьи

  1. Обзор методов быстрого отслеживания целей.

  2. Анализ и улучшение кода алгоритма отслеживания лиц открытого проекта HyperFT.

  3. Пошаговое руководство по созданию среды и компиляции проекта HyperFT для Android.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

**Открытый алгоритм отслеживания лиц по видео, основанный на MTCNN для обнаружения лиц и ONET для их отслеживания. Скорость обнаружения с использованием процессора i7-9700k может достигать 250 кадров в секунду.** Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/huiwei13-Ncnn_FaceTrack.git
git@api.gitlife.ru:oschina-mirror/huiwei13-Ncnn_FaceTrack.git
oschina-mirror
huiwei13-Ncnn_FaceTrack
huiwei13-Ncnn_FaceTrack
master