Installation d'opencv 2.2 et son utilisation avec Visual Studio 2010/2008
Voici un petit tutorial pour installer OpenCV 2.2 et ensuite l intégrer dans Visual Studio. Logiciels nécessaires à ce tutoriel : 1) OpenCV 2.2 Disponible ici : sourceforge.net/projects/opencvlibrary/files/opencv-win/2.2 2) Cmake ; Disponible ici : www.cmake.org cmake-2.8.4-win32-x86.exe 3) Visual Studio 2008/2010 Installation des logiciels : 1) Installation d OpenCV 2.2.0. 2) Pour l installation de Cmake, il n y a rien de bien compliqué, il suffit de suivre les indications à l écran. Configurations des logiciels : Vous pouvez lancer Cmake, mais il faudra ajouter les répertoires : C:\OpenCV2.2 C:\OpenCV2.2\build dans browse source dans browse build Vérifier si les instructions en dessous de «Name» sont en rouge, si c est le cas c est que Visual Studio est lancé (par exemple). Si vous n avez aucune instruction en dessous de «Name», cliquez sur «Generate», choisir le compilateur, dans ce cas-ci «Visual Studio 10» car nous utilisons «Visual Studio 2010». Numérisation Interactive de Partitions 2 Version 1.0 du document
Il va falloir : - décocher BUILD_NEW_PYTHON_SUPPORT; - cocher BUILD_EXAMPLES, INSTALL_C_EXAMPLES, OPENCV_BUILD_3DPARTY_LIBS ; - et recliquer sur «Configure» et ensuite sur «Generate». Vous pouvez avoir un «Warning» pendant la «Génération» avec Cmake, celle-ci : CMake Warning (dev) at CMakeLists.txt:1250 (add_subdirectory): The source directory C:/OpenCV2.2/include does not contain a CMakeLists.txt file. Mais, ne vous occupez pas de cet avertissement. Dès que la «Génération» est terminée, vous pouvez quitter Cmake et ouvrir le fichier OpenCV.sln dans «c:\opencv2.2\build» avec Visual Studio. Cela prendra du temps. - Ensuite rechercher ALL_BUILD dans la fenêtre de droite, clic droit sur ALL_BUILD et ensuite «Générer». Faire la même manipulation mais ici en mode «Release». Remarque : Vous pouvez avoir des avertissements mais n en tenez pas compte. Quand c est fini, vous pouvez créer un projet C++ en mode console win32 avec Visual Studio (ce n est pas bien compliqué). Avec Visual Studio 2010, faire un clic droit sur votre Projet -> Propriétés. Une fenêtre s ouvre : Dans la partie Répertoires VC++, nous allons rajouter les éléments ci-dessous à chacun des deux répertoires : - «Répertoire Include» «C:\OpenCV2.2\include\opencv;C:\OpenCV2.2\include» - «Répertoire de bibliothèques» «C:\OpenCV2.2\lib» Numérisation Interactive de Partitions 3 Version 1.0 du document
Avec Visual Studio 2008, aller dans Outils -> Option -> Répertoire VC++ : Et, comme Visual Studio 2010, rajouter les mêmes éléments à chacun des deux répertoires. Même manipulation avec VS2008/2010 : faire un clic droit sur votre Projet -> Propriétés. Aller dans C/C++ -> Général : Rajouter «C:\OpenCV2.2\include\OpenCV» dans «Autres répertoires Include». Aller ensuite dans Editeur de liens -> Général : Rajouter «C:\OpenCV2.2\lib\release» dans «Répertoires de bibliothèques supplémentaires». Aller ensuite dans Editeur de liens -> entrée : Rajouter «C:\OpenCV2.2\lib\opencv_core220d.lib;C:\OpenCV2.2\lib\opencv_highgui220d.lib;C:\OpenCV2.2\lib\opencv_video220 d.lib;c:\opencv2.2\lib\opencv_ml220d.lib;c:\opencv2.2\lib\opencv_legacy220d.lib;c:\opencv2.2\lib\opencv_imgproc2 20d.lib» dans la partie «Dépendances supplémentaires». Remarque : Pour la version 2008, il faut faire ces modifications aussi en mode «Release». Cliquer sur «Appliquer» pour que les modifications effectuées soient prises en compte. Numérisation Interactive de Partitions 4 Version 1.0 du document
Puis, sur «OK» pour revenir à la fenêtre de travail. Maintenant, voyons si cela fonctionne. Placer l image de l ISIB dans le répertoire de votre projet. Dans votre programme en dessous de «#include "stdafx.h"», recopier ceci : #include cv.h #include highgui.h using namespace std; int main() { IplImage *img=cvloadimage("isib.jpg", CV_LOAD_IMAGE_GRAYSCALE); if (!img) { printf("erreur: On ne sait pas ouvrir le fichier.\n"); return 2;//erreur pas de fichier trouvé } cvnamedwindow("projet NIP WP RG", CV_WINDOW_AUTOSIZE);// créer une fenetre IplImage *img2=cvcloneimage(img); //cloner img cvshowimage("projet NIP WP RG", img2); //afficher image fenetre cvwaitkey(0); //attendre touche cvdestroywindow("projet NIP WP RG"); //détruire la fenetre cvreleaseimage(&img); //memoire cvreleaseimage(&img2); //memoire return 0; //terminer avec succes } Numérisation Interactive de Partitions 5 Version 1.0 du document
Voici le résultat final : Numérisation Interactive de Partitions 6 Version 1.0 du document