Reconnaissance d`Objets 3D

Transcription

Reconnaissance d`Objets 3D
Reconnaissance d’Objets 3D
Mathieu AUGÉ
Louis-Sébastien EL HACHEM
École Centrale Nantes
Option Informatique
23 mars 2010
Résumé
Ce rapport effectué dans le cadre de notre Projet de Veille Technologique
a pour but de synthétiser le résultat de nos recherches. Nous nous sommes intéressés à la problématique de la Reconnaissance d’Objets 3D dans un échantillon d’images et en particulier à la recherche des différents traitements algorithmiques existant à l’heure actuelle. Précisons que ce document se focalise
sur l’aspect reconnaissance et non modélisation des objets 3D.
Ce document présente les différentes méthodes utilisées en reconnaissance
3D et a pour but d’orienter le lecteur vers une sélection d’articles pertinents
2
Les techniques de traitement d’image
1
3
Les techniques de traitement d’image
1.1
1.1.1
Composantes bidimensionnelles
Détection de points
La détection de points est utilisée pour extraire certains types de propriétés et
en déduire le contenu d’une image. Elle est fréquemment utilisée en reconnaissance
d’objets.
Formalisation :
Un sommet peut être défini comme l’intersection de deux bords. Il peut également être défini comme un point dont le voisinage local contient deux bords de
directions dominantes différentes.
Un point d’intérêt est un point d’une image qui a une position bien définie et
peut être détecté de façon robuste. Ceci signifie qu’un point d’intérêt peut être
un sommet, mais aussi par exemple un point isolé d’intensité locale maximale ou
minimale, comme les points d’arrêt ou les points pour lesquels la courbure atteint
un maximum local.
En pratique, la plupart des méthodes de détection de sommets détectent en
fait des points d’intérêt. En conséquence, si seuls les sommets sont détectés, il est
nécessaire de réaliser une analyse des points d’intérêt détectés pour déterminer
lesquels sont de véritables sommets.
(source wiki)http://en.wikipedia.org/wiki/Corner_detection
1.1.2
Détection de contours
La détection de contours dans une image 2D est réalisable en recherchant une
forte variation locale d’intensité lumineuse. Plusieurs algorithmes permettent de
réaliser cette détection. L’algorithme de Sobel (http://en.wikipedia.org/wiki/
Sobel_operator par exemple est utilisé en détection de contours en se servant de
matrices de convolution. Les trois critères d’une détection optimale (définis par J.
Canny) sont :
une bonne détection : détecter un maximum de contours
une bonne localisation : les points détectés doivent être les plus proches possibles
du vrai contour
une réponse unique : minimiser le nombre de contours détectés plusieurs fois
Le filtre de Canny, bâti à partir de l’algorithme de Sobel, utilise un seuillage
par hystérésis pour éliminer les faux contours et un filtre gaussien pour plus de
robustesse face aux images fortement bruitées.
1.1.3
SIFT
SIFT (Scale-invariant feature transform) est un algorithme de détection et description des propriétés locales dans les images. Il a été publié pas David Lowe en
Les techniques de traitement d’image
4
1999.
Il est fréquemment utilisé en reconnaissance d’objets. Breveté aux États-Unis,
il est détenu par l’Université de British Columbia. http://en.wikipedia.org/
wiki/scale-invariant_feature_transform
1.1.4
SURF
SURF (Speeded Up Robust Features) est un détecteur et descripteur robuste
d’image, qui fut d’abord présenté par Herbert Bay et al. en 2006, et qui peut-être
utilisé pour la reconnaissance d’ objet ou la reconstruction 3D. Il est partiellement
inspiré de SIFT. Sa version standard est bien plus rapide que SIFT et ses auteurs
affirment qu’il est plus robuste aux différentes transformations d’images. SURF is
based on sums of approximated 2D Haar wavelet responses and makes an efficient
use of integral images. http://en.wikipedia.org/wiki/SURF
1.2
1.2.1
Pour la reconnaissance d’objets 3D
Invariants et descripteurs locaux
Les descripteurs invariants locaux : Il ne s’agit pas seulement d’une méthode
pour sélectionner les zones d’intérêt dans l’image, ou pour accélérer l’analyse, mais
plutôt d’une nouvelle représentation de l’image, qui permet de décrire les objets
et parties de l’image sans recourir à la segmentation.
Quand la transformation est appliquée à l’image, une mesure invariante reste
inchangée. Une mesure covariante change d’un façon consistante avec la transformation.
Les descripteurs locaux sont communément utilisés pour caractériser un objet,
et permettent de gérer les occlusions partielles ou les changements de fond.
http://homes.esat.kuleuven.be/~tuytelaa/tutorial-ECCV06.pdf
1.2.2
Modèles de Markov (Cachés)
Méthode de probabilité utilisé pour prévoir un état ou la probabilité que le
système arrive dans cet état sans avoir aucune indication sur comment le système
est arrivé dans cet état. Par exemple, en utilisant un MMC (Hidden Markov Model
en anglais), on peut estimer quel temps il fera demain en sachant le temps qu’il
fait aujourd’hui mais sans savoir ce qui détermine ce temps.
Autre exemple : déterminer un lancer de pièce sans savoir si la pièce est faussée ou
non.
Ici, en reconnaissance 3D, les HMM servent à déduire un élément en ayant qu’une
partie de celui ci. (occlusion, différence de point de vue, zoom).
On utilise généralement les MMC pour 3 sortes de problèmes différents :
– En connaissant l’automate, calculer la probabilité d’obtenir une séquence
particulière.
Les techniques de traitement d’image
5
– En connaissant l’automate, et en ayant une séquence de sortie, trouver l’enchainement de séquences le plus probable y ayant conduit.
– Ayant une séquence de sortie, retrouver l’ensemble d’états les plus probables
menant là, et les probabilités associées.
–
–
–
–
http://fr.wikipedia.org/wiki/Modèle_de_Markov_caché
http://people.binf.ku.dk/krogh/publications/pdf/KroghRiis99.pdf
HMM_cours_ECN_2009.pdf
Une architecture pour la reconnaissance d’objets en imagerie aérienne
SADGAL Mohammed, EL FAZZIKI Aziz & AIT OUAHMAN Abdellah
– 3D object recognition in range images using hidden markov models and neural networks
Young Kug Ham, Rae-Hong Park
1.2.3
Réseaux de neurones
Inspirés du principe de fonctionnement du réseau de neurones naturels (de
l’homme par exemple). Le type de réseau de neurones dépend de différents paramètres, dont la fonction de seuil utilisée (Gauss par les chercheurs dont nous avons
lu les travaux).
Les réseaux de neurones peuvent stocker des connaissances expérimentales acquises à partir d’un environnement formel épargnant ainsi l’étape difficile de formalisation. Les méthodes d’apprentissage automatiques font que plusieurs neurones
participent à la représentation d’une connaissance et qu’il soit possible qu’un neurone participe au codage de plusieurs d’entre elles.
On les utilise pour savoir si l’objet que l’on a extrait existe dans notre banque
de données. Cette reconnaissance doit prendre en compte des caractéristiques telles
que les couleurs, textures, etc. et pour cela, les réseaux de neurones servent à stocker cette information et la ressortir au moment voulut c’est à dire au moment
même de la reconnaissance.
– http://fr.wikipedia.org/wiki/Réseau_de_neurone
– HMM_cours_ECN_2009.pdf
– Une architecture pour la reconnaissance d’objets en imagerie aérienne
SADGAL Mohammed, EL FAZZIKI Aziz & AIT OUAHMAN Abdellah
– 3D object recognition in range images using hidden markov models and neural networks
Young Kug Ham, Rae-Hong Park
1.2.4
Hachage géométrique
La méthode du hachage géométrique permet de mettre en correspondance des
sommets d’un modèle 3D avec des sommets de segments dans une image.
Domaines d’application
1.2.5
6
Graphes
Un graphe est un ensemble de points, dont certaines paires sont directement
reliées par un lien. Ces liens peuvent être orientés, c’est-à-dire qu’un lien entre
deux points u et v relie soit u vers v, soit v vers u : dans ce cas, le graphe est dit
orienté. Sinon, les liens sont symétriques, et le graphe est non-orienté. Les graphes
sont utiles pour la détection de contours et la reconnaissance de formes (caractères,
objets 2D ou 3D...), reconnaissance de visages (avec ou sans modèle).
http://perso.telecom-paristech.fr/~tupin/cours/voir/graphes.pdf
1.2.6
Transformée de Fourier
La transformation de Fourier est un analogue de la théorie des séries de Fourier pour les fonctions non périodiques, et permet de leur associer un spectre en
fréquences. La transformées de Fourier 2D est utilisée en dans le pré-traitement
pour la reconnaissance de formes.
1.2.7
Transformée en ondelettes
L’utilisation des bases d’ondelettes en traitement d’images s’est généralisée
durant les vingt dernières années. Leur intérêt pour la compression et le débruitage
a été démontré (elles ont intégré le standard de compression JPEG 2000). Les
ondelettes mettent en évidence des informations sur les contours, les textures, leur
localisation et leur orientation.
2
Synthèse
La reconnaissance d’objets 3D est un domaine de recherche actif depuis des
dizaines d’années. C’est pourquoi la plupart des algorithmes existants aujourd’hui
n’ont pas pour vocation d’introduire de nouveaux concepts fondamentaux, mais
bien d’améliorer / adapter / optimiser des techniques existantes. Dans le domaines
de la reconnaissance 3D, des concepts fondamentaux mathématiques viennent
s’ajouter aux mécanismes plus classiques de traitement d’image. La plupart des
algorithmes existants s’appuient sur des Modèles de Markov Cachés, des réseaux
de neurones des graphes ainsi que sur le hachage géométrique (Bayesien).
3
3.1
Domaines d’application
Robotique
Le traitement d’image et la reconnaissance d’objets sont en grande partie arrivés par la robotique. En effet, pour se mouvoir dans leur environnement, les robots
ont besoin de le percevoir et de l’analyser. Des tâches tels que le tri d’une production où le déplacement dans un environnement inconnu nécessitent avant tout
Domaines d’application
7
de pouvoir obtenir des informations sur les objets environnement et la manière
approprié d’interagir avec.
3.2
Industrie
De nombreuses applications industrielles bénéficient des technologies de reconnaissance d’objets, on peut par exemple citer les processus dans lesquels de nombreux objets sont à identifier et/ou à trier, comme le passage sur un tapis roulant
(ligne de production, tri des déchets, bagages dans les aéroports...) On trouve par
exemple le logiciel VC Smart Finder qui permet la reconnaissance.
3.3
Architecture et urbanisme
En architecture, des recherches ont été faites pour la reconnaissance d’objets
par imagerie aérienne. Cette reconnaissance d’images 2D peut aboutir à une identification ou simplement une catégorisation de la zone photographié. Elle est effectuée en se basant notamment sur les couleurs, les textures et les formes géométriques.
Maintenant, d’autres recherches sont venus complétés ce type d’application de la
reconnaissance d’images, en complétant ces techniques par de la reconnaissance
d’objets 3D.
3.4
Biométrie
La reconnaissance de visages est une des applications les plus en vue dans
l’utilisation de reconnaissance 3D en biométrie.
Elle sera par exemple utilisée lors des Jeux Olympiques de Londres en 2012.
Pour les jeux olympiques de 2012, le Royaume-Uni compte s’équiper d’un nouveau système de sécurité. Il sera possible de faire une représentation faciale en
3D extrêmement précise de chaque individu se présentant au contrôle de sécurité.
Cette approche technique est en développement à Imperial College London (ICL)
avec l’aide d’Identity solution et de General Dynamics. Ce système utilise la technologie connue sous le nom de ń stéréo photométrie ż. Grâce à une camera fixe et à
différentes sources de lumières appliquées sur la cible, il est possible, en analysant
les effets d’ombre, de reconstruire très précisément une image avec tous ses détails.
http://www.ambafrance-uk.org/Un-systeme-photometrique-pour-la.html
Annexes
4
4.1
8
Principal problème connu
Occlusion
L’occlusion est un des principaux problèmes rencontrés en reconnaissance d’objets. Il s’agit du cas ou l’objet que l’on cherche à reconnaître dans une scène se
trouve partiellement caché par un autre élément.
Figure 1 – Occlusion
Dans cet exemple, la chaise du fond est cachée par la table, il s’agit d’une
occlusion.
5
5.1
Annexes
3D object recognition in range images using hidden markov
models and neural networks [3]
La reconnaissance d’image 2D est devenue réaliste et réalisable dans de bonnes
conditions, en revanche celle de la reconnaissance 3D ne l’est pas. Ou pour l’instant
des méthodes de reconnaissance 3D utilisent des caractéristiques 2D susceptibles
de varier suivant l’angle se la prise de vue, le zoom/ la distance et d’autres changements de conditions.
Récemment, des publications ont proposé des "lots de caractéristiques" et d’algorithmes efficaces utilisant des réseaux de neurones dans lesquels des caractéristiques 2D étaient utilisés pour reconnaître des objet 3D. (de la 2D à la 3D)
Ce document présente la reconnaissance d’objet 3D dans des "range images".
Ce sont des images 2D où la valeur du pixel représente la distance d’un point à la
surface de l’objet 3D à un plan prédéterminé. L’avantage par rapport à des images
Annexes
9
"d’intensité" est que là on a directement accès à la forme géométrique des images.
Indépendamment de la position et de l’intensité des sources lumineuses, ou des
propriétés réflexives de objets. On évite ainsi des problèmes liés à la reconnaissance d’objet 3D dans des images d’intensité.
Le travail de cette thèse s’inscrit dans le cadre de la modélisation et de la reconnaissance d’objets par leur apparence et par des descripteurs locaux.
Ils est question dans une première partie de cette thèse, d’images d’où sont extraits
des contours puis des segments approchant ces derniers.
A partir de ces segments, sont calculés des descripteurs locaux, appelés quasiinvariants, qui ont la particularité d’être très stables par rapport à des changements
modérés de point de vue. En stockant ces quasi-invariants dans une structure adaptée, et en modélisant un objet 3D par un ensemble limité de vues 2D, on montre
qu’il est possible de reconnaître des objets sous tout angle de vue.
La reconnaissance est obtenue en deux étapes :
– D’abord les quasi-invariants locaux entre image et modèles sont mis en correspondance en utilisant une méthode d’indexation.
– Ensuite, une vérification globale exprimant une cohérence géométrique permet de filtrer des appariements erronés et de sélectionner le modèle le plus
semblable à l’image. Constatant des faiblesses dans l’extraction et dans le
pouvoir discriminant des descripteurs initiaux, on étends ensuite cette approche pour fournir une méthode d’intégration avec toute une classe de méthodes locales existantes. Les résultats expérimentaux fournis par cette extension forment une validation complète de ce travail.
Dans un deuxième temps, on analyse le problème de la complexité algorithmique
soulevé par le genre d’approches utilisées. En effet, certaines méthodes d’indexation
sont très mal adaptées à la reconnaissance par descripteurs locaux dès lors que ces
descripteurs évoluent dans un espace de dimension élevée. La complexité est telle,
que, dans certains cas, elle peut dépasser celle d’une comparaison séquentielle de
tous les modèles et leurs descripteurs. Pour finir, ces chercheurs ont donc essayé
de définir ces cas et comment peut on les contournés.
5.2
A Hidden Markov Model approach for appearance-based 3D
object recognition[1]
Cet article propose une méthode de reconnaissance d’objet 3D qui s’appuie
sur les Modèles de Markov Cachés. La méthode considère toutes les informations
disponibles sur l’objet pour les modéliser en utilisant un Modèle de Markov Caché.
La stratégie pour obtenir la séquence de données depuis une image comporte 3
étapes : une conversion de l’image en noir et blanc (pour se focaliser sur la géométrie et non sur la couleur), un balayage récurrent de l’image en faisant glisser
Annexes
10
dessus une fenêtre carrée de taille fixe pour obtenir une séquence de sous-images
de dimension fixe (on obtient ainsi de l’information pertinente sur la géométrie locale de l’image) et une transformée en ondelettes sur chaque sous-image recueillie.
L’algorithme calcule les coefficients représentant l’image dans une base de Haar
normalisée en deux dimensions et les trie par ordre de magnitude décroissante. Les
coefficients de plus haute magnitude sont donc conservés pour réaliser une compression d’image. Ils représentent l’information la plus significative, et sont donc
utilisés pour reconnaître les objets. La stratégie de reconnaissance utilisée : un modèle de Markov est utilisé pour chaque vue de l’objet. L’étape de classification est
réalisée en assignant une vue inconnue d’un objet à la classe du modèle qui montre
le maximum de probabilité. Après entraînement d’un modèle pour chaque aspect
d’un objet, une vue inconnue est assignée à la classe de la vue la plus similaire.
5.3
A surface-based approach to 3-D object recognition using a
mean field annealing neural network[5]
La solution implémentée dans cet exemple implique d’avoir en entrée une "range
image". L’objet est segmenté en différentes parcelles de surfaces, puis plusieurs
caractéristiques sont extraites de chaque parcelle ainsi que de deux parcelles adjacentes. Un graphe est construit en utilisant les caractéristiques extraites et on
teste sa concordance avec un certain nombre de graphes modèles. Dans la méthode proposée, chaque parcelle de surface peut constituer une surface-clé, ce qui
conduit a une bonne concordance même en cas d’occlusion, en considérant le degré
de concordance des surfaces voisines. Le niveau d’énergie déterminé par la fonction
d’énergie proposée converge vers un état stable lorsque ma température diminue
par la procédé du champ moyen de recuit. L’énergie atteint sa valeur minimale
lorsque la concordance est optimale.
5.4
TU-0545 - Reconnaissance et modélisation d’objets 3D à l’aide
d’invariants projectifs et affines
Lamiroy, Bart
Thèse de : Grenoble, INPG
183 pages - 8 juillet 1998 - Document en français
Titre anglais : Recognition and Modeling of 3D Objects Through Use of Projective
and Affine Invariant
URL : http://www.inria.fr/rrrt/tu-0545.html
Date et heure : 10 Janvier 2010
RÉFÉRENCES
11
Références
[1] Manuele Bicego, Umberto Castellani, and Vittorio Murino. A hidden markov
model approach for appearance-based 3d object recognition. 2005.
[2] G.Y. Chen and B. Kégl. Invariant pattern recognition using radon, wavelet
and fourier transforms. 2009.
[3] Young Kug Ham and Rae-Hong Park. 3d object recognition in range images
using hidden markov models and neural networks. 1998.
[4] Seungjin Lee, Kwanho Kim, Joo-YoungKim, MinsuKim, and Hoi-JunYoo. Familiarity based unified visual attention model for fast and robust object recognition. 2009.
[5] Yang-Lyul Lee and Rae-Hong Park. A surface-based approach to 3-d object
recognition using a mean field annealing neural network. 2000.
[6] Anshul Sehgala and U.B. Desai. 3d object recognition using bayesian geometric
hashing and pose clustering. 2002.
[7] Woo-Han Yun, Sung Yang Bang, and Daijin Kim. Real-time object recognition
using relational dependency based on graphical model. 2007.

Documents pareils