Tuto : Installation et utilisation de OpenCV sur MacOS avec XCode

Pour ce tuto, nous allons utiliser la version 4.0.1 de OpenCV. Cette installation a été réalisée avec la version 10.1 de [Xcode][1]. On utilisera HomeBrew comme gestionnaire de package.
thomasC.jpg
Thomas CHABOUDMis à jour le 17 Juil 2019
tuto opencv macos xcode installation et utilisation

Pré-requis

Pour ce tuto, nous allons utiliser la version 4.0.1 de OpenCV. Cette installation a été réalisée avec la version 10.1 de Xcode. On utilisera HomeBrew comme gestionnaire de package.

Installation de HomeBrew

Pour installer HomeBrew, ouvrez un terminal et rentrez la commande suivante :

Installation de OpenCV

Une fois HomeBrew installé, on peut désormais sen servir pour installer OpenCV. Toujours depuis le terminal, écrivez la commande suivante :

La dernière version dOpenCV sera alors téléchargée. Pour ce tuto, la version est la 4.0.1. OpenCV sinstalle dans :

Installation de pkg-config

Nous allons maintenant installer pkg-config, toujours avec HomeBrew. Cet outil nous permettra de récupérer les informations nécessaires à la compilation pour OpenCV.
Dans le terminal, écrivez la commande suivante :

Afin de vérifier que tout a bien marché, nous allons afficher les flags des linkers qui nous servirons plus tard pour Xcode. Pour cela, on peut écrire la commande suivante :

path/to/opencv.pc devra être remplacé par le chemin du fichier opencv4.pc. Dans mon cas, ce chemin est :

ndlr: <numero_de_version> correspond à la version de OpenCV installée, pour ce tuto, 4.0.1.

Le résulat affiché dans la console devrait ressembler à ça : 

linker-flags-opencv.jpg

ndlr: Si la version dOpenCV installée est inférieure à 4, le fichier sappelera opencv.pc et non opencv4.pc

Configurer OpenCV sur Xcode

Création du projet C++

Pour commencer, nous allons devoir créer un nouveau projet C++. Ouvrez Xcode et créez un nouveau projet comme ceci : 

xcode-create-cpp-project-1.jpg

Appuyez sur next et choisissez C++. 

xcode-create-cpp-project-2.jpg

Header Paths

Une fois le projet créé, sur la vue globale du projet, allez dans longlet Build Settings et recherchez « header path » dans la recherche. Cliquez ensuite sur le menu déroulant « Header Search Paths » et renseignez le chemin du dossier include de opencv dans le champ Debug (il est aussi possible de le faire pour Release). Dans mon cas, ce chemin est :

ndlr: <numero_de_version> correspond à la version de OpenCV installée, pour ce tuto, 4.0.1. 

xcode-header-paths.jpg

Library Paths

Nous allons faire la même chose pour les librairies. Toujours dans longlet Build Settings, recherchez « library search ». Cliquez ensuite sur le menu déroulant « Library Search Paths » et renseignez le chemin du dossier lib de opencv dans le champ Debug. Dans mon cas, ce chemin est :

ndlr: <numero_de_version> correspond à la version de OpenCV installée, pour ce tuto, 4.0.1. 

xcode-lib-paths.jpg

Other Linker Flags

Pour finir, nous allons faire la même chose pour les autres paths. Toujours dans longlet Build Settings, recherchez « other linker flags ». Cliquez ensuite sur le menu déroulant « Other Linker Flags » et renseignez tous les chemins affichés par la commande :

Commande que nous avons vu plus haut, dans le champ Debug :  

xcode-other-flags.jpg

ndlr: Il est possible de faire un copié-collé du retour du terminal vers le champ de saisie dans Xcode
ndlr2: Si la version dOpenCV installée est inférieure à 4, les liens pour les paths des header et des libraries se terminent simplement par /include et /lib et non par /include/opencv4 et lib/opencv4