← Retour à l’atelier
Outils du quotidien

Home Monitor

Vos caméras à la maison, avec les visages familiers reconnus sur votre propre serveur et une chronologie paisible de qui est passé.

Home Monitor est auto-hébergé : chaque personne fait tourner sa propre copie privée.

La vue d'ensemble, avec les réglages des alertes, l'état des caméras et des instantanés de trois caméras de démonstration

À propos de l'application

Home Monitor est une vue auto-hébergée de vos caméras à la maison. Un petit collecteur placé près des caméras récupère leurs instantanés et envoie des images quand quelque chose bouge. Votre propre serveur cherche ensuite des personnes et des visages, et affiche les résultats dans une application web installable, avec une chronologie de la journée.

La vidéo continue reste sur les cartes SD des caméras ; le serveur ne garde que des instantanés choisis. La reconnaissance des personnes et des visages tourne sur le processeur du serveur, donc aucun service extérieur ne reçoit vos images.

La reconnaissance est une estimation. Home Monitor associe les visages avec prudence et laisse les visages flous non identifiés, mais il ne vérifie pas qu'un visage est réel, ne garantit aucune identification et ne suit pas une personne d'une caméra à l'autre. N'enregistrez que des personnes d'accord, et vérifiez vous-même les correspondances inattendues.

Galerie

Les scènes, les personnes et les événements de ces captures sont générés par la démo de l'application ; aucune vraie image de caméra n'est utilisée.

Comment ça marche

  1. Collecter près des caméras. Une petite machine près des caméras vérifie l'instantané de chacune toutes les deux secondes et n'envoie des images que lorsque quelque chose bouge, plus une toutes les 15 secondes.
  2. Reconnaître sur votre serveur. Le serveur trouve les personnes et les visages avec son processeur, sans carte graphique, et compare les visages à une bibliothèque privée des personnes que vous avez enregistrées.
  3. Consulter dans l'application. L'application web installable montre les derniers instantanés, qui a été reconnu et une chronologie de la journée pour chaque caméra.
  4. Recevoir une alerte discrète. Les notifications facultatives indiquent seulement que quelque chose s'est produit, sans image ni nom, et peuvent être mises en pause sur tous les appareils à la fois pendant que vous êtes dans le jardin.

Fonctionnalités

  • Visages familiers : Enregistrez des personnes avec leur accord, et chaque événement est marqué comme reconnu, comme visage non reconnu ou comme personne dont le visage n'était pas net.
  • Une journée d'un coup d'œil : La chronologie montre les événements de chaque caméra au fil de la journée, filtrés par caméra, résultat et heure, à côté des périodes où une caméra était hors ligne ou les alertes en pause.
  • Des alertes qui ne révèlent rien : Les notifications push sont chiffrées et ne contiennent ni images ni noms. Vous pouvez n'être alerté que pour les visages non reconnus, et mettre les alertes en pause sur tous les appareils à la fois.
  • Accès sur invitation uniquement : Chaque téléphone ou ordinateur est activé par une invitation et peut être révoqué à tout moment. Pour l'instant, chaque appareil invité a un accès complet, y compris à la bibliothèque de visages.
  • Un stockage qui reste léger : Les événements sont supprimés selon leur âge et la taille totale, les visages enregistrés sont conservés à part, et les images privées n'entrent jamais dans le cache hors ligne de l'application.
  • Essayer sans caméras : Une démo locale dessine des scènes et des personnes inventées, n'utilise aucune vraie reconnaissance et s'efface quand vous l'arrêtez.

Sous le capot

Home Monitor comporte deux parties. Le collecteur n'a besoin que de Python et de Pillow. Le serveur tourne sur Python 3.12 avec FastAPI et SQLite, et utilise OpenCV et ONNX Runtime avec trois petits modèles : YOLOX-Nano trouve les personnes, YuNet trouve les visages et SFace les compare. Il est conçu pour des processeurs ARM64 sans carte graphique. Vous et le collecteur accédez au serveur en privé par Tailscale ; l'accès public facultatif passe par Cloudflare Tunnel et un listener Caddy renforcé. Le projet est open source sous licence GPL-3.0-or-later.