Comment installer OpenCV sur Raspberry Pi?

Comment installer OpenCV sur Raspberry Pi?

Nous devons effectuer différentes opérations sur une image pour en extraire des informations utiles. Ainsi, ce processus d'application de différents algorithmes sur une image pour obtenir la sortie souhaitée est appelé Traitement d'image . Parfois, l'image à l'entrée est floue et nous voulons en acquérir des données. Par exemple. Lorsque les voleurs viennent attraper le vélo ou la voiture, ils viennent principalement sur le vélo et des caméras aériennes sont installées sur les routes qui capturent les images de l'incident. Nous avons besoin de connaître le numéro d'immatriculation de ce véhicule sur lequel viennent les voleurs et cela peut être fait facilement en utilisant certains algorithmes de traitement d'image. Pour effectuer le traitement d'image sur certaines images, nous devons installer certaines bibliothèques sur le matériel que nous utilisons. Parmi ces bibliothèques, la plus importante est OpenCV. OpenCV peut également être installé sur des PC et des microprocesseurs. Raspberry Pi est un microprocesseur et il est utilisé dans divers projets électroniques. Après avoir installé le système d'exploitation sur Raspberry Pi, nous pouvons y effectuer diverses tâches de traitement d'image. L'installation d'OpenCV sur Raspberry Pi est une tâche longue et mouvementée. Dans cet article, nous allons apprendre comment installer OpenCV sur Raspberry Pi pour y effectuer différentes opérations de traitement d'image.

Détection de visage avec OpenCV installé sur Raspberry Pi



Comment configurer Raspberry Pi et configurer OpenCV dessus?

Passons maintenant à la configuration de Pi et aux opérations mentionnées étape par étape pour installer OpenCV dessus. L'installation d'OpenCV sur Pi est un processus long et prend environ 4 heures, donc si vous manquez de temps, ne démarrez pas l'installation, reportez-vous à ce tutoriel lorsque vous êtes libre. Avec ce Pi est chauffé lorsqu'il a été tourné SUR pendant une longue période et des opérations de prise de temps sont effectuées dessus, alors gardez-le dans un endroit frais lorsque vous travaillez dessus.



Étape 1: Composants utilisés

  • Kit Raspberry Pi 3B +
  • Télévision avec port HDMI
  • Câble HDMI
  • Souris d'ordinateur filaire

Étape 2: Sélection du modèle Raspberry Pi

Plusieurs modèles de raspberry pi sont disponibles sur le marché. Sauf pour le raspberry pi zéro, n'importe quel modèle peut être préféré. En effet, sur Pi Zero, la mise en place d'un réseau est un travail très fatigant. Les derniers modèles comme 3A +, 3B + ou 4 peuvent être achetés. Le nouveau Raspberry Pi 3 est le gadget le plus rapide et le plus dominant que la Fondation Raspberry Pi a publié à ce jour. Donc, dans ce projet, nous utiliserons le Raspberry Pi 3B +.

Raspberry Pi 3B +



Étape 3: Connexion des périphériques

Après avoir choisi Raspberry Pi, nous connecterons le clavier et la souris au Raspberry Pi. Après les avoir connectés, utilisez le câble HDMI pour connecter Pi au téléviseur. Après avoir établi ces connexions, nous sommes prêts à aller plus loin.

Étape 4: Choix du système d'exploitation

Tout d'abord, nous aurons besoin d'une carte SD avec un système d'exploitation approprié. Lors du choix du système d'exploitation, il existe aujourd'hui diverses alternatives, du Raspbian «conventionnel» aux cadres de travail multimédia dédiés, et même à Windows 10 IoT. Il n'y a pas besoin de beaucoup d'applications, par conséquent, nous devrions laisser l'unité centrale de traitement (CPU) et la mémoire vive (RAM) autant que possible pour l'application de streaming multimédia. Un problème est qu'Arch Linux est recommandé pour les personnes qui ont beaucoup de connaissances Linux. Ils sont en première ligne et nous ne manquerons pas de rencontrer des problèmes lors de l'introduction d'applications et de bibliothèques tierces. Ainsi, s'il s'agit de votre premier établissement de cinéma maison, nous vous suggérons de choisir Raspbian Lite . Il est piloté par la ligne de commande, et peut sans trop s'étirer conçu pour continuer à fonctionner en mode «sans tête», c'est-à-dire accessible entièrement à distance via le système sans avoir besoin d'une console ou d'un écran.

Raspbian Lite



Étape 5: Assurez-vous que Raspberry Pi est à jour

Gardez les sources de votre Pi à jour, sinon le logiciel obsolète causera des problèmes. Activez la visionneuse Virtual Network Computing (VNC) sur votre Pi, puis connectez votre Raspberry Pi avec la visionneuse VNC. Le lien est fourni ci-dessous pour télécharger VNC, puis le connecter avec Pi.

Visionneuse VNC

Maintenant, ouvrez le terminal et exécutez la commande suivante:

sudo apt-get mise à jour

Ensuite,

mise à niveau sudo apt-get

De nombreux packages seront installés et si demandé, appuyez sur ET et alors Entrer pour les installer correctement.

Étape 6: Connectez-vous à Raspberry Pi

Le nom d'utilisateur par défaut du Raspberry Pi est pi, et le mot de passe par défaut est framboise. Ce sont les informations de connexion par défaut et lors de votre première connexion, utilisez ces informations pour vous connecter à pi. Vous pouvez également modifier ces détails quand vous le souhaitez.

Connectez-vous à Raspberry Pi

Étape 7: Créer suffisamment d'espace sur Raspbian pour OpenCV

OpenCV acquiert une grande mémoire, nous devons donc étendre le système de fichiers et allouer tout l'espace à la carte mémoire. Nous allons aller à l'invite de commande de framboise et taper la commande suivante:

sudo raspi-config

Une fenêtre apparaîtra et elle ressemblera à ceci:

Outil de configuration

Maintenant, nous allons cliquer sur Options avancées et là nous trouverons une option «Développer le système de fichiers». Sélectionnez cette option.

Développer le système de fichiers

Nous presserons le Entrer puis appuyez sur le bouton terminer bouton. À ce stade, notre Raspberry Pi doit être redémarré pour que les modifications prennent effet. Tapez la commande suivante pour le redémarrer:

redémarrage sudo

Après le redémarrage, nous vérifierons si notre système de fichiers s'est développé et si tout l'espace est inclus dans la carte SD ou non. En exécutant df -h commande nous pouvons vérifier que notre disque s'est développé:

Celui qui utilise une carte micro SD de 8 Go peut utiliser 50% de l'espace disponible, donc la suppression Moteur Wolfram et LibreOffice peut libérer environ 1 Go d'espace. (N'oubliez pas que cette étape est facultative).

sudoapte-avoir purgewolfram-moteur sudoapte-avoir purgelibreoffice* sudoapte-avoir nettoyer sudoapte-avoir suppression automatique

Étape 8: Installation des dépendances

Avant de partir et de dépendances, nous devons mettre à jour et mettre à niveau les packages existants installés sur Pi:

sudo apt-get mise à jour

Ensuite,

mise à niveau sudo apt-get

Maintenant, nous allons installer des outils de développement qui nous aideront à configurer la construction d'OpenCV:

sudoapte-avoir installerconstruire-essentielcmakepaquet-config

Pour effectuer les différentes opérations sur les images, nous devons charger les différents formats d'image à partir du disque dur. Ces formats incluent JPEG, PNG, etc. Pour charger ces formats d'image, nous installerons quelques packages d'E / S:

sudoapte-avoirinstallerlibjpeg-devlibtiff5-devlibjasper-devlibpng12-dev

En plus de ces packages d'E / S d'images, nous installerons également des packages d'E / S vidéo. Après avoir installé ces packages vidéo, nous pourrons charger divers formats de fichiers vidéo.

sudoapte-avoir installerlibavcodec-devlibavformat-devlibswscale-devlibv4l-dev sudoapte-avoir installerlibxvidcore-devlibx264-dev

La bibliothèque OpenCV accompagne un sous-module nommé highgui qui est utilisé pour afficher des images sur notre écran et fabriquer des interfaces graphiques essentielles. Avant de compiler ce sous-module, nous devons installer la bibliothèque de développement GTK:

sudoapte-avoir installerlibgtk2.0-devlibgtk-3-dev

Plusieurs opérations matricielles peuvent être effectuées sur une image en vérifiant la taille de l'image puis en lisant les valeurs de pixels. Nous pouvons également convertir ces valeurs de pixels en forme binaire, puis modifier ces chiffres binaires pour régénérer une image. Dans raspberry pi, nous avons certaines limitations lors de la fourniture d'entrée, par conséquent, ces bibliothèques sont importantes et doivent être installées. Par conséquent, ces résultats peuvent être améliorés en installant des dépendances supplémentaires:

sudoapte-avoir installerlibatlas-base-devGfortran

Certaines personnes travailleront sur Python 2.7 et d'autres sur Python 3. Les fichiers d'en-tête de Python 2.7 et Python 3 doivent être installés pour compiler OpenCV avec les liaisons Python:

sudoapte-avoir installerpython2.sept-devpython3-dev

Dans la nouvelle version de Raspbian, Python 3 est déjà installé et un msg peut apparaître sur le terminal Lx indiquant que 'Python 3 est déjà la dernière version' . Cette étape est importante car nous pouvons faire face à une erreur concernant le fichier d'en-tête nommé comme Python.h lors de l'exécution de la commande faire pour compiler OpenCV.

Étape 9: Téléchargement du code source OpenCV

Comme nous en avons terminé avec l'installation des dépendances, nous chercherons le dossier d'archive d'OpenCV version 3.3.0 dans le répertoire officiel d'OpenCV.

CD ~ wget -OU ouvrir.Zip *: français https://github.avec/Itseez/ouvrir/archiver/3.3.0.zip décompresserouvrir.Zip *: français

Nous installons le package complet d'OpenCV, nous devons donc inclure opencv_contrib ainsi que. Téléchargez-le depuis le site officiel, puis décompressez-le.

wget -OU opencv_contrib.Zip *: français https://github.avec/Itseez/opencv_contrib/archiver/3.3.0.zip décompresseropencv_contrib.Zip *: français

Lors du téléchargement de ces répertoires, gardez une chose à l'esprit que la version d'OpenCV et opencv_contrib devraient être les mêmes, c'est-à-dire qu'ils devraient être 3.3.0 sinon il y aura des erreurs de compilation lors de l'installation.

Étape 10: Python 2.7 ou Python 3?

En termes de performances, python 2.7 est meilleur que python 3 mais dans OpenCV, il n'y a pas beaucoup de différence. Nous devons installer pépin sur Raspberry avant de compiler OpenCV. Il s'agit d'un système de gestion de packages utilisé pour installer les packages logiciels utilisés en Python. Ces paquets peuvent être présents dans le dernier raspbian par défaut mais il est préférable de le vérifier en utilisant les commandes suivantes.

wgethttps://amorcer.pypa.JE/avoir-pépin.py sudopythonavoir-pépin.py sudopython3avoir-pépin.py

Après l'installation de pip, deux packages sont fortement recommandés et doivent être installés lorsque vous travaillez sur OpenCV. Le premier est virtualenv et le second virtualenvwrapper. Nous ne pouvons pas importer OpenCV directement dans Python, nous allons donc créer un environnement virtuel et travailler ensuite dans cet environnement. Un environnement virtuel est un outil exceptionnel utilisé pour maintenir les conditions requises par divers projets dans des endroits discrets en créant des environnements Python distincts pour chacun d'entre eux.

sudopépininstallervirtualenvvirtualenvwrapper sudorm -rf ~/.cache/pépin

Après avoir installé ces packages, nous devons mettre à jour notre ~/.profil fichier qui est le fichier caché dans notre répertoire personnel pour inclure les lignes suivantes à la fin de celui-ci. Tapez la commande suivante pour entrer dans le répertoire:

nano~/.profil

Lorsque le répertoire est ouvert, faites défiler vers le bas et comprend les lignes suivantes:

# virtualenv et virtualenvwrapper exportationWORKON_HOME=$ HOME/.virtualenvs exportationVIRTUALENVWRAPPER_PYTHON=/usr/un m/python3 la source /usr/local/un m/virtualenvwrapper.sh

Après avoir inclus ces lignes, appuyez sur ctrl + x, enregistrez-le en appuyant sur ET et sortir.

Répertoire d'accueil

Chaque fois que nous lançons le terminal et que nous nous connectons à notre Pi, ce fichier de points sera automatiquement chargé pour nous. Comme nous sommes déjà connectés, nous taperons manuellement source ~ / .profile pour charger le contenu du fichier.

Création d'un environnement virtuel Python: Nous devons créer un environnement virtuel en utilisant python 2.7 et python 3.

mkvirtualenvCV -p python2

Cela créera un environnement nommé CV sur Python 2.7. Quiconque souhaite créer un environnement sur Python 3 doit taper la commande mentionnée ci-dessous:

mkvirtualenvCV -p python3

Vérification que nous nous trouvons dans l'environnement virtuel nommé «cv»: Lorsque nous redémarrerons le pi, nous ne resterons pas dans un environnement virtuel et nous devons taper deux commandes mentionnées ci-dessous pour passer en mode environnement virtuel.

la source ~/.profil travailler surCV

L'image ci-dessous indique que nous ne sommes pas en mode environnement virtuel:

LxTerminal

Ainsi, en tapant les deux commandes mentionnées ci-dessus, nous pourrons accéder à notre environnement virtuel. Si nous voulons quitter l'environnement virtuel, nous taperons désactiver:

Travailler dans un environnement virtuel

Installation de NumPy sur Raspbian: La seule dépendance dont nous avons besoin pour installer OpenCV sur Raspberry est Numpy. Tapez la commande mentionnée ci-dessous pour installer Numpy sur Raspberry Pi. Il faudra environ 10 minutes pour installer:

pépininstallerengourdi

Étape 11: Compilation et installation d'OpenCV

Nous compilerons et installerons OpenCV dans l'environnement virtuel, alors assurez-vous que vous travaillez dans l'environnement virtuel CV. Si nous ne sommes pas dans l'environnement virtuel, OpenCV échouera à se compiler. Maintenant, changez le répertoire en répertoire personnel, sous-répertoire cv ouvert 3.3 puis créez le répertoire de construction. Après avoir créé le répertoire de construction, collez les cinq dernières lignes dans le CMake annuaire. Il vérifiera les chemins de certains ensembles de bibliothèques, les versions de python, etc.

CD ~/ouvrir-3.3.0/ mkdir construire CD construire cmake - CMAKE_BUILD_TYPE=LIBÉRATION  - CMAKE_INSTALL_PREFIX=/usr/local  - INSTALL_PYTHON_EXAMPLES=SUR  - OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.3.0/modules  - BUILD_EXAMPLES=SUR ..

Pour ceux qui utilisent Python 2.7, ils devront faire défiler jusqu'à la sortie CMake et rechercher la section Python 2.7 et voir si Numpy et les chemins des packages sont configurés correctement. Pour ceux qui utilisent Python 3, consulter la section python 3 juste en dessous de la section Python 2:

Vérification de la section Python 2.7

Maintenant, nous sommes enfin prêts à compiler OpenCV. Tapez la commande make et cela lancera le processus de compilation. La compilation prendra environ quatre heures, par conséquent, il est préférable de commencer la compilation avant de dormir la nuit afin que lorsque vous vous réveillez le matin, OpenCV soit compilé. Taper une commande «make» compilera en utilisant un seul noyau. Bien que cela prenne un peu de temps, mais il a moins de probabilité d'erreurs. L'utilisation de la commande make -j4 et make -j2 pourrait entraîner une surchauffe du Raspberry Pi et cela pourrait également entraîner des erreurs de compilation:

faire

Compilation terminée

Nous installerons OpenCV 3 sur Raspberry Pi en utilisant la commande suivante. L'exécution de cette commande copiera les fichiers respectifs dans leurs emplacements:

sudo faire installer

Notre installation sera terminée en exécutant cette commande finale:

sudoldconfig

Il reste maintenant quelques étapes lorsque nous utilisons Python 2.7 ou Python 3.

Étape 12: Terminer l'installation

Revenez au répertoire de base en tapant cd ~.

Python 3: Nous allons relier symboliquement les liaisons OpenCV dans notre cv dans le répertoire python 3 car nous avons compilé les liaisons OpenCV et python pour python 3.

CD ~/.virtualenvs/CV/lib/python3.5/site-paquets/ ln -s /usr/local/lib/python3.5/site-paquets/cv2.alors cv2.alors

C'est ça!. Maintenant, nous avons installé OpenCV sur Raspberry Pi. Nous allons maintenant le vérifier dans l'environnement virtuel.

Étape 13: Test d'OpenCV

Ouvrez le LxTerminal et écrivez le la source commande suivie de la travailler sur commander. Comme nous sommes entrés dans le mode d'environnement virtuel, nous importerons des liaisons OpenCV en tapant python, puis importons cv2. S'il n'y a pas de message d'erreur, cela signifie qu'il a été importé avec succès.

la source ~/.profil travailler surCV python >>importercv2

Après cela, nous vérifierons notre version d'OpenCV en tapant la commande suivante:

cv2.__version__

Essai]

Nous avons installé OpenCV sur Raspberry 3B +. Maintenant, nous pouvons effectuer de nombreuses opérations de traitement d'image en Python comme la détection des chiffres, la reconnaissance faciale, etc.