К содержимому
  1. Главная
  2. Документация
  3. Камеры для NVIDIA Jetson
  4. Быстрый старт с камерами с глобальным затвором на NVIDIA Jetson

Быстрый старт с камерами с глобальным затвором на NVIDIA Jetson

Документация Arducam · перевод arducam-russia.ru

Работа с камерой через GStreamer

Как получить изображение с камер через GStreamer, описано в руководстве:

Быстрый старт

Программа просмотра Arducam Displayer

Установка драйвера

Шаг 1. Скачайте скрипт автоматической установки

wget https://github.com/ArduCAM/MIPI_Camera/releases/download/v0.0.3/install_full.sh

Шаг 2. Установите драйвер

chmod +x install_full.sh
./install_full.sh -m arducam
Запрос на перезагрузку после установки драйвера

Введите y, чтобы перезагрузить устройство.

Как работать с камерой

Некоторые программы просмотра видео, например VLC, поддерживают только форматы вроде GRAY и YUV и могут не поддерживать формат Bayer. Для таких случаев Arducam предлагает демо-скрипт на Python: он показывает, как открыть камеру и вывести изображение через OpenCV. В демо-коде важно соблюсти три шага.

ПримечаниеВ официальный образ SD-карты от NVIDIA входит OpenCV 4.1.1 для Python.
  • Задайте параметр apiPreference в VideoCapture как CAP_V4L2.
  • Отключите преобразование в RGB.
  • Сдвиньте биты данных под реальную разрядность выхода камеры и при необходимости преобразуйте цвета.

1. Установите модуль v4l2 для Python

Для Python 3.x:

wget https://bootstrap.pypa.io/get-pip.py  
Скачивание скрипта get-pip.py

Введите команду ниже и нажмите Enter — загрузка займёт несколько минут.

sudo python3 get-pip.py
Установка pip для Python 3
Завершение установки pip
sudo pip3 install v4l2-fix
Установка модуля v4l2-fix
ПримечаниеВ модуле V4L2 для Python 3.x есть известная ошибка, которую нужно исправить вручную. При импорте модуля v4l2 в Python 3.x выводится такое сообщение:
Ошибка при импорте модуля v4l2 в Python 3

Как исправить ошибку, описано в отчёте № 1664158 о модуле python-v4l2 на Launchpad.

2. Скачайте демо-код

git clone https://github.com/ArduCAM/MIPI_Camera.git
Клонирование репозитория MIPI_Camera
Скачивание демо-кода MIPI_Camera завершено

3. Проверьте, что камера определилась

ls /dev/video0
Проверка устройства /dev/video0

4. Проверьте поддерживаемые форматы видео

v4l2-ctl --list-formats-ext

5. Выведите изображение в реальном времени

Если вы подключаетесь к Jetson удалённо (например, через MobaXterm), для вывода изображения один раз выполните команду:

export DISPLAY=:0.0

Перейдите в папку программы:

cd MIPI_Camera/Jetson/Jetvariety/example/

Посмотрите справку по параметрам:

python arducam_displayer.py -d 0

Запустите демо-программу:

python arducam_displayer.py

Чтение регистров сенсора

Драйвер Arducam MIPI Camera для Jetson Nano позволяет обращаться к регистрам сенсора камеры и платы драйвера через ioctl. Пример использования — в файлах rw_sensor.c и rw_sensor.py.

Справка rw_sensor.py

Справка по параметрам rw_sensor.py

Примеры rw_sensor.py

Чтение одного регистра:

python rw_sensor.py -d 0 -r 0x3500

Чтение нескольких регистров:

python rw_sensor.py -d 0 -r 0x3500 0x3501 0x3502

Запись одного регистра:

python rw_sensor.py -d 0 -r 0x3500 -v 0x01

Запись нескольких регистров:

python rw_sensor.py -d 0 -r 0x3500 0x3501 -v 0x01 0x02

Просмотр в VLC

Некоторые камеры поддерживают захват изображения в VLC. Учтите, что VLC поддерживает не все форматы.

Подготовка

Сначала проверьте, поддерживает ли VLC форматы вашей камеры.

# input the command to check the camera formats
sudo apt-get install -y v4l-utils
v4l2-ctl --list-formats-ext

Запуск VLC

Медиаплеер VLC

Откройте медиаплеер VLC.

Вывод изображения

Нажмите Ctrl+C.

Окно выбора устройства захвата в VLC

В поле «Video device name» выберите «/dev/video0» и нажмите «Play».

Изображение с камеры в VLC

Настройка экспозиции, усиления и частоты кадров

Нажмите Ctrl+E и на вкладке «v4l2 control» настройте ползунки «Exposure», «Gain» и «Frame_rate».

Ползунки экспозиции, усиления и частоты кадров на вкладке v4l2 control в VLC

Запросить цену

Укажите количество — пришлём коммерческое предложение.