YOLOv3 («Вы смотрите только один раз») — это современный алгоритм обнаружения объектов в реальном времени. Опубликованная модель распознает 80 различных объектов на изображениях и видео. Для получения более подробной информации вы можете обратиться к этой статье.
Фото: Айюш Катурия
Модуль OpenCV dnn
поддерживает выполнение логических выводов на предварительно обученных моделях глубокого обучения из популярных платформ, таких как TensorFlow, Torch, Darknet и Caffe.
Разработка этого проекта будет изолирована в виртуальной среде Python. Это позволяет нам экспериментировать с различными версиями зависимостей.
Существует множество способов установки virtual environment (virtualenv)
, см. руководство «Виртуальные среды Python: руководство для начинающих» для разных платформ, но вот несколько из них:
$ pip install virtualenv
$ pip install --upgrade virtualenv
Создайте виртуальную среду Python 3.6 для этого проекта и активируйте virtualenv:
$ virtualenv -p python3.6 yoloface
$ source ./yoloface/bin/activate
Затем установите зависимости для этого проекта:
$ pip install -r requirements.txt
$ git clone https://github.com/sthanhng/yoloface
Для обнаружения лиц вам следует загрузить предварительно обученный файл весов YOLOv3, который был обучен на наборе данных WIDER FACE: A Face Detection Benchmark, по этой ссылке и поместить его в каталог model-weights/
.
Выполните следующую команду:
ввод изображения
$ python yoloface.py --image samples/outside_000001.jpg --output-dir outputs/
видеовход
$ python yoloface.py --video samples/subway.mp4 --output-dir outputs/
Веб-камера
$ python yoloface.py --src 1 --output-dir outputs/
Этот проект лицензируется по лицензии MIT — более подробную информацию см. в файле LICENSE.md.