10
Matrices et transformations Notes rédigées par Laurent ZIMMERMANN Les transformations dans le plan sont exploitées pour illustrer et interpréter les propriétés du calcul matriciel. Dans cette perspective nous discutons les notions de matrice inverse, de racine carrée d’une matrice, de produit matriciel ainsi que de déterminant. https://clipedia.be/videos/matrices-et-transformations Introduction Ainsi que nous allons le voir, certaines transformations géométriques simples d’images (sy- métrie, agrandissement, rétrécissement, rotation, cisaillement, perspective, etc. qui font partie des applications linéaires bijectives) ainsi que leurs combinaisons peuvent être réalisées ma- thématiquement par des opérations de calcul matriciel. De telles transformations consistent uniquement en des changements des positions des pixels des images. Ainsi, des images peuvent servir à visualiser l’effet de transformation d’une matrice et à se faire une idée de ses propriétés. L’illustration ci-contre montre une image originale et l’image transformée sous l’effet de la matrice spécifiée. Les images peuvent aussi servir à visualiser l’effet de l’inverse d’une matrice ou du produit de matrices. Une transformation simple : la symétrie axiale Répétons que toutes les transformations que nous envisagerons consisteront en des transfor- mations géométriques. Celles-ci consistent à déplacer (à envoyer) les pixels depuis leurs co- ordonnées ( x, y) dans l’image originale vers de nouvelles coordonnées ( x 0 , y 0 ) dans l’image transformée. Ainsi la transformation sera entièrement connue si nous connaissons le lien entre les coordonnées ( x, y) et les coordonnées ( x 0 , y 0 ). Commençons par nous intéresser à une transformation simple A qui envoie un pixel de coordonnées ( x, y) dans l’image originale vers les coordonnées (-x, y) dans l’image transformée. Nous pouvons écrire cette transformation à la fois sous

Matrices et transformations - Clipedia...Nous constatons que les deux matrices des transformations combinées ne sont pas les mêmes : AB 6= BA ce qui est cohérent avec le fait que

  • Upload
    others

  • View
    40

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Matrices et transformations - Clipedia...Nous constatons que les deux matrices des transformations combinées ne sont pas les mêmes : AB 6= BA ce qui est cohérent avec le fait que

Matrices et transformationsNotes rédigées par Laurent ZIMMERMANN

Résumé Les transformations dans le plan sont exploitées pour illustrer et interpréter lespropriétés du calcul matriciel. Dans cette perspective nous discutons les notions de matriceinverse, de racine carrée d’une matrice, de produit matriciel ainsi que de déterminant.

Vidéo https://clipedia.be/videos/matrices-et-transformations

Introduction

Ainsi que nous allons le voir, certaines transformations géométriques simples d’images (sy-métrie, agrandissement, rétrécissement, rotation, cisaillement, perspective, etc. qui font partiedes applications linéaires bijectives) ainsi que leurs combinaisons peuvent être réalisées ma-thématiquement par des opérations de calcul matriciel. De telles transformations consistentuniquement en des changements des positions des pixels des images.

Ainsi, des images peuvent servir à visualiser l’effetde transformation d’une matrice et à se faire une idéede ses propriétés. L’illustration ci-contre montre uneimage originale et l’image transformée sous l’effet dela matrice spécifiée. Les images peuvent aussi servirà visualiser l’effet de l’inverse d’une matrice ou duproduit de matrices.

Une transformation simple : la symétrie axiale

Répétons que toutes les transformations que nous envisagerons consisteront en des transfor-mations géométriques. Celles-ci consistent à déplacer (à envoyer) les pixels depuis leurs co-ordonnées (x, y) dans l’image originale vers de nouvelles coordonnées (x′, y′) dans l’imagetransformée. Ainsi la transformation sera entièrement connue si nous connaissons le lien entreles coordonnées (x, y) et les coordonnées (x′, y′).

Commençons par nous intéresser à unetransformation simple A qui envoie unpixel de coordonnées (x, y) dans l’imageoriginale vers les coordonnées (−x, y)dans l’image transformée. Nous pouvonsécrire cette transformation à la fois sous

Page 2: Matrices et transformations - Clipedia...Nous constatons que les deux matrices des transformations combinées ne sont pas les mêmes : AB 6= BA ce qui est cohérent avec le fait que

2

forme de deux équations ordinaires et aussi sous forme matricielle :{x′ = −xy′ = y ou bien

(x′

y′

)=

(−1 0

0 1

)(xy

)Par cette transformation, les pixels qui se trouvent d’un côté de l’axe y sont échangés avec ceuxqui se trouvent symétriquement de l’autre côté. Il s’agit d’une symétrie axiale d’axe y.

La règle de cette transformation A est entièrement spécifiée par la matrice de transformation

A =

(−1 0

0 1

)

Attention ! Nous présentons différentes matrices 2 × 2 comme des ma-trices qui « transforment » une image. Mais ne nous méprenons pas : ellesne s’appliquent pas à des matrices images qui sont des tableaux de grandesdimensions (par exemple 1920× 1080 pour une image « full HD »), conte-nant les valeurs d’intensité des pixels. En réalité elles s’appliquent aux coor-données (x, y) des pixels. Il n’est dès lors question d’image transformée quedans le sens où elle est construite en déplaçant les pixels d’une image origi-

nale selon une règle déterminée par une matrice. Nous ne rencontrerons par conséquent quedes multiplications entre matrices 2× 2 et matrices 2× 1.

Grâce au formalisme matriciel, la transformation peut s’écrire de manière très concise

X’ = AX

et, au prix d’un abus de langage, nous dirons que la nouvelle image X’ est la transformationpar la matrice A de l’image originale X. Un abus de langage, car en réalité les vecteurs colonnesX et X’ ne sont pas des images, mais les vecteurs positions (les coordonnées) d’un pixel danschacune des images, mais un abus de langage pas totalement dénué de sens étant donné quela règle de transformation est la même pour tous les pixels.

De fait, n’importe quelle matrice carrée 2 × 2 peut être considérée comme une transforma-tion d’image (ou encore comme une transformation du plan). Plus généralement, une matricecarrée 3× 3 peut être considérée comme une transformation d’objet à trois dimensions (trans-formation de volume).

Inverse d’une matrice de transformation

Nous nous attendons à ce que l’inverse d’une matrice de transformation soit la matrice de latransformation inverse. Est-ce le cas? Pour répondre à la question, multiplions par A−1 lesdeux membres de la formule précédente X’ = AX :

A−1X’ = A−1A︸ ︷︷ ︸I

X = X

Ainsi, A−1 appliquée à l’image transformée X’ redonne bien l’image de départ X.

Nous pouvons obtenir la matrice de la transformation inverse en résolvant les équations ordi-naires de la première transformation :{

x′ = −xy′ = y ⇔

{x = −x′

y = y′

Page 3: Matrices et transformations - Clipedia...Nous constatons que les deux matrices des transformations combinées ne sont pas les mêmes : AB 6= BA ce qui est cohérent avec le fait que

3

d’où nous déduisons que

A−1 =

(−1 0

0 1

)Nous retrouvons la même matrice : l’inverse de la transformation A est la transformation Aelle-même. Ceci est une particularité due à la simplicité de la symétrie axiale qui a été envisagéecomme transformation.

Calculons néanmoins l’inverse de la matrice A en utilisant la théorie du calcul matriciel quenous connaissons, afin de vérifier que tout ceci est cohérent. Nous nous souvenons en effet dela manière de calculer l’inverse d’une matrice 2× 2 :

A =

(a bc d

)→ A−1 =

1det(A)

(d −b−c a

)avec det(A) = ad− bc

Pour la matrice de notre symétrie axiale, nous avons donc :

A =

(−1 0

0 1

)→ det(A) = −1 → A−1 = −

(1 00 −1

)=

(−1 0

0 1

)= A

Nous avons donc bien vérifié que l’inverse de la matrice A est la matrice A elle-même.

Matrice égale à son inverse

Si un nombre x est égal à son inverse, c’est-à-dire si

x =1x= x−1 ⇔ x2 = 1

alors il n’existe que deux solutions possibles pour ce nombre :{x = −1x = +1

Si une matrice A est égale à son inverse, c’est-à-dire si

A = A−1 ⇔ A2 = I

alors deux solutions possibles nous viennent immédiatement à l’esprit pour cette matrice :{A = −IA = +I

Mais il ne s’agit pas là des seules possibilités : nous venons de découvrir (section précédente)que la matrice de la symétrie axiale étudiée est aussi égale à son inverse ; elle est donc aussiune solution de A2 = I. Vérifions-le :

A2 = A A =

(−1 0

0 1

)(−1 0

0 1

)=

(1 00 1

)= I

Il en est de même pour son opposé, et pour bien d’autres matrices encore.

Page 4: Matrices et transformations - Clipedia...Nous constatons que les deux matrices des transformations combinées ne sont pas les mêmes : AB 6= BA ce qui est cohérent avec le fait que

4

Exemple Calculons le produit d’une autre matrice encore avec elle-même :(−1 α0 1

)(−1 α0 1

)=

(1 00 1

)

Rechercher les matrices qui, multipliées par elles-mêmes, donnent la matrice identité est doncun problème moins simple que qu’on pourrait le penser de prime abord. Il existe en réalité uneinfinité de matrices qui possèdent cette propriété.

Multiplication de matrices de transformations

Deux fois la même transformation

Nous venons de rencontrer la multiplication d’une matrice par elle-même, en d’autres termesune matrice élevée au carré. Intéressons-nous à ce que pourrait être l’interprétation de la mul-tiplication de matrices dans le contexte des transformations.

Nous devinons intuitivement que la matrice A2 doit être la matrice d’une seule transformationéquivalente à la transformation A appliquée deux fois de suite et c’est bien le cas. En effet, sinous appliquons la transformation A à une image X, nous obtenons une deuxième image X’

X’ = A X

et si nous appliquons la même transformation A au résultat X’, nous obtenons une troisièmeimage X"

X" = A X’

En combinant ces deux équations pour éliminer X’, nous obtenons

X" = A X’ = A

X’︷︸︸︷A X = A2 X

Ainsi, A2 est bien la matrice de la transformation équivalente à l’application de la transforma-tion A deux fois de suite.

Dans le cas de la symétrie axiale d’axe y, A2 est la matrice identité I, ce qui est bien cohérentavec le fait que nous retrouvons l’image originale après deux applications successives de cettetransformation.

Deux transformations différentes

Abordons maintenant une situation où nous enchaînons non plus deux fois la même transfor-mation, mais deux transformations différentes, la transformation A comme auparavant et unenouvelle transformation B :

A :{

x′ = −xy′ = y A =

(−1 00 1

)B :{

x′′ = x′

y′′ = x′ + y′ B =

(1 01 1

)Notons que nous avons volontairement choisi pour B une application linéaire (ses expressionsmathématiques ne font apparaître que les puissances 1 des coordonnées : pas de carré, ni decube, ni aucune autre puissance).

Page 5: Matrices et transformations - Clipedia...Nous constatons que les deux matrices des transformations combinées ne sont pas les mêmes : AB 6= BA ce qui est cohérent avec le fait que

5

Enchaînons ces deux transformations dans l’ordre, d’abord A et ensuite B. Nous connaissonsdéjà le résultat de la première transformation.

Pour la deuxième, nous voyons que les abs-cisses des pixels restent inchangées (x′′ = x′).En revanche leurs ordonnées sont augmentéesde quantités égales à leurs abscisses (y′′ =x′+ y′). Chaque pixel subit donc un glissementen ordonnée, de longueur égale à son abscisse,dans le sens de l’axe y pour les pixels qui ontx > 0 et dans le sens contraire pour les pixelsqui ont x < 0. Seul le pixel (0, 0) reste en place.Les pixels à droite de l’axe y montent tandis que ceux à gauche descendent, et ce d’autant plusqu’ils sont loin de l’axe y.

Les effets des deux transformations successives sont illustrés ci-dessous.

Remarque. Notez qu’après la transformation B, l’image (initialement de forme carrée) de-vrait avoir la forme d’un parallélogramme. Ce n’est pas le cas sur la figure ci-dessus parce que,par souci de gain de place, l’image finale a été limitée par le même carré que celui de départ.

Matrice de la transformation globale

Plus haut, nous avons écrit les matrices des transformations A et B. Utilisons-les pour écrire lamanière dont les coordonnées des pixels sont transformées :

(x′

y′

)=

A︷ ︸︸ ︷(−1 00 1

)(xy

)et

(x′′

y′′

)=

B︷ ︸︸ ︷(1 01 1

)(x′

y′

)En combinant ces deux équations nous obtenons :

(x′′

y′′

)=

B︷ ︸︸ ︷(1 01 1

) A︷ ︸︸ ︷(−1 00 1

)(xy

)⇒

(x′′

y′′

)=

BA︷ ︸︸ ︷(−1 0−1 1

)(xy

)La dernière matrice est celle de la transformation combinée de A suivie de B et elle se calculepar la multiplication matricielle BA, dans cet ordre, et pas le contraire (B multiplie le résultatde la multiplication de A par X). Cet ordre doit être respecté car la multiplication matriciellen’est pas commutative.

Page 6: Matrices et transformations - Clipedia...Nous constatons que les deux matrices des transformations combinées ne sont pas les mêmes : AB 6= BA ce qui est cohérent avec le fait que

6

Permutation des deux transformations

Les transformations d’images elles-mêmes ne sont pas commutatives non plus. En effet, sinous effectuons d’abord la transformation B (glissement de la partie droite vers le haut et de lapartie gauche vers le bas, proportionnellement à la distance à l’axe y) et puis la transformationA (symétrie axiale d’axe y), l’image finale est différente, ainsi que le montre l’illustration ci-dessous.

Le nouvel enchaînement des deux transformations s’écrit à présent sous la forme matriciellesuivante :

(x′′

y′′

)=

A︷ ︸︸ ︷(−1 00 1

) B︷ ︸︸ ︷(1 01 1

)(xy

)⇒

(x′′

y′′

)=

AB︷ ︸︸ ︷(−1 01 1

)(xy

)

La dernière matrice est celle de la transformation combinée de B suivie de A et elle ce calculepar la multiplication matricielle AB, dans cet ordre, qui est précisément le contraire de ce quia été fait précédemment.

Nous constatons que les deux matrices des transformations combinées ne sont pas les mêmes :

AB 6= BA

ce qui est cohérent avec le fait que les images qui en résultent ne sont pas les mêmes non plus.

Transformations qui commutent

Examinons le résultat de A, une symétrie axiale d’axe y (c.-à-d. un retournement gauche-droite), suivie de B, une symétrie axiale d’axe x (c.-à-d. un retournement haut-bas).

Page 7: Matrices et transformations - Clipedia...Nous constatons que les deux matrices des transformations combinées ne sont pas les mêmes : AB 6= BA ce qui est cohérent avec le fait que

7

Les matrices correspondant à ces transformations sont

A :{

x′ = −xy′ = y A =

(−1 00 1

)B :{

x′′ = x′

y′′ = −y′ B =

(1 00 −1

)Comparons-le au résultat de ces mêmes transformations, mais effectuées dans l’ordre contraire :

Les deux images finales sont les mêmes. Le lecteur pourra vérifier que la multiplication de cesdeux matrices particulières est effectivement commutative :

AB = BA

Conclusion

Sur la base de ces quelques exemples, nous conclurons que si les matrices de deux transfor-mations commutent alors l’enchaînement de ces deux transformations donne le même résultatquel que soit l’ordre dans lequel elles sont appliquées. En revanche, si elles ne commutent pas,le résultat dépend de l’ordre dans lequel elles sont appliquées.

Matrice de transformation non inversible

Examinons maintenant une nouvelle transformation et sa matrice correspondante{x′ = αxy′ = y A =

(α 00 1

)Les abscisses x des pixels sont multipliées par une constante α et les ordonnées y ne changentpas. L’image est dilatée ou contractée horizontalement selon que α > 1 ou α < 1. Les imagesci-dessous illustrent les effets de la transformation pour α = 1 (transformation identité), α = 2(dilatation horizontale) et α = 1

2 (contraction horizontale).

Page 8: Matrices et transformations - Clipedia...Nous constatons que les deux matrices des transformations combinées ne sont pas les mêmes : AB 6= BA ce qui est cohérent avec le fait que

8

Vu que det(A) = α, la matrice de la transformation réciproque est

A−1 =1α

(1 00 α

)=

( 1α 00 1

)

Plus α est petit (1/2, 1/10, 1/100 etc.), plus l’image transformée par A est étroite. Et plus 1α est

grand dans la matrice de la transformation inverse A−1 qui permet de retrouver l’image dedépart. L’image ci-dessous illustre la situation lorsque α = 1

10 .

Il est intéressant de s’intéresser au cas limite lorsque α devient égal à 0. À ce moment, surchaque ligne horizontale de l’image, tous les pixels sont envoyés sur le même point de l’axey et se confondent les uns avec les autres. En outre, le déterminant devient nul et il n’est pluspossible de calculer la matrice A−1 car 1

α devient infini !

Nous pouvons comprendre cette impossibilité si nous réalisons qu’effectuer la transformationinverse nécessiterait de calculer 0/0 (ou 0×∞), qui est une forme indéterminée. Cela est bienlogique puisque, tous les pixels d’une ligne de l’image originale étant devenus indistincts enx = 0 dans l’image transformée, il est impossible à l’aide de ce seul pixel de reconstituer toutela ligne correspondante de l’image originale avec toute la variété des niveaux d’intensité deses pixels.

Matrice de rotation

Pour terminer, intéressons-nous à une dernière transformation, la rotation d’image d’un angleθ, et proposons-nous de déterminer les éléments de sa matrice

A =

(a bc d

)

Page 9: Matrices et transformations - Clipedia...Nous constatons que les deux matrices des transformations combinées ne sont pas les mêmes : AB 6= BA ce qui est cohérent avec le fait que

9

Dans ce but, demandons-nous comment se transforment les points de coordonnées (1, 0) et(0, 1), qui sont aussi les coordonnées des vecteurs de base unitaires~1x et~1y dans les directionsx et y. Nous pouvons les noter sous forme de vecteurs colonnes :

~1x =

(10

)~1y =

(01

)Nous pouvons calculer les vecteurs transformés au moyen de la matrice de transformation :

~1′x =

(a bc d

)(10

)=

(ac

)~1′y =

(a bc d

)(01

)=

(bd

)Nous voyons que les coordonnées transformées du 1er et du 2e vecteur de base donnent leséléments respectivement de la 1re et de la 2e colonne de la matrice de transformation. Notonsque ce résultat se généralise à trois dimensions avec trois vecteurs de base et une matrice 3× 3.

Nous pouvons aussi calculer les vecteurs transformés par la géométrie. Examinons les figuressuivantes, qui illustrent le vecteur~1x et sa transformation, puis le vecteur~1′x et sa transforma-tion :

Les seules propriétés géométriques du cosinus et du sinus nous montrent que

~1′x =

(cos θsin θ

)~1′y =

(− sin θcos θ

)En identifiant ces deux séries de résultats, nous pouvons finalement construire la matrice detransformation A, et constater par la même occasion que ses éléments ne dépendent que del’angle θ :

A =

(cos θ − sin θsin θ cos θ

)

L'essentiel• Toute matrice carrée A peut être interprétée comme la matrice d’une transformation,

ses colonnes successives représentant des vecteurs qui sont les transformées de cha-cun des vecteurs de base.

• L’inverse A−1 de cette matrice correspond à la transformation réciproque.

• Le produit de deux matrices correspond à une transformation qui résulte de l’en-chaînement des deux transformations correspondantes. La matrice de la deuxièmetransformation multiplie à gauche celle de la première :

B après A ←→ BA ←→ A puis B

cet ordre devant être respecté car la multiplication matricielle n’est pas commutative.

• Une transformation dont la matrice possède un déterminant est nul fait perdre del’information et est une transformation irréversible.

Page 10: Matrices et transformations - Clipedia...Nous constatons que les deux matrices des transformations combinées ne sont pas les mêmes : AB 6= BA ce qui est cohérent avec le fait que

10

• La matrice de rotation d’un angle θ est(cos θ − sin θsin θ cos θ

)

• La matrice d’une transformation peut être construite en remplissant chacune de sescolonnes avec les coordonnées de chacun des vecteurs de base modifiés par cettetransformation.

~1′x↓

~1′y↓(

a bc d

)• Ceci se généralise à trois dimensions avec une matrice 3× 3.