C# сэмплы
Каталог bin/csharp_demo содержит следующие папки с исполняемыми файлами сэмплов:
- demo – пример трекинга лиц и оценки лица
- video_recognition_demo – пример идентификации/верификации лиц на видеопотоке с камеры
Для сборки и запуска C# сэмплов требуются следующие зависимости:
- Платформа .NET Core (рекомендуемая версия: 2.1)
- Обертка .NET для OpenCV (рекомендуемая версия: 3.4.1)
- Для Linux требуется ручная сборка OpenCvSharp.
Для сборки демо-проекта в VisualStudio:
- Создайте пустое консольное приложение C#
- Добавьте исходные файлы сэмпла в проект
- Добавьте ссылки на библиотеку
FacerecCSharpWrapper.dll
и OpenCvSharp3-AnyCPU
#
demoПрограмма демонстрирует трекинг, детекцию и обрезку лиц, определение антропометрических точек и углов, а также оценку качества лица, определение пола и возраста, эмоций, принадлежности лица живому человеку (анализ цветного изображения с камеры).
Для быстрого запуска сэмпла с параметрами по умолчанию на Windows перейдите в папку bin/csharp_demo/demo и двойным левым щелчком мыши запустите файл run.bat
.

Расположение C# demo
Результаты трекинга и информация о каждом лице отображаются в окне. В левой части окна программы перечислены компоненты Face SDK, которые можно включать/выключать левым щелчком мыши. Сэмпл аналогичен C++ demo, более подробное описание компонентов см. в пункте C++ demo.
Для запуска приложения на Linux перейдите в директорию bin/csharp_demos/demo и выполните команду run.sh <path_to_opencv_csharp>
, где <path_to_opencv_csharp>
– путь до директории с библиотекой OpenCvSharp.
Также Вы можете запустить сэмпл C# demo, указав определенные параметры (например, путь до онлайн лицензии).
Для сборки сэмпла выполните следующие команды:
Параметры запуска:
[--config_dir=<config_dir>] [--license_dir=<license_dir>] [--capturer_config=<capturer_config>]
Где:
config_dir
– путь до каталога conf/facereccapturer_config
– путь до конфигурационного файла детектора (подробнее о типах конфигурационных файлов см. Класс Capturer)license_dir
– путь до каталога с лицензией (укажите, если нужно изменить каталог по умолчаниюlicense
)
Для запуска демо на Windows:
Добавьте путь до директории, содержащей facerec.dll
, в преременную окружения PATH
.
Для запуска демо на Linux:
Добавьте путь до директории, содержащей libfacerec.so
, и путь до директории с собранной для linux библиотекой OpenCVSharp в переменную окружения LD_LIBRARY_PATH
.
В консоли отображаются сообщения об ошибках при их возникновении.
Исходный код: demo.cs
#
video_recognition_demoПрограмма демонстрирует трекинг, детекцию и идентификацию/верификацию лиц из базы на видеопотоке с камеры.
Примечание: если Вы используете сенсор RealSense, мы рекомендуем Вам использовать сэмпл video_recognition_demo_realsense. В данном сэмпле объект DepthLivenessEstimator
используется посредством RealSense SDK. См. более подробную информацию об определении принадлежности лица реальному человеку с использованием карты глубины в пункте Класс DepthLivenessEstimator.
Для быстрого запуска сэмпла с параметрами по умолчанию и проверки распознавания лиц на Windows:
- Создайте базу, которая будет использоваться при поиске лиц (см. п.1 подраздела C++ Video Recognition Demo).
- Для запуска сэмпла перейдите в папку bin/csharp_demo/video_recognition_demo и двойным левым щелчком мыши запустите файл
run.bat

Расположение C# video_recognition_demo
- Результаты трекинга и идентификации отображаются в окнах (по одному на каждый источник). Найденные лица выделяются зеленым кругом. В правой верхней части окна отображаются результаты распознавания: слева – найденное лицо на видео, справа – лицо из базы и имя.
Для запуска приложения на Linux перейдите в директорию bin/csharp_demos/video_recognition_demo и выполните команду run.sh <path_to_opencv_csharp>
, где <path_to_opencv_csharp>
– путь до директории с библиотекой OpenCvSharp.
Также Вы можете запустить сэмпл C# video_recognition_demo, указав определенные параметры.
Для сборки сэмпла выполните следующие команды:
Для запуска сэмпла укажите путь до библиотеки csharp_video_recognition_demo.dll
, параметры запуска (необязательно) и видео-источник:
Примеры запуска:
- Веб-камера:
dotnet csharp_video_recognition_demo.dll –config_dir ../../../conf/facerec 0
- RTSP-поток:
dotnet csharp_video_recognition_demo.dll –config_dir ../../../conf/facerec rtsp://localhost:8554/
Параметры запуска:
Где:
config_dir
– путь до каталога conf/facereclicense_dir
– путь до каталога с лицензией (укажите, если нужно изменить каталог по умолчаниюlicense
)database_dir
– путь до каталога с базой лицmethod_config
– имя конфигурационного файла распознавателяrecognition_distance_threshold
– порог распознавания (вещественное число)camera_id | rtsp_url
– один или несколько источников, каждый источник – это число (номер вебкамеры) либо строка (URL видеопотока либо путь до видеофайла)frame_fps_limit
– ограничение FPS
Для запуска демо на Windows:
Добавьте путь до директории, содержащей facerec.dll
, в преременную окружения PATH
.
Для запуска демо на Linux:
Добавьте путь до директории, содержащей libfacerec.so
, и путь до директории с собранной для linux библиотекой OpenCVSharp в переменную окружения LD_LIBRARY_PATH
.
В консоли отображается статус загрузки базы и сообщения об ошибках при их возникновении.
Исходный код: