Dans le tutoriel précédent, nous avons vu comment piloter (afficher l’image en live, enregistrer un cliché et un clip vidéo à l’aide du clavier) sur un Raspberry Pi sous Raspbian. Dans ce tutoriel, nous allons faire la même chose mais sur un Orange Pi Lite (version WiFi). Il n’est malheureusement pas possible d’utiliser la librairie Picamera qui a été conçue pour fonctionner exclusivement pour le Raspberry Pi. Nous allons donc devoir utiliser OpenCV qui est une librairie Open Source extrêmement puissante.

Matériel utilisé

Comme nous l’avons vu dans cet article, le connecteur CSI de l’Orange Pi est différent de celui du Raspberry Pi. Je me suis procuré la caméra 2MP vendu par Orange Pi (environ 6€ sur Aliexpress). La qualité de l’image est loin d’égaler celle de la caméra v2.1 8MP du Raspberry Pi, mais pour débuter, le rapport qualité/prix est imbattable.

orange pi lite h3 computer board Orange Pi Lite

11,50€ (+ 3,50€ de frais de port environ)

orange pi alimentation 5v 3a jack Alimentation 5V – 3A

Environ 11€

Ou un cable USB, environ 2,50€

carte sd Armbian sur carte SD 8Go classe 10

A partie de 6,90€

camera orange pi 2MP csi Caméra carte 2MP d’origine Orange Pi

environ 7€ (port gratuit)

Préparation de l’environnement

Commençons par préparer l’environnement.

Mise à jour du système Armbian

Sauf si vous venez de le faire, le mieux est de toujours commencer par une petite mise à jour du système

Installation de python 2.7

Une fois le système à jour, on peut installer Python 2.7. Pourquoi pas Python 3 me direz-vous ? C’est possible sans aucun problème. A vous de choisir en fonction de votre niveau. Si vous débutez, vous trouverez beaucoup plus d’exemples sur Python 2.7.

On en profite pour installer le gestionnaire de paquets pour python (pip). En effet, tous les dépôts risquent de ne pas être déclarés dans les sources de la distribution Armbian. Excécutez la commande suivante pour installer la commande pip :

Installation d’OpenCV pour Python

On trouve beaucoup de tutoriels sur internet qui expliquent comment installer OpenCV (sur Raspberry Pi ou Orange Pi) dans un environnement virtuel à partir du code source. C’est une solution, mais pour l’avoir testé, c’est long (une grosse demi-journée de compilation sur mon Orange Pi Lite) et surtout l’utilisation de l’environnement virtuel est fastidieuse, surtout pour si vous débutez. Ici, on va suivre le chemin le plus court, on va simplement installer la librairie avec cette simple commande

Acceptez toutes les questions posées.

Programme test : affichage en direct de la caméra de l’Orange Pi

Placez vous dans le répertoire de votre choix et ouvrez un nouveau document, par exemple testcam_orangepi.py. Collez le code ci-dessous.

Que fait ce code ?

On appel la librairie OpenCV 2 ( import cv2)

On créé un objet qui capture le flux vidéo envoyé par la caméra (0), c’est à dire celle qui est reliée à /dev/video0.

On affiche l’image de la caméra jusqu’à ce que la touche Escape soit pressée

On lit le flux vidéo (c.read) et on le stocke dans la variable f  ( _,f = c.read()).

Ensuite on affiche le flux vidéo à l’aide de la fonction imshow qui prend comme paramètre :

  • Le titre de la fenêtre dans laquelle sera diffusé le flux vidéo
  • La variable qui contient le flux vidéo

Premier test

Enregistrez le script (CTRL+X puis Y) et lancez le

Ah, ça ne fonctionne pas !

Pourquoi ça ne marche pas  ?

Tout d’abord, on sait que la librairie cv2 (OpenCV) fonctionne. C’est déjà une bonne nouvelle, nous ne serons pas obligés de tout compiler à partir des sources ! En googlisant l’erreur ( libv4l2: error setting pixformat: Operation not permitted), on tombe rapidement sur cet article du concepteur du script vidcopy qui permet de recopier le flux vidéo produit par la librairie v4l2loopback.

Installation de v4l2loopback et vidcopy

On va simplement suivre le tutoriel de Leonardo Lontra.

Installation de v4l2loopback

Inscrivez-vous à la newsletter hebdomadaire

Aucun spam et aucun autre usage ne sera fait de votre email. Vous pouvez vous désinscrire à tout moment.