Wednesday, 17 January 2018

OpenCV

From Image

Jump to: navigation, search

Contents

Introduction

OpenCV est une bibliothèque, développée par Intel, opensource multi-plateformes (Windows, Linux, MacOS). Elle fournit un très grand nombre de fonctions nécessaires pour l'acquisition et le traitement d'images, ainsi que l'affiche de ces images dans des fenêtres graphiques.

Téléchargement

Téléchargement sur sourceforge.net

Divers fichiers sont disponibles, dont des tutoriaux. Prendre, dans ce cas-ci, la dernière version pour Windows (opencv-win -> exe).

Installation et compilation

La démarche suivante est valable pour l'installation d'OpenCV sous Windows, avec Visual Studio 6, .NET ou supérieur.

Si vous utilisez Windows Vista et/ou Visual C++ Express, veuillez lire la section Particularités pour Windows Vista et Visual C++ Express

  • Installer la bibliothèque en double-cliquant sur le fichier téléchargé, comme un programme classique.
  • Depuis le nouveau menu créé dans le menu Démarrer, lancer le workspace liée à votre EDI (VS6 ou .NET)
  • Afficher le menu Build (Clic droit dans la barre de menu en haut) et régler le mode de compilation sur Debug
Vs debug.jpg
  • Compiler la solution (F7)
  • Régler le mode de compilation sur Release
  • Compiler à nouveau la solution (F7)

Vous avez maintenant créé les différents fichiers nécesaises au fonctionnement d'OpenCV.

Configuration de Visual Studio

Il y a deux étapes dans la configuration de Visual Studio

  • La configuration générale, qui est à faire une seule fois.
  • La configuration nécessaire pour chaque nouveau projet

Configuration générale

Il s'agit d'indiquer à Visual Studio les nouveaux répertoires où sont disponbiles les fichiers .h et .lib d'OpenCV.
(Rem: l'aspect du menu peut varier en fonction de votre version de Visual Studio)

  • Aller dans Tools, Options.
  • Rechercher le sous-menu VC++ Directories dans Projects and Solutions
  • Choisir Include files pour Show directories
  • Ajouter les 4 sous-répertoires comme sur l'image suivante :
Vs includedir.jpg

Le chemin C:\program files\opencv peut varier en fonction de ce que vous avez choisi lors de l'installation.

  • Choisir ensuite Library files
  • Rajouter la ligne C:\Program Files\OpenCV\lib
  • Valider avec OK

Configuration pour chaque projet

Cette étape est à recommencer pour chaque nouveau projet.

  • Aller dans les propriétés de votre projet (ALT+F7 ou menu Project, Properties)
  • Rechercher le sous-menu Linker (voir image)
  • Rajouter les fichiers lib comme sur l'image.
    • cv.lib et cxcore.lib sont à ajouter dans tous les cas
    • highgui.lib : à ajouter si vous utilisez le gestionnaire de fenêtre d'OpenCV
    • cvcam.lib : à ajouter si vous manipulez une webcam à l'aide d'OpenCV.
  • Valider avec OK
Vs lib.jpg

Particularités pour Windows Vista et Visual C++ Express

Installation et configuration de Visual C++ Express

  • Un tutorial d'installation se trouve sur developpez.com. Lisez-le attentivement.
  • N'oubliez pas d'installer la plateforme SDK !
  • Lors de l'installation de la plateforme SDK, cochez au minimum le Microsoft Windows Core et le Microsoft Data Access Services (MDAC) (comme sur le tutorial d'installation).

Problèmes rencontrés sous Windows Vista

  • Lors de la compilation d'OpenCV, un popup apparait indiquant qu'il est impossible de terminer l'opération.
    • N'installez pas OpenCV dans le répertoire programme ou programs files de Windows Vista, celui-ci protégeant ces dossiers en écriture. Installez-le plutôt dans un répertoire du type C:\OpenCV ou C:\librairies\OpenCV.

Problèmes lors de la compilation d'OpenCV

  • Impossible de trouver le fichier afxres.h !
    • Rajouter dans le répertoire Includes de VC++ Directories dans Projects and Solutions (voir Configuration générale), le répertoire

C:\(...)\Plateforme SDK\includes\mfc.

  • Des erreurs de type LINK surviennent lors de la compilation
    • Pour les projets qui posent problèmes (à priori les projets cv et cxcore ainsi que les vôtres), rajoutez dans les fichiers lib suivants (voir Configuration pour chaque projet):

gdi32.lib user32.lib advapi32.lib winmm.lib

Codes et fichiers exemples

Voici deux sources avec leur executable correspondant qui pourront vous aider à débuter dans OpenCV.

Questions

Laurent ENGELS

Liens utiles