Configuration: Détection de mouvement

À propos

La détection de mouvement surveille vos flux vidéo pour détecter les mouvements afin qu'Agent DVR puisse enregistrer et vous alerter uniquement quand quelque chose se produit réellement. Cela économise l'espace disque, rend le visionnage des enregistrements beaucoup plus rapide et peut vous notifier dès qu'une personne entre dans votre allée ou qu'un véhicule s'arrête devant votre maison.

La détection de mouvement dans Agent DVR joue un rôle crucial pour déclencher les Alertes et faciliter le traitement IA. Vous pouvez configurer Agent DVR pour enregistrer lors de la détection de mouvement ou quand une alerte est déclenchée. Pour configurer ces options, accédez au menu Enregistrement et consultez le paramètre Mode. De plus, la détection de mouvement peut être utilisée pour activer diverses Actions.

Il est important de noter que la détection de mouvement peut parfois donner lieu à des fausses alertes en raison de son incapacité à distinguer le mouvement réel d'objets des facteurs environnementaux comme le vent, la pluie ou les changements de luminosité. Pour réduire ces fausses alertes, vous pouvez améliorer la précision de la détection de mouvement en intégrant Agent DVR avec CodeProject.AI pour un filtrage d'alertes plus sophistiqué.

Configuration de la détection de mouvement

Les zones de mouvement vous permettent de concentrer la détection sur les zones importantes, comme une porte, une allée ou un chemin de jardin, tout en ignorant les zones occupées comme les routes ou les arbres qui bougent, qui peuvent causer de fausses alertes.

La commande de zone du détecteur de mouvement dans Agent DVR est accessible en modifiant une caméra et en sélectionnant Détecteur dans le menu en haut à droite. Pour configurer un détecteur, commencez par définir les zones à surveiller. Agent DVR supporte jusqu'à 9 zones, chacune représentée par une couleur différente, sélectionnable via la liste déroulante Zone. Pour créer une zone, cliquez sur l'outil crayon et dessinez sur l'aperçu vidéo. Utilisez le bouton gauche de la souris ou le toucher pour dessiner, et sur bureau, le bouton droit de la souris pour effacer. L'outil pointe ajuste la taille de la pointe du dessin, tandis que l'outil gomme supprime les zones dessinées. L'outil réinitialiser peut être utilisé pour remplir la zone entière avec la zone sélectionnée. Agent DVR surveille ensuite ces zones colorées pour détecter le mouvement.

  • Activé : Basculer l'utilisation du détecteur.
  • Détecteur : Choisissez un type de détecteur de mouvement et configurez-le en utilisant le bouton . Les différents détecteurs de mouvement sont expliqués dans leurs sections respectives.
  • Superposition : Afficher ou masquer la superposition de détection de mouvement sur la vidéo en direct.
  • Couleur : Ajustez la couleur de la superposition de détection de mouvement (non applicable pour tous les détecteurs).
  • Flou : Pixéliser les objets détectés dans la vidéo en direct, utile pour la confidentialité.
  • Délai d'expiration : Définissez la durée (en secondes, entre 1 et 60, par défaut 3) pendant laquelle la caméra reste en état de mouvement après l'arrêt de la détection du mouvement. Cela aide à réduire les événements qui se répètent rapidement.

Utilisation des Zones

Les zones sont cruciales pour les détecteurs IA (Reconnaissance faciale / LPR / Reconnaissance d'objet) et les détecteurs de suivi d'objets (comme le fil de déclenchement, la vitesse, le suivi d'objet). Vous pouvez sélectionner les zones qui déclencheront une alerte dans la configuration du détecteur, ou spécifier des Actions pour les alertes dans les zones spécifiques.

Le détecteur simple déclenche une alerte si un mouvement suffisant est détecté sur toutes les zones.

Certains types de détecteurs n'utilisent pas les paramètres de zone, comme MQTT, ONVIF, ou le mouvement déclenché via les appels API.

Utilisation des zones de détection de mouvement

Les zones de mouvement sont des groupes configurables de zones que vous pouvez nommer et enregistrer pour une utilisation ultérieure. Pour enregistrer votre configuration actuelle de zone de mouvement en tant que nouvelle zone, cliquez sur l'icône d'édition à côté de Zone. Ces outils vous permettent d'ajouter, de modifier et de supprimer des zones.

Pour appliquer une zone de mouvement lors du déplacement de votre caméra PTZ vers une position prédéfinie PTZ (en utilisant l'interface Agent):

  • Créez et enregistrez une nouvelle configuration de zone de mouvement avec un nom spécifique, comme "parking".
  • Ajoutez une nouvelle Action:

    Si : "Présélection PTZ appliquée"
    Sélectionnez la commande de présélection PTZ (par exemple, "Aller à la présélection 1"). Note : Votre caméra doit prendre en charge les présélections PTZ pour que cela fonctionne.
    Cliquez pour ajouter une tâche :
    Tâche : "Définir la zone de détection de mouvement"
    Sélectionnez votre nouvelle zone ("parking").
    Cliquez deux fois sur OK. Maintenant, chaque fois que vous sélectionnez la présélection, ou si Agent définit la présélection via la planification ou un autre événement, cette zone de mouvement sera appliquée automatiquement.

Vous pouvez également modifier la zone de détection de mouvement à l'aide du Planificateur. Cette fonctionnalité permet d'avoir différentes configurations de zones de mouvement en fonction de l'heure, de la semaine ou de dates spécifiques.

Détecteur Simple

Simple

Le détecteur simple identifie tout type de mouvement dans le champ de vision de la caméra. Il utilise très peu de CPU (seul le détecteur ONVIF, qui s'appuie sur la caméra elle-même, en utilise moins). Les mouvements détectés sont mis en surbrillance en rouge, ce qui vous permet de discerner facilement la source du mouvement dans la scène. C'est un bon choix par défaut pour la plupart des caméras, et il fonctionne bien avec un serveur AI pour filtrer les fausses alertes.

  • Avancé: Pour des paramètres et options supplémentaires, reportez-vous à la section avancée ci-dessous.
  • Sensibilité: Ajustez le niveau de mouvement requis pour déclencher la détection. La définition des valeurs minimale et maximale peut affiner la détection; par exemple, une valeur maximale de 80 pourrait aider à ignorer les changements de luminosité à grande échelle. Les chiffres sous le curseur représentent le pourcentage de pixels modifiés.
  • Gain: Appliquez un multiplicateur aux pixels modifiés pour augmenter ou diminuer la sensibilité de la détection de mouvement.

Détecteur d'objets HAAR

Cette méthode utilise des fichiers appelés cascades HAAR pour reconnaître des objets dans le flux vidéo. Cependant, vous pourriez obtenir de meilleurs résultats en utilisant le détecteur simple avec un serveur IA.

  • Taille de frame : Sélectionnez la taille du frame pour le traitement. Les frames plus petits réduisent l'utilisation du CPU mais peuvent être moins précis.
  • Intervalle de détection : Définissez la fréquence du traitement des frames, en millisecondes. Par exemple, 200 équivaut à 5 fois par seconde, et 1000 équivaut à une fois par seconde.
  • Limites de largeur et limites de hauteur : Définissez la plage de taille des objets que Agent DVR doit détecter, exprimée en pourcentage de la largeur ou de la hauteur du frame. L'ajustement de ces curseurs affichera une superposition sur la vidéo, indiquant la plage de taille des objets ciblés.
  • Utiliser GPU : Option d'utilisation du GPU pour le traitement, disponible uniquement si votre GPU supporte Cuda et les pilotes nécessaires sont installés.
  • Fichier : Choisissez le fichier de cascade HAAR pour configurer le détecteur d'objets. Des fichiers par défaut sont fournis pour la détection de visages et de visages de chat.
  • Condition d'alerte et numéro d'alerte : Configurez Agent DVR pour générer des alertes en fonction de la détection d'objets selon le nombre d'objets détectés. Par exemple, pour déclencher une alerte lors de la reconnaissance d'un visage, réglez la condition sur « Plus que » et le numéro d'alerte sur 0.
  • Zones d'alerte : Spécifiez les zones de mouvement à inclure dans la zone de surveillance.
  • Vérifier les coins : Pour plus de détails, consultez Vérification des coins.

Vérification d'angle

Agent utilise une méthode sophistiquée pour déterminer si les objets détectés doivent déclencher des alertes ou des actions en fonction de votre configuration de zone. Il le fait en vérifiant le point central de l'objet détecté et, éventuellement, une grille s'étendant jusqu'aux coins de la boîte englobante de l'objet. Vous pouvez ajuster cette fonctionnalité en définissant un pourcentage qui représente la distance entre le point central et le coin de la boîte englobante pour les vérifications de zone. Fondamentalement, un réglage de 0 signifie que seul le point central est vérifié, 100 vérifie tous les coins, et 50 vérifie les points médians entre le centre et chaque coin du rectangle englobant. Si vous recevez de nombreuses notifications d'événements où l'objet ne semble pas être dans la zone désignée, alors définir la vérification des coins sur 0 pourrait être bénéfique.

MQTT

Vous avez la possibilité d'initier la détection de mouvement depuis votre serveur MQTT. Tout d'abord, assurez-vous d'avoir configuré MQTT de manière appropriée. Ensuite, pour déclencher la détection d'objet, il suffit de transmettre la commande indiquée dans l'écran de configuration du détecteur au canal SERVEUR/commandes où SERVEUR est le nom de votre serveur (affiché dans le menu du serveur que vous pouvez modifier dans les Paramètres). Cette intégration permet un système de détection de mouvement plus polyvalent et réactif, exploitant les capacités de votre serveur MQTT.

ONVIF

De nombreux appareils compatibles ONVIF sont équipés de leurs propres capacités de détection de mouvement. Lorsque vous sélectionnez ce mode et l'associez à une caméra compatible ONVIF (en utilisant le type de connexion ONVIF dans Agent), Agent DVR comptera sur l'appareil lui-même pour fournir les événements de détection de mouvement et déclencher les actions en fonction de ceux-ci. Comme l'analyse se produit sur la caméra, c'est l'option la plus légère pour le CPU du serveur. Si vous rencontrez des problèmes avec cette fonctionnalité, il est conseillé de consulter les journaux (accessibles à /logs.html sur le serveur local) car il est possible que votre caméra ne supporte pas la détection ONVIF. Pour plus d'informations sur la configuration de ces paramètres, veuillez consulter Paramètres ONVIF du serveur.

  • Event Timeout: Durée en secondes à attendre avant de réinitialiser l'état de mouvement. Définissez cette valeur plus haute que l'intervalle de notification d'événements de votre caméra.

Détecteur de personnes

Cette méthode utilise un algorithme spécialisé conçu spécifiquement pour détecter les piétons. Cependant, vous pourriez constater que l'utilisation du détecteur simple et l'intégration de l'IA pour le filtrage des alertes fournissent de meilleurs résultats.

  • Utiliser GPU : Décidez d'utiliser le GPU pour le traitement, disponible uniquement si votre GPU supporte Cuda et que les pilotes nécessaires sont installés.
  • Taille de l'image : Sélectionnez la taille de l'image pour le traitement. Notez que les images plus petites consomment moins de CPU mais peuvent donner des résultats moins précis.
  • Intervalle de détection : Définissez la fréquence de traitement des images, en millisecondes. Par exemple, 200 équivaut à 5 fois par seconde, tandis que 1000 équivaut à une fois par seconde.
  • Condition d'alerte et Nombre d'alertes : Configurez les critères de génération d'alertes en fonction du nombre de personnes détectées. Par exemple, pour déclencher une alerte lors de la détection d'une personne, définissez la condition sur « Plus que » et entrez 0 dans le champ Nombre d'alertes.
  • Zones d'alerte : Choisissez les zones de mouvement spécifiques qui doivent être surveillées dans la zone de détection.
  • Vérifier les coins : Pour des paramètres plus détaillés, consultez Vérification des coins.
  • Confiance : Le niveau de confiance minimal requis pour qu'une détection soit comptabilisée.

Reolink

Certaines caméras Reolink proposent un point d'accès API qu'Agent DVR peut interroger pour recevoir les états d'alerte de mouvement ou d'IA. Si votre caméra prend en charge cette fonction, vous pouvez utiliser ce détecteur. Pour vérifier si votre caméra possède cette capacité, essayez d'accéder à l'URL : http://[IP ADDRESS]/api.cgi?cmd=GetMdState&channel=0&rs=Get&user=[USERNAME]&password=[PASSWORD] (remplacez [IP ADDRESS], [USERNAME], et [PASSWORD] par l'adresse IP et les identifiants de connexion de votre caméra). Une connexion réussie renverra du texte au format JSON plutôt qu'une page d'erreur.

  • Intervalle : Déterminez la fréquence à laquelle Agent DVR interroge votre caméra pour les alertes ou données de mouvement.
  • Canal : Le canal à interroger. Utilisez 0 pour les caméras autonomes ; les canaux peuvent différer sur un NVR.
  • Mode : Sélectionnez entre « Motion » et « AI ». Les deux modes déclenchent des événements de détecteur de mouvement dans Agent DVR, qui peuvent être utilisés pour l'enregistrement (réglez le mode d'enregistrement sur Detect). L'option « AI » déclenche la détection de mouvement si la caméra identifie des classes d'objets spécifiques (comme dog_cat, face, people, vehicle).
  • Utiliser SSL : Connectez-vous à la caméra via HTTPS.

Vous pouvez configurer des actions pour effectuer des tâches lorsque des objets étiquetés comme dog_cat, face, people ou vehicle sont détectés.

Remarque : Pour activer la fonction IA, vous devrez peut-être activer le suivi dans l'interface web de la caméra et définir les paramètres de taille d'objet minimum et maximum. Agent DVR étiquettera alors vos enregistrements avec les objets identifiés par Reolink.

Hikvision

Les caméras Hikvision offrent un point de terminaison ISAPI qu'Agent DVR peut surveiller pour recevoir les états des alertes de mouvement ou d'IA. Si votre caméra prend en charge cette fonction, vous pouvez utiliser ce détecteur. Consultez la documentation de votre caméra pour voir si cela est supporté.

  • Utiliser SSL : Indique s'il faut utiliser SSL pour la connexion.
  • Port : Agent utilisera le port 80 ou 443 selon Utiliser SSL, mais vous pouvez le modifier ici.
  • Canal : Le canal utilisé par votre caméra - pour les caméras, ce serait 1, mais si vous avez un NVR Hikvision, il pourrait être différent
  • Sensibilité : Valeur entre 0 (moins sensible) et 100 (plus sensible) pour le détecteur de mouvement.

Ces caméras peuvent également détecter d'autres événements (comme franchissement de ligne, intrusion, flânerie ou entrée de région). Agent DVR mappe chaque événement à une catégorie nommée et déclenche un événement "AI Object Found" étiqueté avec ce nom de catégorie, par exemple : Line Crossing Detection, Intrusion Detection, Region Entrance, Region Exit, Loitering, Parking, Unattended Baggage. Ajoutez une action sous "AI Object Found" et utilisez ces étiquettes pour la filtrer. Pour voir les événements générés par votre caméra, définissez Logging sur Debug dans Server Settings et consultez les journaux dans le menu serveur.

Détection de vitesse

Cette méthode utilise les informations de scène que vous fournissez pour suivre les objets en mouvement, estimer leur vitesse et générer des alertes si les objets se déplacent trop rapidement ou trop lentement.

  • Avancé : Pour des paramètres plus détaillés, consultez la section avancée ci-dessous.
  • Limites de largeur et limites de hauteur : Définissez la plage de taille pour la détection d'objets dans la scène, avec des valeurs exprimées en pourcentage de la largeur ou de la hauteur de la scène. L'ajustement de ces curseurs affichera un calque sur la vidéo, indiquant la plage de taille cible des objets.
  • Distance de déplacement minimale : Définissez la distance minimale qu'un objet doit parcourir pour être considéré en mouvement, basée sur un pourcentage de la largeur de la scène.
  • Temps minimum : Spécifiez la durée pendant laquelle un objet doit être en mouvement pour être suivi, en dixièmes de seconde (par exemple, 1 = 0,1 seconde, 10 = 1 seconde).
  • Mesure de vitesse : Sélectionnez l'unité de mesure de vitesse préférée pour le calque.
  • Limites de vitesse : Déterminez les limites inférieure et supérieure de la détection de vitesse. Les mouvements en dehors de cette plage déclencheront des événements de détection de mouvement.
  • Distance horizontale et verticale : Entrez la distance totale sur la scène en mètres. Agent DVR utilise cette mesure pour calculer la vitesse des objets en mouvement.
  • Zones d'alerte : Choisissez quelles zones de mouvement sont incluses dans la zone de surveillance.
  • Vérifier les coins : Pour des paramètres supplémentaires, consultez Vérification des coins.

Suivi d'objet

Ce détecteur identifie et suit les objets en mouvement, déclenchant des événements de détection de mouvement en fonction de la durée de leur présence dans la scène et de la distance parcourue.

  • Avancé: Pour des paramètres et options plus détaillés, consultez la section avancée ci-dessous.
  • Limites de largeur et limites de hauteur: Spécifiez la plage de taille pour la détection d'objets, avec des valeurs données en pourcentage de la largeur ou de la hauteur de la scène. L'ajustement de ces curseurs affichera une représentation visuelle de la plage de taille d'objet ciblée sur la vidéo.
  • Déplacement minimum: Définissez la distance minimale qu'un objet doit parcourir pour être reconnu comme un objet en mouvement, par rapport à la largeur de la scène.
  • Durée minimum: Définissez la durée minimale pendant laquelle un objet doit être en mouvement pour être pris en compte pour le suivi, en dixièmes de seconde (par exemple, 1 = 0,1 seconde, 10 = 1 seconde).
  • Afficher le total: Ajoutez un compteur au flux vidéo en direct pour suivre les objets en mouvement.
  • Carte thermique: Visualisez les motifs de mouvement au fil du temps en ajoutant des lignes aux objets suivis.
  • Zones d'alerte: Choisissez les zones de mouvement à inclure dans la zone de surveillance.
  • Vérifier les coins: Pour plus d'informations, consultez Vérification des coins.

Alors que Agent DVR surveille et suit le mouvement dans la scène, il affiche des rectangles colorés autour des objets détectés. Les couleurs ont les significations suivantes:

  • Blanc: Objet détecté et en cours d'examen.
  • Jaune: Objet détecté sur plusieurs images.
  • Orange: L'objet s'est déplacé pendant au moins la durée minimale spécifiée dans les paramètres de suivi.
  • Rouge: L'objet a rempli tous les critères de suivi pour déclencher un événement de détection de mouvement.

Lignes de détection

Ce détecteur reconnaît et suit les objets en mouvement, déclenchant des événements de détection de mouvement lorsqu'ils franchissent des fils de détection prédéfinis dans la scène. Utilisez-le pour la détection de franchissement de ligne, par exemple pour recevoir une alerte quand quelqu'un franchit une clôture ou entre par un portail. Pour ajouter des fils de détection, cliquez simplement et faites glisser sur la vidéo en direct. Vous pouvez créer jusqu'à 10 fils de détection. Pour retirer un fil de détection, cliquez et faites glisser l'un de ses points hors de la scène.

  • Avancé: Pour des paramètres et options plus détaillés, consultez la section avancée ci-dessous.
  • Limites de largeur et limites de hauteur : Définissez la plage de taille des objets à détecter, avec des valeurs exprimées en pourcentage de la largeur ou de la hauteur de la scène. L'ajustement de ces curseurs affichera une représentation visuelle de la plage de taille cible sur la vidéo.
  • Distance minimale : Spécifiez la distance minimale qu'un objet doit parcourir pour être reconnu comme un objet en mouvement, par rapport à la largeur de la scène.
  • Durée minimale : Définissez la durée minimale pendant laquelle un objet doit être en mouvement pour être suivi, en dixièmes de seconde (par exemple, 1 = 0,1 seconde, 10 = 1 seconde).
  • Déclenchement répété : Activez cette option pour permettre à un objet de déclencher le même fil de détection plusieurs fois. Par défaut, un objet ne peut déclencher un fil de détection qu'une seule fois.
  • Comptage : Affiche un comptage du nombre de fois où des objets ont franchi le fil de détection, ainsi que la direction du franchissement. Les options incluent le comptage des franchissements vers la gauche, vers la droite, dans les deux sens ou le total des franchissements.
  • Alerte : Configurez le système pour générer une alerte si le fil de détection est franchi dans une direction spécifiée ou dans n'importe quelle direction.
  • Zones d'alerte : Choisissez quelles zones de mouvement sont incluses dans la zone de surveillance.
  • Vérifier les coins: Pour plus d'informations, consultez Vérification des coins.

Via API

Pour démarrer la détection de mouvement pour une caméra à l'aide d'un appel API, vous devez définir le type d'objet (ot) et l'ID d'objet (oid). Par exemple, pour une caméra (ot=2) avec un ID de 1 (oid=1 ; cet ID s'affiche en haut du contrôle d'édition lors de la modification d'un appareil), l'appel API doit être structuré comme suit :

http://localhost:8090/command/detect?ot=2&oid=1

Paramètres avancés

Les paramètres par défaut des détecteurs sont généralement appropriés pour la plupart des scènes, mais vous pouvez les affiner pour améliorer les performances si nécessaire.

  • Analyzer: L'analyseur actuellement disponible est le soustracteur de fond CNT, connu pour sa haute précision et sa faible utilisation CPU.
  • Frame Size: Sélectionnez la taille de frame pour le traitement. Les frames plus petites réduisent l'utilisation CPU et peuvent en fait améliorer le suivi grâce à la réduction du bruit.
  • Tracker: Choisissez le suivi OpenCV pour le suivi d'objets. Les options incluent:
  • MOSSE: Ce suivi offre la plus faible utilisation CPU mais est le moins précis.
  • CSRT: L'option la plus précise, mais elle utilise également plus de CPU (par défaut).
  • Max Objects: Définissez une limite sur le nombre d'objets à suivre simultanément. Plus d'objets signifient une utilisation CPU plus élevée.
  • Detect Interval: Définissez la fréquence du traitement de frames pour la détection de mouvement, en millisecondes (par exemple, 200 pour 5 fois par seconde, 1000 pour une fois par seconde).
  • Track Interval: Définissez la fréquence de traitement du suivi. Un intervalle plus élevé peut perdre les objets se déplaçant rapidement (par exemple, 200 pour 5 fois par seconde, 1000 pour une fois par seconde).
  • Pixel Stability: Déterminez le nombre d'échantillons pour qu'un pixel soit considéré comme stable et le 'crédit' maximum qu'un pixel peut gagner en restant la même couleur. Ces paramètres sont essentiels pour une soustraction de fond et une détection de mouvement efficaces. Plus d'infos
  • Use History: Activez ceci pour apprendre les objets qui se déplacent régulièrement dans la scène. Il est généralement recommandé de garder ceci désactivé sauf si nécessaire.
  • Parallel Process: Activez le traitement parallèle dans l'algorithme de détection de mouvement. Il est recommandé de garder ceci activé.
  • Tracking Timeout: Spécifiez le temps d'attente (en secondes) pour qu'un objet réapparaisse avant d'arrêter son suivi.
  • Movement Timeout: Définissez la durée (en secondes) à attendre pour qu'un objet stationnaire se déplace à nouveau avant d'arrêter son suivi.
Conseil! Le bruit dans l'image peut affecter les résultats du suivi. Définissez la taille de frame à petite pour estomper le bruit et améliorer les résultats du suivi.