Intelligence Artificielle - OpenCV
On ouvre le bal avec OpenCV
Introduction
Tout ce que vous voulez savoir sur OpenCV se trouve à cette adresse : Open Source Computer Vision Library
Pour résumer, OpenCV est une bibliothèque open source (logiciel libre), spécialisée dans le traitement et l’analyse des images. OpenCV est construite en blocs. Ce qui a l’avantage de diminuer la taille de l’installation car on peut choisir seulement ce qui nous sert dans un projet donné. La nouvelle version est écrite en C++ ( La version 1.x était écrite en C).
Pour notre projet nous allons avoir besoin d’installer cette bibliothèque sur notre machine. Je fais abstraction du Jetson pour l’instant. Car dans l’absolu on peut peut installer OpenCV sur Windows.
Pour ma part, j’utilise Manjaro .
A partir de là nous avons le choix:
- installer OpenCV à partir d’un package déjà pré-compilé pour notre machine. (pratique si on se trouve sur Windows et qu’on ne veut pas installer un VS ou CigWin.)
- compiler nous même les sources.
Les packages pré-compilés se trouvent ici :
- sur Github : https://github.com/opencv/opencv/releases .
- sur SourceFouge.net https://sourcefouge.net/projects/opencvlibrary/files/ .
Nous nous allons compiler depuis les sources.
II. Build
Avant de commencer on vérifie qu’on a toutes les dépendances obligatoires pour continuer :
GCC 4.4.x ou +
CMake 2.8.7 ou +
Git
GTK+2.x ou +, avec header (libgtk2.0-dev)
pkg-config
Python 2.6 ou + and Numpy 1.5 ou + avec (python-dev, python-numpy)
ffmpeg ou libav avec: libavcodec-dev, libavformat-dev, libswscale-dev
[optionnel] libtbb2 libtbb-dev
[optionnel] libdc1394 2.x
[optionnel] libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-22-dev
[optionnel] CUDA Toolkit 6.5 ou +
Pour commencer on récupère les sources :
cd ~/<dossier_de_travail>
git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git
On se place à la racine d’OpenCV :
cd ~/opencv
mkdir build
cd build
#verification des dépendances et création du Makefile
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
#On lance le build avec 7 threads en parallèles :
make -j7
III. Install
Quand la compilation est enfin terminée. On lance l’installation depuis le répertoire du build cela installera la librairie dans /usr/local/.
sudo make install
OpenCV est alors installé sur notre machine. Félicitations.
IV. Darknet
Darknet est une bibliothèque en python qui utilise un détecteur très avancé et très performant.
Darknet.Pour profiter d’OpenCV, on modifie le Makefile en changeant OpenCV =1 et si on a une machine qui emporte un GPU Nvidia GPU = 1
Si ce n’est pas déjà fait, on installe Darknet
cd ~/<dossier_de_travail>
git clone https://github.com/pjreddie/darknet.git
cd darknet
make
V. On teste Darknet
On peut télécharger le fichier pré-entraîné yolov3.weights
./darknet detector test cfg/coco.data cfg/yolov3.cfg ../darknet/yolov3.weights data/person.jpg
La detection est très rapide. Son potentiel est vraiment impressionnant !
VI. Conclusion
Nous avons installé OpenCV et Darknet. On va pouvoir continuer notre projet d’analyse d’images.
Dans la prochaine étape nous allons voir comment lire et analyser en temps réel un flux vidéo
Suite du tutoriel : à venir très bientôt !
Si vous avez des questions. Vous pouvez me contacter par mail ou via le formulaire de contact.
Contact :
par mail : contact[@]lemondeestunecamera.fr
sur notre formulaire de : contact
Priorité sera donnée aux personnes ayant fait des dons afin d’aider le projet à se développer. Pour aider un maximum de personnes à se protéger.
Soutenez le projet
Ce tutoriel est gratuit, mais si vous voulez soutenir mon travail vous pouvez :
faire un don via PayPal
Choisissez le montant désiré en bougeant le sélecteur :