Tutoriel Raspberry Pi
Choisir et utiliser une caméra sur un Raspberry Pi
Prendre photos et vidéos


Mis à jour le : 28/03/2018


En plus de tous les composants que l'on peut relier aux GPIOs, le Raspberry possède deux connecteurs particuliers. Ils permettent de relier directement un écran et une camera au Raspberry Pi. Nous allons voir dans ce tutoriel comment bien choisir sa caméra parmis toutes celles proposées à la vente, puis comment la brancher pour enfin prendre photos et vidéos.

I. Prérequis

En plus d'un Raspberry Pi, il va falloir pour ce tutoriel une caméra compatible. Il en existe 4 modèles principaux. Pour vous aider à faire votre choix, en voici un comparatif :

Modèle Caméra Raspberry Rev 1.3 Caméra Raspberry Rev 2.1
Marque OFFICIELLE
Longruner Camera pour Raspberry
Vision de nuit
Caméra Fish-Eye pour Raspberry
Photo "ronde", grand angle
Résolution 5 Megapixels
2592 x 1944 pixels
8 Megapixels
3280 × 2464 pixels
5 Megapixels
2592 x 1944 pixels
5 Megapixels
2592 x 1944 pixels
Capteur Omnivision 5647 Sony IMX219 Omnivision 5647 Omnivision 5647
Résolution Vidéo max 1080p @30fps | 720p @60fps
640*480 @90fps
1080p @30fps | 720p @60fps
640*480 @90fps
1080p @30fps | 720p @60fps
640*480 @90fps
1080p @30fps | 720p @60fps
640*480 @90fps
Note Amazon 4 4.2 4.3 3.6
Prix ~12€ ~25€ ~26€ ~25€
Plus d'infos
Modèle Caméra Raspberry Rev 1.3
Résolution 5 Megapixels
2592 x 1944 pixels
Capteur Omnivision 5647
Résolution Vidéo max 1080p @30fps | 720p @60fps
640*480 @90fps
Note Amazon 4
Prix ~12€
Plus d'infos
Modèle Caméra Raspberry Rev 2.1
Marque OFFICIELLE
Résolution 8 Megapixels
3280 × 2464 pixels
Capteur Sony IMX219
Résolution Vidéo max 1080p @30fps | 720p @60fps
640*480 @90fps
Note Amazon 4.2
Prix ~25€
Plus d'infos
Modèle Longruner Camera pour Raspberry
Vision de nuit
Résolution 5 Megapixels
2592 x 1944 pixels
Capteur Omnivision 5647
Résolution Vidéo max 1080p @30fps | 720p @60fps
640*480 @90fps
Note Amazon 4.3
Prix ~26€
Plus d'infos
Modèle Caméra Fish-Eye pour Raspberry
Photo "ronde", grand angle
Résolution 5 Megapixels
2592 x 1944 pixels
Capteur Omnivision 5647
Résolution Vidéo max 1080p @30fps | 720p @60fps
640*480 @90fps
Note Amazon 3.6
Prix ~25€
Plus d'infos

Maintenant que vous avez choisi votre modèle de caméra, passons à son installation.

II. Branchement de la caméra

Relier la caméra et le Raspberry est très simple. En effet, celle-ci dispose de son propre connecteur (slot). Il se trouve entre la prise Ethernet et la sortie HDMI. Suivez les images pour brancher correctement la caméra.

Branchement-Camera-Raspberry-PI-Etape 1 Branchement-Camera-Raspberry-PI-Etape 2 Branchement-Camera-Raspberry-PI-Etape 3

III. Préparation du Raspberry

Maintenant que tout est bien branché, on va devoir faire quelques réglages côté Raspberry. Dans un premier temps, il va falloir activer l'interface de la caméra. Pour se faire, rien de compliqué. Entrez la commande suivante dans le terminal.

sudo raspi-config

Une fois dans le menu, servez-vous des flèches directionnelles et de la touche Enter pour naviguer entre les menus.
Rendez-vous dans Interfacing Options puis dans Camera. Enfin, selectionnez Yes quand on vous demande la confirmation d'activation ainsi que pour redémarrer le Raspberry.

Raspi-Config-Camera-Raspberry-PI Raspi-Config-Camera-Raspberry-PI Raspi-Config-Camera-Raspberry-PI


Avant de continuer ...

Detection de la caméra

Avant de continuer, voici une commande qui permet de vérifier que la caméra soit bien detectée :

vcgencmd get_camera

Si la ligne affichée n'est pas supported=1 detected=1, vérifier :

Si detected n'est toujours pas à 1 après ces vérifications, redémarer le Raspberry Pi et essayer de le mettre à jour :

sudo apt-get update
sudo apt-get upgrade

La caméra devrait maintenant être détectée.

IV. Prendre une photo

A. Par le Terminal

Attaquons le vif du sujet ! La première chose que l'on va faire avec cette caméra est de prendre des photos. Pour ce faire, entrer les commandes suivantes :

cd
mkdir Camera
raspistill -o ~/Camera/image.jpg -q 100

Le deux premières commandes permettent de créer un dossier dans le répertoire personnel. La troisème ligne prend une photo et la stocke dans le dossier précédemment créé.
La commande raspistill accepte plusieurs arguments dont voici les plus importants :

Tous les arguments se retrouvent en entrant raspistill --help dans le terminal

Pour visionner l'image prise, deux possiblités :

B. En Python

Prendre des photos en passant par le terminal est un bon début mais... ce n'est pas encore top. Il est beaucoup plus pratique pour des éventuels projets de pouvoir prendre des photos directement à l'intérieur d'un script python. Pour se faire, il existe la librairie picamera. Cette librairie est normalement installée de base sur le Raspberry mais rien n'empeche de vérifier. Lançons donc la commande :

sudo apt-get install python3-picamera

Cette fois, la librairie est forcément installée. Commençons par créer un simple script Python qui prend et sauvegarde une photo. (en ayant comme nom la date)

Définir la résolution ?

La ligne camera.resolution n'est pas obligatoire. Cependant, si elle n'est pas renseignée, la résolution choisie sera de 1920x1080, et la qualité de la photo sera très mauvaise (surtout en basse luminosité). Si vous souhaitez une photo de la meilleure qualité possible, alors renseignez :

Photo à l'envers ?

Tourner une photo

En fonction de comment est positionné votre caméra, l'image capturée peut être à l'envers. Pour corriger ceci, ajouter ceci après la ligne "camera=PiCamera()" :

camera.hflip = True
camera.vflip = True

Ce qui donne, le code suivant :


D'autres options pouvant s'ajouter au même endroit sont disponibles pour les plus photophyles dotn voici une liste :

V. Prendre une vidéo

A. Par le Terminal

Maintenant que nous maitrisons la prise de photos, intéressons nous à la vidéo. Pour enregistrer une vidéo de 10 secondes (10 000 ms) sous le nom de fichier video.h264, il suffit d'entrer la commande suivante.

raspivid -o video.h264 -t 10000

Les options de cette commande sont les mêmes que pour la photo (comme hf et vf par exemple).

Problème : la plupart des lecteurs video ne sauront pas lire le format .h264. Pour cette raison, on va installer la librairie MP4Box qui va nous permettre de convertir les vidéos au format MP4. Pour installer MP4Box, il suffit d'entrer cette commande :

sudo apt-get install -y gpac

Une fois le logiciel installé, executez ceci afin de convertir le fichier :

MP4Box -add video.h264 video.mp4

Le fichier vidéo est maintenant lisisble sur tous les appareils.

B. En Python

Comme pour les photos, voyons comment on peut prendre des vidéos en Python. Si vous n'avez pas installé la librairie picamera comme décrit plus haut (dans la partie En Python de Prendre une photo), alors remontez dans l'article pour suivre la démarche. Sinon, on peut directement passer au code.
Voici un script qui permet de capturer une vidéo en Python et de la convertir en MP4 automatiquement :

Information

Comment éteindre la led de la caméra ?

Si vous souhaitez que la led de votre caméra reste eteinte même lorsque celle-ci est en cours d'utilisation, il suffit de modifier le fichier /boot/config.txt en ajoutant la ligne disable_camera_led=1 à la fin.

Rappel - Editer un fichier dans le terminal :

sudo nano /boot/config.txt

C'est sur ce point que se termine ce tutoriel. Toutes les bases de l'utilisation sont ici, mais d'autres tutoriels autour de la caméra sortiront sûrement (Vidéo-surveillance ...). La seule limite sera l'imagination !


Commentaires

Destin KASONGA, le 31/08/2019 à 16h54
Bonjour
Merci pour le tuto mais je souhaite me renseigner sur un autre sujet même si il ne cadre pas avec ce trio.
Mon problème concerne l'utilisation de raspi3 B+ avec arduino
Alors comment récupérer les donner issues de la carte arduino à partir du port USB de raspi3 pour les utiliser en python quand par
Exemple:je souhaite utiliser arduino avec capteur de température du corps et puis envoyer la température à la carte raspi3. Alors quand la température dépasse le seuil prévu,je vais allumer la caméra avec raspi3 comme vous l'avez montré dans ce tuto.
Prière de me répondre svp.
EspaceRaspberryFrancais, le 31/08/2019 à 17h35
Bonjour,
Ce tutoriel devrait vous intéresser !

Bonne journée !
Salva57, le 01/08/2019 à 07h57
Bonjour,

Merci pour ce tuto, tout fonctionne à merveille.
Mais il y a un truc que je n'ai pas compris c'est la parti du script en Python! Ou faut-il rédiger ces lignes? dans un fichier qu'il faut éditer? dans un émulateur particulier?

D'autre part je voulais savoir si c'est possible d'utiliser cette caméra au fil de l'eau. C'est à dire se connecter à un instant T et visionner en live le flux vidéo.
Et cerise sur le gâteau, j'utilise Jeedom est-ce que cela pourrait ce faire dans Jeedom car il y a un plugin "camera" mais c'est pour les caméras connectées en réseau au rapsi.

Merci
Bonne continuation.
Richard60, le 26/07/2019 à 11h54
bonjour, je souhaiterai programmer sur le Raspberry un lancement de la vidéo avec enregistrement automatiquement. Par exemple, tous les vendredis à 22h00, la caméra s'allume, enregistre et s’éteint à le même jour à 23h00. Est-ce possible ? Merci
Christophe, le 01/08/2019 à 12h26
Bonjour,
Pour enregistrer de 22 à 23h je dirais : créer un script qui enregistre pendant 1 heure (reprendre l'exemple) et le lancer via cron à 22h (crontab -e puis rajouter une ligne 0 22 * * * /chemin_absolu_vers_le_script/nom_du_script
Ça devrait fonctionner...
Clément, le 28/04/2019 à 17h00
Je rencontre le même problème et je n'arrive pas à le résoudre non plus , ni moi ni mon prof d'ISN . Avez vous trouvé une solution ?
Marius, le 18/04/2019 à 17h02
Bonjour, j'ai une pi Camera de 5 mp compatible avec mon raspberry pi, j'arrive a voir une vidéo mais celle-ci est pas assez fluide pour pouvoir détecter un mouvement.Je ne comprend pas pourtant il est donné sa la doc technique que la caméra avec une fenêtre de 640*480 elle tourne a 90 fps alors que pas du tous.
J'aimerais savoir si cela vient du programme exécuter ou de raspberry( c'est un raspberry pi 3 de 2011) Merci de m'aider (j'en ai besoin pour mon bac :))
Alexandre Mayeux, le 22/03/2019 à 16h02
Bonjour
Pour un projet très important j'ai besoin de capturer une image avec la caméra et ensuite de traiter cette image avec un programme. Malheureusement je n'arrive même plus a prendre de photo ou de vidéo avec la caméra. Elle est détectée mais je pense que le dossier n'est pas envoyé au bon endroit, et lorsque j'essaie la commande cd mkdir cela m'indique qu'il n'y a aucun fichier ou dossier de ce type.
Comment faire ?
Merci d'avance
Alexandre.
Nicolas, le 05/04/2019 à 21h36
n'y aurait-il pas un problème de droit en écriture ?
leomo, le 07/03/2019 à 14h20
Bonjour,
Tout ça semble facile, mais comment déclencher la prise de photo/video à partir de deux broches GPIO ?
C'est sûrement possible !
Merci
JeremyL, le 26/02/2019 à 16h46
Bonjour,
Au top, ce petit tuto m'aide beaucoup dans ma compréhension de tout ça !
Comment faire pour ajouter du son à la vidéo ?
Merci,
Jérémy L
EspaceRaspberryFrancais, le 27/02/2019 à 17h22
Bonjour JeremyL,
Merci pour votre retour !
Concernant le son, je vois deux possibilités. On peut soit utiliser un capteur que l'on connecte aux GPIOs (type celui-ci. Sinon il existe des micros qui se connectent directement au Raspberry en USB mais je pense que la première solution est meilleure pour que la caméra et le micro fonctionnent ensemble et en simultané.
Je ne propose actuellement pas de tuto sur les microphones sur le site mais je pense que l'idée d'en faire un est bonne, je vais essayer de le faire dès que possible (malheureusement je suis très occupé en ce moment..).
D'autres tutos doivent déjà être écrit sur le sujet en cherchant sur Google.

Cordialement,
EspaceRaspberryFrancais.
Armandledanseur, le 30/01/2019 à 05h14
Bonjour, saurait-tu comment faire un live streaming a partir de la caméra via VLC ou autre ?
CloudPhil, le 20/04/2019 à 01h44
SI vous cherchez à enregistrer des vidéos ou photographier sur de la détection de mouvement, installez le paquet motion

gribouille76fr, le 26/01/2019 à 08h45
Bonjour,
Tuto nickel est testé en photo et vidéo.
Avez-vous tester la possibilité de renvoyer le signal vidéo sur un émetteur wifi pour recevoir le flux vidéo en direct sur un écran équipe d'un récepteur?
si oui quel matériel et soft avez vous testé.
Merci.
fryd71, le 10/01/2019 à 16h54
Merci ! J'ai ajouté une boucle for pour avoir plusieurs photos espacées de 0,5 seconde et c'est nickel pour mon projet de surveillance.
Par contre, pour la vidéo, juste par curiosité, j'ai la même erreur que Laurent91 : seul le fichier h264 se crée et j'ai l'erreur suivante : sh: 1: MP4Box: not found.
EspaceRaspberryFrancais, le 10/01/2019 à 18h06
Salut fryd71,
Content que tout marche bien en ce qui concerne la photo !
Pour ce qui est de la vidéo, avez-vous bien installé la librairie MP4Box ? (sudo apt-get install -y gpac) ? Il doit falloir appuyer sur 'y' pour approuver l'installation. Sinon, essayez de faire un :

sudo apt-get update
sudo apt-get upgrade


Si cela ne marche toujours pas, signalez-le moi et je re-testerai le tuto sur mon Raspberry remis à zéro pour trouver la solution au plus vite.
fryd71, le 24/01/2019 à 12h08
Effectivement je n'avais pas installé la librairie.... Merci pour ce tuto, continuez comme ça!
EspaceRaspberryFrancais, le 24/01/2019 à 12h35
Merci à vous, bonne continuation sur le Raspberry !
Laurent91, le 07/11/2018 à 16h47
Bonjour,
j'ai testé l'enregistrement de la video puis sa transformation en MP4: cette dernière ne fonctionne pas.
Le fichier continue à s'enregistrer en h264.
Peux-tu me conseiller?
Merci
EspaceRaspberryFrancais, le 08/11/2018 à 21h54
Salut Laurent91,
Peux-tu m'en dire plus sur ton problème ? C'est en Python ou par le terminal que tu as le soucis ? Saches que la commande qui permet de convertir le fichier h264 en mp4 conserve les deux fichiers donc peut-être ne vois tu pas le fichier mp4 ?
Gaela, le 04/05/2018 à 07h18
Bonjour, je voudrai avoir la video sur la machine que j'utilise car mon raspberry est en hhs, comment faire pour voir les photo et le video sur l'écran que j'ai commande . Une autre procupation est d'activé la camera sans enregistré, juste voir en video sans enregistré


Commenter
Votre adresse mail ne sera pas visible sur le site.

Seuls les commentaires jugés corrects seront mis en ligne.



Composants Bien débuter sur le Raspberry PI Configurer le Raspberry Pi
Ecran LCD 16x02 Accessoires indispensables sur Raspberry Pi Connexion sans login ni mot de passe au Raspberry
Capteur de température DS18B20 Première installation et démarage Changer le Hostname du Raspberry Pi
Afficheurs 7 segments Création et execution d'un programme Python Connexion Ethernet Raspberry/ordinateur
Capteur distance HC-SR04 Connexion au bureau depuis Windows
Interaction par bouton poussoir Test & tuto : Ecran LCD 7" tactile
Servo Moteur
Capteur de présence HC-SR501
Module RFID-RC522
Caméra sur Raspberry Pi
Module L298N : Contrôle de moteurs à courant continu

EspaceRaspberryFrançais |
Contact | Facebook



En tant que Partenaire Amazon, je réalise un bénéfice sur les achats remplissant les conditions requises.

Espace-raspberry-francais.fr est hebergé par SARL LWS.