Решения для нескольких камер на NVIDIA Jetson Nano
Что нужно знать о работе нескольких камер на Jetson Nano
Серия NVIDIA Jetson известна высокой производительностью в задачах искусственного интеллекта при компактных размерах. Jetson TX1/TX2 оказались слишком дорогими, чтобы стать популярными у любителей, поэтому в апреле 2019 года вышла более доступная Jetson Nano. Она сразу стала серьёзным конкурентом другой любимой платформы мейкеров — Raspberry Pi.
Jetson Nano заметно производительнее Raspberry Pi, особенно в задачах с камерами, где нужна большая вычислительная мощность:
- дроны;
- продвинутое зрение роботов;
- беспилотные автомобили;
- нейросети;
- отслеживание движения;
- машинное обучение;
- компьютерное зрение;
- искусственный интеллект.

У Jetson Nano даже есть 40-контактный разъём GPIO и разъём камеры MIPI CSI-2 как у Raspberry Pi, поэтому с ней совместимы аксессуары из экосистемы Raspberry Pi — например, модули камер Pi и платы HAT. Но раз плата устроена как Raspberry Pi, подключить к Jetson Nano несколько камер непросто. Для Arducam это не проблема: эту задачу компания уже решила на платформе Raspberry Pi, и те же решения подходят для Jetson Nano.
Три решения Arducam для нескольких камер

Arducam специализируется на камерах для встраиваемых систем и интернета вещей на базе одноплатных компьютеров: выпускает HD-модули камер и адаптеры к ним. У компании большой опыт в решениях с несколькими камерами для Raspberry Pi, и все эти возможности легко перенести на Jetson Nano. Сейчас Arducam предлагает три способа подключить к одной Jetson Nano больше одной камеры: плата-адаптер для нескольких камер для поочерёдного включения 4 модулей камер, плата HAT для стереокамеры для синхронной работы двух камер и шилд USB 3.0 для камер для подключения нескольких камер по USB.
Мультиплексор Arducam: адаптер «4 в 1» для Jetson Nano

Плата-адаптер для нескольких камер, или мультиплексор камер, подключает до 4 камер MIPI CSI к одному разъёму камеры MIPI на Raspberry Pi или Jetson Nano. Единственный нюанс — адаптер работает с временным разделением (TDM): одновременно активна только одна камера. Адаптер быстро переключается между камерами под управлением программы, и создаётся впечатление, что все четыре камеры работают одновременно. Такое решение подходит для систем, где не нужна одновременная потоковая передача со всех камер, а достаточно анализа отдельных снимков.
Шилд USB 3.0 для камер

Ещё один высокоскоростной интерфейс Jetson Nano — порт USB 3.0 с пропускной способностью 5 Гбит/с, что соответствует примерно 4 Гбит/с полезных данных. У Arducam есть шилд USB 3.0 для камер, который работает и на Jetson Nano. К Jetson Nano можно подключить несколько камер USB 3.0, если их суммарный поток не выходит за предел в 4 Гбит/с. Для синхронизации камер нужны камеры с глобальным затвором и входом внешнего запуска (trigger).
Подробнее о шилдах USB-камер Arducam — в документации.
Ближайшие планы: плата HAT для стереокамеры

Arducam выпустила плату HAT для стереокамеры для Raspberry Pi: она позволяет подключить две одновременно работающие камеры к одному разъёму MIPI CSI-2 на Raspberry Pi. Главное — эти две камеры полностью синхронизированы. Jetson Nano использует тот же разъём камеры, что и Raspberry Pi, поэтому решение можно перенести и на эту платформу. Сейчас Arducam работает над переносом платы HAT для стереокамеры на Jetson Nano.
Jetson Nano и Arducam: больше возможностей с несколькими камерами
Серию Jetson выпустили, чтобы «автоматизировать всё» за счёт мощного GPU и производительности в задачах ИИ. Чтобы показать возможности Jetson Nano, NVIDIA также выпустила готовый набор для сборки автономного робота JetBot. Но, по мнению Arducam, с программами от сообщества и решениями Arducam для нескольких камер можно сделать гораздо больше.
Возьмём для примера автономную роботизированную машинку. На Jetson Nano уже можно использовать программирование на CUDA (вычислительная платформа и API от NVIDIA) и робототехническую операционную систему ROS, в которую встроены методы и алгоритмы ИИ. С платой HAT для стереокамеры от Arducam к роботу на Jetson Nano можно добавить переднюю и заднюю камеры или использовать стереозрение. Это пригодится в промышленных проектах, где для точной навигации нужны одновременная локализация и построение карты (SLAM) или даже дополненная реальность.

