(...) La difficulté d'extraire des éléments sémantiques de données brutes et la nécessité d'un niveau de performances adapté à un usage en temps réel nous poussent à effectuer un pré-traitement afin de segmenter l'image en deux parties : celle qui contient de la peau et donc potentiellement une main, sur laquelle nous effectuerons des traitements plus poussés, et celle qui n'en contient pas, que nous éliminons donc directement. Pour ce faire, plusieurs approches sont possibles.
(...) L'approche la plus simple consiste à tirer parti du fait que dans certains espaces colorimétriques, des différentes plages de couleurs que peut prendre la peau humaine exposée à divers niveaux de luminosité sont concentrées dans une partie relativement restreinte de l'espace. Il est alors possible de classer les différents pixels selon leurs coordonnées dans cet espace, en déterminant empiriquement des seuils selon chaque composante correspondant à la localisation de cette partie. Cependant, cette approche ne s'est pas révélée suffisamment convaincante pour que nous l'adoptions de manière définitive.
(...) Si dans le cadre de la reconnaissance d'objets dont la forme varie peu, comme par exemple un visage, des méthodes statistiques telles que l'algorithme de Viola et Jones, consistant à appliquer une cascade de tests de différences de contraste, ces tests étant choisis automatiquement à l'aide d'un jeu d'images labellées, ont fait leurs preuves, la grande variabilité de forme de la main rend cette approche très fastidieuse à mettre en oeuvre, puisqu'il faudrait alors idéalement définir un jeu de tests par configuration possible de la main.
(...) Nous avons donc opté pour une solution consistant à déterminer les contours des composantes blanches de l'image, correspondant à de la peau, puis à considérer divers critères sur ces contours, comme par exemple la présence de fortes courbures successives (...)
[...] Si X est l'ensemble des points du a e premier contour et Y l'ensemble des points du second, leur distance est : Y ) = max{max min δ(x, max min δ(x, avec δ la distance euclidienne. Cependant, cette distance est tr`s sensible au bruit, c'est pourquoi nous avons e opt´ pour la e Y M HD(X, Y ) = max{ Card(X) Card(Y ) avec Y ) = miny∈Y δ(x, apr`s avoir empiriquement plusieurs variantes (voir Annexe). Nous nous e e e sommes ´galement servi de cette distance (non m´trique) pour ´tudier le comportement du flux optique en e e e fonction de ses param`tres. [...]
[...] Il s'agit donc e ensuite de d´terminer les pixels de fronti`re de chaque composante, puis de r´unir leurs coordonn´es dans une e e e e liste afin d'optimiser les calculs de courbure. Pour ce faire, nous utilisons un algorithme glouton, consistant ` a suivre la fronti`re avec un couple de pixels adjacents, l'un toujours ` l'int´rieur, l'autre toujours ` l'ext´rieur e a e a e (voir Annexe 1 - Algorithme du prisonnier) Calcul de la courbure Nous avons ainsi param´tr´ la fronti`re, et il suffit alors pour d´terminer la courbure de consid´rer un point e e e e e un point prev plac´ avant, un point suiv plac´ apr`s, avec une diff´rence d'indice suffisante pour ne pas e e e e consid´rer des variations trop locales, puis de faire le produit scalaire des vecteurs p prev et p suiv, et le e produit vectoriel de ces mˆmes vecteurs pour d´terminer l'orientation de la courbure (voir Annexe 4). [...]
[...] e Conclusion et prolongements envisageables Limitations de notre approche Finalement, nous avons obtenu un algorithme capable de reconnaˆ et de suivre une ou plusieurs mains. ıtre Le r´sultat demeure tout de mˆme relativement sensible aux fortes variations de luminosit´, et la compression e e e vid´o effectu´e par la cam´ra diminue de mani`re cons´quente la pr´cision de la classification pixel par pixel e e e e e e pour la d´tection de peau. e Gautier Marti 4 Hand Tracking: DeepVision 6.2 Am´liorations possibles e Il serait ´galement int´ressant d'attacher un rep`re tridimensionnel ` une main afin de faire de la r´alit´ e e e a e e augment´e, moyennant une phase de calibrage plus complexe [11]. [...]
[...] x = ( int ) f r a m e 2 f r a m e 2 f e a t u r e s p [ i ] . y = ( int ) f r a m e 2 C o n t o u r s p [ i ] . x = C o n t o u r s [ curCompo ] [ C o n t o u r s p [ i ] . [...]
[...] Paul Viola and Michael J. Jones. Statistical color models with application to skin detection. Paul Viola and Michael J. Jones. [...]
Source aux normes APA
Pour votre bibliographieLecture en ligne
avec notre liseuse dédiée !Contenu vérifié
par notre comité de lecture