OpenCV-Paketkonfiguration

Faaiq Bilal 12 Oktober 2023
  1. das libopencv-dev ist nicht installiert
  2. C++-Dateien, die OpenCV verwenden, werden nicht kompiliert
OpenCV-Paketkonfiguration

OpenCV ist eine Bibliothek für maschinelles Lernen, die verschiedene Funktionen in Bezug auf Computer-Vision-Anwendungen bereitstellt. OpenCV kann mit C++, Python, Java und MATLAB verwendet werden.

Da es sich um eine externe Bibliothek handelt, die in keine Programmiersprache integriert ist, muss sie vor der Verwendung separat auf dem System installiert werden. Obwohl es normalerweise einfach ist, OpenCV zu installieren und auszuführen, können einige Probleme dazu führen, dass die OpenCV-Bibliotheksfunktion nicht funktioniert, wie z. B. fehlende Pakete oder falsche Syntax beim Kompilieren.

Im Folgenden listen wir einige häufige Probleme bei der Installation und Ausführung von OpenCV auf und wie man sie behebt.

das libopencv-dev ist nicht installiert

Das Paket libopencv-dev ist ein unterstützendes Paket zum Ausführen von OpenCV und enthält einige Bibliotheksbinärdateien, die normalerweise zum Ausführen von OpenCV auf Linux-Distributionen, insbesondere Ubuntu, erforderlich sind.

Wenn das Ausführen einer Datei mit OpenCV-Funktionen nicht ausgeführt wird und das System die Fehlermeldung pkg-config kann OpenCV nicht finden anzeigt, liegt dies normalerweise am fehlenden Paket libopencv-dev. Dieses Problem lässt sich leicht durch die Installation von libopencv-dev lösen.

Wenn Sie OpenCV mit dem Linux-Paketmanager auf dem System installiert haben, führen Sie zur Installation von libopencv-dev den folgenden Befehl auf dem Terminal aus.

sudo apt-get install libopencv-dev

Wenn Sie OpenCV für die Verwendung mit Python mit pip installiert haben, müssen Sie den folgenden Befehl auf dem Terminal ausführen.

sudo apt-get install libopencv-dev python-opencv
sudo pip install opencv-python

Hinweis: Wenn Sie für den obigen Befehl pip3 auf Ihrem System verwenden, müssen Sie pip durch pip3 ersetzen.

C++-Dateien, die OpenCV verwenden, werden nicht kompiliert

Angenommen, Sie haben OpenCV bereits mit allen relevanten Paketen auf Ihrem System installiert und erhalten beim Kompilieren mit G++ den Fehler undefinierte Referenz auf OpenCV. In diesem Fall liegt es normalerweise an der Syntax des Kompilierbefehls.

Wenn Sie beispielsweise mit dem folgenden Befehl kompilieren, wird der Fehler undefinierte Referenz generiert.

g++ `pkg - config-- cflags-- libs opencv` test.cpp - o test

Um diesen Fehler zu beheben, fügen Sie pkg-config --cflags --libs opencv am Ende des Befehls wie folgt hinzu:

g++ test.cpp - o test `pkg - config-- cflags-- libs opencv`

Der obige Befehl bewirkt, dass die Datei erfolgreich kompiliert und ausgeführt wird.

Wenn Sie die korrekte Syntax verwenden und die Datei immer noch nicht kompiliert wird und einen Fehler undefinierte Referenz generiert, kann dies daran liegen, dass die auf Ihrem System installierte Version von OpenCV nicht mit dem Kompilierungsbefehl übereinstimmt. Wenn Sie beispielsweise OpenCV4 verwenden, müssen Sie die 4 unbedingt auch mit dem Kompilierungsbefehl hinzufügen.

g++ test.cpp - o test `pkg - config-- cflags-- libs opencv4`

Verwandter Artikel - Python OpenCV