[PYTHON] Erstellen einer Umgebung für "Tello_Video" mit Raspbian

(Hinzugefügt am 6. März 2020) Ich habe es mit Raspberry Pi 4 und Raspbian Buster mit 4 GB Speicher versucht. Es bewegt sich reibungsloser als bei Razzpie 3 und Stretch.

Einführung

Diese Seite ist

Tello-Run Python-Beispiel "Tello_Video"

Dies ist eine ergänzende Seite von.

Überblick

Vom offiziellen DJI-Python-Beispielprogramm "Tello-Python" für Tello  Tello_Video Um es zu versuchen

--Installation verschiedener abhängiger Bibliotheken

Du musst tun.

Die [Tello-Python-Seite] von git (https://github.com/dji-sdk/Tello-Python/tree/master/Tello_Video#installation) verfügt über eine Installationsmethode

・ Linux(Ubuntu 14.04 and above)

 Go to the "install\Linux" folder in command line, run

 chmod +x linux_install.sh
 ./linux_install.sh

ist was es liest. Das ist,

Ordner verschieben, Dateiattribute ändern, Shell-Dateien ausführen


$ cd install/Linux/
$ chmod +x linux_install.sh
$ ./linux_install.sh

Es bedeutet, den Befehl einzugeben. ** linux_install.sh ** </ font> ist ein Shell-Skript, das automatisch die Umgebung für Linux erstellt.

Diejenigen, die mit Linux vertraut sind, werden denken: "Wenn Sie eine sh-Datei haben, können Sie sie ausführen." Auf Raspberry Pi funktioniert es jedoch nicht, selbst wenn ich das Verfahren befolge. Die Ursachen sind die folgenden zwei Punkte.

--Cmake kann nicht mit dem Standard-Pip installiert werden. Sollte mit apt installiert werden

  • Die Installation von OpenCV ist nicht so einfach wie bei Intel-basiertem Ubuntu

cmake kann durch Umschreiben von "linux_install.sh" behandelt werden, OpenCV ist jedoch problematisch. Dieses Mal werde ich es mit einer kleinen Auslassung tun.

Voraussetzungen

Nehmen wir an, dass Tello-Python in Ihrem Home-Ordner (~) installiert ist.

Verzeichnis verschieben

Öffnen Sie zunächst die Konsole (Terminal) und geben Sie den folgenden Befehl ein, um in den Ordner Tello-Video zu wechseln.

cd(change_directory)


$ cd ~/Tello-Python/Tello-Video

Blick in Tello_Video mit dem Befehl ls,

Tello_Inhalt des Videos


$ ls
LICENSE.md  README.md  h264decoder  img  install  main.py  tello.py  tello_control_ui.py

Sie können sehen, dass es ein Verzeichnis namens "install" gibt. Der Inhalt dieses Verzeichnisses ist

Im Installationsverzeichnis


$ ls install/
Linux  Mac  Windows

Es sieht so aus und die Installationsdateien werden in jedem Verzeichnis von Linux, Mac und Windows abgelegt, aber ** keine von ihnen ist alt und nutzlos </ font> * *.

Im Fall von Raspberry Pi besteht das Problem darin, dass die Installation von OpenCV mit apt oder pip nicht einfach ist.

Raspbian Update

Lassen Sie uns zunächst Linux auf den neuesten Stand bringen.

Aktualisieren Sie auf den neuesten Status


$ sudo apt update
$ sudo apt upgrade -y

Erste Einführung von OpenCV

Der Mainstream der OpenCV-Installation von Raspberry Pi ist ein 2-stündiger Kurs, in dem Sie die Quelle herunterladen und selbst erstellen (Weinen). Es wird jedoch empfohlen, die Installation mit dem von mt08 auf der folgenden Referenzseite erstellten und veröffentlichten Debian-Paket durchzuführen, da es sehr einfach und kurz ist.

(Wenn Sie ein Experte sind, der sagt "Ich fürchte, das vorgefertigte Trojanische Pferd ist geladen", bauen und installieren Sie es bitte selbst.)

Für Raspbian Stretch

Einfache Einführung von OpenCV3 / 4 in Raspeye 3

Kopieren Sie zunächst die am Anfang der obigen Seite geschriebene Befehlsreihe und fügen Sie sie in einen Texteditor ein, um eine Shell-Datei zu erstellen. Der Dateiname kann beliebig sein, aber hier sollte er "cv_install.sh" sein. Ich werde den folgenden Auszug schreiben, aber es wird empfohlen, ihn aus der Head-Familie zu kopieren, da möglicherweise Aktualisierungen vorliegen.

cv_install.Lassen Sie uns eine Datei namens sh erstellen


OPENCV_DEB=libopencv3_3.4.6-20190415.1_armhf.deb

curl -SL https://github.com/mt08xx/files/raw/master/opencv-rpi/${OPENCV_DEB} -o ${OPENCV_DEB}
sudo apt autoremove -y libopencv{3,4}
sudo apt install -y ./${OPENCV_DEB}

#
sudo ldconfig
python2 -c 'import cv2; print(cv2.__version__)'
python3 -c 'import cv2; print(cv2.__version__)'

Speichern Sie cv_install.sh in Ihrem Home-Verzeichnis Geben Sie die Ausführungsberechtigung und führen Sie sie dann aus.

Installation mit vorgefertigten Paketen


$ chmod +x cv_install.sh
$ ./cv_install.sh

Die Datei "libopencv3_3.4.6-20190415.1_armhf.deb" wird in Ihr Ausgangsverzeichnis heruntergeladen, kann jedoch nach der Installation gelöscht werden.

Wie am Ende von cv_install.sh geschrieben,

Überprüfen der Funktion von OpenCV mit Python(Versionsanzeige)


python2 -c 'import cv2; print(cv2.__version__)'
python3 -c 'import cv2; print(cv2.__version__)'

Importieren Sie es mit Python und versuchen Sie zu sehen, ob es funktioniert. Wenn OpenCV Version 3.4.6 zweimal angezeigt wird, ist dies erfolgreich. Wenn hier ein Fehler auftritt, bedeutet dies, dass mit der Umgebung etwas nicht stimmt.

Für Raspbian Buster

Razpai: OpenCV4 für Buster

Die obige Seite wurde als Hinweis für die Installation von OpenCV3 auf Buster verwendet. Es gibt keine Shell-Quelle, die wie in Stretch kopiert und eingefügt werden kann, also werde ich es selbst machen.

Die neueste Deb-Paketdatei für Buster https://github.com/mt08xx/files/tree/master/opencv-rpi/raspbian-buster Es ist hier. Das Paket für Raspeye 2, 3 und 4 enthält "armv7l" im Dateinamen. Ab März 2020 war "libopencv3_3.4.9-20191223.1_armv7l.deb" die neueste.

Kopieren Sie den folgenden Befehl und fügen Sie ihn in einen Texteditor ein, um eine Shell-Datei zu erstellen. Der Dateiname sollte "cv_install_buster.sh" sein.

cv_install_buster.Lassen Sie uns eine Datei namens sh erstellen


curl -SLO https://github.com/mt08xx/files/raw/master/opencv-rpi/raspbian-buster/libopencv3_3.4.9-20191223.1_armv7l.deb
sudo apt autoremove -y libopencv{3,4}
sudo apt install -y ./libopencv3_3.4.9-20191223.1_armv7l.deb

#
sudo ldconfig
python2 -c 'import cv2; print(cv2.__version__)'
python3 -c 'import cv2; print(cv2.__version__)'

Speichern Sie cv_install_buster.sh in Ihrem Home-Verzeichnis Geben Sie die Ausführungsberechtigung und führen Sie sie dann aus.

Installation mit vorgefertigten Paketen


$ chmod +x cv_install_buster.sh
$ ./cv_install_buster.sh

Die Datei "libopencv3_3.4.9-20191223.1_armv7l.deb" wird in Ihr Ausgangsverzeichnis heruntergeladen, kann jedoch nach der Installation gelöscht werden.

Wenn die OpenCV-Version 3.4.9 zweimal angezeigt wird, ist sie erfolgreich. Wenn hier ein Fehler auftritt, bedeutet dies, dass mit der Umgebung etwas nicht stimmt.

Umschreiben von linux_install.sh

Dann schreiben Sie linux_install.sh für Raspberry Pi neu.

  1. Ändern Sie cmake von der Pip-Installation in die passende Installation
  2. OpenCV wurde bereits installiert. Kommentieren Sie es aus und deaktivieren Sie es.

Führen Sie die beiden oben genannten Aufgaben aus.

Das heißt, die 21. und 22. Zeile

Vorher ändern


# install cmake
#sudo apt-get install cmake -y
sudo pip install cmake

Zu

Nach der veränderung


# install cmake
sudo apt-get install cmake -y
#sudo pip install cmake

Schreiben Sie einfach um. Auch die Installation von OpenCV in der 30. Zeile

Kommentar zur OpenCV-Installation


#sudo pip install opencv-python

Deaktivieren Sie es so.

Schreiben Sie linux_install.sh mit einem Texteditor (vi, nano, gedit, pluma, mousepad usw.) neu. Unten finden Sie ein Beispiel für das Umschreiben mit Nano.

Beispiel für das Umschreiben mit Nano


$ nano install/Linux/linux_install.sh

Speichern Sie beim Bearbeiten mit nano die Datei mit Strg + o und beenden Sie den Editor mit Strg + x.

linux_install.sh


#!/bin/sh

echo 'Compiling and Installing the Tello Video Stream module'
echo 'You might need to enter your password'

cd .. 
cd ..
sudo apt-get update -y

# install python 2.7
sudo apt-get install python2.7 python-pip -y
sudo pip install --upgrade pip

#switch to python2.7
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 150 
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 100

sudo apt-get update -y

# install cmake
sudo apt-get install cmake -y    #Hier#Entfernen und aktivieren
#sudo pip install cmake     #Kommentar hier raus

# install dependencies
sudo apt-get install libboost-all-dev -y
sudo apt-get install libavcodec-dev -y
sudo apt-get install libswscale-dev -y
sudo apt-get install python-numpy -y
sudo apt-get install python-matplotlib -y
#sudo pip install opencv-python   #Kommentar hier raus
sudo apt-get install python-imaging-tk

# pull and build h264 decoder library
cd h264decoder
mkdir build
cd build
cmake ..
make

# copy source .so file to tello.py directory
cp libh264decoder.so ../../

echo 'Compilation and Installation Done!'

Führen Sie linux_install.sh aus

Wechseln Sie nach dem Umschreiben in den Ordner mit der Shell-Datei und Gib die Ausführungsberechtigung mit chmod und führe aus.

Ordner verschieben, Dateiattribute ändern, Shell-Dateien ausführen


$ cd ~/Tello-Python/Tello_Video/install/Linux/
$ chmod +x linux_install.sh
$ ./linux_install.sh

Es wird automatisch installiert. Wenn der Dateidownload für apt oder pip fehlschlägt, Drücken Sie Strg + C, um den Vorgang zu beenden und es erneut zu versuchen. Wenn Sie es ungefähr dreimal tun, sollte es sicher installiert werden. (-_- ;;;

Kehren Sie nach Abschluss der Installation zum Verzeichnis "Tello-Video" zurück.

Gehe zwei Ebenen zurück


$ cd ../../

** Damit ist die Arbeit abgeschlossen. </ font> **

abschließend

Ich kann es mit Raspberry Pi installieren, ** Dekodierungsfehler treten häufig auf ** ** Selbst wenn ich versuche, das Tello_Video-Programm zu beenden, wird es zu einem Zombie und stirbt nicht ** Probleme treten häufig auf. Es ist sowieso schwer.

Ich frage mich, ob Raspberry Pi 4 mit 4 GB Speicher in Ordnung ist. .. .. Ich werde es auch mit 4 und Buster versuchen.

Als nächstes werde ich schreiben, wie man eine Umgebung unter Windows erstellt.

Recommended Posts