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


Исследователи из университетов Карнеги — Меллона и Беркли (США) научили четвероногого робота-собаку ходить используя данные с камеры.

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

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

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

В качестве подопытного робота использовался робот-собака Unitree A1, камера — Intel RealSense, вычислитель — UPboard и Jetson NX.

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

Модель — рекурентная нейронная сеть (RNN), которая по данным камеры напрямую прогнозирует целевые углы сочленений робота.

Карта глубины получается от камеры Intel RealSense, находящейся в голове робота. Камера захватывает изображения каждые 100 ± 20 мс с разрешением 480 × 848. Предобработка изображения заключается в  обрезке 200 белых пикселей слева, применении алгоритма заполнения пропусков (по ближайшему соседу) и понижения дискретизации до 58 × 87. Далее сжатая картинка отправляется через UDP-сокет  в базовую модель.

Модель движения отправляет команды положения ног робота (с частотой 50 Гц), которые затем преобразуются в крутящие моменты двигателей низкоуровневым PD-контроллером (работает на частоте 400 Гц).

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

Статьи

Ссылки

По теме


Добавить комментарий

Arduino

Что такое Arduino?
Зачем мне Arduino?
Начало работы с Arduino
Для начинающих ардуинщиков
Радиодетали (точка входа для начинающих ардуинщиков)
Первые шаги с Arduino

Разделы

  1. Преимуществ нет, за исключением читабельности: тип bool обычно имеет размер 1 байт, как и uint8_t. Думаю, компилятор в обоих случаях…

  2. Добрый день! Я недавно начал изучать программирование под STM32 и ваши уроки просто бесценны! Хотел узнать зачем использовать переменную типа…

3D-печать AI Android Arduino Bluetooth CraftDuino DIY IDE iRobot Kinect LEGO OpenCV Open Source Python Raspberry Pi RoboCraft ROS swarm ИК автоматизация андроид балансировать бионика версия видео военный датчик дрон интерфейс камера кибервесна манипулятор машинное обучение наше нейронная сеть подводный пылесос работа распознавание робот робототехника светодиод сервомашинка собака управление ходить шаг за шагом шаговый двигатель шилд юмор

OpenCV
Робототехника
Будущее за бионическими роботами?
Нейронная сеть - введение