• Aucun résultat trouvé

2 Recalage rigide de nuages de points

N/A
N/A
Protected

Academic year: 2022

Partager "2 Recalage rigide de nuages de points"

Copied!
3
0
0

Texte intégral

(1)

Calcul scientique et Informatique 10 octobre 2012 TP 3: Applications de la décomposition en valeurs singulières

Références: [1] pour une introduction très claire à la décomposition en valeurs sin- gulières.

La décomposition en valeur singulières d'un endomorphismef :Rn→Rm est la donnée : (i) d'une base orthogonalev1, . . . , vn de l'espace de départ Rn;

(ii) d'une base orthogonaleu1, . . . , um de l'espace d'arrivée Rm; et (iii) der≤min(n, m) réels positifs σ1 ≥. . .≥σr

tels que la relation suivante soit vériée :

f(vi) =

iui si i≤r 0 sii > r

Matriciellement, la décomposition en valeur singulières d'une matrice A dem colonnes et m lignes s'écrit sous la forme A=UΣtV, où U etV sont deux matrices orthogonales de taille m×m et n×n respectivement, et où Σ est une matrice diagonale de taille n×m ayant pour éléments diagonaux σ1, . . . , σr.

Pratiquement : Toute matrice admet une décomposition en valeurs singulières (ce qui est un résultat remarquable !). Cette décomposition est loin d'être unique ; seuls les valeurs singulières σ1 ≥. . .≥σr le sont.

Dans Scilab, elle s'obtient via la commande : [U SV] =svd(A).

1 Pseudo-inverse et moindres carrés

Exercice 1. On s'intéresse à la résolution d'un système linéaireAx=bpar une technique de moindres carrés, c'est-à-dire par minimisation de la fonction

φ :x7→ kAx−bk2, où k.kdénote la norme Euclidienne usuelle.

1. Montrer l'équation d'optimalité pour un vecteur x : tAAx = tAb. En déduire une fonction moindrecarres1 prenant en argumentA et b et retournantx (on utilisera la fonction inv pour l'inversion de matrices).

2. Montrer que si A=UΣtV, alors minimiser φ revient à : (i) Trouver y tel que

Σy−tU b

soit minimale ; (ii) Calculerx=V y.

En déduire une fonction moindrecarres2 utilisant la décomposition en valeurs sin- gulières deA.

3. Application numérique. On considère la matriceAet le vecteurbdénis de la manière suivante

1

(2)

c1 = [ 1 2 4 8 ] ' ; c2 = [ 3 6 9 1 2 ] ' ;

c3 = c1 − 4∗c2 + ( 1 . d−7) ∗ (rand (4 , 1) − . 5 ) ; A = [ c1 c2 c3 ] ;

b = 2∗c1 − 7 ∗ c2 + ( 1 . d−4) ∗ (rand (4 , 1) − . 5 ) ;

Appliquer les fonctions moindrecarres1 et moindrecarres2 pour calculer la solu- tion deAx =b. Calculer la norme du résidus (c'est-à-dire kAx−bk) dans les deux cas.

4. Question subsidiaire. La pseudo-inverse d'une matriceAde taillen×mest l'unique matriceA+ de taille m×n vériant les quatre conditions suivantes :

AA+A=A A+AA+=A+

(AA+) =AA+ (A+A) =A+A

Montrer que si A = UΣtV est la décomposition en valeurs singulières de A, alors VΣ−1 tU est une pseudo-inverse deA, où Σ−1 est obtenant en inversant les éléments diagonaux non nuls deΣ.

2 Recalage rigide de nuages de points

On se donne deux ensembles ordonnés de points A = x1, . . . , xN et B = y1, . . . , yN de l'espace Euclidien Rd. On supposera que l'isobarycentre de ces deux ensembles est à l'origine, c'est-à-dire N1 PN

i=1xi = N1 PN

i=1yi = 0. Recaler AsurB, c'est trouver la matrice orthogonaleR qui aligne le mieuxRX àY au sens des moindres carrés, ou autrement dit résoudre le problème d'optimisation suivant1

min

R∈O(Rd) N

X

i=1

kRxi−yik2 (1) où le minimum est pris sur l'ensemble des matrices orthogonales de dimension d.

Exercice 2. Dans cet exercice, on calcule la solution du problème de recalage en utilisant la décomposition en valeurs singulières.

1. Expliquer pourquoi ce problème admet au moins une solution. En notant X (resp.

Y) la matrice de taille d × N ayant pour colonnes les vecteurs (xi) (resp. (yi)), montrer que le problème (1) est équivalent au problème de maximisation

max

R∈O(Rd)

Tr(RXtY). (2)

1. Ce problème apparaît naturellement dans de nombreux domaines scientiques (imagerie médicale, recalage de données mesurées en géologie, etc.) où l'on a aaire à plusieurs mesures du même objet physique acquises sans connaître l'orientation de l'appareil de mesure.

2

(3)

2. NotonsC=UΣtV la décomposition en valeurs singulières de la matriceC:=XtY. Montrer que R est solution de (2) si et seulement si la matrice orthogonale M =

tV RU réalise le maximum de

max

M∈O(Rd)

Tr(MΣ).

3. En utilisant l'orthogonalité de la matriceM, montrer queM maximise (2) ssimii= 1 pour toutidans{1, . . . , d}ssiM = Id. En conclure que la solution de (1) est unique et donnée par : R =tU V, où les matrices U et V sont celles dénies à la question précédente.

4. Écrire une fonction recalage_orthogonal qui prend en entrée les matrices X et Y et retourne la matriceR qui résoud le problème (1).

5. Application : On considère les ensembles de points échantillonnés aléatoirement sur le graphe de la fonctionf :R2 →R dénie parf(x, y) = cos(3x) +y2 de la manière suivante :

N = 1000;

x = rand (1 , N) ; y = rand (1 , N) ; z = cos (5 ∗ x ) + y . ^ 2 ; X = [ x ; y ; z ] ;

size (X)

// c r e a t i o n de Y par r o t a t i o n a l e a t o i r e M = rand ( 3 , 3 ) ;

[U, S , V] = svd(M) S = V ∗ U' ;

Y = 0.01 ∗ rand (3 , N) ; for i =1:N

Y( : , i ) = Y( : , i ) + R ∗ X( : , i ) ; end

Calculer la matrice de recalage orthogonal entreX etY. Visualiser en les ensembles de points RX et Y, en utilisant la fonction suivante :

function p l o t p o i n t s 3 d (Y)

param3d(Y( 1 , : ) , Y( 2 , : ) , Y( 3 , : ) ) ; e = gce ( ) ;

e . line_mode=" o f f " ; e . mark_mode="on" ; a = gca ( ) ;

a . isoview = "on" ; endfunction

Références

[1] D. Kalman. A Singularly Valuable Decomposition : The SVD of a Matrix. College Math Journal, 27(1), 1996.

3

Références

Documents relatifs

Pour savoir si le triangle ABC est rectangle, nous allons utiliser la réciproque de la propriété de Pythagore. Le triangle ABC n'est

de la délinquance juvénile à l’épreuve du genre Cas des institutions de rééducation à Oran et à Mostaganem. Présentée et soutenue publiquement

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des

Un autre critère délicat et plus important observé dans ce cas d’interaction de chocs en tuyères, c’est le contrôle aérodynamique de la poussée d'un jet d'une

Il existe plusieurs techniques biométriques pour la reconnaissance de personnes, parmi lesquelles on peut citer celles qui utilisent les empreintes digitales, le visage, l’iris,

Optical properties of ZnO/silica nanocomposites prepared by sol-gel method and deposited by dip-coating technique..

Establishing a model spinal cord injury in the African Green Monkey for the preclinical evaluation of biodegradable polymer scaffolds seeded with human neural stem cells. Annu

didum 154 mutant clones are detected by the absence of protamine B-GFP expression. Arrows, WT bundle of nuclei; arrowheads, mutant clones. Upon myosin V loss of function, no actin