Tải bản đầy đủ (.pdf) (59 trang)

EXTRACTION DE SQUELETTES 3d a PARTIR DIMAGES DE SILHOUETTES HUMAINES RECONNAISSANCE DE POSTURES ET MODELISATION DACTIONS

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.31 MB, 59 trang )

UNIVERSITE NATIONALE DU VIETNAM, HANOI
INSTITUT FRANCOPHONE INTERNATIONAL
-------------------

ATREVI Dieudonné Fabrice

EXTRACTION DE SQUELETTES 3D A PARTIR D'IMAGES DE
SILHOUETTES HUMAINES : RECONNAISSANCE DE POSTURES ET
MODELISATION D'ACTIONS
CHIẾT XUẤT KHUNG XƯƠNG 3D TỪ ẢNH 2D CỦA CON NGƯỜI:
NHẬN DẠNG TƯ THẾ VÀ MÔ HÌNH HOÁ HÀNH ĐỘNG

MEMOIRE DE FIN D’ETUDES DU MASTER INFORMATIQUE

HANOI – 2015


UNIVERSITE NATIONALE DU VIETNAM, HANOI
INSTITUT FRANCOPHONE INTERNATIONAL
-------------------

ATREVI Dieudonné Fabrice

EXTRACTION DE SQUELETTES 3D A PARTIR D'IMAGES DE
SILHOUETTES HUMAINES : RECONNAISSANCE DE POSTURES ET
MODELISATION D'ACTIONS
CHIẾT XUẤT KHUNG XƯƠNG 3D TỪ ẢNH 2D CỦA CON NGƯỜI:
NHẬN DẠNG TƯ THẾ VÀ MÔ HÌNH HOÁ HÀNH ĐỘNG

Spécialité : Systèmes Intelligents et Multimédia
Code : Programme pilote



MEMOIRE DE FIN D’ETUDES DU MASTER INFORMATIQUE

Sous la direction de: Dr Damien VIVET, Maître de conférence
Dr Florent DUCULTY, Maître de conférence
Lu et validé, bon pour soutenance

HANOI – 2015


Table des matières
Table des matières

i

Remerciements

iii

Résumé

iv

Abstract

v

Liste des figures

vi


Liste des tableaux

viii

Introduction Générale

1

1 État de l’art
1.1 Introduction . . . . . . . . . . . .
1.2 La capture de mouvement . . . . .
1.3 L’estimation de pose et l’analyse de
1.4 Descripteurs de formes . . . . . . .
1.5 Conclusion . . . . . . . . . . . . .

.
.
.
.
.

.
.
.
.
.

.
.

.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.

.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

3
3

3
7
9
11

2 Méthodes et solutions proposées
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 Modélisation humaine 3D et extraction de données . . .
2.3 Descripteurs de formes et extraction de caractéristiques
2.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . .

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.


.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.


.
.
.
.

12
12
12
16
24

.
.
.
.
.

25
25
25
27
36
39

3 Implémentation et Résultats
3.1 Introduction . . . . . . . . . .
3.2 Outils utilisés . . . . . . . . .
3.3 Résultats de la reconnaissance
3.4 Résultats de la reconnaissance

3.5 Conclusion . . . . . . . . . .

. . . . . . .
. . . . . . .
mouvement
. . . . . . .
. . . . . . .

. . . . . . .
. . . . . . .
de postures
d’actions .
. . . . . . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.

.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.

.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.

.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.

.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

Conclusion Générale

40


Bibliographie

41

Annexes

44

i


Je dédie ce document à ma
famille et à mes camarades de
l’IFI

ii


Remerciements
La réalisation de ce document qui couronne la fin de notre formation de Master, n’aurait
été possible sans l’appui direct ou indirect de personnes et d’institutions auxquelles nous tenons
ici à exprimer nos sincères remerciements. Il s’agit de :
— L’Agence Universitaire de la Francophonie (AUF), pour nous avoir donné l’opportunité
de poursuivre nos études de Master à l’IFI à travers une bourse.
— L’Institut Francophone International (IFI) et de tous les professeurs, pour les nombreuses
connaissances acquises durant notre formation.
— Nos encadrants pour nous avoir accueillis au sein de leur équipe et pour leur suivi et
implication personnelle dans la réalisation de nos travaux.
— Tous ceux qui de près ou de loin nous ont apporté leur soutien durant notre formation.


iii


Résumé
L’informatique met à la disposition de plusieurs domaines de la science des outils puissants d’analyse pour l’aide à la décision. Le secteur de la vision par ordinateur n’est pas resté
en marge de ces révolutions. Un des domaines en fort développement est la mise en place d’outils intelligents d’analyse du comportement humain. Dans le cadre précis de nos travaux, nous
nous sommes attachés à la question de l’estimation de pose 3D à partir d’images 2D obtenues à
partir de capteurs classiques ne fournissant pas d’information de profondeurs. Ces informations
de profondeurs sont actuellement indispensables pour des analyses plus précises du comportement humain dans le cadre de la vidéo surveillance de masse de personnes. L’approche que
nous avons proposée au cours de ce stage suit une démarche classique d’apprentissage automatique qui consiste à apprendre un ensemble de poses obtenues à partir de données simulées.
Les résultats obtenus sont prometteurs en ce sens que nous avons obtenu de bons taux de
reconnaissance de pose à partir d’images de personnes inconnues dans la base d’apprentissage.
Nos travaux nous ont permis de comparer les différents descripteurs de formes mis en jeux
et de montrer ceux qui sont les plus robustes. En nous appuyant sur les résultats de reconnaissance de postures, nous avons proposé une première approche de classification d’actions
dans une vidéo. Les résultats obtenus sont prometteurs et peuvent être améliorés pour une
plus grande efficacité, notamment en prenant en compte l’information temporelle par la mise
en place d’un pistage multi hypothèse des points d’articulation du squelette.
Mots-clés : Analyse comportementale, reconnaissance de postures, classification d’actions,
descripteurs de formes.

iv


Abstract
In the recent history of the science, IT provides powerful analysis tools for support expert
to make a decision. In the same way, computer vision tries to implement automatic tools for
image and video analysis. For example, in the context of video analysis, we can talk about
human motion analysis through a video. In the specific context of our work, we addressed
the issue of the 3D pose estimation from 2D monocular images obtained from conventional
sensors not providing depth information. The aim of our study is to estimate the 3D pose

of a human from a monocular 2D image and then provides an action classification tool. The
proposed approach follows a classical machine learning approach that involves learning a set of
3D poses obtained from simulated data. The proposed approach consists to extract silhouette
of human from an image and compute, via the orthogonal geometric moment and the shape
context, three feature vectors. A human poses and action can be retrieved by calculating the
Euclidian distance between the feature vector af the request image and all of the feature vector
of the training data. we are deduce the corresponding action by choising the most represent
class of action. 3D estimate poses is then computing by the mean 3D poses of all retrieved
images of the most represented action class.
Keywords: Behavior analysis, 3D pose recognition, actions classification, shape descriptors.

v


Liste des figures
1.1
1.2
1.3

Personne équipée d’un exosquelette . . . . . . . . . . . . . . . . . . . . . . . . .
Personne équipée lors d’une capture magnétique. . . . . . . . . . . . . . . . . .
Capture avec kinect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.1
2.2
2.3
2.4
2.5
2.6
2.7

2.8

4
5
6

Exemples de modèles humains 3D obtenus avec MakeHuman . . . . . . . . . .
Modèle du squelette de type second life bones . . . . . . . . . . . . . . . . . . .
Modèle humain importé dans blender à partir de MakeHuman . . . . . . . . . .
Exemples de silhouettes extraites lors d’une marche . . . . . . . . . . . . . . .
À gauche, une matrice 4 x 4, à droite une image avec les points reprojetés . . .
De la gauche vers la droite : courbe du polynôme avec n = 0, 1, 2 . . . . . . . .
Détermination du bon ordre pour le moment de Krawtchouk . . . . . . . . . .
À gauche, les moments pour le bas du corps et à droite, les moments pour le
haut du corps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9 Polynômes de Zernike tracés sur le disque unité [1] . . . . . . . . . . . . . . . .
2.10 Détermination du bon ordre pour le moment de Zernike . . . . . . . . . . . . .
2.11 Contexte de forme. (a,b) sont des exemples de forme. (c) est le diagramme
log-polaire. (d-f) des histogrammes des points marqués. Source Belongie et al. [2]
2.12 Détermination du bon nombre de clusters . . . . . . . . . . . . . . . . . . . . .

13
13
14
15
15
17
18

3.1

3.2
3.3

27
29

3.4

3.5

3.6

3.7

3.8

worklow de la démarche suivie . . . . . . . . . . . . . . . . . . . . . . . . . . .
Taux de reconnaissance pour des données apprises : Méthode de Krawtchouk .
Taux de reconnaissance pour des données non apprises : Méthode de Krawtchouk. En abscisse, résultats pour respectivement 1, 3, 5 et 7 voisins considérés
et en ordonnée, les taux de reconnaissance. . . . . . . . . . . . . . . . . . . . .
Taux de reconnaissance pour des données apprises : Méthode de Zernike. En
abscisse, résultats pour respectivement 1, 3, 5 et 7 voisins considérés et en
ordonnée, les taux de reconnaissance. . . . . . . . . . . . . . . . . . . . . . . . .
Taux de reconnaissance pour des données non apprises : Méthode de Zernike.
En abscisse, résultats pour respectivement 1, 3, 5 et 7 voisins considérés et en
ordonnée, les taux de reconnaissance. . . . . . . . . . . . . . . . . . . . . . . . .
Taux de reconnaissance pour des données apprises : Méthode du contexte de
forme. En abscisse, résultats pour respectivement 1, 3, 5 et 7 voisins considérés
et en ordonnée, les taux de reconnaissance. . . . . . . . . . . . . . . . . . . . .
Taux de reconnaissance pour des données non apprises : Méthode du contexte de

forme. En abscisse, résultats pour respectivement 1, 3, 5 et 7 voisins considérés
et en ordonnée, les taux de reconnaissance. . . . . . . . . . . . . . . . . . . . .
Résultat de recherche d’une image inconnue avec les trois descripteurs . . . . .

vi

19
20
21
22
23

30

31

31

32

33
34


3.9
3.10
3.11
3.12
3.13
3.14

A1
B1
B2
B3
C1

C2

D1
D2
D3
D4

Exemple 1 : Résultat de représentation 3D de squelette . . . . . . . . . . . . . .
Exemple 2 : Résultat de représentation 3D de squelette . . . . . . . . . . . . . .
Résultats de suivi pour le mouvement "grimper" . . . . . . . . . . . . . . . . .
Résultats de suivi pour le mouvement "saut" . . . . . . . . . . . . . . . . . . .
Matrice de confusion obtenue . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A gauche notre matrice de confusion exprimée en pourcentage et à droite la
matrice de confusion obtenue par Gorelick et al. [3] . . . . . . . . . . . . . . . .
Contour extrait sur une silhouette . . . . . . . . . . . . . . . . . . . . . . . . .
Images de silhouette bruitée avec std = 1 . . . . . . . . . . . . . . . . . . . . .
Images de silhouette bruitée avec std = 2 . . . . . . . . . . . . . . . . . . . . .
Images de silhouette bruitée avec std = 3 . . . . . . . . . . . . . . . . . . . . .
Résultat de reconnaissance de posture avec une image réelle pour une posture
en croix. A gauche, l’image originale, au centre, les résultats obtenus et à droite
l’estimation du squelette 3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Résultat de reconnaissance de posture avec une image réelle pour une posture
de marche. A gauche, l’image originale, au centre, les résultats obtenus et à
droite l’estimation du squelette 3D . . . . . . . . . . . . . . . . . . . . . . . . .

Mouvement "Marche" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mouvement "Bend" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mouvement "Jump" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mouvement "Side" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

vii

34
35
35
36
37
38
44
45
45
45

46

46
47
47
47
47


Liste des tableaux
3.1
3.2

3.3

Caractéristiques de la machine . . . . . . . . . . . . . . . . . . . . . . . . . . .
Détails de composition des différentes bases . . . . . . . . . . . . . . . . . . . .
Organisation de la base d’apprentissage . . . . . . . . . . . . . . . . . . . . . .

viii

25
26
26


Introduction Générale
Contexte et Cadre d’étude
Le présent document a été élaboré dans le cadre des travaux réalisés durant notre stage de
fin de formation pour l’obtention du Master spécialité "Systèmes Intelligents et Multimédia"
de l’Institut Francophone International en collaboration avec l’Université de La Rochelle. Les
travaux se sont déroulés au sein de l’équipe "Image et Vision" du laboratoire PRISME de
l’Université d’Orléans. Il s’agit d’un laboratoire pluridisciplinaire dans le domaine général
des sciences pour l’ingénieur. Il est déployé sur plusieurs sites et est composé d’environ 106
enseignants-chercheurs, de 70 doctorants et d’une dizaine d’ingénieurs.
La thématique abordée durant ces travaux est relative au domaine de l’analyse comportementale et de la télésurveillance. En effet, plusieurs domaines de la science ont recours à
l’informatique et plus précisément à la vision par ordinateur pour l’analyse des actions (dans
un aéroport, dans un stade, dans une place publique, etc.) d’une ou d’un groupe de personnes,
et ce, à travers des vidéos. Il est difficile pour l’homme de pouvoir surveiller et prédire des actions de ces individus dans un environnement plus large et non contrôlé. Ainsi, de nombreuses
recherches ont été menées ces dernières années pour mettre à la disposition des spécialistes
des outils précis et efficaces afin de les aider dans leur prise de décision en matière de vidéosurveillance et plus précisément dans l’analyse de comportement.

Problématiques

Dans le cadre de la vidéosurveillance, de l’analyse comportementale et de la reconnaissance
de gestes, certaines informations géométriques (comme les informations sur la pose 3D des
individus) sont essentielles pour affiner les analyses des experts. L’obtention des informations
de profondeur requiert l’utilisation de dispositifs spécifiques coûteux et donc non utilisés dans
la vidéosurveillance. Il se pose alors la problématique de trouver un moyen simple et efficace
d’obtenir ces informations à partir d’une vue monoculaire de l’environnement et des personnes
qui s’y trouvent. Cette problématique, qui est un véritable challenge dans le domaine de
la vision, a mobilisé ces dernières années, de nombreux chercheurs, qui se sont lancés dans
l’élaboration de différentes approches. De nombreuses solutions ont été proposées et chacune

1


d’elles présente des avantages et des inconvénients. Nos travaux s’intéressent à ce domaine
et visent à proposer une méthode simple, efficace et rapide pour extraire les informations
géométriques sur la pose d’une personne.

Objectifs du stage
Les objectifs de notre stage sont multiples et se déclinent en deux grandes parties. Dans
la première grande partie, il s’agira de mettre en place une base de données de silhouettes
2D et de squelettes 3D extraits lors de l’exécution de mouvement par des modèles humains
3D. Une fois les bases de données mises en place, nous proposerons une démarche méthodique
qui permettra de caractériser l’ensemble des silhouettes via des descripteurs de formes. Une
bonne description des formes des silhouettes permettra à partir de l’image d’une personne
de remonter à une estimation de sa pose 3D. À l’atteinte de cet objectif, nous aborderons la
seconde partie qui consistera à proposer une première approche de reconnaissance d’actions
basée sur la description des silhouettes et une méthode d’évaluation de nos approches avec des
données réelles. Après l’atteinte de ces deux grands objectifs, nous pourrons disposer d’un outil
d’estimation de postures 3D et de reconnaissance d’action à partir d’une image de personne
et d’une vidéo de la personne exécutant l’action.


Organisation du mémoire
Le mémoire est organisé autour de trois chapitres de façon à rendre compte du travail
effectué durant le stage. Le premier chapitre présente les principaux travaux recensés lors de
l’étude bibliographique et qui traitent de la classification d’actions dans une vidéo, de l’estimation de pose et également les différentes techniques existantes pour la capture de mouvement.
Le second chapitre présente les méthodes utilisées dans l’élaboration de solutions pour la reconnaissance de postures et la reconnaissance d’actions. Une description détaillée de la théorie
sur les descripteurs de formes que nous avons utilisés pour décrire les silhouettes des personnes
contenues dans les différentes images. Pour finir, le troisième chapitre présente les détails de
l’implémentation, les démarches suivies pour les expérimentations et les résultats obtenus. Une
analyse de nos résultats a été faite dans ce dernier chapitre ainsi qu’une comparaison avec des
résultats obtenus dans des travaux préexistants.

2


Chapitre 1

État de l’art
1.1

Introduction
La capture de mouvement, en anglais "motion capture", consiste à acquérir des informa-

tions tridimensionnelles et temporelles sur le mouvement effectué par un objet, un animal ou
un être humain. Les domaines d’application utilisant la capture de mouvement deviennent de
plus en plus nombreux. Allant du cinéma, à la médecine en passant par l’industrie, la capture
de mouvement a pour but de reproduire sur des objets virtuels ou sur des robots, des mouvements bien connus. Dans le cinéma, on retrouve des films dans lesquels les personnages, qui
sont virtuels, exécutent des mouvements réalistes. Ces mouvements sont obtenus par des techniques de "motion capture". En médecine, on peut citer les bras robotiques pouvant reproduire
le mouvement d’un chirurgien pour des interventions millimétrées.
L’analyse de mouvement, consiste à modéliser le mouvement décrit par un objet, un

animal ou un être humain à partir d’informations recueillies. Les applications possibles sont
également nombreuses. L’analyse de comportement pour la surveillance d’actions dans les
aéroports, les gares, les stades par exemple, se trouve dans le domaine de l’analyse de mouvement.
Dans ce chapitre, nous allons présenter les approches de capture de mouvement connues
et les travaux relatifs à l’estimation de pose ainsi que l’analyse de mouvement.

1.2

La capture de mouvement
Il existe plusieurs systèmes permettant de capturer le mouvement d’un objet en général

et d’un être humain en particulier. Ces approches peuvent être classées en fonction des moyens
utilisés pour réaliser l’acquisition de données. Ainsi, on distingue trois grandes catégories de
systèmes à savoir : les systèmes mécaniques, magnétiques et optiques.

3


1.2.1

Systèmes mécaniques

Les systèmes mécaniques de capture de mouvement sont les premiers systèmes apparus
dans ce domaine vers les années 80 1 . Il s’agit d’une approche se basant sur l’utilisation d’un
exosquelette posé sur l’élément dont on souhaite enregistrer le mouvement (voir figure 1.1 à
la page 4). Le dispositif est constitué non seulement de l’exosquelette, mais également des
codeurs d’angle associés aux différentes articulations et qui renvoient à un ordinateur leur
valeur de rotation 2 . Il permet d’obtenir avec précision, le mouvement exécuté au niveau de
chaque articulation et de ce fait, donne globalement avec une grande précision le mouvement
enregistré.

Les capteurs servant à ce type de capture, sont souvent reliés par une connexion filaire à
l’ordinateur, ce qui d’une part permet d’obtenir une grande rapidité dans la transmission des
données, mais d’autre part, limite le mouvement que peut exécuter l’élément dans l’espace 3 .
Cela constitue un inconvénient majeur surtout pour la capture du mouvement humain et d’objets non rigides et non déformables. Par exemple, la société PDI a développé pour le haut du
corps un exosquelette en plastique qui mesure les mouvements de la tête, des bras et du torse à
l’aide de potentiomètres [4]. Sa précision dans la capture du mouvement dépend de la précision
avec laquelle est modélisé l’exosquelette. Ce dernier doit être adapté à chaque morphologie
et impose donc de disposer d’importants moyens pour la réalisation de grands projets. Avec
ces systèmes, il est difficile de capter l’interaction entre plusieurs éléments (personnages dans
une animation). Cette approche est plus adaptée à la capture d’éléments rigides (systèmes
mécaniques) qu’à la capture de mouvement humain et est de moins en moins utilisée. On
peut cependant citer un exemple d’exosquelette moderne où la technique a été améliorée avec
l’utilisation d’un textile intelligent [5].

Figure 1.1 – Personne équipée d’un exosquelette

1. source : consulté le 04/07/2015
2. source : consulté le 04/07/2015
3. source : consulté le
06/07/2015

4


1.2.2

Systèmes magnétiques

L’exploitation des lois de l’électromagnétisme a permis d’aboutir à la mise en place de
cette approche. L’espace géométrique est représenté par un repère (x,y,z) dont l’origine (0,0,0)

est déterminée par un générateur de champ magnétique plus communément appelé antenne.
L’élément dont le mouvement sera capturé est équipé de capteurs (généralement des bobines
électriques) qui créent une perturbation dans le champ magnétique (voir figure 1.2 à la page
5). Ces systèmes offrent la possibilité de déterminer, en plus de la position, l’orientation dans le
repère du personnage et les mesures sont en temps réel [6]. Ils permettent d’éviter les problèmes
d’occultations entre les éléments de la scène puisque le champ magnétique peut traverser le
corps humain. Plus le nombre de capteurs est important, plus il y a une précision dans la
capture de mouvement. Cela nécessite également des moyens financiers non négligeables.
Pour ces systèmes, il est nécessaire de corriger à chaque fois le décalage qui peut survenir
entre le capteur et le point qu’il représente. Cette erreur est souvent due au mouvement du
personnage. Mais le plus grand inconvénient réside dans leur sensibilité face à des interférences électromagnétiques 4 . Ainsi, l’introduction de n’importe quel élément métallique ou la
proximité entre deux personnages peut créer de fausses mesures du mouvement. La portée
du champ magnétique étant limitée, l’espace de travail se voit également limiter. Outre ces
inconvénients, on peut citer la fréquence d’échantillonnage de ces systèmes qui est faible et
qui limite les types de mouvements pouvant être exécutés par le sujet d’étude.

Figure 1.2 – Personne équipée lors d’une capture magnétique.

4. source : consulté le
06/07/2015

5


1.2.3

Systèmes optiques

Il s’agit de systèmes basés sur l’utilisation des rayons lumineux avec ou sans marqueurs
pour acquérir l’information sur le mouvement exécuté. Ils sont les plus utilisés dans le monde

de la création de mouvement de personnages virtuels, de la médecine, etc. La grande raison
de cette utilisation massive réside dans la précision qu’ils offrent. Néanmoins, ils ont quelques
limites comme l’occultation lors de la capture de mouvement de deux ou plusieurs personnages. On peut noter différentes variantes de ces systèmes utilisant différents composants
pour l’acquisition de données.
1.2.3.1

Caméras infrarouges couplées aux capteurs

Le principe des systèmes à réflecteurs passifs est d’émettre des rayons infrarouges depuis
des caméras, qui seront réfléchis par les réflecteurs. Une fois les rayons réfléchis, les caméras
peuvent afficher sur une image chacun de ces réflecteurs par des points. Ainsi, les réflecteurs
posés à des points clés (articulations d’un être humain par exemple) permettent d’avoir en
2D les positions de ces points. L’information 3D étant nécessaire, il est couramment utilisé un
nombre important (minimum 2) de caméras qui observent la même scène, mais de différents
points de vue afin de pouvoir déduire ces informations par la technique de la triangulation.
Cette méthode nécessite cependant une calibration très précise du système multicaméra.
1.2.3.2

Caméra RGB-D / Kinect

La technologie basée sur la caméra Kinect est très populaire dans le domaine ludique
ouvert au public. Le principe de fonctionnement est totalement différent de celui des autres
systèmes optiques. Elle ne nécessite qu’une seule caméra et n’utilise pas de marqueurs posés sur
l’objet dont on souhaite capturer le mouvement. Cette technologie est optique car elle utilise
les faisceaux lumineux infrarouges qui sont émis dans l’environnement de la scène observée
par la caméra spécifique. Le système émet un motif IR bien connu avec un projecteur IR
(une sorte de polynôme bidimensionnel) et il mesure avec la caméra la forme du motif dans
l’environnement. Selon la déformation observée sur les lignes de niveau, on peut remonter à
l’information de distance.


Figure 1.3 – Capture avec kinect

6


1.3

L’estimation de pose et l’analyse de mouvement
Estimer la pose d’un être humain, revient à déterminer les informations 2D ou 3D des

membres de son corps. En vision par ordinateur, les recherches tendent à rendre cela possible à
travers différentes techniques bien élaborées. L’estimation de pose et l’analyse de mouvement
ou d’action sont liées en ce sens qu’analyser un mouvement, revient à suivre les différentes
poses prises par l’être humain au fil du temps (à travers des séquences d’images). Les domaines
d’applications de ces recherches sont multiples. On peut les utiliser en analyse comportementale
et sportive, en interaction homme-machine, en indexation de contenus visuels, etc. Notre but
à travers cette section est de parcourir les différents travaux dans la littérature qui traitent à
la fois de l’estimation de la pose humaine et de l’analyse de mouvement.

1.3.1

Approches sur le flot optique, le gradient et le contour dans l’image

La classification de vidéo basée sur l’analyse des mouvements humains qui y sont exécutés occupe la majeure partie des travaux rencontrés dans la littérature traitant de l’analyse
de mouvement. La plupart des travaux élaborent des méthodes permettant d’extraire des
informations assez robustes pour catégoriser des mouvements donnés. La validation de ces approches est faite sur des données réelles stockées dans des bases bien connues afin de faciliter
la comparaison des approches. On peut citer la base publique de Weizmann [3] ou encore celle
de KHT 5 .
Des approches se basent sur l’utilisation du flot optique dans la vidéo, qui peut être défini
comme étant "le champ de vitesse décrivant le mouvement apparent des motifs d’intensité

de l’image sous l’hypothèse d’illumination constante" [7]. La méthode proposée par Negrel et
al. [7] utilise la technique d’extraction du flot optique proposée par Lucas et Kanade [8] qui
détermine le déplacement d’un pixel à partir des pixels voisins dans une fenêtre donnée. Ils
modélisent le flot optique entre deux images successives de la vidéo à l’aide d’une base de
polynômes orthogonaux. La classification des actions est faite à partir d’un SVM. Efros et al.
[9] ont également utilisé le flot optique dans leurs travaux pour classifier des actions de tennis,
football et ballet. La similarité entre les vecteurs de descripteurs du flot optique est calculée
par la méthode des plus proches voisins. Nazli Ikizler et al. [10] ont à la fois utilisé les flots
optiques et un descripteur de forme basé sur la distribution des points d’union entre des lignes
courtes et longues ajoutées aux contours de la forme avec la transformée de Hough. Outre les
approches basées sur le flot optique, on peut citer les travaux de Matthew Brand et al. [11] qui
ont utilisé les modèles de Markov cachés pour également reconnaître des mouvements du "Tai
chi" chinois. Zelnik-Manor et al. [12] ont plutôt utilisé des histogrammes de gradient spatiotemporels avec des échelles temporelles multiples, obtenus par la construction de pyramides
temporelles dont un niveau donné contient la moitié du nombre de frames du niveau précédent.
La comparaison de deux vidéos revient à comparer leurs histogrammes de gradient calculés
5. http ://www.nada.kth.se/cvap/actions/

7


pour les différents niveaux de la pyramide. Il est à noter que ces méthodes nécessitent une
estimation fiable et robuste du flot optique et donc une qualité d’image importante.

1.3.2

Approches sur le suivi de mouvement

D’autres travaux se sont penchés sur le suivi du mouvement décrit par les membres du
corps humain. Le but de ces travaux est de pallier aux problèmes liés à la qualité de l’image,
car les méthodes précédentes y sont sensibles. Dollar et al. [13] ont utilisé des points d’intérêts

spatio-temporels extraits des vidéos grâce à un détecteur de points d’intérêts (spécialement
élaboré par eux et basé sur la réponse d’une fonction à noyau gaussien). Ils décrivent alors
le mouvement en se basant sur la position 2D de ces points d’intérêts à travers la séquence
vidéo. Rao et Shah [14] ont modélisé la trajectoire des mains pour pouvoir classifier les actions.
La trajectoire des mains pouvant varier selon le point de vue de la caméra, les auteurs ont
proposé une approche pour rendre invariante celle-ci par rapport aux points de vue, en utilisant
la courbure spatio-temporelle de la trajectoire. Ali et Aggarwal [15] ont proposé l’utilisation
des angles d’inclinaison du torse et les parties inférieures et supérieures des jambes pour décrire
les actions. Yang Song et al. [16] ont proposé d’extraire des points d’intérêts dans l’image et
de les suivre afin d’estimer la pose et le mouvement. Dans l’ensemble des points extraits, ils se
basent sur la position et la vélocité de ces points pour choisir ceux qui, ensemble, représentent
une forme humaine. Ces points peuvent représenter des membres du corps dont le mouvement
permettra d’identifier l’action effectuée en comparaison avec les actions apprises dans une base
d’apprentissage.

1.3.3

Approches sur les silhouettes

Une troisième catégorie d’approches se base sur la description du mouvement à partir de
l’analyse des silhouettes de la personne dans différentes séquences d’images. Gorelick et al. [3]
ont, à partir du volume spatio-temporel des silhouettes, caractérisé les actions dans la vidéo.
C’est en utilisant les propriétés des solutions de l’équation de Poisson qu’ils ont extrait les
caractéristiques spatio-temporelles telles que la saillance spatio-temporelle locale, la structure
et l’orientation de la forme. La méthode permet d’avoir une robustesse aux occultations, aux
changements d’échelle et aux points de vue de la caméra. Guo et al. [17] ont proposé la
représentation des actions dans les vidéos avec la matrice de covariance empirique de vecteurs
géométriques normalisés à 13 dimensions qui caractérisent la forme de la silhouette extraite.
La similarité entre actions est évaluée avec la distance de Riemannian entre les matrices de
covariance.

Dans la suite de nos travaux, nous allons utiliser cette dernière approche puisque dans le
contexte de la vidéo surveillance, la qualité des images ne peut être assurée ce qui n’encourage
pas à utiliser les méthodes de la première catégorie citée. L’extraction de points d’intérêts
requiert également une bonne résolution pour être précise, ce qui nous amène à écarter égale-

8


ment cette approche. Il ne nous reste plus que l’approche basée sur la silhouette et l’analyse
de sa forme. Ainsi, nous détaillerons dans la section qui suit, quelques types de descripteurs
de formes rencontrés.

1.4

Descripteurs de formes
La description de la silhouette d’une personne revient à trouver le moyen d’extraire l’in-

formation qui code au mieux sa forme. Dans cette démarche, nous rencontrons deux catégories
de descripteurs de formes : les descripteurs globaux et les descripteurs locaux. Nous présentons dans cette section quelques travaux relatifs à l’utilisation de ces descripteurs en vision
par ordinateur.

1.4.1

Les descripteurs globaux

Les descripteurs globaux sont utilisés pour quantifier l’information contenue dans l’image
dans sa globalité. Parmi ces descripteurs, on peut citer les moments mathématiques. Ainsi, depuis l’introduction par Hu dans les années 1962 [18] de la méthode des moments en traitement
d’images, différents types de moments ont été implémentés et testés dans de nombreux travaux
de la littérature. Nous pouvons citer : les moments de Tchebychev, de Racah, de Legendre, de
Zernike, de Krawtchouk, etc.

Les moments de Zernike ont été introduits pour la première fois en analyses d’images par
Teague en 1980 [19]. Il s’agit d’un descripteur robuste, qui repose sur les polynômes de Zernike. Il a été abondamment utilisé dans la littérature pour diverses applications telles que la
reconnaissance des empreintes digitales, l’analyse de mouvement, etc. C’est ainsi que Imen Lassoued et al. [20] ont utilisé une extension des moments classiques de Zernike pour caractériser
et classifier des actions dans une vidéo. L’extension proposée consiste à intégrer le paramètre
temps dans le calcul du moment puisque la vidéo est une succession d’images contenant des
objets non rigides en mouvement. Cette extension au dire des auteurs présente un meilleur
taux de reconnaissance. Anh-Phuong Ta et al. [21] ont fait de la détection d’objets 3D en
utilisant les moments de Zernike calculés sur des vues multiples 2D des objets. Les moments
de Krawtchouk quant à eux ont été introduits pour la première fois en analyse d’images par
P-T Yap et al. [22]. Les moments de Krawtchouk sont des moments orthogonaux se basant sur
les polynômes discrets classiques de Krawtchouk [23]. Sheeba Rani et D. Devaraj [24] ont fait
de la reconnaissance et de la classification de visages en utilisant les moments orthogonaux
de Krawtchouk. Shuping Liu et al. [25] dans leur recherche sur la classification de gestes de
la main, ont également basé leur système sur les moments de Krawtchouk. Il ressort de leur
étude que les moments de petit ordre sont plus robustes que les moments d’ordre élevé qui eux
favorisent plus la reconstruction totale de l’image. Bing Hu et Simon Liao [26] ont également
utilisé les moments de Krawtchouk dans l’objectif de pouvoir reconnaître les caractères chinois

9


qui se ressemblent fortement dans la forme. Ils sont parvenus à montrer que les moments de
Krawtchouk arrivaient plus à distinguer les différents caractères que d’autres moments. Pour
la description de la forme d’objets 3D, Dariusz Frejlichowski [27] utilise la transformée de
Fourier-Polaire. Claude Cariou [28] a dans ses travaux, proposé une approche basée sur les
transformées de Fourier-Mellin pour la reconnaissance de formes dans les documents techniques. Kim et al. [29] ont utilisé les moments invariants de Hu pour la reconnaissance de
diagramme logique. Il existe énormément d’autres travaux sur la description de formes, une
brève revue de ces techniques est proposée par Zhang [30].

1.4.2


Les descripteurs locaux

Les descripteurs locaux devraient permettre d’éviter les prétraitements nécessaires sur les
images pour les descripteurs globaux. Ces prétraitements peuvent être réalisés pour pallier
aux éventuelles erreurs de segmentation de l’image.
Serge Belongie et al. [2] ont introduit le contexte de forme, qui est un descripteur local
dont la méthode consiste à décrire une forme à partir de la description du voisinage de ses
points de contours. Ainsi, pour une forme donnée, il faut un ensemble de points de son contour
(intérieur comme extérieur). La description consiste à calculer la distribution en log polaire des
points dans un voisinage donné à l’aide d’un diagramme log-polaire. Dans sa version originale,
proposée dans [2], la correspondance entre formes est alors effectuée par calcul des erreurs
(calcul de la distance khi-2 entre les histogrammes des points) de correspondance entre les
points des formes. Ankur Agarwal et Triggs [31] ont utilisé ce descripteur pour l’estimation
de la pose humaine 3D à partir d’images de silhouettes de la personne. Ils ont proposé un
système utilisant la technique de mots visuels obtenus à partir d’un algorithme de K-Means.
La classification d’une pose dans la base d’apprentissage est faite à partir d’un vecteur de
pertinence machine (RVM). Thi Oanh Nguyen et al. [32] ont proposé une méthode alternative
pour la recherche de symboles graphiques. Cette méthode est une adaptation du descripteur
de contexte de forme aux points d’intérêts des symboles. Cette méthode permet d’éviter le
calcul du contexte de forme pour tous les points de contour du symbole en ne le calculant
que pour les points d’intérêts issus du descripteur SIFT [33]. La technique de mots visuels a
également été utilisée pour l’indexation des symboles. Laptev et Lindeberg [34] ont proposé
une extension du descripteur SIFT pour la reconnaissance d’action. La méthode proposée par
ces derniers consiste à extraire des caractéristiques invariantes à l’échelle, à partir des coins
tridimensionnels du volume spatio-temporel. Elle a permis de reconnaître la marche dans des
vidéos avec un arrière-plan dynamique et des occultations.

10



1.5

Conclusion
Dans ce chapitre, nous avons fait le tour des différentes techniques de capture de mou-

vement. Trois catégories d’approches se sont dégagées et présentent chacune leurs avantages
et inconvénients. L’acquisition des informations dimensionnelles et temporelles sur le mouvement via ces techniques reste assez coûteuse et n’est donc pas accessible à tout le monde. Il
est important de souligner que la sauvegarde des informations du mouvement peut-être faite
dans des fichiers tel que fichiers BHV pour une exploitation ultérieure.
Les recherches en vision par ordinateur tentent de trouver des approches pour la description des mouvements. Nous avons donc présenté les différentes approches permettant d’estimer
la pose humaine et de reconnaître des actions dans une vidéo. L’une des approches est basée
sur l’utilisation des descripteurs de formes et les silhouettes humaines. Cette catégorie présente
des méthodes tirant avantage de l’extraction rapide de la silhouette. C’est dans cette catégorie
d’approche que se situent nos travaux.

11


Chapitre 2

Méthodes et solutions proposées
2.1

Introduction
L’objectif de ce chapitre est de présenter en détail les différentes solutions mises en place

dans le cadre de l’extraction de caractéristiques pour permettre la reconnaissance de postures
à partir d’une image de personne. Les méthodes proposées entrent dans la catégorie de celles
se basant sur la silhouette et l’analyse de forme à travers différents descripteurs de formes.

Suite à l’étude bibliographique, nous avons choisi les descripteurs offrant à la fois un meilleur
taux de reconnaissance, une bonne robustesse aux bruits et qui sont également rapides à
calculer. Nous avons opté pour une démarche par apprentissage, qui se décompose en deux
phases à savoir : l’apprentissage et la classification. Nous allons fonder notre apprentissage
sur des données simulées très peu coûteuses et rapides à obtenir comparées à la mise en place
d’une analyse de capture de mouvement. La disponibilité d’outils libres et de grandes bases
de fichiers de mouvement en libre accès nous ont confortés dans ce choix.

2.2

Modélisation humaine 3D et extraction de données
Le modèle humain 3D permet d’avoir à la fois la corpulence voulue pour le modèle et

les informations 3D des points d’articulation. Dans notre démarche, nous modélisons dans
un premier temps le personnage voulu, puis dans un second temps, nous animons le modèle
avec différents mouvements. Ainsi, pour constituer notre base d’apprentissage, il nous suffira
d’extraire les informations spatio-temporelles des points d’articulation du personnage ainsi
que sa silhouette.

2.2.1

Modélisation humaine 3D

Nous avons utilisé le logiciel "MakeHuman" 1 pour accomplir cette tâche. MakeHuman est
un logiciel libre sous la licence AGPL3, conçu pour permettre aux artistes de facilement mettre
1. />
12


en place des modèles humains les plus réalistes possible. La mise en place d’un modèle de base

ne prend que quelques minutes et ne nécessite pas une grande connaissance en modélisation
3D. À travers les paramètres proposés, il est facile d’avoir des modèles variés en terme de
morphologie, d’habillage (figure 2.1 page 13) et également en terme de possibilité d’exportation
des modèles. Ainsi, il est possible d’exporter les modèles dans les formats tels que : Collada
(dae), mhx, fbx, Ogre3D, MD5, etc. Cette possibilité offre l’avantage de pouvoir utiliser le
même modèle dans plusieurs logiciels d’animation sans avoir à tout refaire.

Figure 2.1 – Exemples de modèles humains 3D obtenus avec MakeHuman
Les informations importantes pour nos travaux sont à la fois la corpulence du personnage et
les différentes articulations. MakeHuman offre plusieurs types de modélisation des squelettes
qui diffèrent dans le nombre d’articulations pris en compte. Nous avons choisi d’utiliser le type
"second life bones" (voir figure 2.2 page 13) qui modélise 19 articulations à savoir : la tête, le
cou, la poitrine, l’abdomen, la hanche, la cuisse (gauche et droite), le tibia (gauche et droit), le
pied (gauche et droit), la clavicule (gauche et droite), l’épaule (gauche et droite), l’avant-bras
(gauche et droite) et la main (gauche et droite).

Figure 2.2 – Modèle du squelette de type second life bones

13


Une fois le modèle mis en place, il reste à l’exporter dans le logiciel choisi pour l’animation. Dans le cadre de nos travaux, nous avons choisi le logiciel d’animation Blender 2 qui
est également un logiciel libre sous licence GPL. Il est développé et maintenu par une grande
communauté regroupant des personnes vivant un peu partout dans le monde entier. Blender
offre la possibilité de modéliser des objets et des personnages 3D et de les animer. Il offre
également la possibilité d’importer des modèles provenant d’autres logiciels de modélisation
comme "MakeHuman" (voir figure 2.3 à la page 14). L’animation des modèles peut être
entièrement créée à travers les fonctionnalités qu’il offre. Cette opération s’avère longue et nécessite une parfaite maîtrise du logiciel. Mais à côté, Blender permet l’importation de fichiers
d’animation tels que les fichiers BVH (BioVision Hierarchy) 3 qui contiennent des données de
motion capture. Nous avons pu profiter de la base de cgspeed 4 qui offre de nombreux fichiers

bvh décrivant différents mouvements.

Figure 2.3 – Modèle humain importé dans blender à partir de MakeHuman

2.2.2

Extraction des données simulées

Les modèles précédemment animés dans Blender, serviront à constituer notre base d’apprentissage et de test. En effet, selon notre méthode, nous aurons besoin des images de la
silhouette du personnage ainsi que des informations spatiales sur les articulations lors du déroulement d’un mouvement. Blender offre la possibilité d’être interfacé à travers des scripts
"python" pour la réalisation de différentes tâches. Nous avons donc développé des scripts qui
permettent d’extraire les images de la silhouette du personnage à chaque frame ainsi que les
2. consulté le 26/03/2015
3. consulté le 07/07/2015
4. www.cgspeed.com consulté le 31/03/2015

14


informations spatiales de chaque point d’articulation dans une structure bien définie (voir
figure 2.4 à la page 15).

Figure 2.4 – Exemples de silhouettes extraites lors d’une marche
Les informations spatiales extraites concernent également les caméras utilisées pour capturer les silhouettes. En effet, pour chaque point d’articulation ainsi que pour la ou les caméras
virtuelles, Blender fournit sous forme d’une matrice (4 x 4) les informations sur la position
3D et les informations de rotation de la caméra virtuelle dans l’espace. La figure 2.5 à la
page 15 montre une matrice d’un exemple de données extraites. La partie en vert concerne
les coordonnées 3D du point focal de la caméra et la partie en jaune est la matrice de rotation
de ce point. Notre base d’apprentissage est organisée en différentes classes qui correspondent
chacune à un personnage d’une morphologie donnée et exécutant une action donnée. La base

de test est également organisée de la même manière. À chaque image de silhouette sont associées 20 matrices (4 x 4) représentant les données des articulations et également de la caméra.
Ces données serviront à reprojeter sur une image de silhouette ces différents points à travers
les propriétés de la géométrie perspective. On peut le remarquer sur l’image de la figure 2.5 à
la page 15, une silhouette avec les points reprojetés en blanc.

Figure 2.5 – À gauche, une matrice 4 x 4, à droite une image avec les points reprojetés

A cet stade, nous pouvons disposer de :

15


×