Quantcast
Channel: Статьи Intel Developer Zone
Viewing all articles
Browse latest Browse all 156

Образец кода для камеры глубины Intel® RealSense™ R200 (отслеживание лица)

$
0
0

Загрузить образец кода для отслеживания лица камерой R200

Введение

В этом примере кода C#/XAML демонстрируются основы работы с алгоритмом отслеживания лиц в Intel® RealSense™ SDK для Windows* для обнаружения и отслеживания лиц людей в реальном времени с помощью камеры R200. Этот образец кода выполняет следующие действия.

  • Отображение цветового потока RGB камеры R200 в элементе управления Image.
  • Наложение прямоугольного элемента управления, который отслеживает расположение лица пользователя (в зависимости от того, где находится пользователь в поле зрения камеры).
  • Отображение количества лиц, обнаруженных камерой R200.
  • Отображение высоты и ширины отслеживаемого лица.
  • Отображение двухмерных координат (X и Y) отслеживаемого лица.
  • Указание глубины лица, то есть расстояния от камеры R200 до лица.
  • Поддержка и отображение отслеживания оповещений, подписка на обработчик событий.

Face Tracking Code Sample
Рисунок 1.Образец кода для отслеживания лиц

Среда разработки программного обеспечения

Этот образец кода был создан в Windows® 10 RTM с помощью Microsoft Visual Studio* Community 2015. Для этого образца был использован шаблон проекта Visual C# — Windows — Classic Desktop.

Версии SDK и DCM, использованные в этом проекте.

  • Intel® RealSense™ SDK                                                       v6.0.21.6598
  • Intel® RealSense™ Depth Camera Manager R200              v2.0.3.39488

Описание оборудования

Для этой работы мы использовали комплект Intel® RealSense™ Developer Kit (R200). Камера была установлена на стандартный штатив с помощью приобретаемого дополнительно магнитного крепления** (рис. 2).

Camera Attached to Optional Magnetic Mount
Рисунок 2. Камера, присоединенная к магнитному креплению**

(** Может поставляться не во всех комплектах.)

Для образца кода R200 действуют следующие требования к оборудованию.

  • Процессор Intel® Core™ 4-го поколения (или более позднего).
  • 150 МБ свободного места на жестком диске.
  • ОЗУ 4 ГБ.
  • Камера Intel® RealSense™ (R200).
  • Доступный порт USB3 для камеры R200 (или выделенное подключение для встроенной камеры).

Важно! Для поддержки потока данных, передаваемого камерой, требуется интерфейс USB3. Этот интерфейс должен быть подключен к выделенному порту USB3 на клиентской системе (без использования разветвителя).

 

Примечания к сборке

  1. В этом проекте используется пространство имен System.Drawing.Imaging. Ссылка на него указывается вручную: в новом проекте щелкните правой кнопкой мыши References (Ссылки)в Solution Explorer (обозревателе решений) и выберите Add Reference… (Добавить ссылку…), чтобы открыть окно диспетчера ссылок. Затем выберите Assemblies, Framework (Сборки, платформа)и найдите System.Drawingв списке. Установите флажок и нажмите кнопку ОК.
  2. В этом проекте используют явно заданный путь к libpxcclr.cs.dll (управляемой DLL-библиотеке): C:\Program Files (x86)\Intel\RSSDK\bin\x64. Не забудьте изменить этот путь, если в вашей системе пакет SDK установлен в другую папку.
  3. Поскольку проект ссылается на 64-разрядную версию DLL-библиотеки, убедитесь, что параметр «x64» указан в разделе Project → Properties → Platform target (Проект → Свойства → Целевая платформа)
  4. Проект включает команду события после сборки, чтобы убедиться в копировании неуправляемой DLL-библиотеки (libpxccpp2c.dll) в целевую выходную папку:

    if "$(Platform)" == "x86" (copy /y "$(RSSDK_DIR)\bin\win32\libpxccpp2c.dll""$(TargetDir)" ) else ( copy /y "$(RSSDK_DIR)\bin\x64\libpxccpp2c.dll""$(TargetDir)" )

Описание кода

Образец кода имеет следующую структуру.

  • Настройте интерфейс Session и SenseManager, а также модуль распознавания лиц.
  • Запустите рабочий поток с именем Update, в котором обрабатывается цикл AcquireFrame — ReleaseFrame.
  • В цикле AcquireFrame — ReleaseFrameпроисходят следующие действия.
    • Получение данных изображения.
    • Получение данных модуля распознавания лиц.
    • Вызов метода Render для обновления пользовательского интерфейса.
    • Высвобождение ресурсов.
    • Высвобождение кадра.
       
  • В методе Renderпроисходят следующие действия.
    • Вызов метода ConvertBitmap для преобразования каждого растрового кадра в тип BitmapImage, который требуется для отображения каждого кадра в элементе управления WPF Image.
    • Обновление пользовательского интерфейса путем делегирования работы диспетчеру, связанному с потоком пользовательского интерфейса.
       
  • Метод ShutDownвызывается при каждом возникновении событий Window_Closingили btnExit_Click. В методе ShutDownпроисходят следующие действия.
    • Остановка метода Update.
    • Удаление объектов.

Ознакомьтесь

Перейдите по ссылке загрузки, чтобы получить код и поэкспериментировать с этим образцом.

О технологии Intel® RealSense™

Чтобы приступить к работе и узнать больше об Intel RealSense SDK для Windows, перейдите по адресу https://software.intel.com/ru-ru/intel-realsense-sdk.

Об авторе

Брайан Браун — инженер по разработке программных приложений в подразделении Developer Relations корпорации Intel. 

Дополнительные сведения об оптимизации компиляторов см. в нашем уведомлении об оптимизации.

Уведомление

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


Viewing all articles
Browse latest Browse all 156

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>