Aufbau einer Pepper-Kun-Fernbedienungsumgebung mit Docker + IPython Notebook

Es gab verschiedene Begegnungen und die Chancen, Pepper zu berühren, sind gestiegen. Um ein Programm mit Pepper auszuführen, erstellen Sie eine Anwendung mit einer visuellen Programmierumgebung namens Choregraphe, stellen Sie sie für Pepper bereit und führen Sie sie aus oder steuern Sie Pepper von einem Computer aus, der NAOqi für Python usw. verwendet. Es gibt auch eine Methode.

Die Methode mit Choregraphe ist sehr intuitiv, aber in der Versuchs- und Fehlerphase, z. B. beim direkten Aufrufen der API, ** NAOqi, das Funktionen nacheinander in einem Interpreter ausführen und in einer visuellen Umgebung wie einem Bild bestätigt werden kann. Wenn Sie eine Python-Umgebung ** haben, sollte dies nützlich sein ... Also habe ich versucht, eine NAOqi for Python-Umgebung mit IPython Notebook zu erstellen, damit dieses Memo.

Dinge notwendig

Umgebung

NAOqi für Python läuft unter Python 2.7. Erstellen Sie daher das Image basierend auf dem IPython Notebook-Image https://registry.hub.docker.com/u/unfairbanks/docker-ipython-notebook/, das Python 2.7.6 enthält. Ich werde es versuchen.

Datei zum Vorbereiten

Bereiten Sie die folgenden Dateien in einem geeigneten Verzeichnis in der Docker-Umgebung vor.

  1. Dockerfile Speichern Sie den folgenden Inhalt als "Dockerfile". Die NAOqi-Dokumentation zeigt ein Beispiel mit PIL, sodass Pillow auch Pip installiert.

    FROM unfairbanks/docker-ipython-notebook
    MAINTAINER yacchin1205 <http://twitter.com/yacchin1205/>
    
    RUN apt-get update
    RUN apt-get install -y libjpeg-dev zlib1g-dev
    RUN pip install Pillow
    
    RUN mkdir /pynaoqi
    ADD ./pynaoqi-python2.7-2.0.5.3-linux64.tar.gz /pynaoqi/
    
    ADD ./run.sh /
    
  2. pynaoqi-python2.7-2.0.5.3-linux64.tar.gz Kopieren Sie die Dateien in den von Pepper Tech Fes 2014 verteilten USB-Speicher.

  3. run.sh Bereiten Sie "run.sh" vor, das das Verzeichnis enthält, in dem NAOqi für Python in "PYTHONPATH" erweitert wird.

    #! /bin/bash
    export PYTHONPATH=$PYTHONPATH:/pynaoqi/pynaoqi-python2.7-2.0.5.3-linux64
    
    ipython notebook --no-browser --ip=0.0.0.0 --port=8080 --notebook-dir=/tmp/notebook
    

Bauen

Sie können es mit dem folgenden Befehl erstellen.

docker@boot2docker:/vagrant/pepper/ipython-pythonsdk$ docker build -t test_dev/docker-ipython-notebook-pynaoqi .

Wenn der Build erfolgreich ist, erhalten Sie ein Image von test_dev / docker-ipython-notebook-pynaoqi.

Da archive.ubuntu.com nicht behoben werden konnte oder während des Builds in der boot2docker-Umgebung ein Fehler aufgetreten ist, ändern Sie "resolv.conf" unter https://github.com/boot2docker/boot2docker-cli/issues/102. Und antworte.

Versuchen Sie es mit

Container ausführen

Das erstellte Bild kann mit dem folgenden Befehl ausgeführt werden.

docker@boot2docker:/vagrant/pepper/ipython-pythonsdk$ docker run -d -p 8080:8080 -v /vagrant/notebook:/tmp/notebook test_dev/docker-ipython-notebook-pynaoqi

Hier wird / vagrant / notebook ( C: \ test \ boot2docker-vboxsf \ notebook auf dem Windows-Host) als das Verzeichnis / tmp / notebook im Container sichtbar gemacht.

Spielen Sie auf dem gestarteten IPython Notebook

Nach der Ausführung können Sie das IPython Notebook öffnen, indem Sie mit einem Browser auf "http: // Docker-Umgebung: 8080" zugreifen. Da NAOqi for Python bereits in dieser IPython Notebook-Umgebung installiert ist,

from naoqi import ALProxy
IP = "IP-Adresse von Pepper"
PORT = 9559
motion = ALProxy("ALMotion", IP, PORT)
motion.angleInterpolation(["HeadYaw", "HeadPitch"], [-0.2, -0.2], [1, 1], False)

Oder bewege deinen Hals

Da es sich um eine Notebook-Umgebung handelt, ist es möglich, das Skript zu überprüfen, während das tatsächlich erhaltene Bild überprüft wird, z. B. das Kamerabild von Pepper wie folgt zu verarbeiten.

ipython-notebook.png

Nehmen Sie ein Bild mit Ihrer Kopfkamera oder ein Bild mit einer Tiefenkamera auf. Wenn es Material gibt, werde ich es einfügen.

Recommended Posts

Aufbau einer Pepper-Kun-Fernbedienungsumgebung mit Docker + IPython Notebook
Erstellen einer Analyseumgebung mit Docker (Jupyter Notebook + PostgreSQL)
Aufbau einer virtuellen Umgebung mit Docker + Flask (Python) + Jupyter-Notebook
Aufbau einer Datenanalyseumgebung mit Python (IPython Notebook + Pandas)
Erstellen Sie eine IPython Notebook-Umgebung mit boot2docker
Aufbau der Kissenumgebung - Für Docker + iPython (und OpenCV)
Erstellen einer R-Umgebung mit Jupyter (ehemals IPython-Notebook) (unter OS X El Capitan 10.11.3)
[Python] OpenCV-Umgebungskonstruktion mit Docker (cv2.imshow () funktioniert auch)
Von Kafka bis KSQL - Einfache Umgebungskonstruktion mit Docker
EC2-Bereitstellung mit Vagrant + Jupyter (IPython Notebook) auf Docker
Parallele Berechnung mit iPython Notebook
Docker + Django + Umgebungskonstruktion reagieren
Bereiten Sie die Python3-Umgebung mit Docker vor
Spielen Sie mit Jupyter Notebook (IPython Notebook)
Führen Sie Apache-Spark auf IPython Notebook aus
Führen Sie IPython Notebook auf Docker aus
Diagrammzeichnung mit IPython Notebook
Verwenden von Bokeh mit IPython Notebook
Vom Umgebungsaufbau bis zum Einsatz für Kolben + Heroku mit Docker
Forschungs- und Entwicklungsleben mit iPython Notebook
Beginnen Sie mit Python! ~ ① Umweltbau ~
Ruby-Umgebungskonstruktion mit aws EC2
Einfache Jupyter-Umgebungskonstruktion mit Cloud9
So verwenden Sie das Jupyter-Notebook, ohne Ihre Umgebung mit Docker zu verschmutzen
[MEMO] [Aufbau der Entwicklungsumgebung] Jupyter Notebook
[Linux] Aufbau einer Docker-Umgebung auf Redhat
Automatisieren Sie die Umgebungserstellung mit ShellScript
Python3-Umgebungskonstruktion mit pyenv-virtualenv (CentOS 7.3)
Postgres-Umgebungskonstruktion mit Docker Ich hatte ein wenig Probleme, also beachten Sie
Verwenden von Chainer mit CentOS7 [Umgebungskonstruktion]
pytorch @ python3.8 Umgebungskonstruktion mit pipenv
Erstellen Sie die Entwicklungsumgebung von Django mit Docker neu! !! !! !!
[Docker] Python3.5 + Numpy + Matplotlib-Umgebungskonstruktion
Erstellen einer Umgebung mit pyenv und pyenv-virtualenv
Ich wollte ein Jupyter-Notebook mit Docker in einer Pip-Umgebung (Opticspy) verwenden.
Erstellen Sie mit Docker auf RaspberryPi3 eine Python + Flasche + MySQL-Umgebung! [Einfache Konstruktion]
Realisieren Sie mit Docker und Vagrant die Umgebungskonstruktion für "Deep Learning von Grund auf neu"
[Ubuntu 18.04] Erstellen Sie eine Python-Umgebung mit pyenv + pipenv
Greifen Sie mit Requests auf die Docker Remote API zu
Erstellen Sie mit Docker eine Jupyter Lab (Python) -Umgebung
Verwenden von Apache Spark mit Jupyter Notebook (IPython Notebook)
Vue.js + Konstruktionsmemorandum zur Flaschenumgebung ~ mit Anaconda3 ~
Holen Sie sich mit Docker eine lokale Umgebung für DynamoDB
Erstellen Sie mit Docker eine Python + uWSGI + Nginx-Umgebung
HTML-Präsentation "LIVE" mit IPython 3.0.0-dev, IPython Notebook
[Linux] Erstellen einer Jenkins-Umgebung mit Docker
Starten Sie die Umgebung mit LineBot + Heroku + Docker + Python
Infrarot-Fernbedienungsempfang mit Intel Edison
Ein Memo mit RADEX-Umgebungskonstruktion
[ev3dev × Python] SSH-Steuerung (Fernbedienung mit Tastatur)
Kommen wir zu Python # 0 (Umgebungskonstruktion)
Reichhaltige Zellenausgabe mit Jupyter Notebook (IPython)
Erstellen Sie mit Docker eine Umgebung aus NGINX + NGINX Unit + MySQL
[Linux] Aufbau einer Docker-Umgebung mit Amazon Linux 2
Konstruktionsvorlage für die lokale Python-Entwicklungsumgebung [Flask / Django / Jupyter mit Docker + VS-Code]
Einfache Erstellung einer Python-Datenanalyseumgebung mit Windows 10 Pro x VS Code x Docker
Sammeln von Informationen von Twitter mit Python (Umgebungskonstruktion)