Table des matières
OpenCV 3.x
Pour les versions suivantes, on retrouve :
- les versions de OpenCV sur : http://opencv.org/releases.html
- les versions de OpenCV Contrib sur : https://github.com/opencv/opencv_contrib/releases
Les versions de OpenCV et de OpenCV Contrib doivent coïncider.
Une aide détaillée pour l'installation : http://docs.opencv.org/trunk/d7/d9f/tutorial_linux_install.html
OpenCV 3.1
De nouveaux modules sont disponibles sur opencv_contrib. Ces modules sont cités sur lien suivant : http://code.opencv.org/projects/opencv/wiki/ChangeLog#31
L'installation se fait comme précédemment. On ne doit pas oublier de télécharger ou cloner opencv_contrib qui n'est pas inclus dans le dossier OpenCV. Lien pour opencv_contrib : https://github.com/opencv/opencv_contrib
Comme indiqué sur le lien, il faut ajouter à la commande cmake :
cmake -DOPENCV_EXTRA_MODULES_PATH=<opencv_contrib>/modules <opencv_source_directory>
Une commande cmake exemple est visible plus bas dans le paragraphe opencv 3.0.
OpenCV et ROS
Pour utiliser des images ros avec OpenCV, il faut inclure le package cv_bridge de ros.
http://wiki.ros.org/vision_opencv
cv_bridge fonctionne avec opencv2 mais ne semble pas fonctionner avec opencv3. Malgré les indications données sur internet. Je ne parviens pas à faire tourner un noeud avec le package cv_bridge qui utilise OpenCV3. Dés que je manipule une matrice cv::Mat, le programme plante avec “Erreur de segmentation (core dumped)”.
La solution qui dit de désinstaller toutes versions de OpenCV et ROS puis de réinstaller OpenCV3 suivi de ROS, ne fonctionne pas http://stackoverflow.com/questions/33971444/segmentation-fault-core-dumped-when-using-cv-bridgeros-indigo-and-opencv-3 . La version de cv_bridge disponible sur le dépôt est sans doute trop ancienne.
En revanche, il existe une version plus récente de cv_bridge sur https://github.com/ros-perception/vision_opencv.git . Ne sachant pas comment installer ros avec un version plus récentes des packages, j'ai compilé le package cv_bridge dans un workspace. Puis dans mon CMakeLists.txt, j'inclus la librairie cv_bridge générée comme une librairie externe. Cette dernière mesure n'est sans doute pas nécessaire si tout se fait dans un même workspace (ie. il contiendrait le noeud utilisant cv_bridge et opencv3 et cv_bridge recompilé).
Voici la démarche que j'ai suivi : Création d'un workspace test (ce n'était qu'un test au départ)
mkdir -p ~/test_ws/src cd ~/test_ws/src catkin_init_workspace cd ~/catkin_ws/ catkin_make source devel/setup.bash
clone le dépôt git
cd src/ git clone https://github.com/ros-perception/vision_opencv.git cd .. catkin_make
Dans le CMakelists.txt de ton noeud utilisant cv_bridge et OpenCV3 :
Retirer toutes traces du package cv_bridge de ros dans CMakeLists.txt et dans package.xml. Ajouter les lignes suivantes :
include_directories( /home/[user]/test_ws/src/vision_opencv/cv_bridge/include ) link_directories( /home/[user]/test_ws/devel/lib/ ) target_link_libraries(depthmap cv_bridge)
OpenCV 3.0
(même procédure que pour OpenCV 2.4.11)
wget https://github.com/Itseez/opencv/archive/3.0.0-rc1.zip unzip 3.0.0-rc1.zip cd opencv-3.0.0-rc1/ mkdir release cd release cmake -D BUILD_DOCS=YES -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local .. make
Puis si on souhaite l'installer (risque de conflit avec des versions d'opencv précédentes)
sudo make install
Autre exemple de configuration de cmake avec CUDA :
cmake -D BUILD_DOCS=YES -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/home/jcombier/DiversTools/OpenCV/opencv-3.0.0/installation -D OPENCV_EXTRA_MODULES_PATH=/home/jcombier/DiversTools/OpenCV/opencv_contrib-3.0.0/modules -D BUILD_EXAMPLES=YES -D WITH_TBB=ON -D WITH_V4L=ON -D WITH_QT=ON -D WITH_OPENGL=ON -D ENABLE_FAST_MATH=1 -D CUDA_FAST_MATH=1 -D WITH_CUBLAS=1 -D CUDA_GENERATION=Auto ..
Pour la transition 2.4 → 3.0
http://docs.opencv.org/master/db/dfa/tutorial_transition_guide.html#gsc.tab=0
OpenCV 2.4.11
doc d'installation: http://docs.opencv.org/doc/tutorials/introduction/linux_install/linux_install.html#linux-installation
http://opencv.org/downloads.html
wget https://github.com/Itseez/opencv/archive/2.4.11.zip unzip 2.4.11.zip cd opencv-2.4.11 sudo apt-get install python-sphinx sphinx-common mkdir release cd release cmake -D BUILD_DOCS=YES -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local .. make sudo make install
Pour compiler plus vite, utilisez le multithread :
make -j8
Pour 8 threads. Si l'on souhaite configurer CMAKE avant la commande cmake :
ccmake ..
en cas de problème lors de la compilation java (lorsque plusieurs version de java sont présentes sur la machine), regarder quelle version de java et utilisée dans CMakeCache.txt
export JAVA_HOME=/usr/lib/jvm/java-6-openjdk make
Obsolète Doc OpenCV
Version 2.1
Dans cette version, les images sont des matrices, il n'y a plus besoin d'utiliser les IplImage
version c
version c++
vrac
vielle doc pas à jour (2006) http://www.cs.iit.edu/~agam/cs512/lect-notes/opencv-intro/opencv-intro.html#SECTION00073000000000000000
liste de codecs
installation sur mac
http://opencv.willowgarage.com/wiki/Welcome
http://opencv.willowgarage.com/wiki/Mac_OS_X_OpenCV_Port
sudo port selfupdate sudo port install opencv sudo port upgrade opencv
ls -la /opt/local/lib/ | grep cv -rwxr-xr-x 2 root admin 2622620 6 jul 15:17 libcv.4.dylib lrwxr-xr-x 1 root admin 13 6 jul 15:17 libcv.dylib -> libcv.4.dylib -rwxr-xr-x 2 root admin 970 6 jul 15:17 libcv.la -rwxr-xr-x 2 root admin 1266416 6 jul 15:17 libcvaux.4.dylib lrwxr-xr-x 1 root admin 16 6 jul 15:17 libcvaux.dylib -> libcvaux.4.dylib -rwxr-xr-x 2 root admin 1009 6 jul 15:17 libcvaux.la
OpenCV dans un projet Qtcreator sur mac
Dans le fichier .pro avec Qtcreator
INCLUDEPATH += /opt/local/include/opencv/
LIBS += -L/opt/local/lib/ -lcxcore -lcv -lcvaux -lhighgui
Dans les options de projet, regler
DYLD_LIBRARY_PATH à /opt/local/lib et LD_LIBRARY_PATH à /opt/local/lib
OpenCV enregistrement images et video
Version C++
#include <cv.h> #include <highgui.h> int width=600; int height=600; cv::VideoWriter *Video; Video=new cv::VideoWriter("./out.avi",CV_FOURCC('D','I','V','X') ,15,cv::Size(width,height),true); cv::Mat *Img; Img=new cv::Mat(height,width,CV_8UC3,( char *)HokuyoProcess->im_ray->data); Video->operator <<(*Img); delete Video;
//pour generer une image aleatoire randu(*Img, cv::Scalar(0), cv::Scalar(256)); //pour sauver en jpg cv::imwrite("./out.jpg",*Img);
http://aspratyush.wordpress.com/2010/04/22/install-opencv-in-linux-with-video-ffmpeg-support/
http://stackoverflow.com/questions/903753/opencv-cvcreatevideowriter-always-returns-null
OpenCV sous Windows
avec Visual C++ express 2008
- dans le dossier C:\Program Files\OpenCV\otherlibs\highgui
- ouvrir highgui.vs2005.vcproj et le convertir; F7 pour compiler la lib
- le sous projet highgui de la solution opencv qui contient les 14 projets ne marche pas!!!
C:\Program Files\OpenCV\samples\c
exemple acquisition images: http://gb01.blogspot.com/2008/01/get-images-from-camera-using-opencv.html
http://www710.univ-lyon1.fr/~eguillou/doku.php?id=m2pro:image:opencv-camera
installation driver webcam mac sous windows:
autodetection
http://www.touslesdrivers.com/index.php?v_page=29
http://www.cnetfrance.fr/telecharger/en/apple-built-in-isight-39437486s.htm
faire toutes les actions de : http://forum.parallels.com/showthread.php?p=57896
This what I did to solve the problem. It seems to work fine.
Quote: Originally Posted by Tim Surgent The easiest way to get iSight drivers is: 1. Download and install latest Apple Boot Camp from http://www.apple.com/macosx/bootcamp/ 2. Browse to Macintosh HD→Applications→Utilities 3. Right-click the “Boot Camp Assistant” and select “Show Package Contents”. 4. Go to Contents→Resources and click the DiskImage.dmg to mount it. 5. Find the “Install Macintosh Drivers for Windows XP.exe” and copy inside your VM. 6. Run
pour faire marcher camera usb sous mac, utiliser macam: http://sourceforge.net/projects/webcam-osx/files/macam/0.9.2/macam.0.9.2.dmg/download
je telecharge bootcamp
install du fichier dmg → extraire les drivers windows
onsoir, pas besoin de graver une galette pour rien, Tu vas dans application, utilitaire, clique droit sur assistant bootcamp“afficher le contenu du paquet”, contents, ressources, disque image.dmg, ca te monte un disque virtuel “macintoshdrivers”.
Tu l'ouvre et tu prend le dossier “intall macintosh drivers …..exe” soit sur une clés USB soit tu le met direct dans ton disque windows (si il est en fat32, soit avec un DD ext