Suivi d'objet vidéo en temps réel avec centrage et récupération automatiques
Une équipe de production vidéo avait besoin d'un outil capable de suivre un objet sélectionné dans des séquences vidéo et de le maintenir automatiquement centré dans le cadre lorsqu'il se déplaçait — avec des transitions fluides, plusieurs options d'algorithmes de suivi, et une récupération automatique lorsque le traceur perdait la cible.
Discutez de Votre ProjetLe Défi
Maintenir un sujet en mouvement centré dans une vidéo nécessitait un effort manuel ou un équipement spécialisé coûteux :
- Recadrage manuel — Les monteurs passaient des heures à ajuster manuellement les positions par keyframe pour maintenir les sujets centrés
- Échecs de suivi — Les objets se déplaçaient derrière des obstacles, changeaient d'apparence, ou se déplaçaient trop rapidement pour des traceurs simples
- Pas de récupération — Lorsqu'un traceur perdait sa cible, toute la session de suivi devait être redémarrée depuis le début
- Sortie saccadée — Les coordonnées de suivi brutes produisaient des mouvements de caméra saccadés et peu naturels
- Compromis algorithmiques — Différents scénarios nécessitaient différents algorithmes de suivi (précision vs. vitesse), mais le changement était complexe
- Sélection interactive — Les utilisateurs avaient besoin d'un moyen intuitif pour sélectionner la cible de suivi à l'exécution
Notre Solution
Nous avons construit un système de suivi et de centrage d'objets en temps réel avec plusieurs algorithmes de suivi OpenCV, une récupération automatique basée sur la correspondance de caractéristiques, un lissage par moyenne exponentielle pour un mouvement naturel, et une GUI interactive pour la sélection d'objets.
Architecture
- Moteur de suivi : OpenCV avec les implémentations de traceurs CSRT, KCF et MOSSE
- Système de récupération : Extraction de caractéristiques ORB avec ré-identification basée sur l'homographie
- Moteur de centrage : Transformation affine avec lissage par moyenne mobile exponentielle
- Interface de sélection : GUI de type "cliquer-glisser" avec retour visuel
- Configuration : Paramètres basés sur YAML pour tous les paramètres de suivi, d'affichage et de centrage
Algorithmes de suivi
Le système prend en charge trois algorithmes de suivi, sélectionnables via la configuration :
CSRT (Channel and Spatial Reliability)
Meilleure précision pour les scénarios complexes. Utilise des cartes de fiabilité spatiale et des poids spécifiques aux canaux pour gérer l'occlusion partielle et les changements d'apparence. Convient lorsque la précision est plus importante que la vitesse.
KCF (Kernelized Correlation Filters)
Performances équilibrées pour la plupart des cas d'utilisation. Utilise la corrélation circulaire dans le domaine de Fourier pour un suivi efficace avec une bonne précision. Convient au suivi général à des fréquences d'images modérées.
MOSSE (Minimum Output Sum of Squared Error)
Le traceur le plus rapide pour les applications en temps réel. Utilise des filtres de corrélation adaptatifs avec un coût de calcul extrêmement faible. Convient lorsque le taux de rafraîchissement est critique et que l'objet suit des chemins prévisibles.
Système de récupération automatique
Lorsque le traceur principal perd la cible (objet occlus, sorti du cadre, changement d'apparence), le système tente une ré-identification automatique :
- Extraction de caractéristiques — Des descripteurs ORB (Oriented FAST and Rotated BRIEF) extraits de la région d'objet initiale et du cadre actuel
- Correspondance de caractéristiques — Correspondance par force brute avec la distance de Hamming, filtrée par le test de ratio de Lowe pour ne conserver que les correspondances fiables
- Estimation d'homographie — Homographie basée sur RANSAC calculée à partir des points de caractéristiques correspondants, rejetant les valeurs aberrantes
- Récupération de la Bounding Box — Les coins de la bounding box initiale transformés via l'homographie vers la nouvelle position de l'objet
- Ré-initialisation du traceur — Si la position récupérée est valide (dimensions positives, dans les limites du cadre), le traceur est ré-initialisé à la nouvelle localisation
Cela permet au système de se rétablir après de brèves occlusions et de réacquérir la cible sans intervention de l'utilisateur.
Centrage fluide
Translation du cadre
Une fois la position de l'objet connue, le système le centre en utilisant une transformation affine :
- Les positions du centre de l'objet et du centre du cadre sont calculées
- Le décalage de translation requis est calculé
- Le cadre est décalé à l'aide d'une transformation affine avec une couleur de remplissage configurable
Réduction de la gigue
Les coordonnées de suivi brutes sont bruitées. Le système applique un lissage par moyenne mobile exponentielle :
- Un facteur de lissage configurable contrôle le compromis entre réactivité et stabilité
- Des valeurs inférieures produisent un mouvement plus fluide et plus cinématique avec un léger décalage
- Des valeurs plus élevées suivent plus précisément mais présentent plus de gigue
- Le résultat est un comportement de suivi de caméra d'apparence naturelle
Sélection interactive d'objets
Trois modes de sélection sont pris en charge :
- Mode GUI — Clic-glisser sur le cadre vidéo avec retour visuel de la taille, confirmer avec la barre d'espace/entrée, annuler avec échap
- Mode ROI — Sélecteur de région d'intérêt intégré d'OpenCV
- Mode Coordonnées — Bounding Box prédéfinie à partir du fichier de configuration
Affichage en temps réel
L'incrustation du visualiseur affiche :
- Bounding box autour de l'objet suivi
- Réticule central pour référence d'alignement
- Indicateur d'état du suivi (Suivi / Perdu / En pause)
- FPS actuel pour la surveillance des performances
- Nom de l'algorithme de suivi actif
Commandes de lecture
- Lecture/Pause — Basculer le suivi avec la barre d'espace
- Réinitialiser — Sélectionner une nouvelle cible de suivi en cours de session
- Boucle — Redémarrage automatique de la vidéo avec maintien de l'état de suivi
- Quitter — Libération propre des ressources
Caractéristiques principales
- Trois algorithmes de suivi — CSRT (précision), KCF (équilibré), MOSSE (vitesse) — commutables via la configuration
- Récupération automatique — La correspondance de caractéristiques ORB avec homographie relocalise les cibles perdues
- Centrage fluide — La moyenne mobile exponentielle élimine la gigue pour un mouvement naturel
- Sélection interactive — GUI de type "cliquer-glisser" avec retour visuel pour la sélection de la cible
- Performances en temps réel — 25-60+ FPS selon le choix de l'algorithme
- Lecture en boucle — Relecture vidéo continue avec suivi persistant
- Configuration YAML — Tous les paramètres (algorithme, lissage, affichage, résolution) configurables
- Conception modulaire — Séparation nette entre les composants du traceur, du sélecteur et du processeur vidéo
Résultats
Stack Technologique
caseStudyDetail.more Études de Cas
Découvrez plus de nos implémentations techniques
Montage vidéo mobile multiplateforme avec analyse assistée par AI
Les créateurs de contenu et les professionnels des médias avaient besoin d'une solution de montage vidéo axée sur le mobile, capable d'exploiter les résultats d'analyse basés sur l'AI pour des flux de travail d'édition plus intelligents en déplacement.
Détection de locuteur actif assistée par AI pour la production vidéo multi-caméras
Une société de production média gérant des tournages d'interviews et de tables rondes multi-caméras avait besoin d'un moyen automatisé pour identifier qui parle à tout moment dans des séquences vidéo complexes.
Questions fréquemment posées
MicrocosmWorks a implémenté un module de ré-identification qui stocke les embeddings de caractéristiques visuelles de l'objet suivi à l'aide d'un CNN léger. Lorsque le suivi est perdu en raison d'une occlusion ou d'une sortie du cadre, le système active un mode de recherche qui compare les objets détectés aux embeddings stockés, récupérant le suivi dans les 2-3 images après la réapparition de l'objet.
MicrocosmWorks a optimisé le pipeline de suivi pour maintenir un traitement à 60fps sur le matériel NVIDIA Jetson Orin et à 30fps sur des GPU grand public comme la RTX 3060. Les calculs de centrage automatiques, incluant une interpolation de panoramique fluide pour éviter les mouvements brusques, ajoutent moins de 2ms de surcoût par image au coût de suivi de base.
MicrocosmWorks a conçu un système d'amortissement de mouvement avec des paramètres configurables pour les limites d'accélération, la vitesse de panoramique maximale et le rayon de la zone morte autour du centre du cadre. L'algorithme de centrage utilise une physique de ressorts à amortissement critique pour produire des mouvements de caméra fluides, de qualité diffusion, qui suivent le sujet sans osciller ni dépasser la cible.
Oui, MicrocosmWorks a spécifiquement conçu le système pour répondre aux exigences de latence des diffusions en direct, avec le pipeline complet de suivi et de recadrage fonctionnant avec un délai d'une seule image. Le système a été déployé pour des diffusions de basketball, de soccer et de tennis où il produit automatiquement une sortie de caméra suiveuse serrée à partir d'une caméra statique grand-angle.
MicrocosmWorks conçoit des systèmes de traitement vidéo en temps réel à des tarifs de 30 à 50 $/heure, avec une solution de suivi et de centrage automatique incluant la formation de modèles, l'optimisation GPU et l'intégration de diffusion, nécessitant généralement 400 à 600 heures de développement. L'optimisation du déploiement Edge pour du matériel comme Jetson ajoute environ 80 à 120 heures supplémentaires.
Prêt à Transformer Votre Entreprise ?
Discutons de la façon dont nous pouvons appliquer des solutions similaires à vos défis.