Installation de base OpenCV
J’ai déjà travaillé avec OpenCV version 3 sur Windows et Ubuntu dans le passé, et j’ai fait une seule installation sur OSx il y a quelques années.
Si vous avez atterri ici, vous travaillez probablement sur un système basé sur Mac et vous avez hâte de travailler avec OpenCV. Si c’est le cas, consultez mon article précédent sur l’installation de HomeBrew sur votre système.
Après avoir installé HomeBrew, notre prochaine étape dans ce voyage consiste à obtenir la dernière version d’OpenCV. OpenCV 4 est sorti fin 2018 et fournit de nouvelles fonctionnalités principalement liées à l’apprentissage en profondeur.
Nous ne sommes pas particulièrement intéressés par ces fonctionnalités (pour l’instant), mais nous allons juste obtenir la dernière version afin de ne pas avoir à lutter à l’avenir avec les mises à jour.
Lecture recommandée
Il y a un excellent site d’Adrian Rosebrock où vous pouvez trouver des tonnes d’exemples sympas de différentes applications d’OpenCV, ainsi que des instructions d’installation.
Pour ce scénario spécifique, comme nous nous concentrons uniquement sur Java, nous suivrons les instructions simples du site suivant (https://opencv-java-tutorials.readthedocs.io/en/latest/01-installing-opencv-for-java.html), pour modifier la formule HomeBrew pour OpenCV, et l’installer sera compatible Java.
Processus d’installation
Pour installer OpenCV (avec le support Java) via Homebrew, vous devez modifier la formule opencv dans Homebrew, pour ajouter le support de Java: brew edit opencv
Dans l’éditeur de texte qui s’ouvrira, changez la ligne: -DBUILD_opencv_java=OFF
en -DBUILD_opencv_java=ON
.
Assurez-vous également d’avoir ant installé dans votre système, sinon, installez-le également avec HomeBrew.
brew install ant
Après avoir modifié la commande brew et installé ant, vous pouvez installer efficacement OpenCV: brew install --build-from-source opencv
L’installation prendra quelques minutes. Pas de panique !
La commande brew install a construit OpenCV à partir du code source (qui peut en fait être trouvé sur GitHub). Remarque OpenCV est développé en C++, mais ils offrent de nombreux wrappers dans différents langages, même pour les mobiles et pour les Navigateurs Web. Ce processus de génération générera à la fois la bibliothèque de wrapper.fichier jar, et la bibliothèque dylib native, que nous devrons référencer à partir de notre environnement de développement.
Une fois l’installation d’OpenCV terminée, vous trouverez les fichiers nécessaires dans le chemin ci-dessous :
/usr/local/Cellar/opencv/4.3.0_3/share/java/opencv4
- remarque ce chemin variera pour différentes versions d’OpenCV
Configuration de l’E
J’utiliserai Eclipse pour le développement. Je devrai donc créer un nouveau projet Java à partir de zéro.
Puis créer une classe principale vide.
Cliquez avec le bouton droit sur le nom du projet dans l’explorateur de projets, puis cliquez sur propriétés.
Accédez au chemin de construction Java dans le menu de gauche.
Cliquez sur le bouton Ajouter des pots externes sur le côté droit et sur le navigateur pour le fichier jar généré lors de la construction OpenCV expliquée ci-dessus.
Choisissez le fichier Jar et cliquez sur Ouvrir.
Maintenant, cliquez sur la flèche à gauche du pot que vous venez d’importer, puis cliquez sur emplacement de la bibliothèque native, et enfin cliquez sur le bouton Modifier… sur le côté droit.
Dans la boîte de dialogue, saisissez le chemin du fichier dylib
/ usr/local/Cellar/opencv/4.3.0_3/share/java/opencv4
Enfin Cliquez sur Appliquer et Fermez.
Vous avez terminé d’importer OpenCV dans votre projet Java.
Vous devez maintenant initialiser la Bibliothèque en utilisant la commande suivante avant d’utiliser une fonction OpenCV.
Système.Bibliothèque de chargement (Noyau.NOM_BIBLIOTHÈQUE);
Cette bibliothèque de base provient d’Open CV, donc si vous avez déjà le.jar dans votre projet, il essaiera automatiquement de l’importer depuis l’organisation.opencv.core.Core;
Une simple vérification consistera à créer une matrice d’identité et à la vider sur la console.
Mat mat = Mat.l’œil (3,3, CvType.CV_8UC1);
Système.hors.println(« mat= » + mat.vidage() );
Vous devriez obtenir la sortie suivante dans le terminal:
tapis =
Cela signifie que vous avez terminé la configuration d’OpenCV et que vous pouvez commencer à développer votre application basée sur la vision par ordinateur en Java: D.
Important:
Assurez-vous de compiler et d’exécuter votre nouveau projet avec la même version JDK que la bibliothèque a été compilée, sinon vous risquez de rencontrer des problèmes de compatibilité JRE. (c.-à-d. La bibliothèque a été compilée avec un JRE plus récent, de sorte que votre nouveau projet ne pourra pas utiliser les fonctions d’OpenCV à partir du fichier Jar généré.