Intel Realsense D435

Камера Intel RealSense D435 — это стереокамера, используемая в ровере для захвата глубины и RGB-изображений. Она оснащена двумя инфракрасными сенсорами, RGB-камерой и инфракрасным проектором, что позволяет точно определять расстояние до объектов.

Основные характеристики камеры Intel RealSense D435 включают:

  • Стереовидение с двумя инфракрасными сенсорами, которые совместно работают для захвата трехмерных данных о глубине.

  • Разрешение глубины до 1280x720 пикселей, что обеспечивает высокую детализацию изображений.

  • Встроенный RGB-сенсор для захвата цветного изображения с разрешением 1920x1080 пикселей.

  • Поддержка различных диапазонов и частот обновления данных, что делает её универсальной для разнообразных задач.

  • Возможность работы в условиях с низким уровнем освещенности благодаря продвинутым алгоритмам обработки изображений.

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

Пример кода с использованием камеры Intel RealSense D435

import pyrealsense2 as rs
import numpy as np
import cv2

# Создаем объект pipeline
pipeline = rs.pipeline()

# Конфигурируем поток
config = rs.config()
config.enable_stream(rs.stream.depth, 640, 480, rs.format.z16, 30)
config.enable_stream(rs.stream.color, 640, 480, rs.format.bgr8, 30)

# Запускаем поток
pipeline.start(config)

try:
    while True:
        # Захватываем кадры
        frames = pipeline.wait_for_frames()
        depth_frame = frames.get_depth_frame()
        color_frame = frames.get_color_frame()

        if not depth_frame or not color_frame:
            continue

        # Преобразуем изображения в numpy массивы
        depth_image = np.asanyarray(depth_frame.get_data())
        color_image = np.asanyarray(color_frame.get_data())

        # Применяем цветовую карту к глубинному изображению
        depth_colormap = cv2.applyColorMap(cv2.convertScaleAbs(depth_image, alpha=0.03), cv2.COLORMAP_JET)

        # Объединяем изображения для отображения
        images = np.hstack((color_image, depth_colormap))

        # Показываем изображения
        cv2.imshow('RealSense', images)

        # Завершаем по нажатию клавиши 'q'
        if cv2.waitKey(1) & 0xFF == ord('q'):
            break

finally:
    # Останавливаем поток
    pipeline.stop()
    cv2.destroyAllWindows()

Процесс запуска кода:

  1. Откройте Visual Studio Code и создайте файл с названием RealSense_example.py (подробнее о работе с Visual Studio Code и создании файлов смотрите в разделе "Программирование ровера Контакт" на страницах "Подготовка к программированию ровера. Установка программы и языка программирования на ПК" и "Основные библиотеки Python, используемые в ровере")

  2. После создания файла установите необходимые библиотеки: в данном случае нам нужно установить все три библиотеки, используемые в коде, для этого нужно открыть терминал (Terminal - New Terminal или комбинацией ctrl + shift + `) и ввести туда следующие команды:

pip install pyrealsense2
// дождитесь полной загрузки библиотеки
pip install opencv-python
// дождитесь полной загрузки библиотеки
pip install numpy
  1. Вставьте код в окно программирования.

  2. После всех действий можно работать с кодом. Код можно запустить двумя способами: на своём ПК или на ровере

Запуск кода на ПК:

  1. Подключите камеру к ПК

  2. Проверьте, выдает ли камера картинку. Для этого перейдите на эту ссылку (https://github.com/IntelRealSense/librealsense/releases/tag/v2.55.1), опуститесь ниже до ассетов и выберите файл Intel Realsense Viewer.exe

  1. Откройте скачанный файл, вас встретит такой интерфейс

  1. Нажмите на Add Source и добавьте вашу камеру RealSense

  2. После проверки камеры обязательно закройте программу Intel RealSense Viewer. Если запускать код с открытой программой, у вас будут выводиться ошибки, так как поток занят другой программой.

  3. Запустите ваш код. При запуске кода в терминале сначала инициализируется камера, а потом открывается отдельное приложение Python с выводом потока с вашей камеры.

Last updated