Заархивировано - Intel® RealSense™ — образец кода Sketch

Выпуск комплекта Intel® RealSense™ SDK прекращен. Его поддержка и обновления более недоступны.

Download Sketch Code Sample

Аннотация

В этом образце кода демонстрируется использование Intel® RealSense™ SDK для Windows* для создания простого приложения для виртуального рисования под названием Sketch. В этом классическом приложении для Windows, разработанном на C#/WPF, демонстрируется ряд возможностей отслеживания положения руки и распознавания жестов в Intel RealSense SDK:

  • получение трехмерных (абсолютных) координат суставов кисти руки;
  • избирательное получение данных о жестах;
  • получение информации о состоянии (обнаружение руки, калибровка, состоянии границ).

(Примечание. Для реализации полной функциональности этого приложения требуется направленная на пользователя трехмерная камера.)

Посмотрите короткое видео о Sketch тут. 

Введение в приложение Sketch

Sketch — простое приложение для рисования, позволяющее пользователю имитировать рисование на полотне, передвигая руку и применяя жесты. На рис. 1 показан пользовательский интерфейс приложения Sketch (разработанного в WPF/XAML).


Рисунок 1. Пользовательский интерфейс приложения Sketch

Для взаимодействия с виртуальным полотном применяются три жеста (они показаны на экране вместе с соответствующими действиями).

  • Сведение пальцев («Рисование») — указатель превращается в перо и рисует линию на полотне. Положение указателя на полотне определяется координатами X и Y кончика среднего пальца пользователя. Толщина рисуемой линии определяется положением кончика среднего пальца пользователя по оси Z (если отодвинуть палец от камеры, линия становится тоньше, как при уменьшении нажима на перо или карандаш).
  • Разведение пальцев («Движение») — отключение пера, указатель превращается в пустую окружность. «Движение» позволяет перемещать перо по полотну, не рисуя линии. Оно также позволяет выбирать цвета на расположенной справа палитре: достаточно навести указатель на нужный цвет.
  • Махание («Очистка») — удаление всех нарисованных линий и очистка полотна, чтобы на нем можно было рисовать заново.

Подробные сведения

Приложение Sketch имитирует рисование на полотне, когда пользователь делает жест «two_fingers_pinch_open» (сведение двух пальцев). Этот жест был выбран, поскольку он близок к положению, которое примет кисть руки, когда пользователь будет держать карандаш или перо. Этот жест показан на рис. 2.


Рисунок 2. Жест рисования

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

Приложение Sketch также демонстрирует получение и отображение информации о состоянии руки (в данном случае — обнаружение руки, калибровка и исключение границ). Предоставление такой обратной связи в той или иной форме помогает пользователям правильно расположить свои руки перед камерой. Представление информации в этом тестовом приложении крайне упрощено, но разработчики могут предоставлять схожие подсказки своим пользователям, чтобы повысить их удобство.

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

Чтобы поэкспериментировать с приложением и узнать больше о том, как оно работает, загрузите его здесь.

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

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

Об авторе

Брайан Браун — инженер по разработке программных приложений в подразделении Developer Relations корпорации Intel. Его профессиональный опыт охватывает создание программного обеспечения и электроники, а также проектирование систем. Среди интересующих его направлений — применение технологий естественного взаимодействия и интерфейсов между компьютером и мозгом. Он активно участвует в нескольких программах разработки различных передовых технологиях в этих областях.

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