Glossaire

Flux optique

Découvrez la puissance de l'Optical Flow dans le domaine de la vision artificielle. Apprenez comment il estime les mouvements, améliore l'analyse vidéo et favorise les innovations en matière d'intelligence artificielle.

Le flux optique est un concept fondamental de la vision par ordinateur (VA) qui implique l'estimation du mouvement des objets, des surfaces et des bords d'une scène visuelle causé par le mouvement relatif entre un observateur (comme une caméra) et la scène. Il calcule un champ de vecteurs décrivant la direction et la vitesse du mouvement des pixels ou des caractéristiques entre deux images vidéo consécutives. Cela permet de comprendre en détail et à bas niveau "comment" les choses se déplacent, ce qui est fondamental pour de nombreuses tâches d'analyse de scènes dynamiques.

Comment fonctionne le flux optique

L'hypothèse centrale de la plupart des algorithmes de flux optique est la "constance de la luminosité", qui suppose que l'intensité d'un pixel correspondant à un point spécifique d'un objet reste constante sur de courts intervalles de temps. En trouvant le déplacement qui préserve cette luminosité, les algorithmes peuvent estimer le mouvement. Il existe deux approches principales pour calculer le flux optique :

  • Flux optique dense: cette méthode calcule un vecteur de mouvement pour chaque pixel de l'image. Elle fournit un champ de mouvement très détaillé, utile pour des tâches telles que la segmentation d'images et la compréhension de dynamiques de scènes complexes. La méthode Horn-Schunck est un exemple classique, tandis que les modèles modernes d'apprentissage profond tels que RAFT offrent des performances de pointe.
  • Flux optique clairsemé: au lieu d'analyser chaque pixel, cette méthode suit un ensemble clairsemé de caractéristiques "intéressantes" (comme les coins ou les points clés) à travers les images. La méthode Lucas-Kanade est un algorithme clairsemé bien connu. Cette approche est plus efficace en termes de calcul et convient bien aux applications où seul le mouvement de points spécifiques est nécessaire, comme dans le suivi d'objets.

Flux optique et suivi d'objet

Bien que liés, le flux optique et le suivi d'objet résolvent des problèmes différents.

  • Le flux optique décrit le mouvement de bas niveau des pixels. Son résultat est un ensemble de vecteurs représentant le mouvement entre deux images. Il ne comprend pas intrinsèquement le concept d'"objet" et ne conserve pas son identité au fil du temps.
  • Le suivi d'objet est une tâche de plus haut niveau qui consiste à localiser un objet spécifique et à suivre sa trajectoire sur plusieurs images, en lui attribuant un identifiant cohérent. Les algorithmes de suivi utilisent souvent des techniques telles que le flux optique pour prédire la position d'un objet dans l'image suivante après qu'il ait été identifié par un modèle de détection d'objet, tel que le modèle YOLO d'Ultralytics. Vous pouvez voir cela en action dans le mode de suivi d'objet d'Ultralytics.

En résumé, le flux optique répond à la question "Comment les pixels se déplacent-ils ?", tandis que le suivi d'objet répond à la question "Où cette voiture est-elle allée ?

Applications dans le monde réel

Le flux optique est crucial pour de nombreuses applications qui nécessitent de comprendre le mouvement à partir d'une vidéo :

  • Systèmes autonomes: Les véhicules et les robots autonomes utilisent le flux optique pour l'odométrie visuelle (estimation de l'auto-mouvement), la détection des obstacles et la compréhension du mouvement relatif des objets dans leur environnement. Par exemple, il permet à une voiture autonome d'estimer sa vitesse par rapport à la route ou de suivre les véhicules proches. Des entreprises comme Waymo s'appuient fortement sur la perception des mouvements. Pour en savoir plus, découvrez l'IA dans les voitures auto-conduites.
  • Compression vidéo: Les normes telles que MPEG utilisent des techniques d'estimation de mouvement similaires au flux optique pour prédire les images suivantes sur la base des images précédentes. En n'encodant que les vecteurs de mouvement et les erreurs de prédiction (résidus), on obtient une compression significative des données.
  • Reconnaissance des actions: La compréhension des actions humaines dans les vidéos, un élément clé de l'estimation de la pose, implique souvent l'analyse des modèles de mouvement dérivés du flux optique. Cet aspect est essentiel pour les applications dans les domaines de l'analyse sportive et de la technologie de fitness intelligente.
  • Stabilisation vidéo: Les techniques de stabilisation numérique de l'image peuvent utiliser le flux optique pour estimer le tremblement de l'appareil photo et le compenser, produisant ainsi des vidéos plus fluides. Cette technologie est courante dans les smartphones et les appareils photo modernes.
  • Analyse d'images médicales: Utilisé pour suivre le mouvement des tissus, comme le mouvement du muscle cardiaque dans les échocardiogrammes ou la déformation des organes pendant les procédures. Voir des ressources comme la revue Radiologie : Artificial Intelligence pour connaître les avancées dans ce domaine.
  • Robotique: Permet aux robots de naviguer, d'interagir avec des objets et d'effectuer des tâches sur la base d'un retour d'information visuel sur les mouvements dans leur environnement. L'intégration avec des systèmes tels que ROS comprend souvent l'analyse des mouvements.

Outils et mise en œuvre

Des bibliothèques comme OpenCV fournissent des implémentations d'algorithmes classiques de flux optique, et leur documentation comprend des tutoriels détaillés sur le flux optique OpenCV. Pour les approches d'apprentissage profond, des frameworks comme PyTorch (visitez le site officiel de PyTorch) et TensorFlow (visitez le site officiel de TensorFlow) sont couramment utilisés, souvent en s'appuyant sur des modèles pré-entraînés disponibles sur des plateformes comme Hugging Face. L'entraînement de ces modèles nécessite des ensembles de données vidéo à grande échelle contenant des informations de flux de vérité terrain, tels que les ensembles de données FlyingThings3D ou Sintel. Des plateformes comme Ultralytics HUB peuvent aider à gérer les ensembles de données et les flux d'entraînement des modèles pour les tâches de vision par ordinateur connexes.

Rejoindre la communauté Ultralytics

Rejoignez l'avenir de l'IA. Connectez-vous, collaborez et évoluez avec des innovateurs mondiaux.

S'inscrire
Lien copié dans le presse-papiers