Stereolabs — ведущий поставщик стереоскопических 3D-камер и программных решений. Сильный портфель продуктов, состоящий из 3D-стереоскопических камер, шлюзов и платформы управления камерами. Компания Stereolabs внедрила более 50 000 камер и предоставляет комплексное решение со своим SDK и API для простой интеграции вместе со своей камерой, которая используется более чем 8900 клиентами по всему миру. Stereolabs также тесно сотрудничает с NVIDIA в области разработки продуктов.

Затем ZED SDK, совместимый со всеми камерами ZED, предоставляет такие функции, как:
— Карта глубины в реальном времени с разным FPS/разрешением
— Отслеживание положения в реальном времени
— SLAM в реальном времени (3D картирование)
— Обнаружение объектов в реальном времени и отслеживание тела.

ZED SDK требует использования только графического процессора NVIDIA, поскольку он связан с зависимостью от CUDA. Это также бесплатно.

Мы предоставляем множество различных образцов и плагинов для внешнего программного обеспечения/библиотек. Все они с открытым исходным кодом и доступны здесь: https://github.com/stereolabs/

Исследования, опубликованные на камерах ZED по медицинским приложениям:

1. Обнаружение объектов, идентификация и расстояние с помощью камеры: https://ieeexplore.ieee.org/abstract/document/8742847

Основные моменты:Система реализована на Nvidia® Jetson TX1 со стереокамерой Zed®, протестирована и показала способность обнаруживать точность около 84% со средней ошибкой в ​​оценке расстояния менее 4,7. % на расстоянии до пяти метров.

2. Система помощи слепым людям с использованием стереокамеры:- https://ieeexplore.ieee.org/abstract/document/8937173

Основные моменты: Судя по экспериментальным результатам, эта система хорошо работает при использовании слепыми людьми. В конце эксперимента система смогла достичь точности 83,16% и смогла помочь слепым людям уверенно найти пешеходную дорожку.

3. Обнаружение человеческого тела и ориентация с помощью камер ZED:-https://www.sae.org/publications/technical-papers/content/2021-01-0082/

Основные моменты: метод использует нейронную сеть OpenPose в качестве модуля детектора позы человека и модуля определения глубины. Модули работают вместе, чтобы извлечь ориентацию тела из трехмерных стереоизображений. OpenPose может обнаруживать видимые суставы тела, не завися от фона или других сложных факторов. Добавление данных о глубине для каждой точки может дать богатую информацию для процесса трехмерного построения для обнаруженных людей. Например, настройка этой 3D-точки может рассказать больше об ориентации тела и направлении ходьбы. Модуль глубины, используемый в этой работе, представляет собой стереосистему камеры ZED, которая использует CUDA для высокопроизводительного вычисления глубины. Этот метод предназначен для занятий в помещении, чтобы обеспечить более высокую точность.

Как генерируются карты глубины:

1) Карта глубины создается хост-компьютером, к которому подключена камера. Генерируется для каждого кадра камеры; поэтому частота кадров зависит от частоты кадров камеры (вы можете настроить камеру на другое разрешение/частоту кадров)

2) ZED SDK предлагает модуль потоковой передачи, основанный на протоколе RTP и кодировке H264/5. . Отправитель и получатель должны использовать ZED SDK:
— отправитель включает модуль потоковой передачи с помощью функции enableStreaming().
— получатель устанавливает тип ввода (потоковая передача) через свои параметры инициализации. (InitParameters.input.seFromStream())

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

3) ZED2 работает как внутри, так и снаружи одинаково, поскольку технология полностью пассивна (без ИК-подсветки или времени полета). Поэтому на данные не повлияет солнечный свет или что-то еще.
Поскольку он основан только на изображениях, полутемные условия могут работать, но иногда с менее точными измерениями.

Этапы для трехмерного пространственного картирования:

Включить позиционное отслеживание

Как только камера открыта, мы должны включить модуль позиционного отслеживания, чтобы получить положение и ориентацию ZED.

Включить пространственное картографирование

Теперь, когда отслеживание включено, нам нужно включить модуль пространственного картирования. Вы увидите, что это очень близко к позиционному отслеживанию: мы создаем параметры пространственного отображения и вызываем функцию enableSpatialMapping() с этим параметром.

В этом руководстве не рассматривается подробное описание класса SpatialMappingParameters, но вы найдете информацию о режиме в документации по API.

Собирать данные

Пространственное отображение не требует вызова какой-либо функции в процессе захвата. ZED SDK обрабатывает и проверяет, могут ли новое изображение, глубина и положение быть загружены в модуль сопоставления, и автоматически запускает расчет асинхронно.

Это означает, что вам просто нужно захватить изображения, чтобы создать сетку в фоновом режиме.

Извлечь сетку

Теперь у нас есть 500 кадров, и сетка создана в фоновом режиме. Теперь нам нужно извлечь его.

Во-первых, нам нужно создать объект-сетку, чтобы манипулировать им: sl::Mesh. Затем запустите извлечение с помощью Camera::extractWholeMesh(). Эта функция будет заблокирована до тех пор, пока сетка не будет доступна.

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

Вы можете видеть, что filter принимает параметр фильтрации. Это позволяет более точно настроить обработку. Кроме того, в документации по API содержится дополнительная информация о параметрах фильтрации.

Теперь вы можете сохранить сетку как файл obj для внешних манипуляций.

Отключить модули и выйти

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

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

Непрерывный рабочий процесс:

Ссылки:

Вы можете найти больше информации о возможностях ZED SDK в разделе для разработчиков на сайте здесь:
https://www.stereolabs.com/docs/

Рабочий процесс пространственного картирования: — https://github.com/stereolabs/zed-examples/tree/master/tutorials/tutorial%205%20-%20spatial%20mapping

Видео YouTube:

o 3D-стереовидение для определения глубины и отображения на Nvidia Jetson TX2 с камерой ZED: — https://www.youtube.com/watch?v=kGa4vIA6kYc

o Трехмерное картирование занятости с помощью Asus Xtion Pro и стереокамеры ZED: — https://www.youtube.com/watch?v=yKNzTg25RM8

o Камера Stereolabs ZED — NVIDIA Jetson TX2:-https://www.youtube.com/watch?v=7_8XLI99dno

o 3D-мэппинг с использованием ZED Stereo Camera и ZEDfu: — https://www.youtube.com/watch?v=FW8VcNLhg0Y

o Пространственное картографирование с помощью ZED — Открытый: — https://www.youtube.com/watch?v=eWnQ7Zwz51Q