71
1 « Navigation d’un véhicule intelligent à l’aide d’un capteur de vision en lumière structurée et codée » thèse présentée par David Fofi le 18 septembre 2001 Travaux dirigés par : El Mustapha Mouaddib, Professeur à l’Université de Picardie Jules Verne (France) Joaquim Salvi, Maître de Conférences à l’Université de Girona (España)

thèse présentée par David Fofi le 18 septembre 2001

  • Upload
    anise

  • View
    42

  • Download
    4

Embed Size (px)

DESCRIPTION

« Navigation d’un véhicule intelligent à l’aide d’un capteur de vision en lumière structurée et codée ». thèse présentée par David Fofi le 18 septembre 2001. Travaux dirigés par : El Mustapha Mouaddib , Professeur à l’Université de Picardie Jules Verne (France) - PowerPoint PPT Presentation

Citation preview

  • Navigation dun vhicule intelligent laide dun capteur de vision en lumire structure et codethse prsente par David Fofile 18 septembre 2001Travaux dirigs par :

    El Mustapha Mouaddib, Professeur lUniversit de Picardie Jules Verne (France)Joaquim Salvi, Matre de Confrences lUniversit de Girona (Espaa)

  • 0.sommaire 1. introduction gnrale2. la vision en lumire structure3. segmentation et dcodage4. reconstruction tri-dimensionnelle5. fonctions visuelles pour la navigation6. conclusions et perspectives

  • 1.introduction gnraleProblmatique Comment tirer parti de la vision en lumire structure pour la perception dun robot mobile ? Quels sont les avantages et les inconvnients que lon peut tirer dun tel capteur pour la navigation dun robot ?Points tudis Dcodage du motif structurant. Segmentation des images codes. Autocalibration du capteur de vision. Mthode de dtection dobstacles et de construction dune carte de lespace libre. Mthode destimation du dplacement du robot par mise en correspondance des plans qui composent la scne.

  • 2.la vision en lumire structure 2.1 dfinition2.2 classification et codage2.3 applications

  • 2.1 dfinitionUne lumire structure est une source lumineuse module dans l'espace, le temps, l'intensit et/ou la couleur.

    La vision en lumire structure consiste projeter une telle source lumineuse sur l'environnement, lui-mme observ par une ou plusieurs camras CCD ; il s'agit en fait de remplacer, dans un systme stroscopique classique, une camra par un projecteur de lumire.

  • 2.1 dfinition

  • 2.2 classification et codageclassification La dpendance temporelle (statique ou dynamique) La nature de la lumire mise (binaire, niveaux de gris ou couleurs) La dpendance aux discontinuits (priodique ou absolu)3 critres lis classification propose par Batlle, Mouaddib et Salvi.

  • 2.2 classification et codageexemples de codage Posdamer et Altschuler Statique Binaire Absolu

    (HSB) A

    B

    C

    D

    E

    F

    G

    (LSB) H

  • 2.2 classification et codageexemples de codage Le Moigne et Waxman Dynamique Binaire Absolu

  • 2.2 classification et codageexemples de codage Carrihill et Hummel Statique Niveaux de gris Absolu

  • 2.2 classification et codageexemples de codage Vuylsteke et Oosterlinck Dynamique Binaire Absolu

  • 2.2 classification et codageexemples de codage Boyer et Kak Dynamique Couleurs Priodique

  • 2.2 classification et codageexemples de codage Tajima et Iwakawa Statique Couleurs Absolu

    Bleu

    Rouge

  • 2.2 classification et codageexemples de codage Griffin, Narasimhan et Yee Dynamique Couleurs Absolu

  • 2.2 classification et codagenotre choix

  • 2.3 applicationsmtrologie Profilomtrie pour des plaques mtalliques. Une camra linaire observe un point de surbrillance projet sur la surface de la plaque mtallique.Profilomtrie pour des plaques de verre. Le verre est illumin par un motif binaire, la dformation du motif se projette sur du verre dpoli observ par la camra.

  • 2.3 applicationsanthropomtrieMesure des dformations pathologiques du dos. Une grille code est projete sur le dos des patients. La calibration consiste projeter cette grille sur un plan de rfrence et sur un plan de base. Par des calculs, bass sur la similarit des triangles, une image de profondeur est obtenue partir des donnes de limage.

  • 2.3 applicationsrobotique Robotique sous-marine. Le capteur est enferm dans un caisson en plexiglass. La ligne de vue est diffracte deux fois. La ligne de base nest plus constante.Robotique extra-terrestre : Pathfinder. Deux lasers sont diffracts en quinze faisceaux coplanaires et observs par les camras.

  • 3.segmentation et dcodage 3.1 lments de colorimtrie3.2 segmentation de limage3.3 dcodage du motif3.4 rsultats exprimentaux

  • 3.1 lments de colorimtrieLa colorimtrie, ou mtrique des couleurs, est la science qui permet de chiffrer et mesurer les couleurs. Trois paramtres dfinissent la couleur : La teinte Le degr de puret (saturation) Le facteur de clart (luminance)quest-ce que la couleur ? Le principe de la trivariance visuelle pose que le mlange de trois radiations indpendantes permet de reproduire toutes les impressions colores. Les couleurs de base sont appels couleurs primaires ; celles qui, mlanges aux primaires, donnent du blanc, couleurs secondaires.

  • 3.1 lments de colorimtrieespace de couleurs Un espace des couleurs est une reprsentation gomtrique des couleurs dans un espace gnralement tri-dimensionnel.Un espace chromaticit constante est un espace au sein duquel les distances reprsentent approximativement les diffrences de couleur perues par loeilLoi de Weber-Fechner

  • 3.2 segmentation de limageschma gnral 1. Traitements bas-niveau2. Points dintersection3. Dcodage

  • 3.2 segmentation de limagetraitements bas-niveau originalegalisationbinarisationsquelettisationHough

  • 3.2 segmentation de limagepoints dintersection Calcul de lintersection entre horizontales et verticalesSi t=0 : droites paralllesSinon, le point dintersection est x/t, y/t.

  • 3.3 dcodage du motifconversion RVB - Lab RVBXYZLab

  • 3.3 dcodage du motifmesures dans ab Utiliser un algorithme de coalescence pour partitionner les mesures en six classes.Utiliser le positionnement relatif des classes pour initialiser lalgorithme.

    Chart2

    27.34319.5634-20.33722.31931.45649.174614.0163733333

    30.609631.8078-20.33728.4176-4.816450.2559

    10.560426.3352-20.3372-8.16711.45665.4459

    12.22528.1991-22.8058-2.243-5.48365.4459

    30.609631.8078-22.80588.4176-4.816464.4531

    10.560428.1991-20.3372-2.243-4.816445.5286

    27.184624.6352-22.0199-0.961-3.251650.5533

    22.578224.6352-22.0199-6.19442.013372.8803

    27.184624.6352-22.0199-6.2355-0.989550.5533

    27.184628.46-4.8456-0.961-3.251660.5893

    Rouge

    Vert

    Bleu

    Cyan

    Magenta

    Jaune

    Centroide

    a

    b

    Sheet1

    LabPrototypesCouleurs pures

    473836

    503717

    604330

    404042

    363413

    363413

    404528

    454935

    473238

    363025

    404528

    454935

    35343839.2329.088170

    62-1834

    55-1140

    61636

    44-1929

    62-1834

    52-936

    77-945

    70-1638

    36-1032

    77-945

    52-936

    55-1140

    40-427-10.5436.31-7981

    1913-26

    2622-27

    2421-13

    1913-26

    1913-26

    2920-31

    2930-31

    2930-31

    2930-31

    165-13

    1914-28

    1913-26

    1913-2618.23-25.7768-112

    71-216

    81-1317

    52-12-10

    61-12-2

    69-151

    69-151

    50-13-7

    81-24-13

    81-24-13

    42-3-13

    330-3

    61-12-2

    61-12-2-13.54-3.08-51-15

    60553

    60553

    3540-6

    4249-14

    4959-2

    5759-3

    27263

    43470

    5759-3

    24143

    43470

    5759-3

    4959-2

    4249-1447.85-2.9294-60

    91-374

    831359

    87579

    87579

    802063

    782366

    782366

    633869

    482952

    482952

    783865

    821468

    802063

    66246121.6264.77-1693

    Sheet1

    Bleu

    Magenta

    Jaune

    Cyan

    Rouge

    Vert

    a

    b

    Sheet2

    Rouge

    a91.54821.06829.463931.216328.942729.463931.216340.791539.894540.791540.7915

    b133.7427.34330.609610.560412.22530.609610.560427.184622.578227.184627.1846

    Vert

    a-137.9-3.6547-9.90193.8751-12.6121-9.9019-12.6121-12.0253-12.0253-12.0253-6.4322

    b90.94219.563431.807826.335228.199131.807828.199124.635224.635224.635228.46

    Bleu

    a52.37821.771521.771521.771512.574312.574321.771517.032817.032817.032827.6008

    b-99.22-20.3372-20.3372-20.3372-22.8058-22.8058-20.3372-22.0199-22.0199-22.0199-4.8456

    Cyan

    a-81.37-16.4172-8.3842-12.8429-10.0379-8.3842-10.0379-11.4148-6.9422-13.9053-11.4148

    b-22.332.31938.4176-8.1671-2.2438.4176-2.243-0.961-6.1944-6.2355-0.961

    Magenta

    a96.21339.965636.78939.965631.852336.78936.78944.935947.255741.423344.9359

    b-47.251.456-4.81641.456-5.483-4.8164-4.8164-3.25162.0133-0.9895-3.2516

    Jaune

    a-17.043.337920.44-0.98-0.987.037610.141312.0324-7.788612.032412.9086

    b115.5749.174650.255965.445965.445964.453145.528650.553372.880350.553360.5893

    A13.2726616667

    B14.0163733333

    Sheet2

    Rouge

    Vert

    Bleu

    Cyan

    Magenta

    Jaune

    Centroide

    a

    b

    Sheet3

  • 3.3 dcodage du motifalgorithme de coalescence

  • 1 Calculer le centre de gravit de tous les points mesurs dans lespace ab. 2 Extraire le point dont la composante b est la plus leve (suppos jaune).3 Calculer lcart chromatique d entre ces deux points.4 Initialiser le centre de la classe i :

    3.3 dcodage du motifinitialisation de lalgorithme

  • 3.4 rsultats exprimentauxsegmentation

  • 3.4 rsultats exprimentauxsegmentation

  • 3.4 rsultats exprimentauxsegmentation

  • 3.4 rsultats exprimentauxanalyse quantitative

    LS-Manu

    LS-Insp

    Manu-Insp

    Moyenne

    -0,09

    -0,53

    0,73

    0,56

    0,76

    1,02

    Ecart-type

    2,69

    1,41

    2,61

    1,26

    0,77

    1,17

    Distance moyenne

    0,54

    0,92

    1,27

  • 3.4 rsultats exprimentauxdcodage

    _1031572938.doc

    -80

    -60

    -40

    -20

    0

    20

    40

    60

    80

    -60

    -40

    -20

    0

    20

    40

    60

    80

    _1031647261.doc

    -50

    -40

    -30

    -20

    -10

    0

    10

    20

    30

    40

    -80

    -60

    -40

    -20

    0

    20

    40

    60

    80

    _1038040819.doc

    -20

    -10

    0

    10

    20

    30

    40

    50

    -30

    -20

    -10

    0

    10

    20

    30

    40

    50

    60

    70

    _1031571695.doc

    -40

    -30

    -20

    -10

    0

    10

    20

    30

    40

    50

    60

    -30

    -20

    -10

    0

    10

    20

    30

    40

    50

    60

    70

  • 4.reconstruction tri-dimensionnelle 4.1 modlisation et calibration4.2 proprits du capteur4.3 auto-calibration du capteur4.4 rsultats exprimentaux

  • 4.1 modlisation et calibrationCalibrer, cest estimer la matrice de passage dun point 3D exprim dans le repre du monde son image exprime en pixels dans le repre image.principe

  • 4.1 modlisation et calibrationcamra Un mouvement rigide Une projection 3-D / 2-D Un changement de coordonnes

  • 4.1 modlisation et calibrationprojecteurUn projecteur de lumire peut tre vu comme une camra oprant lenvers, en inversant le sens de la ligne de vue.Gomtriquement, il ny a aucune diffrence entre une camra et un projecteur. Lun et lautre peuvent donc tre modliss de la mme manire.

    Pour calibrer le projecteur, une solution consiste relever les coordonnes des traces lumineuses projetes la surface dune mire de calibration.

  • 4.2 proprits du capteurtest de colinarit spatialeLes birapports du motif et de limage sont gaux si les 4 points sont colinaires.

  • 4.2 proprits du capteurtest de coplanarit{o;p,q,r,s}={o';p',q',r'}Les birapports du motif et de limage sont gaux si les 5 points sont coplanaires.

  • 4.2 proprits du capteurstabilit du birapportErreur sur les birapports - bruit de 0 0.5d (d est la distance entre 2 points successifs) Nota : pour comparer les birapports, une distance projective est ncessaire. Mthode des birapports alatoires [K. Astrm, L. Morin, "Random cross-ratios", Research Report nrt 88 imag-14, LIFIA, 1992].

    0

    5

    10

    15

    20

    25

    30

    35

    40

    45

    50

    0

    0.005

    0.01

    0.015

    0.02

    0.025

    0.03

    0.035

    Noise

    Error on Cross-Ratios

    0

    5

    10

    15

    20

    25

    30

    35

    40

    45

    50

    0

    0.002

    0.004

    0.006

    0.008

    0.01

    0.012

    0.014

    0.016

    0.018

    Noise

    Error on Cross-Ratios

  • 4.2 proprits du capteurvalidit du modle affineValide si 0projection affine

  • 4.3 autocalibration du capteurautocalibration : tat de lart Les quations de Kruppa [Faugeras, Maybank, Luong, Hartley] Stratification des gomtries :- paramtres intrinsques constants [Hartley, Heyden, Astrm]- contraintes Euclidiennes [Boufama, Mohr, Veillon]

  • 4.3 autocalibration du capteurautocalibration : tat de lartReconstruction projective + contraintes Euclidiennes

  • 4.3 autocalibration du capteurreconstruction projectiven images composes de m points...mij : point imagePj : matrice de projectionMj : point objet(Uij, Vij) : coord. pixels

  • Une solution unique ne peut pas tre calcule puisque...W matrice 4x4 inversible : une colination de lespace 3-D4x4 - 1 (chelle) = 15 degrs de liberts, donc...5 points objets sont choisis comme base projective. On leur affecte les coordonnes de la base canonique.RECONSTRUCTION PROJECTIVE (distances, angles et parallelisme ne sont pas conservs)4.3 autocalibration du capteurreconstruction projective

  • 4.3 autocalibration du capteurcontraintes euclidiennesLes transformations Euclidiennes forment un sous-groupe des transformations projectives :Il existe une colination W qui redresse la reconstruction projective en reconstruction EuclidienneTRADUIRE DES CONNAISSANCES EUCLIDIENNES SUR LES POINTS 3-D EN CONTRAINTES SUR LES ELEMENTS DE W.Apparier 5 points projectifs avec leur correspondant Euclidiens ? OUI, MAIS ...Les coordonnes Euclidiennes des points sont rarement disponibles sils le sont : les points dintersection du motif doivent se projeter prcisment sur les points connus.

  • 4.3 autocalibration du capteurcontraintes du paralllogrammeOn prend lhypothse que le capteur a un comportement affine.

  • 4.3 autocalibration du capteurcontraintes dalignement Points appartenant des plans verticaux ou horizontaux. Distance arbitraire entre 2 plans de mme orientation. Un point dintersection choisi comme origine.

  • 4.3 autocalibration du capteurcontraintes dorthogonalitSi la condition nest pas vrifie Contrainte dorthogonalit rduite : A'B' A'C' = (xA' - xB')(xA' - xC')+ (yA' - yB')(yA' - yC')+ (zA' - zB')(zA' -zC') = 0(xA' - xB')(xA' - xC')+ (yA' - yB')(yA' - yC') = 0

  • 4.3 autocalibration du capteurexempleUne contrainte dalignement : xA' = xB' (relation entre 2 points Euclidiens inconnus)On a : [xA' ; yA' ; zA' ; tA']T = W [xA ; yA ; zA ; tA]T [xB' ; yB' ; zB' ; tB']T = W [xB ; yB ; zB ; tB]TAlors : W1ixA = W1ixB (relation entre 2 points projectifs connus)Le systme dquations est rsolu par Levenberg-Marquardt.15 contraintes indpendantes sont ncessaires (W est dfinie un facteur dchelle prs)

  • 4.4 rsultats exprimentauxtest de colinaritBirapport thorique (motif) = 1.3333Birapport mesur (image) = 1.3287Erreur projective =6.910-4Dcision = les points sont colinaires Birapport thorique (motif) = 1.3333Birapport mesur (image) = 1.3782Erreur projective =6.210-3Dcision = les points ne sont pas colinaires

  • 4.4 rsultats exprimentauxtest de coplanaritBirapport thorique (motif) = 2Birapport mesur (image) = 1.96Erreur projective =2.210-3Dcision = les points sont coplanaires Birapport thorique (motif) = 2Birapport mesur (image) = 2.186Erreur projective =5.910-3Dcision = les points ne sont pas coplanaires

  • 4.4 rsultats exprimentauxsimulationsretro-projection des points 3D points sur les plans images (cercles : points synthtiques, croix : retro-projections)

    Coordonnes thoriques

    Erreur d'estimation

    X

    Y

    Z

    (X

    (Y

    (Z

    100

    -50

    4000

    0.518

    -0.267

    3.95

    300

    -50

    2000

    -0.65

    -0.242

    -1.5

    700

    -50

    4000

    0.614

    -0.33

    6.43

    500

    -400

    4020

    -1.132

    -1.768

    -4.332

    300

    50

    4000

    0.091

    0.397

    2.597

    500

    50

    2000

    0.076

    -0.119

    0.449

    900

    50

    4000

    0.13

    0.171

    2.007

    300

    -430

    3000

    0.505

    -0.911

    5.079

    450

    75

    2500

    0.76

    -1.154

    4.016

    705

    -120

    1000

    0.603

    -0.827

    0.829

    Erreur moy. relative (%)

    0.518

    1.539

    0.169

  • 4.4 rsultats exprimentauxscnes relles

    -200

    -150

    -100

    -50

    -150

    -100

    -50

    0

    0

    20

    40

    60

    80

    x

    y

    z

  • 5.fonctions visuelles pour la navigation 5.1 dtection dobstacles5.2 dtection du mouvement5.3 estimation du mouvement5.4 rsultats exprimentaux

  • 5.1 dtection dobstaclesprincipeLe systme de vision est plac de manire ce quune verticale du motif projete sur une paroi verticale donne une verticale dans limage.Alors la dtection dune quasi-verticale dans limage quivaut la dtection dun obstacle dans la scne.

  • 5.1 dtection dobstaclescarte de lespace libre1 On attribue chaque lment vertical du motif une tiquette Ei [1 ; 29].

    2 On projette les points reconstruits sur le plan du sol sous la contrainte : 3 Pour un ensemble de points ayant la mme tiquette, on ne garde que celui dont la distance au robot est la plus courte :

  • 5.1 dtection dobstaclesrsultats

  • 5.1 dtection dobstaclesrsultats

  • 5.2 dtection du mouvementmouvement apparentEn vision en lumire structure, on appellera mouvement apparent le dplacement d'un mme lment de motif (gnralement, les lments de motif considrs sont les points d'intersection) d'une image sur l'autre aprs un dplacement du capteur.

  • mouvements singuliers LE MOUVEMENT APPARENT EST NUL5.2 dtection du mouvement

  • effet de bord 5.2 dtection du mouvementLe motif est projet sur une surface. Le mouvement du capteur fait quun lment de motif passe brusquement dune surface une autre.

  • 5.3 estimation du mouvementobjectif Estimer le dplacement du capteur dans un environnement statique. Reprer les mouvements aberrants pour dtecter la prsence dobstacles mobiles.

  • 5.3 estimation du mouvementdplacement des plansPerte des points 3D, donc les plans sont utiliss comme primitives.On a :En combinant :

  • quations des plans5.3 estimation du mouvementAvec 3 points :Avec n points :La plus petite valeur propre associe la matrice semi-dfinie positive :

  • mise en correspondance5.3 estimation du mouvement1 Ecart angulaire :2 Si :(Ne dpend que des paramtres de rotation)(Dpend des paramtres de rotation et de translation)

  • extraction des paramtres5.3 estimation du mouvement Reprsentation RPY (Roll, Pitch, Yaw)

  • 5.3 rsultats exprimentauxdescriptionUn cube de 100mm darte, dont le dplacement est donn par la matrice HCest partir des 6 plans du cube quon ralisera la mise en correspondance et lestimation du dplacement.

  • 5.3 rsultats exprimentauxsimulations : MeC = 0.05Paramtres fixs :Rsultats (50 mesures pour chaque niveau de bruit, pour les 6 plans du cube) :bruit = 4 mm

    tx (mm)

    ty (mm)

    tz (mm)

    ( (rad)

    ( (rad)

    ( (rad)

    -10

    2

    20

    0.1

    0.4

    -0.3

    (

    0.00

    0.01

    0.02

    0.03

    0.04

    0.05

    0.06

    0.07

    0.08

    0.09

    0.7

    Max

    1

    1

    1

    1

    1

    1

    1

    0

    0

    0

    1

    Echec

    50

    38

    15

    9

    4

    1

    1

    0

    0

    0

    4

    Bruit (( mm)

    0

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    Max

    0

    0

    0

    0

    1

    1

    1

    1

    1

    1

    1

    Echec

    0

    0

    0

    0

    1

    5

    5

    13

    13

    18

    22

  • 5.3 rsultats exprimentauxsimulations : dplacementbruit = 1mmTranslation de 100mm suivant z :Rotation de /4 autour de z :

    Paramtres du mouvement

    Solution estime

    Solution simule

    Erreur abs / rel

    tx (mm)

    50.2822

    50

    0.2822 / 0.56%

    ty (mm)

    -20.2760

    -20

    0.2760 / 1.38 %

    tz (mm)

    100.9388

    100

    0.9388 / 0.94%

    ( (rad)

    0.9712

    1

    0.0288 / 2.88%

    ( (rad)

    0.7343

    0.7

    0.0343 / 4.90%

    ( (rad)

    0.1042

    0.1

    0.0042 / 4.2%

    Bruit (()

    1

    2

    4

    6

    8

    10

    M.A. (mm)

    0.7250

    1.2991

    3.8966

    5.1936

    7.3580

    10.3035

    Ecart-type

    0.5751

    0.9809

    2.5290

    3.4801

    4.9356

    7.4546

    Bruit (()

    1

    2

    4

    6

    8

    10

    M.A. (mm)

    0.0053

    0.0084

    0.0216

    0.0337

    0.0396

    0.0471

    Ecart-type

    0.0037

    0.0063

    0.0120

    0.0221

    0.0323

    0.0323

    M.R. (%)

    0.6748

    1.0695

    2.7502

    4.2908

    5.0420

    5.9970

  • 6.conclusions et perspectives Mise en correspondance fiable et rapide. Traitements simplifis par rapport la vision classique. Les outils fondamentaux utiles la navigation (autocalibration, obstacles, mouvement) sont applicables la vision en lumire structure.La projection dun motif structurant permet un bon compromis entre les mthodes robotiques bases sur les lumires structures mono-dimensionnelles et la strovision. Dpendance vis--vis de la luminosit ambiante. Surfaces de couleurs peu satures privilgies. Amlioration des algorithmes proposs...