Цель данной работы - продолжить знакомство с программными средствами библиотеки OpenCV, позволяющими запускать обученные нейронные сети
Основные задачи:
- Скачать модель для распознавания головы face-detection-adas-0001.
- Реализовать приложение, осуществляющее детектирование лиц по изображению с камеры.
- Реализовать вывод изображения на экран и отрисовку прямоугольника вокруг лиц.
Дополнительные задачи:
- Реализовать запись видео с прямоугольниками вокруг лиц в файл.
- Реализовать функции статистики (сколько лиц было в кадре, сколько времени и т.д.).
- в папке /deployment_tools/model_downloader/ запустить скрипт downloader.py с параметрами --name face-detection-adas-0001 --output <destination_folder>
$ cd C:\Intel\computer_vision_sdk\deployment_tools\model_downloader
$ python downloader.py --name face-detection-adas-0001 --output <destination_folder>-
Создать копию файла
<project_source>/src/practice3.cppи назвать ее<project_source>/src/practice3_YOUR_NAME.cpp. Далее изменять код только в файле<project_source>/src/practice3_YOUR_NAME.cpp, но не в<project_source>/src/practice3.cpp. -
В файле
<project_source>/src/practice3_YOUR_NAME.cppреализовать детектирование лиц на изображении. Путь к файлу с изображением передается в программу с помощью ключа--image. Детектор загружается из файла, заданного посредством ключа--detector. Описание входных и выходных данных для сети можно найти на странице сети face-detection-adas-0001. Полный список принимаемых параметров можно посмотреть запустив исполняемый файл с ключом--help. См. документацию к классу cv::dnn::Net (методыreadNet,setInputиforward) и пространству имен cv:dnn (методblobFromImage). Также полезным будет посмотреть примеры работы с dnn из официальных семплов OpenCV. -
Реализовать следующих функционал: если на вход приложению не был подан путь до изображения, использовать изображение с веб-камеры.