Debian 10 dit Buster vient de sortir il y a moins d’une semaine. J’en profite alors pour faire le point sur l’installation d’OpenCV qui a un peu changer depuis l’article sur l’installation sur Debian Jessie. Dans cet article, nous allons détailler , étape par étape, comment installer OpenCV 4.1.0 en association avec python 3.7 sur votre système Debian 10.

Installer OpenCV 4.1.0 sur Debian Buster

Étape 1: Préparation des prérequis :

Pour commencer, nous allons dans un premier temps mettre à jour les paquets déjà installés sur votre machine:

sudo apt update
sudo apt upgrade

Ensuite, nous allons installer des outils nécessaires pour la compilation d’OpenCV:

sudo apt -y install build-essential cmake git pkg-config

Afin de pouvoir charger différents formats d’image dans OpenCV (JPEG, PNG, TIFF, …),, ainsi que différents formats vidéo, nous installons les paquets suivants:

sudo apt -y install libjpeg-dev libtiff5-dev libpng-dev
sudo apt -y install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev

Nous passons ensuite à l’installation des paquets GTK nécessaire pout l’utilisation des fonctions graphiques ( Affichage des images, sélection de ROI):

sudo apt -y install libgtk2.0-dev libcanberra-gtk-module

Enfin nous installons quelques dernières librairies utilisées pour l’optimisation de calculs:

sudo apt -y install libatlas-base-dev gfortran

Étape 2: Préparation de Python

Il est nécessaire, pour le fonctionnement d’OpenCV, d’installer quelques bibliothèques. Nous commençons donc par installer PIP, un gestionnaire de paquets Python:

sudo apt -y install python3-pip

Puis, nous devons installer NumPy et scipy, des librairies utilisée par OpenCV pour la manipulation de matrice et le calcul scientifique:

pip3 install numpy
pip3 install scipy

Nous venons d’installer tous les paquets nécessaires à l’installation d’OpenCV.

Étape 3: Installation d’OpenCV

Commençons par récupérer la dernière version d’OpenCV depuis Github:

cd ~
git clone https://github.com/opencv/opencv.git

Nous allons également récupérer la branche 4.1.0 d’OpenCV-Contrib. Ce répertoire permet l’utilisation de fonctionnalités supplémentaires comme les réseaux de neurones, des algorithmes de détection de visage, de tracking ….

git clone https://github.com/opencv/opencv_contrib.git

Il est enfin temps de compiler OpenCV:

cd ~/opencv
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE \
	-D CMAKE_INSTALL_PREFIX=/usr/local \
	-D INSTALL_C_EXAMPLES=OFF \
	-D INSTALL_PYTHON_EXAMPLES=ON \
	-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \
	-D BUILD_EXAMPLES=ON ..

Pensez bien a vérifier que CMake a bien sélectionné Python 3.7.

Sortie CMAKE de l'installation d'OpenCV 4 sur Debian Buster

Nous pouvons enfin compiler OpenCV

sudo make 
make install
ldconfig

Étape 4: Test de l’installation d’OpenCV 4 sur Debian Buster

Félicitation, vous venez d’installer OpenCV!

Vérifions juste que nous avons bien tout installé:

python3
>>>import cv2
>>>cv2.__version__
'4.1.0'
Test de l'installation d'OpenCV 4 sur Debian Buster

Comme vous le constatez, nous avons bien installé OpenCV 4 sur Debian 10

Et ensuite ?

Je vous invite à découvrir les fonctions de bases pour la manipulation de base des images (ici) et des vidéos (ici)


7 commentaires

REINETTE Reynholds · 20 juillet 2019 à 18 h 51 min

Bonjour Merci beaucoup pour ce tuto.
Cependant j’ai quand même quelques difficultés, quand je lance la commande ‘sudo make’ de la partie 3, j’obtiens un message un d’erreur et je suis incapable de finir l’installation
un conseil ?
make[2] : on quitte le répertoire « /home/pi/opencv/build »
/usr/bin/ld: ../../lib/libopencv_core.so.4.1.1: undefined reference to `__atomic_compare_exchange_8′
/usr/bin/ld: ../../lib/libopencv_core.so.4.1.1: undefined reference to `__atomic_fetch_sub_8′
/usr/bin/ld: ../../lib/libopencv_core.so.4.1.1: undefined reference to `__atomic_load_8′
/usr/bin/ld: ../../lib/libopencv_core.so.4.1.1: undefined reference to `__atomic_store_8′
/usr/bin/ld: ../../lib/libopencv_core.so.4.1.1: undefined reference to `__atomic_fetch_add_8′
collect2: error: ld returned 1 exit status
make[2]: *** [apps/version/CMakeFiles/opencv_version.dir/build.make:85: bin/opencv_version] Error 1
make[2] : on quitte le répertoire « /home/pi/opencv/build »
make[1]: *** [CMakeFiles/Makefile2:26108: apps/version/CMakeFiles/opencv_version.dir/all] Error 2
make[1]: *** Attente des tâches non terminées….
make[2] : on quitte le répertoire « /home/pi/opencv/build »
make -f modules/quality/CMakeFiles/opencv_quality.dir/build.make modules/quality/CMakeFiles/opencv_quality.dir/build
make[2] : on entre dans le répertoire « /home/pi/opencv/build »
make[2]: rien à faire pour « modules/quality/CMakeFiles/opencv_quality.dir/build ».
make[2] : on quitte le répertoire « /home/pi/opencv/build »
[ 37%] Built target opencv_plot
make[2] : on quitte le répertoire « /home/pi/opencv/build »
make -f modules/reg/CMakeFiles/opencv_reg.dir/build.make modules/reg/CMakeFiles/opencv_reg.dir/build
make[2] : on entre dans le répertoire « /home/pi/opencv/build »
make[2]: rien à faire pour « modules/reg/CMakeFiles/opencv_reg.dir/build ».
make[2] : on quitte le répertoire « /home/pi/opencv/build »
[ 37%] Built target opencv_quality
[ 37%] Built target opencv_reg
make[1] : on quitte le répertoire « /home/pi/opencv/build »
make: *** [Makefile:163: all] Error 2

merci d’avance.

Catm · 19 août 2019 à 9 h 11 min

Merci pour ce tuto j’ai un problème lorsque je lance idconfig: il retourne commande non trouvé

    Florent · 20 août 2019 à 10 h 31 min

    Bonjour, la commande est « ldconfig » et non « idconfig ».
    J’espère que cela résoudra votre problème.
    Florent

      Catm · 20 août 2019 à 16 h 13 min

      Merci. Elle ne retourne pas de rèponse? J’espère ça marche!!!

Dompeyre · 22 août 2019 à 15 h 11 min

Bonjour,
enfin j’espérais pouvoir installer opencv4.0.0 tant le tuto se déroulait correctement sauf à la commande sudo make qui bloque à 83% sur
Building CCX object modules/python3/CMakeFiles/opencv_python.dir/__/src2/cv2.ccp.o
Après être resté bloqué 2 heures, j’ai interrompu le script et relancé le processus après avoir supprimer et recrée le répertoire build mais le make bloque toujours au même moment.
Faudrait-il ajouter ou modifier un paramètre -D au moment de la compilation ?
Merci d’avance si vous avez une réponse

vincent · 24 septembre 2019 à 0 h 27 min

Juste merci l’install semble bien fonctionné.
Pour c make… j’ai copier coller le pavé en me demandant si il fallait entrer ligne par ligne?
cela semble avoir fonctionné.

Alex · 30 septembre 2019 à 12 h 59 min

Juste un grand merci, j’espère voir d’autre tutaux sur OpenCV 4 + Raspberry

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.