OpenCV auf dem Raspberry Pi installieren

OpenCV auf dem Raspberry Pi installieren

Ich bin gerade gerade persönlich dabei eine Gesichtserkennung auf meinem Raspberry Pi 3B+ zu installieren, weil ich eben mit dieser Gesichtserkennung meinen selbst gebauten smarten Spiegel erweitern wollte.

Ich meine es ist nur eine kleine Spielerei, aber wäre es nicht mega cool wenn man nach Hause kommt, in den Spiegel geguckt und dieser einem direkt sag schön man aussieht? Beziehungsweise einen dann auch gleich direkt mit dem Namen anspricht? – Also ich würde das schon ziemlich cool finden.

OpenCV

Genug der Vorworte. Kommen wir zu OpenCV.
Diese Programmbibliothek bietet für die Programmiersprachen Python, Java, C und C++ die nötigen Funktionen, um eben eine Gesichtserkennung + die Personenerkennung auf Bildern oder Live-Videos durchzuführen.

OpenCV bietet noch viele viele weitere Features, welche wir dann in unseren Programmcodes auf einfachste Weise verwenden können, aber wir brauchen ja vorerst nur unsere Gesichtserkennung, für welche wir nun versuchen müssen OpenCV einmal auf unserem Pi zu installieren.

Installation

Es gibt einen kleinen Haken an der Geschichte. OpenCV ist nicht einfach mal so per “apt-get install”-Befehl zu installieren. Wenn dem so wäre, dann wäre dieser Artikel hier eh obsolet.

Wir müssen uns die Binaries von OpenCV selber kompilieren und an die richtigen Orte verschieben. Möglicherweise sogar noch einmal umbenennen, aber dazu später mehr.

Vorwort

Ich möchte gerne drei Dinge anmerken, bevor wir mit der Installation beginnen.
Erstens möchte ich darauf hinweisen, dass wir im folgenden versuchen werden OpenCV für die Verwendung unter Python und nicht für C oder Java zu installieren. Das sollte euch klar sein.

Weiterhin wird euer Pi in den nächsten 1-2 Stunden echt arbeiten müssen, wodurch der Pi sehr warm werden könnte. Ich würde euch empfehlen eine Kühlung an den Pi anzuschließen. Vorzugsweise eine aktive Kühlung, um Schäden am Pi zu verhindern.

Zu guter letzt möchte ich kurz anmerken, dass ich bei der Installation eine meiner SD-Karten zerstört habe. Zwar konnte ich sie am Windows PC wieder neu formatieren, aber nichts desto trotz möchte ich eben darauf hinweisen und anmerken, dass ihr hier auf eigene Gefahr hin arbeitet. Das gilt sowohl für eure SD-Karte, als auch für die Hitzeentwicklung eures Pi. Macht am Besten ein Backup eurer SD-Karte, bevor ihr beginnt.

Vorbereitungen

Bevor wir mit der Installation von OpenCV überhaupt beginnen können müssen wir ein paar kleinere oder größere Vorkehrungen treffen. Als erstes solltet ihr euren Pi auf den neuesten Stand bringen, das könnt ihr über folgende Befehle tun:

sudo apt-get update
sudo apt-get upgrade

Anschließend benötigen wir noch einen riesigen Haufen an zusätzlicher Software, die Installation dieser könnte ein wenig Zeit in Anspruch nehmen.

sudo apt-get install build-essential cmake 
sudo apt-get install pkg-config
sudo apt-get install libjpeg-dev libtiff5-dev 
sudo apt-get install libjasper-dev libpng12-dev
sudo apt-get install libavcodec-dev libavformat-dev 
sudo apt-get install libswscale-dev libv4l-dev
sudo apt-get install libxvidcore-dev libx264-dev
sudo apt-get install libgtk2.0-dev libgtk-3-dev
sudo apt-get install libatlas-base-dev 
sudo apt-get install gfortran
sudo apt-get install python2.7-dev python3-dev
pip install numpy

Als nächstes benötigen wir OpenCV.
Die Quellcodes und zusätzlichen Module können wir aus dem offiziellen GitHub Repository herunterladen und entpacken. Anschließend benötigen wir dann noch einen neuen Ordner, in dem wir die Quellcodes dann kompilieren.

cd ~
wget -O opencv.zip https://github.com/Itseez/opencv/archive/3.3.0.zip
unzip opencv.zip
wget -O opencv_contrib.zip https://github.com/Itseez/opencv_contrib/archive/3.3.0.zip
unzip opencv_contrib.zip
cd ~/opencv-3.3.0/
mkdir build
cd build

Ich weiß, dass es bereits neuere Versionen von OpenCV gibt (zu der Zeit, zu dem ich diesen Artikel geschrieben habe war es 3.4.1), aber bei Version 3.3.0 funktionierte die Installation einwandfrei, während 3.4.1 fehlschlug. Wenn mir jemand sagen könnte warum, wäre ich sehr dankbar.

Installation

Nun haben wir alle nötigen Programme, Dateien und Strukturen beisammen. Fangen wir an, dass wir OpenCV installieren. Als Erstes müssen wir die Installation “Konfigurieren”, das passiert automatisch über folgende Befehle, die jeweils einzeln einzugeben und per Enter-Taste zu bestätigen sind:

cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.3.0/modules \
-D BUILD_EXAMPLES=ON ..

Dieser Vorgang wird einige Minuten in Anspruch nehmen. Danach können wir den eigentlichen Kompilierungsvorgang starten. Damit es schneller geht verwenden wir alle 4 Kerne des Pi3 B+.

make -j4

Zum Schluss kommt noch wirkliche Installation. Eigentlich handelt es sich bei dieser “Installation” um nicht mehr, als das Verschieben der eben kompilierten Source Codes in den richtigen Ordner und das verlinken der entsprechenden Klassen.

sudo make install
sudo ldconfig

Wer mag, der kann nun noch die angelegten Ordner und heruntergeladenen ZIP-Dateien entfernen.

cd ~
rm -rf opencv-3.3.0 opencv_contrib-3.3.0
rm opencv_contrib.zip opencv.zip

Marvin

Ich bin ein Mensch, der sich neben der Programmierung noch für tausend andere Dinge interessiert, die mal mehr und mal weniger verrückt sind. Vor allem aber bin ich Feuer und Flamme mit der Programmierung von eigenen kleinen Apps und Programmen, die mein Leben bereichern.

Hat dir dieser Artikel gefallen?

Kommentar hinzufügen

*Pflichtfeld