estimation temps réel de l'altitude d'un drone à partir d'un capteur de...

8
Estimation temps r´ eel de l’altitude d’un drone ` a partir d’un capteur de st´ er´ eovision mixte. Damien Eynard 1 Pascal Vasseur 1 edric Demonceaux 1 Vincent Fr´ emont 2 1 Laboratoire MIS - Universit´ e de Picardie Jules Verne 33, rue Saint Leu - 80000 Amiens 2 Laboratoire Heudiasyc - Universit´ e de Technologie de Compi` egne Centre de Recherches de Royallieu - BP 20529 - 60205 Compi` egne 1 {pr´ enom.nom}@u-picardie.fr 2 [email protected] esum´ e L’altitude est l’un des param` etres les plus importants `a connaitre pour un drone surtout pendant les phases de d´ ecollage et d’atterrissage. Dans ce papier nous pr´ esentons un nouveau capteur de st´ er´ eovision mixte compos´ e d’une cam´ era fisheye et d’une cam´ era perspec- tive pour l’estimation de l’altitude. Contrairement aux syst` emes de st´ er´ eo classiques, bas´ es sur l’appariement de points, nous proposons une approche de planeswee- ping pour l’estimation de l’altitude et la segmentation du sol. Par rapport au plan du sol, il existe une ho- mographie entre les deux vues, le capteur ´ etant cali- br´ e et l’attitude estim´ ee par la cam´ era fisheye, l’algo- rithme consiste en la recherche de l’altitude qui v´ erifie cette homographie. Nous montrons que cette m´ ethode est robuste et pr´ ecise et l’impl´ ementation GPU permet une estimation temps r´ eel. Des r´ esultats exp´ erimen- taux sur des s´ equences r´ eelles montrent la validit´ e de l’approche. Mots Clef Drone, plane-sweeping, capteur mixte, vision, fisheye. Abstract Altitude is one of the most important parameters to be known for an Unmanned Aerial Vehicle (UAV) es- pecially during critical maneuvers such as landing or steady flight. In this paper, we present a new mixed ste- reoscopic vision system made of a fish-eye camera and a perspective camera for altitude estimation. Contrary to classical stereoscopic systems based on feature mat- ching, we propose a plane sweeping approach in or- der to estimate the altitude and consequently to detect the ground plane. Since there exists an homography between the two views and the sensor being calibra- ted and the attitude estimated by the fish-eye camera, the algorithm consists then in searching the altitude which verifies this homography. We show that this ap- proach is robust and accurate and a GPU implementa- tion permits a real time estimation. Experimental re- sults on real sequences demonstrate the validity of the approach. Keywords UAV, plane-sweeping, capteur mixte, vision, fisheye. 1 Introduction Les drones, appareils volants sans pilote, font l’objet d’une attention particuli` ere cette derni` ere d´ ecennie du point de vue de l’autonomie. Cette notion inclue la ca- pacit´ e` a r´ ealiser des manoeuvres complexes telles que le d´ ecollage et l’atterrissage. Il est donc indispensable d’estimer pr´ ecis´ ement et en temps r´ eel l’altitude, l’at- titude et les vitesses de d´ eplacement. Dans ce papier, nous proposons un nouveau syst` eme de st´ er´ eovision mixte, fisheye/perspectif, capable d’estimer de fa¸ con autonome ` a la fois l’altitude d’un drone, son attitude et le plan d’atterrissage. L’altitude peut ˆ etre estim´ ee par diff´ erents moyens comme le ”Global Positioning System” (GPS), l’alti- m` etre (laser ou ` a pression), les radars ou encore la vision par ordinateur. Les GPS poss` edent une pr´ e- cision verticale d’environ 25m ` a 50m. Ils sont sen- sibles aux interruptions de transmission dans les en- vironnements urbains. Un autre type de capteur d’al- titude sont les altim` etres barom´ etriques. Ces syst` emes poss` edent comme principal inconv´ enient d’ˆ etre d´ epen- dants ` a la variation de pression ext´ erieure. L’erreur peut ainsi varier de 6% ` a 7%. L’altim` etre laser quant ` a lui est tr` es pr´ ecis mais n´ ecessite certaines conditions de r´ eflexion de la surface ` a mesurer. Enfin, les radars permettent d’estimer ` a la fois l’altitude et le plan du sol. Ce sont des capteurs actifs, principal inconv´ enient qui les rend d´ etectables et gourmands en ´ energie. hal-00447613, version 1 - 15 Jan 2010 Manuscrit auteur, publié dans "17ème congrès francophone AFRIF-AFIA RFIA, France (2010)"

Upload: efifje

Post on 14-Nov-2023

6 views

Category:

Documents


0 download

TRANSCRIPT

Estimation temps reel de l’altitude d’un drone a partir d’un capteurde stereovision mixte.

Damien Eynard1 Pascal Vasseur1 Cedric Demonceaux1 Vincent Fremont2

1 Laboratoire MIS - Universite de Picardie Jules Verne33, rue Saint Leu - 80000 Amiens

2 Laboratoire Heudiasyc - Universite de Technologie de CompiegneCentre de Recherches de Royallieu - BP 20529 - 60205 Compiegne

1 {prenom.nom}@u-picardie.fr2 [email protected]

Resume

L’altitude est l’un des parametres les plus importantsa connaitre pour un drone surtout pendant les phasesde decollage et d’atterrissage. Dans ce papier nouspresentons un nouveau capteur de stereovision mixtecompose d’une camera fisheye et d’une camera perspec-tive pour l’estimation de l’altitude. Contrairement auxsystemes de stereo classiques, bases sur l’appariementde points, nous proposons une approche de planeswee-ping pour l’estimation de l’altitude et la segmentationdu sol. Par rapport au plan du sol, il existe une ho-mographie entre les deux vues, le capteur etant cali-bre et l’attitude estimee par la camera fisheye, l’algo-rithme consiste en la recherche de l’altitude qui verifiecette homographie. Nous montrons que cette methodeest robuste et precise et l’implementation GPU permetune estimation temps reel. Des resultats experimen-taux sur des sequences reelles montrent la validite del’approche.

Mots Clef

Drone, plane-sweeping, capteur mixte, vision, fisheye.

Abstract

Altitude is one of the most important parameters tobe known for an Unmanned Aerial Vehicle (UAV) es-pecially during critical maneuvers such as landing orsteady flight. In this paper, we present a new mixed ste-reoscopic vision system made of a fish-eye camera anda perspective camera for altitude estimation. Contraryto classical stereoscopic systems based on feature mat-ching, we propose a plane sweeping approach in or-der to estimate the altitude and consequently to detectthe ground plane. Since there exists an homographybetween the two views and the sensor being calibra-ted and the attitude estimated by the fish-eye camera,the algorithm consists then in searching the altitude

which verifies this homography. We show that this ap-proach is robust and accurate and a GPU implementa-tion permits a real time estimation. Experimental re-sults on real sequences demonstrate the validity of theapproach.

Keywords

UAV, plane-sweeping, capteur mixte, vision, fisheye.

1 Introduction

Les drones, appareils volants sans pilote, font l’objetd’une attention particuliere cette derniere decennie dupoint de vue de l’autonomie. Cette notion inclue la ca-pacite a realiser des manoeuvres complexes telles quele decollage et l’atterrissage. Il est donc indispensabled’estimer precisement et en temps reel l’altitude, l’at-titude et les vitesses de deplacement. Dans ce papier,nous proposons un nouveau systeme de stereovisionmixte, fisheye/perspectif, capable d’estimer de faconautonome a la fois l’altitude d’un drone, son attitudeet le plan d’atterrissage.L’altitude peut etre estimee par differents moyenscomme le ”Global Positioning System” (GPS), l’alti-metre (laser ou a pression), les radars ou encore lavision par ordinateur. Les GPS possedent une pre-cision verticale d’environ 25m a 50m. Ils sont sen-sibles aux interruptions de transmission dans les en-vironnements urbains. Un autre type de capteur d’al-titude sont les altimetres barometriques. Ces systemespossedent comme principal inconvenient d’etre depen-dants a la variation de pression exterieure. L’erreurpeut ainsi varier de 6% a 7%. L’altimetre laser quanta lui est tres precis mais necessite certaines conditionsde reflexion de la surface a mesurer. Enfin, les radarspermettent d’estimer a la fois l’altitude et le plan dusol. Ce sont des capteurs actifs, principal inconvenientqui les rend detectables et gourmands en energie.

hal-0

0447

613,

ver

sion

1 -

15 J

an 2

010

Manuscrit auteur, publié dans "17ème congrès francophone AFRIF-AFIA RFIA, France (2010)"

L’utilisation de la vision par ordinateur a fortementaugmente cette derniere decennie pour l’estimation desparametres des drones. Certains systemes ont ainsi eteproposes pour l’estimation de l’altitude. L’estimationd’altitude par vision presente de nombreux avantages.Tout d’abord la vision peut etre utilisee pour d’autrestaches telles que l’evitement d’obstacles, la naviga-tion ou encore la localisation. Ensuite les cameras sontdes systemes passifs, peu consommateurs d’energie etpeuvent fournir un nombre important d’images par se-conde. La difficulte principale des systemes de visionreside en la selection d’une reference pour l’estimationde l’altitude. Dans [14], [28] et [29], les auteurs pro-posent de balayer le sol avec une camera perspectiveafin d’estimer l’altitude a partir d’une mire fixee surle sol. Ce type d’approche est interessante puisqu’ellenecessite l’utilisation d’une seule camera, fournit unepose complete et peut etre utilisee en temps reel. Elleest cependant limitee a un environnement specifique,muni de marques artificielles au sol. D’autres systemesbases sur le flot optique se basent egalement sur unecamera monoculaire perspective comme [1], [4], [6] et[16]. Ces systemes, inspires des abeilles, permettent dededuire l’altitude, a partir du flot optique, en connais-sant la vitesse de la camera. [4] propose d’estimer letangage pour corriger le flot optique. Cette methode,peut conduire a un systeme instable. Un autre tra-vail a ete propose, utilisant une seule camera pers-pective. Dans [7], les auteurs utilisent une techniqued’apprentissage. Une base de donnees est constitueea partir d’une methode d’analyse de differents typesde sols par champs de markov spatio-temporel. L’alti-tude est estimee a partir de l’analyse de l’image et dutemps. L’apprentissage repose ensuite sur l’associationde l’information texture du sol a une valeur d’altitude.Dans [27], un algorithme multi vues est propose dansle but de calculer une carte numerique du sol. Celui-ciest base sur une sequence d’images issues d’une seulecamera. [20] et [26] proposent d’utiliser des capteursstereoscopiques plutot qu’une camera unique. Ce pro-cede permet d’ameliorer l’appariement entre les diffe-rentes vues. Dans ce travail, les auteurs developpementune approche basee sur la mise en correspondance depoints d’interet afin d’extraire la carte d’elevation dusol.

Dans ce papier, nous proposons egalement un capteurde stereovision legerement different des systemes men-tionnes precedemment. Il est en effet constitue de deuxcameras differentes : une fisheye et une perspective.L’avantage d’un champ de vue large pour les dronesa deja ete demontre dans differents travaux tels que[19] pour la navigation ou [12] pour l’estimation del’attitude. Ainsi, l’utilisation d’un capteur mixte per-met d’obtenir un champ de vue large avec la camerafisheye tandis que la perspective fournit une meilleureprecision dans l’image.

Nous supposons le capteur calibre, le sol planaire etqu’il represente au moins la moitie de l’image perspec-tive. Dans ce cas, il existe une homographie du plandu sol entre les deux images. De plus, nous pouvonsestimer l’attitude du drone grace a l’image omnidi-rectionnelle comme dans [12] et [11], et en deduire lanormale au sol. Il reste donc a trouver l’altitude qui ve-rifie cette homographie (fig. 1, fig.4). Nous proposonsalors un algorithme de planesweeping pour resoudre ceprobleme.

Figure 1 – Systeme mixte

Notre approche amene plusieurs contributions. Toutd’abord, le systeme est capable d’estimer de facon au-tonome l’altitude, l’attitude et de segmenter le sol sansl’aide d’aucun autre capteur. Ensuite, nous proposonsune methode sans mise en correspondance permettantde traiter des images de geometries differentes (planeset spheriques), methode d’autant plus robuste que lesapproches classiques stereoscopiques sont basees sur lamise en correspondance. Enfin, l’implementation GPUpermet une estimation temps reel de l’altitude et dusol.La suite du papier s’articule comme suit. Une premierepartie traite du systeme global et de sa modelisation.Ensuite, dans une seconde partie, l’algorithme d’es-timation d’altitude et la segmentation du sol serontproposes. Enfin, nous presenterons dans une troisiemepartie les resultats experimentaux sur des sequencesreelles avec une evaluation quantitative de l’erreur etdu temps de calcul.

2 Capteur de stereovision mixte

2.1 Presentation generale du capteur

Nous proposons un systeme de stereovision mixte om-nidirectionnel/perspectif (fig. 2) capable d’estimer l’al-titude et le plan du sol en temps reel ainsi que l’atti-tude. L’avantage d’un capteur omnidirectionnel est lelarge champ de vue alors que les inconvenients sont

hal-0

0447

613,

ver

sion

1 -

15 J

an 2

010

la faible resolution et les fortes distorsions. Les avan-tages du fisheye compare aux camera catadioptriquessont les reductions de vibrations dues a l’absence detige et la suppression du trou noir au centre de l’image.D’un autre cote, les camera perspectives possedent unebonne resolution mais un champ de vue limite. Le pro-bleme principal de notre systeme reside dans la mise encorrespondance des deux vues fisheye et perspective.Plusieurs approches sont alors possibles :– Tout d’abord, connaissant les parametres intrin-

seques de la camera fisheye, il est possible de trans-former l’image pour obtenir l’equivalent perspectif.On peut ensuite appliquer une methode de miseen correspondance. Cependant, cette approche ne-cessite differents traitements tels que le matchinget l’interpolation. L’implementation temps reel estalors impossible.

– D’autres travaux recents proposent d’utiliser lasphere unitaire pour representer les images omni-directionnelles. On peut ensuite appliquer les al-gorithmes de mise en correspondance. Cependant,comme precedemment, cette solution ne peut etreimplementee en temps reel.

– Enfin, nous proposons une approche de comparaisondirecte des images sans aucune mise en correspon-dance.

Comme l’altitude est calculee en fonction du sol, nouspouvons utiliser ce plan comme reference. Ainsi, nousallons demontrer qu’il existe une homographie entrel’ image omnidirectionnelle et perspective. L’equationgenerale de l’homographie est H = R − T n′

d , ou R etT definissent la transformation rigide entre les deuxvues, n′ est la normale au sol dans la premiere imageet d est la distance entre le sol et la premiere camera.Dans notre cas, d correspond a l’altitude. En conse-quent, si nous pouvons trouver l’homographie entreles deux images, nous pouvons deduire d puisque R etT peuvent etre estimes par calibration et n′ peut etreestime par estimation de l’attitude. Ces methodes sontbasees sur la vision omnidirectionnelle [3], [10] et [11].

2.2 Modeles de camera et calibration

Bien que les objectifs fisheye ne sont pas a point de vueunique [2], nous utilisons la sphere unitaire pour mode-liser notre camera [31]. Mei et Rives [25] proposent unemethode de calibration basee sur le modele spherique.Ce modele est precis et permet de modeliser les dis-torsions radiales et tangentielles d’un objectif fisheye.Nous presentons dans la figure 3 le modele spheriquedu fisheye. La projection est divisee en deux etapes.Tout d’abord, un point du monde xm est projete surla sphere unitaire xs en passant par son centre S. En-suite, ce point xs est projete sur le plan image en unpoint xi en passant par le centre O. Le parametre ξ de-finit la distance entre O et S. Ce parametre est estimependant la phase de calibration. La calibration stereo

Figure 2 – Cameras montees sur un banc stereo

mixte est obtenue a partir des toolbox de Bouguet [5]et Mei [25].

Figure 3 – Fisheye modelise par une sphere.

2.3 Homographie entre une sphere etun plan

Dans cette partie, nous proposons de definir l’homo-graphie qui relie un plan et une sphere sur lesquels unplan 3D a ete projete (fig. 4). Dans [17], l’homographielie la projection d’un plan 3D sur deux plans. Dans letravail [24], l’homographie lie la projection d’un plan3D sur deux spheres.

H = R− T n′

d(1)

hal-0

0447

613,

ver

sion

1 -

15 J

an 2

010

Considerons :– Xp, un point du plan 3D projete sur la vue perspec-

tive.– Xs, un point du plan 3D projete sur la sphere.– X∗s est la projection de Xs sur la perspective par

homographie.Pour un systeme a deux cameras perspectives, X∗p estla projection de Xp sur la perspective par homogra-phie.Nous avons l’equation (2).

X∗p ∼ HXp (2)

Nous remplacons ces deux plans de projection par uneprojection planaire et une projection spherique. Dememe, l’equation (2) est a un facteur d’echelle pret :

X∗p||X∗p ||

∼ ρHXp (3)

Donc :X∗s ∼ ρHXp (4)

Figure 4 – Homographie sphere/plan.

L’homographie H depend de R, T , l’attitude ~n et l’al-titude d. Tout d’abord, la transformation rigide entreles cameras definie par la rotation R et la translationT est obtenue par calibration. Ensuite, la normale ~nau plan du sol est obtenue par [3], [10], [11] ou parcentrale inertielle. Enfin, nous estimerons l’altitude dpar planesweeping.

3 Estimation de l’altitude etsegmentation du sol

Nous allons estimer l’altitude d par planesweeping.Dans une premiere partie, nous presenterons une me-thode de planesweeping adaptee au cas mixte perspec-tif/omnidirectionnel pour estimer a la fois l’altitude et

segmenter le plan du sol. Dans une seconde partie,nous presenterons l’algorithme developpe.

3.1 Planesweeping

La notion de planesweeping a ete introduite par Col-lins [8]. Tout d’abord, une vue de reference est definie.Pour chaque normale et pour chaque distance a unplan 3D, nous comparons chaque image transformee(eq. 5) par homographie a l’image de reference.

I∗s (p, d) = Is(Hp) = Is((R− Tn′

d)p) (5)

La meilleure estimation de l’homographie H est obte-nue lorsque la moyenne globale de la difference entrel’image de reference et l’image transformee est mini-mum. Nous choisissons dans notre application d’utili-ser la vue perspective comme reference. En effet, il estplus facile de manipuler un voisinage sur une mode-lisation planaire que spherique pour la segmentationdu sol. Ainsi l’image obtenue par la camera fisheye estprojetee dans l’espace de la camera perspective parl’homographie H. Ces deux images peuvent ensuiteetre comparees par soustraction (fig. 5).

Figure 5 – Plane-sweeping entre deux vues mixtes.

3.2 Algorithme

Dans ce papier, le planesweeping est utilise pour unerecherche exhaustive de l’altitude. A chaque iteration,la meilleure altitude d est estimee a partir de l’en-semble dε[dmin, dmax]. Le masque G est ensuite mis ajour (algorithm 1). Dans notre algorithme, le masqueG correspond au plan du sol segmente. Les pixels ap-partenant au sol sont representes en blanc dans lesfigures 6(c) and 7(c).Afin d’obtenir une methode temps reel, nous propo-sons d’estimer l’altitude au temps t en utilisant lesdonnees issues de t − 1. Cette estimation se decom-pose en deux phases :– Initialisation : nous estimons la meilleure altitude a

partir d’un ensemble d’altitudes assez large (algo-rithm 1).

– Pendant le vol : l’altitude estimee a l’etape d’ini-tialisation est reutilisee afin d’obtenir un espace de

hal-0

0447

613,

ver

sion

1 -

15 J

an 2

010

Algorithm 1 Algorithmes d’estimation d’altitude etsegmentation du sol - initialisationEstimation(dmin, dmax, s,∆d){Initialisation}a0 = d−1 = dminb0 = d0 = dmaxG = {pεP ixels}while |dk − dk−1| > ∆d do{Estimation de la meilleure altotide}dk+1 = argmin

d∈{ bk−aks−1 t+ak;tε[0,s−1]}(∑pεG |IP (p)−

I∗S(p, dk)|){Estimation du masque d’inliers/outliers}

G = {pεP ixels,|∑

p1εWp|IP (p1)−I∗S(p1,d)|∑

p1εWpIP (p1)

<

thres}{Estimation du nouvel espace de recherche enfonction de l’echantillonnage}ak+1 = dk+1 − bk−ak

s−1

bk+1 = dk+1 + bk−aks−1

k = k + 1end whileReturn d

recherche plus petit dtε[dt−1 − rd, dt−1 + rd] (algo-rithme 2) avec rd dans l’equation (6). vv representela vitesse ascensionnelle maximum du drone et fpsle nombre d’estimations par seconde fonction du ma-teriel utilise. Cet ensemble depend de la vitesse ver-ticale du drone (environ ±5m/s) et de la puissancede calcul.

Algorithm 2 Algorithmes d’estimation d’altitude etsegmentation du sol - aspect temporel

d =Estimation(dt−1 − rd, dt−1 + rd, step,∆d)

rd =vvfps

103 (6)

Nous allons presenter dans la section qui suit les resul-tats de notre algorithme capable d’estimer l’altitude etde segmenter le sol en temps reel a partir d’un systemestereo mixte.

4 Resultats experimentaux

4.1 Camera fisheye

Les resultats qui suivent sont obtenus a partir d’unecamera Sony XCD-V50CR C-mount avec un capteur1/3” et un objectif fisheye Fuji de focale 1.8mm.L’angle de vue d’une image fisheye depend nonseulement de la lentille mais aussi du couple len-tille/camera. Sur une camera 1/3”, l’angle de vueobserve dans l’image est de 154 08’ horizontalement

et 115 27’ verticalement. Une fois l’ensemble ca-mera/objectif correctement adapte a notre applica-tion, l’etape suivante consiste a l’analyse du tempsd’execution de l’algorithme.

4.2 Estimation d’altitude et segmenta-tion du sol

Nous presentons dans cette partie les resultats obtenusavec notre algorithme. Les acquisitions ont ete reali-sees en milieu exterieur a partir d’un mat pneuma-tique. L’altitude reelle est estimee par un telemetrelaser et l’altitude estimee par notre algorithme est cal-culee a posteriori. Les resultats obtenus par ces testsmontrent une tres bonne precision de notre algorithmesur sol degage (tab. 1). Plus notre systeme prend del’altitude moins l’estimation est precise. Ce pheno-mene s’explique par la diminution de la resolution enfonction de l’altitude.Dans une scene avec obstacles, on s’apercoit que lazone d’inliers du masque G diminue lorsque les obs-tacles apparaissent sur le sol dans l’image. L’erreuraugmente donc mais reste tout de meme tolerable (tab.1).

Table 1 – Estimation de l’altitude et du sol avec etsans obstacle - Parametres de l’algorithme : pas s = 6,seuil thres = 25

Sol Alt. reelle Alt. estimee Erreur∅ 2187mm 2200mm 0.59%∅ 3244mm 3250mm 0.18%

obstacles(low contrast) 3244mm 3488mm 7.52%

∅ 4072mm 4200mm 3.14%∅ 5076mm 5202mm 2.48%

obstacles 4080mm 4440mm 8.82%

La segmentation du plan donne de bons resultats.Dans le cas d’un sol sans obstacles, le mat ou les ca-meras sont fixees est represente par des outliers (fig.6(c)). Pour une image composee d’un plan principalet de murs (fig. 7(c)), la zone detectee d’inliers estde 31%. Sur l’image reelle, la proportions d’inliers reelest de 54%. Afin d’obtenir une bonne estimation, il estnecessaire d’avoir au moins 50% d’inliers dans l’image.Ces resultats interessants possedent toutefois quelqueslimites. En effet les inconvenients des algorithmes demise en correspondance restent presents dans notremethode. Lorsque le sol ou les outliers d’une scenesont faiblement textures ou homogenes, la segmenta-tion outlier/inlier est plus difficile. Un autre aspect aanalyser est la variation de luminosite entre la cameraperspective et fisheye. Ce probleme est frequemmentrencontre en stereovision. De plus dans le cas mixte,le fisheye ne possede pas le meme champ de vue que la

hal-0

0447

613,

ver

sion

1 -

15 J

an 2

010

perspective. La luminosite moyenne resultant des deuximages est donc differente.

(a) (b)

(c) (d)

(e)

Figure 6 – Segmentation du plan et estimation d’alti-tude - 4.8% d’inliers - Vue fisheye (a), vue perspective(b), segmentation du sol (c), homographie sphere versplan (d), difference entre la reference et l’homographie(e)

(a) (b)

(c) (d)

Figure 7 – Segmentation du plan et estimation d’al-titude avec obstacles - 31% d’inliers - Vue fisheye (a),vue perspective (b), segmentation du sol (c), homo-graphie sphere vers plan (d)

4.3 CPU et GPU

Avec l’arrivee du calcul GPU (GPGPU), deux typesd’implementations d’algorithmes sont possibles. Lesalgorithmes paralleles sur GPU et ceux sequentielssur des CPU traditionnels. Recemment, en termede GPGPU, Nvidia a developpe CUDA et ATICAL/Brook+. Ces langages simples et bases sur leC presentent l’avantage d’etre rapidement implemen-tables. Un algorithme de planesweeping a ete imple-mente en GPU dans [15]. Nous avons choisi de develop-per notre algorithme sur ATI avec Brook+. Les testset resultats ont ete obtenus avec un PC dont la confi-guration est un CPU Intel E8400, 4Go de RAM et unGPU ATI 4850 512Mo. Dans notre algorithme, le cal-cul d’homographies, et des masques d’inliers/outliersont ete developpes en GPU. Cette partie necessite eneffet un nombre important de calculs en parallele d’ounotre choix de l’architecture GPU. Avec un CPU tradi-tionnel, mono-core, chaque pixel d’une image est cal-cule un par un. Avec le GPU, tous les pixels d’uneimage sont traites en parallele (avec une limite detaille d’image maximum qui depend du materiel uti-lise). Pour comparer le CPU au GPU, nous avons testele calcul de 100 homographies. D’apres nos resultats, leGPU est 45x plus rapide qu’un CPU pour cette tache.Nos temps de calcul ne comprennent pas les tempsde transfert entre la memoire centrale et la memoiregraphique.En developpant ces algorithmes par GPU, nous obte-nons des resultats interessants. En effet, l’estimationd’altitude et du sol sont realises simultanement et entemps reel (tab. 2). Notre algorithme est ainsi imple-mentable sur un drone. Enfin, concernant uniquementl’estimation de l’altitude, le temps de calcul est lege-rement meilleur comme le montre (tab. 3).

Table 2 – Estimation de l’altitude avec segmentationdu sol - images par seconde ∼ 21Hz

Sol Altitude reelle Altitude estimee erreurObstacle 4080mm 3850mm 5.64%∅ 2187mm 2220mm 1.51%∅ 3244mm 3280mm 1.11%

Table 3 – Altitude estimation only - framrate∼ 32Hz

Sol Altitude reelle Altitude estimee erreurObstacle 4080mm 3809mm 6.64%∅ 2187mm 2217mm 1.37%∅ 3244mm 3215mm 0.89%

hal-0

0447

613,

ver

sion

1 -

15 J

an 2

010

5 Conclusions et perspectivesNous avons presente dans ce papier un systeme ste-reoscopique mixte. Les deux vues sont reliees par unehomographie qui permet d’estimer a la fois l’altitude etde segmenter le sol en utilisant du planesweeping. Encomparaison aux algorithmes de mise en correspon-dance, la planesweeping est une approche differente,basee sur la comparaison globale d’images. Cet algo-rithme teste un ensemble d’altitudes. L’altitude la plusprobable est celle correspondant a l’erreur globale estminimum. Nous avons implemente cet algorithme enGPU, aspect principal pour le traitement temps reel.Des resultats preliminaires ont ete obtenus. Nousobservons que l’altitude et la segmentation du solsont correctement estimes. Pour illustrer ces re-sultats, une video est disponible sur http ://da-mien.eyn.free.fr/RFIA10/Planesweeping.avi. Comptetenu des resultats, nous orienterons nos perspectivesvers une implementation de l’algorithme sur un drone.D’autres travaux futur viseront a ameliorer l’efficacitede notre algorithme sur les surfaces faiblement textu-rees.

6 RemerciementsCe travail est soutenu par le projet ALTO de la regionPicardie.

References[1] G. Barrows, C. Neely, K. Miller, ”Optic flow sen-

sors for MAV navigation,” In Fixed and FlappingWing Aerodynamics for Micro Air Vehicle Appli-cations, ser. Progress in Astronautics and Aero-nautics, T. J. Mueller, Ed. AIAA, 2001, vol. 195,pp. 557-574.

[2] S. Baker, S. K. Nayar, ”A Theory of Single-Viewpoint Catadioptric Image Formation,” Inter-national Journal of Computer Vision,1999.

[3] J-C Bazin, I. Kweon, C.Demonceaux, P. Vasseur,”UAV Attitude Estimation by Vanishing Pointsin Catadioptric Images”, In Proceedings of IEEEInternational Conference on Robotics and Auto-mation, 2008.

[4] A. Beyeler, C. Mattiussi, J.C. Zufferey, D. Flo-reano, ”Vision-based Altitude and Pitch Estima-tion for Ultra-light Indoor Microflyers,” In Pro-ceedings of IEEE International Conference on Ro-botics and Automation, 2006.

[5] J.-Y. Bouguet, www.vision.caltech.edu/bouguetj/[6] J. Chahl, M. Srinivasan, H. Zhang, ”Landing stra-

tegies in honeybees and applications to uninhabi-ted airborne vehicles,” In The International Jour-nal of Robotics Research, vol. 23, no. 2, pp. 101-110, 2004.

[7] A. Cherian, J. Andersh, V. Morellas, N. Papa-nikolopoulos, B. Mettler, ”Autonomous Altitude

Estimation Of A UAV Using A Single OnboardCamera,” In Proceedings of IEEE InternationalConference on Intelligent and Robotic Systems,2009.

[8] R. T. Collins, ”A space-sweep approach to truemulti-image matching,” In Proceedings of IEEEComputer Vision and Pattern Recognition, 1996.

[9] J. Courbon, Y. Mezouar, L. Eck, P. Martinet, ”AGeneric Fisheye camera model,” In Proceedingsof IEEE International Conference on Intelligentand Robotic Systems, 2007.

[10] C. Demonceaux, P. Vasseur, C. Pegard, ”RobustAttitude Estimation with Catadioptric Vision,”In IEEE/RSJ International Conference on Intel-ligent Robots and Systems, 2006.

[11] C. Demonceaux, P. Vasseur, C. Pegard, ”Om-nidirectional vision on UAV for attitude com-putation,” In Proceedings of IEEE InternationalConference on Robotics and Automation, 2006.

[12] C. Demonceaux, P. Vasseur, C. Pegard, ”UAV At-titude Computation by Omnidirectional Vision inUrban Environment,” In Proceedings of IEEE In-ternational Conference on Robotics and Automa-tion, 2007.

[13] D. Gallup, J-M. Frahm, P. Mordohai, Y.Qingxiong, M. Pollefeys, ”Real-Time Plane-Sweeping Stereo with Multiple Sweeping Direc-tions,” In Proceedings of IEEE Computer Visionand Pattern Recognition, 2007.

[14] P. Garcia-Padro, G. Sukhatme, J. Montgomery,”Towards visionbased safe landing for an autono-mous helicopter,” In Robotics and AutonomousSystems, 2000.

[15] I. Geys, T. P. Koninckx, L. V. Gool, ”Fast In-terpolated Cameras by combining a GPU basedPlane Sweep with a Max-Flow Regularisation Al-gorithm,” In Proceedings of IEEE 3D Processing,Visualization and Transmission, 2004.

[16] W. Green, P. Oh, K. Sevcik, G. Barrows, ”Auto-nomous landing for indoor flying robots using op-tic flow,” in ASME International Mechanical En-gineering Congress and Exposition, vol. 2, 2003,pp. 1347-1352.

[17] R. Hartley, A. Zisserman, ”Multiple View Geome-try in computer vision,” Cambridge 2cnd edition,2003.

[18] J. Hoffmann, M. Jungel, M. Lotzsch, ”VisionBased System for Goal-Directed Obstacle Avoi-dance,” In 8th International Workshop on Robo-Cup, 2004.

[19] S. Hrabar, G. Sukhatme, ”Omnidirectional visionfor an autonomous helicopter,” In Proceedings ofIEEE International Conference on Robotics andAutomation, 2004.

hal-0

0447

613,

ver

sion

1 -

15 J

an 2

010

[20] I.K. Jung, S. Lacroix, ”High resolution terrainmapping using low altitude aerial stereo imagery,”In Proceedings of IEEE International Conferenceon Computer Vision, 2003.

[21] Y. Kim, H. Kim, ”Layered ground floor detectionfor vision-based mobile robot navigation,” In Pro-ceedings IEEE International Conference on Robo-tics and Automation, 2004.

[22] B. Liang, N. Pears ”Visual Navigation using Pla-nar Homographies,” In Proceedings of IEEE In-ternational Conference on Robotics and Automa-tion, 2002.

[23] Y. Ma, S. Soatto, J. Kosecka, S. Shankar Sastry,”An invitation to 3D Vision,” Springer, 2003.

[24] C. Mei, S. Benhimane, E. Malis, P. Rives,”Homography-based Tracking for Central Cata-dioptric Cameras,” In Proceedings of IEEE Intel-ligent Robots and Systems, 2006.

[25] C. Mei, P. Rives, ”Single View Point Omnidirec-tional Camera Calibration from Planar Grids,” InProceedings of IEEE International Conference onRobotics and Automation, 2007

[26] M. Meingast, C. Geyer, S. Sastry, ”Vision BasedTerrain Recovery for Landing Unmanned AerialVehicles,” In Proceedings of IEEE InternationalConference on Decision and Control, 2004.

[27] M. Sanfourche, G. Besnerais, S. Foliguet, ”Heightestimation using ariel side looking image se-quences,” In ISPRS, Vol.XXXIV, Part3/W8, Mu-nich, 2003.

[28] S. Saripalli, J. Montgomery, G. Sukhatme, ”Vi-sion based autonomous landing of an unmannedaerial vehicle,” In Proceedings of IEEE Interna-tional Conference on Robotics and Automation,2002.

[29] C. Sharp, O. Shakernia, S. Sastry, ”A vision sys-tem for landing an unmanned aerial vehicle,” InProceedings of IEEE International Conference onRobotics and Automation, 2001.

[30] P. Sturm, ”Mixing Catadioptric and PerspectiveCameras,” In Proceedings of IEEE Omnidirectio-nal Vision,2002

[31] X. Ying, Z. Hu, ”Can We Consider Central Cata-dioptric Cameras and Fisheye Cameras within aUnified Imaging Model,” In European Conferenceon Computer Vision, 2004.

[32] J. Zhou, B. Li, ”Robust Ground Plane Detec-tion with Normalized Sequences from a RobotPlatform,” In Proceedings of IEEE InternationalConference on Image Processing, 2006

hal-0

0447

613,

ver

sion

1 -

15 J

an 2

010