Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
opencv [Le 10/05/2014, 18:30] 90.1.137.208 [Caméras à la norme PAL] |
opencv [Le 01/03/2023, 20:56] (Version actuelle) L'Africain |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>Karmic Lucid programmation BROUILLON}} | + | {{tag>Jammy programmation}} |
---- | ---- | ||
Ligne 6: | Ligne 6: | ||
OpenCV(( Pour Open Computer Vision)) est une bibliothèque libre d'analyse d'images et de vision par ordinateur sous licence BSD en langage C/C++. Elle a été développée à l'origine par Intel. | OpenCV(( Pour Open Computer Vision)) est une bibliothèque libre d'analyse d'images et de vision par ordinateur sous licence BSD en langage C/C++. Elle a été développée à l'origine par Intel. | ||
- | ===== Pré-requis ===== | ||
- | * Avoir les [[:sudo|droits d'administration]] | ||
+ | ===== Installation ===== | ||
+ | Il suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] [[apt>libopencv-dev]]. | ||
- | ===== Installation ===== | ||
- | |||
- | ====via les dépôts officiels==== | ||
- | |||
- | Il suffit d'[[:tutoriel:comment_installer_un_paquet|installer les paquets]]: [[apt://libcv1|libcv1]] (ou [[apt://libcv4|libcv4]] depuis [[lucid|Ubuntu 10.04 LTS]]) et [[apt://libcv-dev|libcv-dev]]. | ||
- | |||
- | ==== Par compilation ==== | ||
- | |||
- | === Dépendances === | ||
- | |||
- | FIXME valable sur Intrepid, à mettre a jour pour que ce soit indépendant des versions | ||
- | |||
- | * [[apt://cmake|CMake]] 2.6 ou supérieur | ||
- | * [[apt://subversion|Subversion]] (SVN) client | ||
- | * GTK+ 2.x or higher, including headers (e.g. [[apt://libgtk2.0-dev|libgtk2.0-dev]]) | ||
- | * [[apt://pkg-config|pkg-config]] | ||
- | * [[apt://libpng12-dev|libpng]], [[apt://zlib1g-dev|zlib]], [[apt://libjpeg62-dev|libjpeg]], [[apt://libtiff4-dev|libtiff]] et [[apt://libjasper-dev|libjasper]] with development files. | ||
- | * [[apt://python-dev|Python]] 2.3 or later with developer packages (e.g. python-dev) | ||
- | * [[apt://swig1.3|SWIG]] 1.3.30 or later | ||
- | * [[apt://libavcodec-dev|libavcodec]] etc. from [[apt://ffmpeg|ffmpeg]] 0.4.9-pre1 or later + headers. | ||
- | |||
- | [[:tutoriel:comment_installer_un_paquet|Installez]] les bibliothèques nécessaires à la compilation : | ||
- | **[[apt://build-essential,gcc,cmake,subversion,libgtk2.0-0-dev,pkg-config,libpng-dev,libjpeg-dev,libtiff-dev,libjasper-dev,python-dev,swig1.3,libavformat-dev,libdc1394-22-dev,libgtk2.0-dev|build-essential gcc cmake subversion libgtk2.0-0-dev pkg-config libpng-dev libjpeg-dev libtiff-dev libjasper-dev python-dev swig1.3 libavformat-dev libdc1394-22-dev libgtk2.0-dev libcv-dev libcvaux-dev]]** | ||
- | |||
- | === Compiler les sources pour Karmic === | ||
- | |||
- | |||
- | Ouvrez un [[:terminal]] et tapez: | ||
- | |||
- | <code> | ||
- | # On se place dans le dossier personnel (par exemple) | ||
- | cd | ||
- | |||
- | # On télécharge les sources de OpenCV sur sourceforge | ||
- | wget http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.0/OpenCV-2.0.0.tar.bz2/download | ||
- | |||
- | # On désarchive le dossier | ||
- | tar -xjf OpenCV-2.0.0.tar.bz2 | ||
- | |||
- | # On efface l'archive, on crée un dossier build et on va dedans | ||
- | rm -r OpenCV-2.0.0.tar.bz2 | ||
- | mkdir opencv.build | ||
- | cd opencv.build | ||
- | |||
- | # Et on installe | ||
- | cmake ../OpenCV-2.0.0 | ||
- | make -j 2 | ||
- | sudo make install | ||
- | sudo ldconfig | ||
- | </code> | ||
- | |||
- | === Méthode manuelle (vétuste?)=== | ||
- | |||
- | Télécharger directement l'archive depuis le site [[http://sourceforge.net/project/showfiles.php?group_id=22870&package_id=16948|sourceforge d'OpenCV]]. | ||
- | |||
- | Décompressez l'archive d'OpenCV que vous avez téléchargé dans un répertoire de travail. | ||
- | Puis faites : | ||
- | <code>./configure | ||
- | make | ||
- | #Optionnel make check | ||
- | make install</code> | ||
- | |||
- | Si vous avez des erreurs lors du make install, vérifiez si vous avez les droits d'administrateur pour écrire dans les répertoires d'installation. Si vous ne les avez pas, faîtes simplement un sudo make install. | ||
- | |||
- | Il est possible que vous rencontriez cette erreur plus tard : | ||
- | <code>OpenCV ERROR: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support) | ||
- | in function cvNamedWindow</code> | ||
- | |||
- | Dans ce cas, désinstallez OpenCV. | ||
- | Placez vous dans le répertoire où vous avez fait vos commandes d'installation | ||
- | <code>make uninstall</code> | ||
- | Ensuite : | ||
- | <code>sudo apt-get install libgtk2.0-dev</code> | ||
- | et suivez la procédure d'installation habituelle. | ||
- | |||
- | ===== Compatibilité Webcams ===== | ||
- | |||
- | Il existe un certain nombre de webcam non compatibles avec Opencv. Voici une technique permettant de rendre compatible sous Intrepid (Non testé avec les versions supérieures) votre webcam à partir du moment où elle fonctionne sous Ubuntu (avec un programme tel que [[:cheese|Cheese]]). | ||
- | Commencez par télécharger une version spéciale d'Opencv (malheureusement il s'agit de la version 1.0, la version 1.1pre n'est pas disponible) [[http://github.com/nzjrs/opencv/tree/master|sur ce site]] | ||
- | |||
- | Décompressez l'archive d'OpenCV que vous avez téléchargé dans un répertoire de travail. | ||
- | Puis faîtes : | ||
- | <code>./configure | ||
- | make | ||
- | make install</code> | ||
- | |||
- | Vous pouvez compiler votre programme comme d'habitude. | ||
- | Pour exécuter le programme, faites: | ||
- | <code> | ||
- | LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so ./example | ||
- | </code> | ||
==== Webcams testées et compatibles ==== | ==== Webcams testées et compatibles ==== | ||
Ligne 109: | Ligne 18: | ||
* Logitech QuickCam pro 9000 | * Logitech QuickCam pro 9000 | ||
* Hercules Webcam Dualpix HD (600*480 : ne fonctionne pas en mode HD dans openCV) | * Hercules Webcam Dualpix HD (600*480 : ne fonctionne pas en mode HD dans openCV) | ||
- | + | * Logitech C930e | |
- | ==== Webcams testées et non compatibles ==== | + | . |
- | + | ||
- | * Aucunes (pour le moment) | + | |
===== Autres caméras ===== | ===== Autres caméras ===== | ||
==== Caméras à la norme PAL ==== | ==== Caméras à la norme PAL ==== | ||
- | Les caméras de ce type sont analogiques. Le signal de sortie est à la norme CCIR et elles s'interfaçent avec une carte PCI -- ou autre -- que l'on peut trouver sur internet pour quelques euros (vous aurez plus cher de frais de transport que de carte...). Malheureusement, elle ne fonctionnent pas directement sous OpenCV. Vous pouvez vous en rendre compte en créant un programme minimum d'acquisition. Si cette dernière est très (très) lente et que l'image créée est déformée, il y a de fortes chances que votre caméra ne soit pas à la norme par défaut (NTSC, je crois). Vous pouvez aussi vérifier la norme utilisée avec [[http://doc.ubuntu-fr.org/tvtime|tvtime]]. Ce logiciel permet de configurer facilement la norme du codage (NTSC, PAL, SECAM, etc.). | + | Les caméras de ce type sont analogiques. Le signal de sortie est à la norme CCIR et elles s’interfacent avec une carte PCI -- ou autre -- que l'on peut trouver sur internet pour quelques euros (vous aurez plus cher de frais de transport que de carte...). Malheureusement, elle ne fonctionnent pas directement sous OpenCV. Vous pouvez vous en rendre compte en créant un programme minimum d'acquisition. Si cette dernière est très (très) lente et que l'image créée est déformée, il y a de fortes chances que votre caméra ne soit pas à la norme par défaut (NTSC, je crois). Vous pouvez aussi vérifier la norme utilisée avec [[:tvtime|tvtime]]. Ce logiciel permet de configurer facilement la norme du codage (NTSC, PAL, SECAM, etc.). |
Pour avoir la norme PAL, il faut recompiler OpenCV. Voici comment procéder : | Pour avoir la norme PAL, il faut recompiler OpenCV. Voici comment procéder : | ||
Ligne 139: | Ligne 45: | ||
</code> | </code> | ||
- | À noter : | ||
- | - Je n'ai pas réussi à compiler OpenCV 2.1 sous Ubuntu Lucid. | ||
- | - Je ne crois pas que l'on puisse utiliser 2 caméras de normes différentes (à confirmer) | ||
- | - Je n'ai pas de caméra SECAM sous la main, mais je pense que la procédure est la même... | ||
===== Exemple d'utilisation ===== | ===== Exemple d'utilisation ===== | ||
Ligne 218: | Ligne 120: | ||
===== Liens utiles ===== | ===== Liens utiles ===== | ||
- | * **(en)** [[http://sourceforge.net/projects/opencvlibrary/|OpenCV @ Sourceforge]] | + | * **(en)** [[https://sourceforge.net/projects/opencvlibrary/|OpenCV @ Sourceforge]] |
- | * **(en)** [[http://opencv.willowgarage.com/wiki/|OpenCV @ WillowGarage (wiki)]] | + | * **(en)** [[http://opencv.willowgarage.com/wiki/|OpenCV @ WillowGarage (wiki)]] |
Ligne 225: | Ligne 127: | ||
---- | ---- | ||
- | //Contributeurs : [[utilisateurs:Myrkvid]], [[utilisateurs:damien200]], [[utilisateurs:volfoni54]]// | + | //Contributeurs : [[utilisateurs:Julien Bossut]] [[utilisateurs:Myrkvid]], [[utilisateurs:damien200]], [[utilisateurs:volfoni54]]// |