Запустите тренажерный зал-беседку в Google Colab Laboratory - PullRequest
0 голосов
/ 21 февраля 2019

Я пытаюсь запустить тренажерный зал-беседку в Google Colab Laboratory.
Возникла проблема при запуске сервера беседок (беседка без графического интерфейса пользователя) на Colab.
На дисплее появилось предупреждение: Unable to create X window. Rendering will be disabled, но я думаю, чтоисправить это.
Там также предупреждение о звуковой карте.не уверен, что это связано Unable to open audio device,
И там предупреждение о преобразовании Conversion of sensor type[depth] not supported
Вот пример
Можете ли вы помочь?

1 Ответ

0 голосов
/ 23 мая 2019

Чтобы запустить беседку в режиме без головы, вам нужно запустить gserver исполняемый файл вместо gazebo.Не уверен, какой из них используется инструментарием gym-gazebo.

Чтобы по-прежнему выполнять рендеринг на сервере gazebo (например, с камеры), вам необходимо использовать Xvfb (X Virtual Frame Buffer).Это X-сервер, который может работать на машинах без аппаратного дисплея и без физических устройств ввода.Он эмулирует тупой кадровый буфер с использованием виртуальной памяти.

Для вашей конкретной записной книжки colab я изменил последнюю ячейку, добавив

get_ipython().system_raw('Xvfb :1 -screen 0 1600x1200x16  &')

, чтобы создать виртуальный дисплей, и добавил DISPLAY =: 1.0 кначало последней строки, поэтому выглядело это следующим образом

DISPLAY=:1.0 python gym-gazebo/examples/turtlebot/circuit2c_turtlebot_camera_dqn.py

DISPLAY=:1.0 сообщает клиенту X Window, используемому gazebo для использования виртуального дисплея, который мы создали вместо одного по умолчанию :0.

Полная установка Gazebo на colab и запуск его в режиме безголового сервера с возможностью рендеринга может быть достигнут следующим образом:

!curl -sSL http://get.gazebosim.org | sh # Install gazebo

!apt-get install -y xvfb # Install X Virtual Frame Buffer

get_ipython().system_raw('Xvfb :1 -screen 0 1600x1200x16  &') # create virtual display with size 1600x1200 and 16 bit color. Color can be changed to 24 or 8

!source /usr/share/gazebo-9/setup.sh && DISPLAY=:1.0 gzserver --verbose # Run gazebo and tell X client to use our virtual DISPLAY :1.0

Существует также способ запустить полную беседку в симуляторе с gzweb в качестве головыи ссылка на него с помощью ngrok.io объясняется здесь как полностью рабочий блокнот.https://colab.research.google.com/drive/1A-miW8cTRKzs7B0m1m4enfiFySzBhsgN

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

 !./ngrok authtoken <token> 
...