Publié le 18 août 2020 - par

Camera HQ 12 Megapixel pour le Raspberry Pi (Partie 3/3)

Après avoir exploré les possibilités de la PiCamera HQ du Raspberry Pi, l’avoir protégée avec un boîtier imprimé en 3D et fait un point sur les objectifs utilisables, voici le dernier épisode de cette série. Il explique comment prendre le contrôle à distance sur la caméra à partir d’un smartphone ou d’une tablette.

La Caméra HQ pour Raspberry Pi – Episode III

Prise de main distante de la caméra HQ

Connexion WiFi

En intérieur il n’y a pas de problème particulier, le Raspberry Pi de la caméra se connecte à la box, il reçoit une adresse IP que vous pouvez retrouver ou fixer dans les paramètres DHCP de votre box.
A l’extérieur il n’y a pas la possibilité de se connecter à une box, et il va falloir transformer le Raspberry Pi en point d’accès WiFi pour se connecter à la caméra. Pour cela il y a la possibilité d’utiliser RaspAP dont je vous ai déjà parlé. L’inconvénient de RaspAP c’est qu’il installe tous les outils nécessaires… dont un serveur Web qui va interférer avc celui de Rpi CamWeb Interface.
J’ai donc choisi d’installer la partie “hotspot” de RaspdAP : hostapd et un serveur DHCP (dnsmasq) pour attribuer les adresses IP aux périphériques qui se connecteront à notre caméra.

Pilotage de la caméra

Les commandes raspivid et raspistill sont les commandes de base à utiliser pour tester la caméra et prendre les premières images ou vidéos.
Pour aller plus loin on peut envisager l’utilisation de picamera, qui propose une interface en Python pour piloter la caméra. Après, si vous ne voulez pas vous lancer dans la programmation en Python pour gérer la caméra, vous pouvez opter pour une solution “clé en main” comme RPi Cam Web Interface. C’est une interface Web pour contrôler la caméra Raspberry Pi (et uniquement celle là, ça ne fonctionne pas avec une caméra USB). L’interface comprend la détection de mouvement, le TimeLapse, et l’enregistrement d’images et de vidéos. Une aide en ligne (en anglais) est disponible et permet de démarrer facilement.

Les étapes de cette installation

Les étapes que nous allons suivre sont donc celles-ci :

  • Création de la carte micro SD
  • Mise à jour de Raspberry Pi OS
  • Installation de RPi Cam Web Interface
  • Test de RPi Cam Web Interface
  • Installation de hostapd
  • Test de Hostapd
  • Prise de main distante de la caméra

Création de la carte micro SD

Je ne vais pas revenir ici sur la création de la carte micro SD. Je vous conseille d’utiliser Pi Imager et d’installer la version complète de Raspberry Pi OS. Prévoyez au minimum une carte de 16Go, plus si vous pensez enregistrer des vidéos.

Mise à jour de Raspberry Pi OS

La mise à jour du système d’exploitation est réalisée lors du démarrage de l’OS si vous suivez toutes les étapes du wizard. Si vous utilisez une carte micro SD déjà créée depuis un certain temps assurez vous que l’OS soit à jour :

Quand votre carte est à jour, vous pouvez passer à la suite.

Installation de RPi Cam Web Interface

Mise en service de l’interface caméra

Avant d’utiliser la caméra, il faut activer son interface qui n’est pas fonctionnelle par défaut. Dans un terminal démarrez raspi-config :

Puis allez dans 5 Interfacing Options > P1 Camera Enable/Disable connection… et activez l’interface.

En mode graphique allez dans le Menu > Préférences > Configuration du Raspberry Pi

Activez les interfaces que vous souhaitez utiliser. Ici j’ai activé la caméra, le SSH et VNC pour avoir accès à l’OS et l’éteindre proprement quand j’ai fini d’utiliser la caméra.

Installation de RPi Cam Web Interface

L’installation de RPi Cam Web Interface est détaillé dans la page elinux du programme. Les instructions ci-dessous fonctionnent sous Raspberry Pi OS (aôut 2020). Ouvrez un terminal et récupérez le programme sur github, puis changez de répertoire.

Le programme comporte un fichier d’installation. Démarrer ce script pour installer RPi Cam Web Interface.

Vous arrivez sur un écran de configuration. Vous pouvez le laisser par défaut ou choisir vos propres options. Pour ma part je n’ai pas cherché plus loin et validé les choix par défaut.

Au prochain démarrage, le programme sera lancé automatiquement.

Si vous souhaitez lancer le programme tout de suite, choisissez Oui sur la fenêtre de configuration.
Votre caméra est prête pour un contrôle à distance.

Mise à jour
Le répertoire RPi_Cam_Web_Interface contient également un script update.sh. Lancez le de temps en temps pour vérifier la présence de mises à jour.

Test de RPi Cam Web Interface

Depuis un navigateur situé dans le même réseau (connecté à la même box) ouvrez la page de RPi Cam Web Interface

L’image est affichée avec une légère latence. Tenez en compte quand vous faites le réglage de netteté ! Vous avez accès à tous les paramètres via des boutons sur la page web. Une aide en ligne (en anglais) donne toutes les infos de configuration. Il n’y a pas à ma connaissance de version en Français, ni de traduction prévue.

Par exemple dans Camera settings je passe la largeur d’image à 1024 pour plus de visibilité et pour faciliter le réglage de mise au point.

Installation de hostapd

La connexion à l’adresse de la caméra quand il y a un réseau local WiFi ou filaire ne pose pas de problème. C’est en cas d’utilisation à l’extérieur qu’il faut pouvoir se connecter à la caméra avec un smartphone par exemple. Dans ce cas le Raspberry Pi joue le rôle de point d’accès et doit pouvoir autoriser un appareil extérieur à se connecter, vérifier qu’il y est autorisé, lui attribuer une adresse IP dans son réseau etc. hostapd est l’outil qu’il faut pour ce genre de situation, complété par dnsmasq pour la gestion des adresses IP. L’installation de hostpad est traitée dans une page du blog de la Fondation. La différence c’est qu’il n’y aura pas de liaison avec Internet, donc pas besoin de router les paquets.

On va commencer par installer hostapd

sudo apt-get install hostapd

puis on valide le service Access Point (AP) et on configure hostapd pour qu’il soit lancé au démarrage du Raspberry Pi.

Installation de dnsmasq

Il faut également installer un service pouvant fournir les adresses IP aux appareils qui se connectent à notre AP : dnsmasq

On peut maintenant définir la configuration IP de l’interface WiFi wlan0.
Le Raspberry Pi fait fonctionner un serveur DHCP pour le réseau sans fil ; il faut créer une configuration IP statique pour l’interface sans fil (wlan0) du Raspberry Pi. Nous lui donnons la première adresse IP du réseau : 10.0.0.1.

Configuration de dnsmasq

Pour configurer l’adresse IP statique, éditez le fichier de configuration de dhcpcd :

sudo nano /etc/dhcpcd.conf

Ajoutez à la fin du fichier

Le service DHCP est fournis par dnsmasq. Le fichier de configuration par défaut sert de modèle. Il contient toutes les options de configuration possibles, alors seules quelques-unes nous seront utiles. Il est plus facile de démarrer à partir d’un fichier vide. Renommez le fichier de configuration par défaut pour le conserver (#OKaZou) et éditez-en un nouveau :

et écrivez dans le fichier

Sortez avec CTRL X et enregistrez la fichier de configuration. Si vous voulez plus d’informations sur dnsmasq.conf vous trouverez la documentation en ligne.

Configuration de l’interface WiFi

Tous les pays du monde réglementent l’utilisation des bandes de fréquences radio pour garantir un fonctionnement sans interférence. Le système d’exploitation Linux aide les utilisateurs à se conformer à ces règles en permettant de configurer les applications avec un “code pays WiFi” de deux lettres, par exemple “FR” pour un ordinateur utilisé en France.

Dans le système d’exploitation Raspberry Pi 0S, la mise en réseau sans fil à 5 GHz est désactivée tant qu’un code de pays WiFi n’a pas été configuré par l’utilisateur, généralement lors de l’installation initial. Pour vous assurer que le WiFi n’est pas bloquée sur votre Raspberry Pi, exécutez la commande suivante :

Ce paramètre sera automatiquement restauré au démarrage. Nous allons définir un code de pays dans la configuration du logiciel du point d’accès.

Créez le fichier de configuration du point d’accès hostpad :

Ajoutez les informations ci-dessous au fichier de configuration. Cette configuration indique que nous utilisons le canal 4, mais en fonction de votre environnement WiFI vous pouvez en choisir un autre. Le nom du réseau est CameraHQ, et le mot de passe ou passphrase CameraPi. Notez que le nom et le mot de passe ne doivent pas être entourés de guillemets. La passphrase doit comporter entre 8 et 64 caractères.

CanauxWiFi
Les canaux WiFi se chevauchent, c’est pour cela que les canaux 1, 6 et 11 sont souvent utilisés. Rien n’empêche d’utiliser les autres.

Notez la ligne country_code=FR : elle configure l’ordinateur pour utiliser les bonnes fréquences du WiFi en France. Adaptez cette ligne et indiquez le code ISO à deux lettres de votre pays. Voir Wikipedia pour une liste des codes de pays à deux lettres de la norme ISO 3166-1.

Pour utiliser la bande de 5 GHz, vous pouvez changer le mode de fonctionnement de hw_mode=g à hw_mode=a. Les valeurs possibles pour hw_mode sont

a = IEEE 802.11a (5 GHz)
b = IEEE 802.11b (2,4 GHz)
g = IEEE 802.11g (2,4 GHz)
ad = IEEE 802.11ad (60 GHz)

Démarrer l’Access Point AP :

Redémarrez le Raspberry Pi pour prendre toutes les modifs en compte. Utilisez le mode graphique ou

Test de Hostapd

Sur PC Windows

Sur un PC sous Windows sélectionnez l’AP de la caméra

Entrez la passphrase et validez. Au bout d’un moment la connexion est faite. Le système vous avertit qu’il n’y a pas d’accès Internet mais bon, on le savait, non ?

Ouvrez un navigateur et tapez l’adresse de la caméra, suivie de /html dans la barre d’adresse :

Vous avez maintenant accès aux différents réglages et modes de prise de vue de la caméra HQ.

Accessoirement si vous avez activé SSH, vous pouvez aussi vous connecter à la caméra en SSH… ça peut servir 🙂 ajoutez -l pi pour indiquer le nom de connexion au Raspberry Pi, puis saisissez le mot de passe de l’utilisateur pi

Sur smartphone Android

La démarche est la même : Connectez vous à l’AP WiFi

Saisissez le mot de passe (ici CameraPi)

Vous êtes connecté(e) à la caméra, il n’y a toujours pas d’Internet

et depuis le téléphone ou la tablette vous avez accès aux commandes de la caméra.

Prise de main distante de la caméra

Bon, nous voilà en possession d’une caméra qui possède un point d’accès WiFi sur lequel on peut se connecter pour déclencher les prises de vue. C’est pas mal, non ?

Pour tout vous dire voilà à quoi ressemble l’installation, au besoin je monterai la caméraHQ sur un “vrai” pied photo en particulier pour les photos de la Lune.

Avec l’objectif de 16 mm on obtient cette image sur un PC. En cliquant sur un des bouton on peut enregistrer une image ou une vidéo.

Et sur un smartphone on obtient ceci, on peut piloter la caméra sans la toucher (à part la mise au point et l’ouverture). Ici c’est toujours l’objectif de 16 mm en monture C.

Quand on a enregistré des vidéos ou images, en cliquant sur Download Videos and Images on aboutit sur cette page.

Là vous êtes toujours sur le Raspberry Pi. En cliquant sur une des petites images dans les cases du bas vous obtenez

Qui permet de prévisualiser les photos ou les vidéos pour décider de les garder ou de les supprimer. Cliquez sur Download pour télécharger l’image sur le PC ou la tablette.

Il reste à enregistrer le fichier et à le visualiser en local ou à l’archiver.

Les Tests des objectifs

16 mm Monture C

Cliquez pour agrandir

Voici une image brute non retouchée, prise avec le 16mm. La qualité est au rendez vous et on obtient une image de belle qualité. Les monts à l’horizon sont à un peu plus de 10 Km.

Et la vidéo correspondante. Lien vers la vidéo en cliquant ici.

4mm Monture CS

Vu du même endroit avec le 4mm. C’est un 4mm destiné à une caméra de surveillance. Ici on voit la rue, les arbres proches etc. les monts à l’horizon sont à peine visibles. Le capteur est plus petit que celui de la CameraHQ ce qui explique que l’image ne couvre pas toute la surface. Après, pour surveiller une entrée ça suffirait.

Le vignettage est un peu moins visible sur la vidéo car le capteur est utilisé partiellement pour le 1080p et l’image est moins dégradée. Cliquez ici pour la vidéo en taille réelle. LA qualité de l’objectif prévu pour une caméra de surveillance est un peu limite avec ce capteur 12 Mpixels.

Zoom 5 – 50 mm Monture CS

 

Le zoom 5 – 50mm a été réglé en zoom maxi avec l’ouverture en milieu de plage (5.6 environ). Il y a un repère ici, le pont du T.G.V. qui se trouve à 8Km. Les maisons situées un peu en avant à gauche du pont (derrière la rangée d’arbres sont à 4Km.

Un peu plus sur la droite il y a le Mont Saint Vincent situé à 20 Km et voilà ce que ça donne avec le zoom rélé sur 50mm (je vous rappelle que c’est équivalent à un 300 mm en photo traditionnelle).

Les arbres sont à quelques dizaines de mètres mais on voit bien les prés sur les flancs du Mont Saint Vincent. La qualité est correcte mais sans plus avec cet objectif variable.

Voici encore deux images prises avec le zoom, une en 5mm et une en 50mm

Question à 2€

Comment savoir si un objectif a une monture C ou une monture CS ?

bin… si ce n’est pas écrit dessus, le seul moyen c’est d’essayer. Montez l’objectif sans la bague adaptatrice de 5mm. Si vous arrivez à avoir une image nette, c’est une monture CS. Si malgré tous vos efforts l’image reste floue, mettez la bague entre l’objectif et la caméra. L’image devrait devenir nette. Bingo, celui là c’est une monture C.

Conclusion (provisoire)

Dans cette série de 3 articles, nous avons vu

Si vous optez pour cette caméra, vous pourrez l’utiliser en la pilotant à distance. Comme suggéré par Nico sur twitter ce serait bien de prévoir un écran à l’arrière du boîtier et de faire un équivalent d’appareil photo classique.

La qualité est au rendez vous, à condition d’utiliser un objectif de qualité.

Il me reste à tester les objectifs Nikon avec la bague adaptatrice. Cette trilogie est finie pour le moment, je ferai un article sur les tests des objectifs Nikon dans quelque temps, car je voudrais faire des photos de la lune et elle n’est pas visible actuellement.

Des boitiers en impression 3D

La Fondation a publié le 26 août 2020 sur son blog un article présentant les différents boîtiers en impression 3D destinés à la Caméra HQ du Raspberry Pi : https://www.raspberrypi.org/blog/3d-printable-cases-for-the-raspberry-pi-high-quality-camera/

Sources

 

Share Button

À propos François MOCQ

Électronicien d'origine, devenu informaticien, et passionné de nouvelles technologies, formateur en maintenance informatique puis en Réseau et Télécommunications. Dès son arrivée sur le marché, le potentiel offert par Raspberry Pi m’a enthousiasmé j'ai rapidement créé un blog dédié à ce nano-ordinateur (www.framboise314.fr) pour partager cette passion. Auteur de plusieurs livres sur le Raspberry Pi publiés aux Editions ENI.

6 réflexions au sujet de « Camera HQ 12 Megapixel pour le Raspberry Pi (Partie 3/3) »

  1. Ping : Camera HQ 12 Megapixel pour le Raspberry Pi (Partie 2/3) - Framboise 314, le Raspberry Pi à la sauce française....

  2. Ping : Camera HQ 12 Megapixel pour le Raspberry Pi (Partie 1/2) - Framboise 314, le Raspberry Pi à la sauce française....

  3. Franck R

    Bonjour,

    Merci pour toutes ces informations, je me demandais s’il était possible d’émuler via un Rasberry PI Zero (émulation g_webcam) une Webcam en USB, pour pouvoir utiliser cette Camera HQ sur un PC pour des applications de comme Teams, 3cx ou autre webconference qui ne sont compatible qu’avec des cameras USB uniquement

    J’ai pensé à ça parce que pendant le confinement c’était impossible d’acheter une webcam en rupture de stock partout alors que j’avais au moins deux camera PI qui ne servait à rien.

    Répondre
  4. Alain

    La trilogie était sympa! j’attendais justement un test avec différents objectif meme si je n’ai pas réussi à me retenir d’acheter cette camera_HQ avec les objectifs standard.
    Cependant, si vous en avez, il aurait été intéressant de rajouter des objectifs de meilleure qualité, équivalent au 6mm officiel pour comparer

    Répondre

Laisser un commentaire

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

Complétez ce captcha SVP * Time limit is exhausted. Please reload CAPTCHA.

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