Base OpenCV installation
Ich habe in der Vergangenheit mit OpenCV Version 3 unter Windows und Ubuntu gearbeitet und vor ein paar Jahren eine einzige Installation in OSx durchgeführt.
Wenn Sie hier gelandet sind, arbeiten Sie wahrscheinlich an einem Mac-basierten System und freuen sich auf die Arbeit mit OpenCV. Wenn dies der Fall ist, lesen Sie meinen vorherigen Artikel über die Installation von HomeBrew auf Ihrem System.
Nachdem wir HomeBrew installiert haben, ist unser nächster Schritt auf dieser Reise, die neueste Version von OpenCV zu bekommen. OpenCV 4 wurde Ende 2018 veröffentlicht und bietet einige neue Funktionen, die sich hauptsächlich auf Deep Learning beziehen.
Wir sind (vorerst) nicht besonders an diesen Funktionen interessiert, aber wir werden nur die neueste Version erhalten, damit wir in Zukunft nicht mit Updates kämpfen müssen.
Empfohlene Lektüre
Es gibt eine großartige Website von Adrian Rosebrock, auf der Sie unzählige coole Beispiele für verschiedene Anwendungen von OpenCV sowie Installationsanweisungen finden.
Für dieses spezielle Szenario, da wir uns nur auf Java konzentrieren, folgen wir den einfachen Anweisungen von der folgenden Site (https://opencv-java-tutorials.readthedocs.io/en/latest/01-installing-opencv-for-java.html), um die HomeBrew-Formel für OpenCV zu ändern und sie zu installieren Java-Kompatibilität.
Installationsprozess
Um OpenCV (mit Java-Unterstützung) über Homebrew zu installieren, müssen Sie die OpenCV-Formel in Homebrew bearbeiten, um Unterstützung für Java hinzuzufügen: brew edit opencv
Ändern Sie im sich öffnenden Texteditor die Zeile: -DBUILD_opencv_java=OFF
in -DBUILD_opencv_java=ON
.
Stellen Sie außerdem sicher, dass Sie ant in Ihrem System installiert haben.
brew install ant
Nachdem Sie den Befehl brew geändert und ant installiert haben, können Sie OpenCV effektiv installieren: brew install --build-from-source opencv
Die Installation dauert einige Minuten. Keine Panik!
Der Befehl brew install hat OpenCV aus dem Quellcode erstellt (der tatsächlich bei GitHub zu finden ist). Hinweis OpenCV ist in C ++ entwickelt, aber sie bieten viele Wrapper in verschiedenen Sprachen, auch für mobile und für die Web-Browser. Dieser Build-Prozess generiert sowohl die Wrapper-Bibliothek .jar-Datei und die native Dylib-Bibliothek, auf die wir aus unserer Entwicklungsumgebung verweisen müssen.
Nach der Installation von OpenCV finden Sie die benötigten Dateien im folgenden Pfad:
/usr/local/Cellar/opencv/4.3.0_3/share/java/opencv4
- Hinweis Dieser Pfad variiert für verschiedene OpenCV-Versionen
Einrichten der IDE
Ich werde Eclipse für die Entwicklung verwenden. Also muss ich ein neues Java-Projekt von Grund auf neu erstellen.
Erstellen Sie dann eine leere Hauptklasse.
Klicken Sie im Projekt-Explorer mit der rechten Maustaste auf den Projektnamen und dann auf Eigenschaften.
Gehen Sie im linken Menü zu Java Build Path.
Klicken Sie rechts auf die Schaltfläche Externe JARs hinzufügen und suchen Sie nach der JAR-Datei, die während des oben erläuterten OpenCV-Builds generiert wurde.
Wählen Sie die JAR-Datei aus und klicken Sie auf Öffnen.
Klicken Sie nun auf den Pfeil links neben dem JAR, das Sie gerade importiert haben, dann auf native Library location und schließlich auf Edit… auf der rechten Seite.
Geben Sie im Dialogfeld den Pfad für die dylib-Datei ein
/ usr/local /Cellar/opencv/4.3.0_3/share/java/opencv4
Klicken Sie abschließend auf Übernehmen und schließen.
Sie sind mit dem Import von OpenCV in Ihr Java-Projekt fertig.
Sie müssen nun die Bibliothek mit dem folgenden Befehl initialisieren, bevor Sie eine OpenCV-Funktion verwenden.
System.LoadLibrary(Kern.NATIVE_LIBRARY_NAME);
Diese Kernbibliothek stammt von Open CV, also, wenn Sie bereits die .jar in Ihr Projekt, es wird automatisch versucht, es aus der Organisation zu importieren.opencv.Kern.Kern;
Eine einfache Überprüfung erstellt eine Identitätsmatrix und gibt sie an die Konsole weiter.
Mat mat = Matte.auge(3,3, CvType.CV_8UC1);
System.aus.println(„mat = “ + mat.dump() );
Sie sollten die folgende Ausgabe im Terminal erhalten:
mat =
Dies bedeutet, dass Sie mit dem OpenCV-Setup fertig sind und mit der Entwicklung Ihrer computerbasierten Anwendung in Java beginnen können: D.
Wichtig:
Stellen Sie sicher, dass Sie Ihr neues Projekt mit derselben JDK-Version kompilieren und ausführen, in der die Bibliothek kompiliert wurde. (also. Die Bibliothek wurde mit einer neueren JRE kompiliert, sodass Ihr neues Projekt die OpenCV-Funktionen aus der generierten JAR-Datei nicht verwenden kann.