vignette|Un exemple de détection de personnes sur une voie de circulation La détection de personnes est un domaine de la vision par ordinateur consistant à détecter un humain dans une image numérique. C'est un cas particulier de détection d'objet, où l'on cherche à détecter la présence et la localisation précise, dans une image, d'une ou plusieurs personnes, en général dans une posture proche de celle de la station debout ou de la marche. On parle également de détection de piéton, en raison de l'importance des applications en vidéosurveillance et pour les systèmes de vision embarqués dans des véhicules.

Étudiée à partir de la fin des années 1990, la détection de personnes s'est révélée être un sujet assez difficile, en raison de la grande variété d'apparences des personnes, de l'articulation du corps humain et des phénomènes d'occultations. Bénéficiant des progrès méthodologiques réalisés en détection de visage, la détection de personnes a inspiré des méthodes spécifiques, comme les histogrammes de gradient orienté, particulièrement performants. Les méthodes les plus efficaces construisent des modèles statistiques par apprentissage supervisé, à partir de caractéristiques de forme ou d'apparence, calculées sur de nombreux exemples d'images de personnes.

Problématique vignette|Détection de piétons dans diverses situations sur la voirie. La détection de personnes est un sujet particulièrement difficile, en raison notamment de la grande variabilité d'apparences et de situations possibles : grande variabilité de l'apparence des êtres humains, ainsi que de leurs vêtements ; articulation du corps humain (bras, jambes, torse) ; occultations par des objets (mobilier urbain par exemple) ; occultations par d'autres personnes et phénomènes de foule.

Généralement, la détection doit s'effectuer dans des conditions difficiles et en environnement non contraint, en utilisant du matériel de prise de vue fournissant des images de faible qualité : caméras de vidéosurveillance de faible résolution, caméras embarquées dans un véhicule, etc.

Le problème est donc de trouver une représentation d'un humain qui soit à la fois suffisamment générique pour englober tous les types de situations, et suffisamment discriminante pour ne représenter que les humains.. Pour cela, on utilise en général une représentation intermédiaire, fondée sur le calcul d'une ou plusieurs caractéristiques, permettant de mieux résumer l'information que les seules valeurs des pixels..

Historique Les premiers travaux sur la détection de personnes datent de la fin des années 1990... Dans l'une des premières méthodes proposées, la stéréovision est utilisée pour détecter des objets au moyen d'une transformée de Hough. La méthode peut détecter des piétons, mais n'est pas exclusive à ce type d'objet. En 1998, Heisele et Wöhler utilisent le mouvement des jambes des piétons pour réaliser la détection et la classification, avec des contraintes sur la localisation des piétons par rapport au sol. Ces méthodes restent cependant spécifiques à une application et peu génériques.

À partir des années 2000, le domaine bénéficie des avancées effectuées en détection de visage et notamment de la méthode de Viola et Jones, qui est étendue en 2005 à la détection de personnes en utilisant le mouvement.. La méthode permet une détection plus générique, ne nécessitant pas d'information a priori sur la structure de la scène, et donne de bons résultats avec un temps d'exécution proche du temps-réel. Poussée notamment par les campagnes d'évaluation internationales (e.g PASCAL VOC), la recherche se concentre sur ce type de méthode de détection générique. En 2005, des chercheurs de l'INRIA proposent les histogrammes de gradient orienté (HOG), dont les excellents résultats en font rapidement une méthode standard. En 2008, des chercheurs de l'Université Rutgers utilisent un descripteur construit comme une matrice de covariance, qui permet d'obtenir des performances encore meilleures.. Également en 2008, des chercheurs de l'université de Pékin utilisent avec succès les motifs binaires locaux (LBP), un type de caractéristiques qui s'était révélé efficace en détection de visage.

Techniques de détection de zones Il existe un grand nombre de techniques pour la détection de personnes dans une image ou une vidéo numérique, répondant aux différentes contraintes des applications. Certaines peuvent être combinées entre elles (stéréovision, infrarouge et fenêtre glissante par exemple). Dans le cas où l'on maîtrise le système d'acquisition de l'image ou de la vidéo, on peut choisir un système de stéréovision, un système d'imagerie à grande gamme dynamique, ou travailler dans le domaine infrarouge avec une caméra thermique. Les techniques mises en œuvre lorsque l'on recherche une personne dans une image existante, sans aucune information a priori sur le contenu, sont généralement différentes.

Le point commun de ces techniques est de calculer un certain nombre de caractéristiques à partir des pixels de l'image. Celles-ci peuvent être globales ou locales, et rendre compte d'informations de forme, de couleur, de texture ou de mouvement. Les caractéristiques des zones contenant des personnes sont en général utilisées par une méthode d'apprentissage supervisé, qui peut être l'implémentation d'un modèle génératif ou discriminant, pour déterminer un modèle de personne. Ce dernier sert alors à classer une zone de l'image comme étant une personne ou non, à partir d'un vecteur de caractéristiques calculé sur cette zone. Celle-ci peut être déterminée par un pré-traitement, par exemple par la détection du mouvement au moyen d'une étape de soustraction de fond. Une alternative est d'explorer toutes les zones possibles de l'image, comme c'est le cas avec les méthodes de détection par fenêtre glissante.

Pré-traitement Certaines méthodes utilisent une étape de pré-sélection des zones à analyser. Ceci permet de réduire la complexité algorithmique ou d'écarter d'emblée toute zone sans intérêt, en particulier en fonction de critères géométriques.

Utilisation de la stéréovision La stéréovision est l'utilisation de plusieurs caméras pour capturer la même scène, vue sous des angles différents, ce qui permet une reconstitution en 3D de la scène.

On peut ainsi, moyennant une calibration des caméras, estimer les distances et la taille des objets. C'est une technique essentiellement utilisée pour les systèmes d'aide à la conduite automobile, application pour laquelle elle se révèle meilleure que les techniques fondées sur une seule vue. L'information 3D est utilisée pour localiser des régions d'intérêts, c'est-à-dire des zones pouvant contenir une personne, à partir de la géométrie de la scène (localisation du sol) et de contraintes géométriques de la région (taille et rapport hauteur/largeur). On suppose souvent par simplification que la route sur laquelle se déplace le véhicule est plane, mais plusieurs méthodes ont été développées pour outrepasser cette hypothèseA. Sappa, F. Dornaika, D. Ponsa, D. Ger´onimo, and A. L´opez, An efficient approach to onboard stereo vision system pose estimation, IEEE Trans. on Intelligent Transportation Systems, vol. 9, no. 3, , 2008.. La stéréovision seule ne suffisant pas à détecter des personnes, les régions d'intérêts détectées sont ensuite généralement traitées lors d'une étape de classification.

Les systèmes stéréo présentent plusieurs qualités telle que la possibilité d'évaluer les distances de façon satisfaisante et une bonne robustesse aux variations brusques d'illuminations et occultationsL. Zhao and C. Thorpe, “Stereo and neural network–based pedestrian detection”, IEEE Trans. on Intelligent Transportation Systems, vol. 1, no. 3, , 2000. Ils sont par contre plus lents, le traitement de la stéréovision étant consommatrice en calcul. De plus, ils peuvent présenter des zones aveugles dans les régions non texturées et nécessitent un post-traitement des régions détectées, afin de ne sélectionner que celles pouvant correspondre à une personne, identifiées à partir de contraintes de taille et de distance.

Les systèmes utilisant la stéréovision peuvent indifféremment être utilisés dans le domaine visible ou infrarouge, ou combiner les deux.

Utilisation du mouvement

Quand le système acquiert une vidéo, il est intéressant de tirer parti du mouvement de la personne pour faciliter sa détection. Une étape de segmentation spatiale de l'image en avant et arrière-plan est effectuée préalablement à la détection proprement dite. Cette segmentation se fait généralement en utilisant une méthode de soustraction de fond, qui consiste à estimer un modèle de l'arrière-plan (le fond), qu'il suffit ensuite de soustraire à l'image courante pour en obtenir les parties en mouvementZhou, J. and Hoang, J. Real time robust human detection and tracking system. CVPR 2005. D'autres méthodes permettant d'obtenir le mouvement sont possibles, comme l'utilisation d'une variante du mean shiftBeleznai, C., Fruhstuck, B., and Bischof, H. (2004). Human detection in groups using a fast mean shift procedure. In Proceedings of International Conference on Image Processing 2004, volume 1, . Il s'ensuit une étape de détection de blob, visant à déterminer un ensemble cohérent de pixels formant potentiellement un objet. Les objets détectés sont ensuite analysés afin de déterminer s'ils représentent une personne ou non. On se ramène alors au problème de détection de personnes dans une image fixe, pour lequel on peut extraire plusieurs caractéristiques (forme, couleur, mouvement…) pour la classificationOgale, N.A.: A survey of techniques for human detection from video. Master's thesis, University of Maryland (mai 2006).

L'avantage de ces méthodes est de réduire la complexité du problème de classification, en présentant au détecteur un certain nombre de candidats probables. Elles sont par contre dépendantes de la qualité des méthodes de soustraction de fond, qui présentent des limitations, notamment dans des environnements dynamiques (variations brusques de luminosités, mouvements des arbres, etc.). Ce type de méthodes est par ailleurs limité à des scénarios où la caméra est fixe, ce qui est nécessaire afin d'estimer le fond, mais qui restreint en général leur usage à une application de type vidéo-surveillance.

Détection par fenêtre glissante La technique la plus générique et aussi la plus employée est la détection par fenêtre glissante, consistant en un parcours exhaustif de l'image, par application du détecteur à de très nombreuses positions et échellesMarkus Enzweiler, Dariu Gavrila, Monocular Pedestrian Detection:Survey and Experiments, TPAMI, Vol 31, , décembre 2009. 2179-2195. La détection par fenêtre glissante est surtout utilisée dans des applications où l'information a priori sur le contenu est pauvre, en particulier quand le choix du capteur n'est pas maitrisé. Le balayage de l'ensemble de l'image est alors une méthode privilégiée.

Ce genre de méthode est en général utilisé pour des applications de recherche d'image par le contenu, ou de vidéo-surveillance. Elles sont cependant moins utilisées pour des applications d'assistance à la conduite en raison des contraintes imposées par leur implémentation dans un système embarqué.

Différents types de caractéristiques

Une image de piéton (à gauche) et son gradient (à droite)|vignette