Pour répondre à des besoins visualisation sur le terrain et dans le cadre d'essais divers, nous avons développé notre instrument maison pour la capture d’images en time-lapse, sur une base de nano-ordinateur Raspberry Pi.
Depuis la rédaction de cet article le logiciel PiTANCE a continué à évoluer et a été testé puis validé sur le Raspberry Pi Zero W. Pour en savoir plus voir en fin de page.
Mise à jour importante !
Suite à une mise à jour du firmware de Raspbian Buster pour le Raspberry Pi 4, des problèmes de gestion du blanc sont apparus rendant impossible l'utilisation de la caméra PiNoIR avec une dominante pourpre systématique, plus ou moins forte, en en lumière du jour ou de nuit.
Une nouvelle mise a jour du firmware ainsi qu'une nouvelle option de gestion du blanc (greyworld) ajoutée à l'application PiTANCE 7 ont été intégrés dans la nouvelle image système à télécharger via le lien dans l'article.
Nous utilisions depuis quelques temps un matériel de type piège Bushnell prêté provisoirement par un autre institut. Il nous fallait donc trouver une solution de remplacement pérenne et aussi plus pertinente puisque le piège Bushnell ne nous permettait pas de descendre à une prise de vue jusqu'à la seconde sur un time-lapse longue durée.
Après une recherche sur le web de solutions alternatives, nous sommes partis sur la base d'un combo constitué :
d’alimentations électriques sous forme de deux types de batteries,
l’une, de type power bank Lithium ion de 20800 mA/h fournissant les 5 Volts et 2,1 ampères et suffisants au fonctionnement du Pi si sans écran connecté,
l’autre au plomb en 6 Volts dédiée à l’éclairage infrarouge,
d’une boite de dérivation électrique avec un couvercle étanche, de récupération et avec un espace suffisant pour l’aménager en conséquence avec les éléments précédents,
de pieds de table basse
de Patafix pour fixer de façon suffisante mais non permanente les différents éléments du combo.
Avec tous ces éléments nous avons assemblé notre prototype :
Les pieds, d'une hauteur de 30 cm, sont montés ”à l’envers” de façon à utiliser la surface plane côté sol pour assurer la plus grande stabilité possible lors de l’utilisation dans les parcelles d’essai.
Le périmètre délimité par ces pieds correspond à la zone utile du cadre photo et la hauteur des pieds garanti d’être dans la zone de netteté focale de la caméra. Du coup aucun réglage de visée sur le terrain n’est nécessaire.
Gestion de l'infrarouge
La caméra Pi NoIR se distingue visuellement du modèle standard par son circuit imprimé de couleur noire au lieu du vert classique. C’est important car il n’y a aucune autre référence claire et que les sources de fabrication peuvent varier.
Le terme NoIR (No Infra Red) indique que cette caméra dédiée est dépourvue du filtre anti infrarouges habituellement intégré aux capteurs vidéo et qui a pour fonction ordinaire de rendre vos photos plus nettes en supprimant la diffusion générée par les longueurs d’ondes dans les infrarouges. Pour filmer une scène de nuit avec une caméra NoIR il faut éclairer la scène avec une source émettant dans cette gamme de longueur d’onde.
Nous avons trouvé deux versions d’une petite lampe, la Kingbright LED LAMP CLUSTER, peu chère, prête à l'emploi et d’un format très pratique pour notre projet.
Elle possède sur l'arrière un pas de vis femelle pour la fixation, un joint torique pour l'étanchéité, un ergot pour un bon positionnement selon son angle d'inclinaison et est pré-câblée pour une connexion en 6 volts.
Abstract Behaviour of nocturnal insects is routinely observed under red light, but it is unclear how the behaviour under red light compares to behaviour in complete darkness, or under a source of white light. Here, we measure movement behaviour of the nocturnal carabid beetle Pterostichus melanarius Illiger (Coleoptera: Carabidae) using camera recording under a near-infrared (nir), red or white radiation source. Red light significantly reduced movement speed in females similar to the effect of white light and different from nir. Also movement activity and pause length were affected by radiation source, with a significant difference between nir and white light, and with intermediate values in red light. The results presented here indicate that P. melanarius has different movement behaviour under the three radiation sources and suggest that nir rather than red radiation is most appropriate for measuring behaviour in total darkness. However, in the field total darkness is rare both because of natural light sources such as the moon and stars but increasingly also because of ecological light pollution, and therefore red light may still be of use for observing ecologically and practically relevant natural night-time behaviour.
Dans le doute nous avons pris les deux. Mais bonne nouvelle, le capteur de la camera Pi NoIR encaisse relativement bien l’éclairage à 940 nanomètres et c'est donc notre éclairage IR par défaut.
Les images obtenues sous infrarouge apparaissent moins nettes à cause de la plus grande diffusion propre à ces longueurs d'onde. Ici un exemple avec notre lampe 880 nm comparé à la lumière ordinaire d'un bureau.
Comme nos images présentent souvent des dominantes, il est tentant d'utiliser ce filtre pour les soustraire automatiquement. Un petit test montre qu'il vaut mieux s'en tenir à une postproduction classique (désaturation des images ou lors du montage de la vidéo) si on ne veut pas risquer de perdre de l'information.
La caméra vise à travers un hublot créé travers le fond du boitier. Sur notre prototype, l'ouverture a été protégé avec un fond de boite de pétri collé autour de l’ouverture. La lampe IR est positionnée latéralement au hublot de façon à illuminer le centre de la scène. Pour vérifier que la lampe est allumée, ce qui est totalement invisible à nos yeux, un simple selfie du PiScope avec un smartphone fera l'affaire.
Évolution du PiScope
Un boitier pour le Raspberry Pi : le montage initial du prototype dans une boite en carton n’était pas très pérenne. Nous avons commandé un petit boitier métallique dont la volume interne nous a permis d’y insérer la caméra après avoir percé un petit trou dans la grille pour ne pas masquer l’optique.
Utilisation d’un disque dur : la carte mémoire du Raspberry Pi servait en même temps pour le système d’exploitation et le stockage des images pendant le time-lapse. Cela a fini par devenir un inconvénient, d’abord en terme de gestion de place mais surtout de récupération des données sans à avoir à démonter sans cesse la mini carte mémoire.
Nous avons d’abord utilisé le transfert des images par réseau mais c’était très long vu le nombre d’images récoltées par session.
Nous avons donc étudié la possibilité d’utiliser des disques usb internes transformés en externes, récupérés d’ordinateurs portables passés sur ssd et compatibles niveau consommation électrique avec le Raspberry Pi. Malheureusement les prises usb du Pi ne fournissent pas assez de courant au disque dur pour que celui-ci fonctionne correctement pendant l’acquisition des images. Toutefois il a été possible de fournir le courant manquant via la seconde prise usb de la batterie Li-ion et un câble adapté.
Le disque est formaté en fat 32 pour assurer un maximum de compatibilité entre les différents systèmes de postes de travail.
Actuellement nous utilisons une fréquence de 3 images par seconde, mais les tests sur disque dur mobile on été poussés jusqu' à 1 image par seconde, sans soucis particuliers si le disque est en bon état.
L'avantage du disque dur mobile (ou d'une clé usb de grosse capacité) est de transférer les images beaucoup plus facilement sur les postes de travail pour analyse et tri, malgré la surconsommation électrique induite pour le PiScope pendant son fonctionnement.
Protection de la scène des intempéries : pour la visée au sol, une jupe en plastique translucide souple a été posée tout autour du quadrilatère formé par les pieds du PiScope et jusqu'à quelques centimètres du sol pour protéger au mieux les proies sentinelles de la pluie et des courants d'air et sans gêner l'arrivée possible des prédateurs.
Changement de sens de visée - PiScope 2 : pour quelques essais nous avions besoin de viser à l’horizontale, c’est à dire de viser des proies placées en hauteur, dans la végétation et non au sol.
Du coup nous avons créé un second modèle de PiScope, analogue dans composition mais organisé pour pouvoir modifier aisément l'orientation de la visée. Nous avons fabriqué une forme de berceau métallique réglable à partir de cornières afin de rendre solidaire l’ensemble représenté par le Raspberry Pi, la batterie Li-ion et le disque dur.
Ce berceau permet de positionner exactement cet ensemble et donc la caméra du Pi dans le boitier du PiScope grâce à des tiges filetées suffisamment longues pour s’insérer dans des trous aménagés dans le boitier et serrés depuis l’extérieur par des écrous papillons. Ces trous sont présents à la fois sur le fond et sur une des parois verticales du boitier du PiScope ce qui permet d’orienter le berceau et la visée caméra selon le type de visée voulu.
Des pieds télescopiques supplémentaires permettent de positionner le PiScope à la bonne hauteur par rapport aux cibles dans la végétation.
Avec ce type de visée horizontale s’est posée la question du bon cadrage des images et à la bonne profondeur de champ.
Ce problème a été traité au niveau du système d’exploitation du Raspberry Pi et de l’interface PiTANCE pour permettre, sur le terrain, la prise de photo test depuis une tablette Android via une connexion bureau à distance de type XRDP. Pour plus d'informations, voir le paragraphe Le wifi et la borne d'accès PiScope dans la Documentation PiTANCE à télécharger en fin de page.
Diffusion de l'éclairage - PiScope 2 : nous n'avons pu obtenir la même caméra infrarouge que pour notre premier modèle de PiScope. Cette nouvelle caméra s'est trouvée avoir une optique plus grand angle par rapport à la première. Ceci a eu pour conséquence d'avoir une perte de détails dû à l'éloignement optique de la scène en visée verticale. Pour améliorer la situation nous avons monté des pieds plus courts (hauteur de 20 cm) sur notre PiScope 2 mais la lampe IR s'est trouvée trop proche et cela a perturbé la répartition de l'éclairage sur la surface visée.
Pour traiter ce problème nous avons cherché à mieux répartir et doser l'éclairage en le diffusant. Nous avons expérimenté plusieurs matériaux translucides. Finalement c'est l'adaptation d'une balle de ping-pong sur l'éclairage infrarouge qui a donné les meilleurs résultats.
Limitation actuelle de nos PiScopes
Comme nos PiScopes sont bâtis sur une base de Raspberry Pi, nous héritons des limites de celui-ci, notamment en ce qui concerne l'absence d'horloge RTC. Ceci a pour conséquence que le PiScope perd la date et l'heure dès qu'il est éteint et qu'il ne peut retrouver le temps actuel qu'à travers une connexion réseau. Nous sommes donc obligés de connecter le PiScope au réseau du laboratoire avant de le programmer et sans plus l'éteindre pour toute la durée de la manip. Il en va de même pour l'éclairage infrarouge qui est allumé soit au laboratoire, soit à la dépose du PiScope sur le terrain, bien avant les séquences programmées de time-lapse. Les batteries en prennent nécessairement un coup et doivent être parfaitement chargées au démarrage du PiScope. Comme les batteries Li-ion de forte capacité sont extrêmement longues à charger il faut prévoir un jeu suffisant de batteries pour les permuter d'un jour à l'autre et palier à toute défaillance.
Il est possible de rajouter une horloge RTC au Raspberry Pi et d'envisager de programmer un déclenchement du PiScope en temps utile.
Système d’exploitation et interface utilisateur
PiTANCE a été développé initialement sur Ubuntu Mate pour Pi. Mais a présent nous nous intéressons a l'usage du Raspberry Pi Zero W (plus compact, consommant bien moins d'énergie que le Pi 3, et avec la capacité d’être utilisé comme gadget USB). Mais le Pi Zero ne fonctionne pas avec Ubuntu mais seulement avec Raspbian, donc seul ce dernier système sera supporté a présent pour l'usage de PiTANCE sur nos Pi 3 et Zero.
PiTANCE 7 pour Raspberry Pi propose une interface pour les commandes raspistill et raspivid pilotant les caméras compatibles CSI, notamment les version V1 et V2 standard. Cette interface vous permettra de programmer aisément :
l’enregistrement séquencé d’images ou timelapse
l’enregistrement des fichiers vidéos
Pour l'enregistrement vidéo, ffmpeg est utilisé en complément pour encoder à la volée le fichier h264 de raspivid dans un conteneur .mp4 avec la possibilité de le découper en segments égaux pendant l'enregistrement.
Aperçu de l'interface principale de la dernière version de PiTANCE :
PiTANCE 7 est compatible avec les cameras V1 (5 mégapixels) V2 (8 mégapixels).
PiTANCE 7 a été testé et utilisé sur les systèmes RaspbianStretch et Buster sur Raspberry Pi 3 et Raspberry Pi Zero W.
PiTANCE a été développé à partir de la version spécifique de l'IDE pour Raspberry Pi de Livecode Community 7.04 sous licence GPL v3.
Le fichier source .livecode est un binaire et toute ouverture de celui-ci avec un autre éditeur que Livecode le détruira. L'IDE Livecode Community est disponible gratuitement pour les principales plateformes (Windows, Mac, Linux, Raspberry).
Documentation et téléchargement
Pour avoir des informations supplémentaires sur PiTANCE ou installer le logiciel pour l'utiliser sur votre Rasberry Pi vous avez 2 possibilités :
Fortement conseillé : télécharger une image zippée de Raspbian Buster, lui-même paramétré et avec PiTANCE pré-installé et immédiatement fonctionnel.
Ou bien aller dans la section Documents à télécharger, en bas de cette page où vous trouverez la documentation Pitance7.pdf (Important: voir les pré-requis nécessaires en fin de documentation !
Le dossier compressé Logiciel PiTANCE7.zip
Une fois téléchargé, décompressez le zip et placez le dossier obtenu où vous voulez dans votre dossier utilisateur du PI.
Le Lanceur PiTANCE et le binaire PiTANCE.livecode doivent impérativement rester dans le même dossier !
Contenu du dossier:
Rendez le lanceur PiTANCEexécutable en changeant ses droits :
Cliquez sur le lanceurPiTANCE pour démarrer l'application.
By browsing our site you accept the installation and use cookies on your computer.
Know more
About cookies
What is a "cookie"?
A "cookie" is a piece of information, usually small and identified by a name, which may be sent to your browser by a website you are visiting. Your web browser will store it for a period of time, and send it back to the web server each time you log on again.
Different types of cookies are placed on the sites:
Cookies strictly necessary for the proper functioning of the site
Cookies deposited by third party sites to improve the interactivity of the site, to collect statistics
Cookies strictly necessary for the site to function
These cookies allow the main services of the site to function optimally. You can technically block them using your browser settings but your experience on the site may be degraded.
Furthermore, you have the possibility of opposing the use of audience measurement tracers strictly necessary for the functioning and current administration of the website in the cookie management window accessible via the link located in the footer of the site.
Technical cookies
Name of the cookie
Purpose
Shelf life
CAS and PHP session cookies
Login credentials, session security
Session
Tarteaucitron
Saving your cookie consent choices
12 months
Audience measurement cookies (AT Internet)
Name of the cookie
Purpose
Shelf life
atid
Trace the visitor's route in order to establish visit statistics.
13 months
atuserid
Store the anonymous ID of the visitor who starts the first time he visits the site
13 months
atidvisitor
Identify the numbers (unique identifiers of a site) seen by the visitor and store the visitor's identifiers.
13 months
About the AT Internet audience measurement tool :
AT Internet's audience measurement tool Analytics is deployed on this site in order to obtain information on visitors' navigation and to improve its use.
The French data protection authority (CNIL) has granted an exemption to AT Internet's Web Analytics cookie. This tool is thus exempt from the collection of the Internet user's consent with regard to the deposit of analytics cookies. However, you can refuse the deposit of these cookies via the cookie management panel.
Good to know:
The data collected are not cross-checked with other processing operations
The deposited cookie is only used to produce anonymous statistics
The cookie does not allow the user's navigation on other sites to be tracked.
Third party cookies to improve the interactivity of the site
This site relies on certain services provided by third parties which allow :
to offer interactive content;
improve usability and facilitate the sharing of content on social networks;
view videos and animated presentations directly on our website;
protect form entries from robots;
monitor the performance of the site.
These third parties will collect and use your browsing data for their own purposes.
How to accept or reject cookies
When you start browsing an eZpublish site, the appearance of the "cookies" banner allows you to accept or refuse all the cookies we use. This banner will be displayed as long as you have not made a choice, even if you are browsing on another page of the site.
You can change your choices at any time by clicking on the "Cookie Management" link.