• Aucun résultat trouvé

Décomposition en harmoniques sphériques

L’approche classique et l’approche structurée reposent sur la décomposition en harmoniques sphériques. Les prochaines sections vont présenter les mathématiques nécessaires à la réalisa- tion de ces décompositions.

3.4.1 Coordonnées sphériques

Afin de simplifier les mathématiques qui suivent, j’ai choisi un système de coordonnées sphé- riques pour exprimer la position d’un point dans l’espace. En coordonnées sphériques, un point y est repéré par la distance entre ce point et celui à l’origine, ainsi que deux angles. Comme présenté à la figure 3.7, j’ai noté la distance d’un point au centre r, la longitude θ et la cola- titude ϕ, où r ∈ [0, ∞], ϕ ∈ [0, 2π] et θ ∈ [0, π]. Ce système de coordonnées est très commode pour définir une fonction sur une sphère.

3.4.2 Fonctions de base et principe de projection

Comme énoncé entre autres par Claude Cohen-Tannoudji et ses collaborateurs dans Cohen- Tannoudji(1997), toute fonction de θ et ϕ de carré sommable se développe sur les harmoniques sphériques de la manière suivante :

f (θ, ϕ) = +∞ X l=0 +l X m=−l Clm· Ylm(θ, ϕ), (3.1)

Figure 3.7 – Coordonnées sphériques

où l et m sont des indices entiers.

Les fonctions Ylm(θ, ϕ) représentent l’ensemble des harmoniques sphériques introduites par Pierre Simon de Laplace en 1782. Nous verrons comment les calculer à la section 3.4.4. Dans notre cas, la fonction f (θ, ϕ) représente l’objet d’intérêt. Elle vaut 1 lors de la présence de l’objet d’intérêt aux coordonnées (θ, ϕ) de la surface d’une sphère et 0 en son absence. Afin d’optimiser le calcul des décompositions, les coordonnées de l’objet d’intérêt sont mises à l’échelle, de manière à ce que le rayon r de la sphère servant à la décomposition soit égal à 1.

Les coefficients Clm sont ce que nous cherchons à déterminer à chaque décomposition. À la manière des coefficients de Fourier dans une transformation de Fourier, ils représenteront le contenu fréquentiel de l’objet décomposé. Il est intéressant de remarquer que la décomposition en harmoniques sphériques d’une fonction définie sur une sphère est analogue au développe- ment en séries de Fourier pour les fonctions périodiques.

Comme défini dans Sansone(2012), une fonction est de carré sommable lorsque l’intégrale de sa valeur au carré converge, c’est-à-dire :

Z ∞

−∞

|f (x)|2dx < ∞. (3.2)

Ainsi, une fonction définie sur la surface d’une sphère unité est une fonction de carré sommable. On peut en déduire que les harmoniques sphériques forment une base orthogonale sur la sphère unité. Une preuve du principe de décomposition présenté à l’équation (3.1) se trouve dans

Axler et collab.(2001).

Les fonctions définies sur une sphère peuvent être représentées comme une combinaison linéaire des fonctions de base Ylm(θ, ϕ). Afin de déterminer quelle proportion de chacune des fonctions de base utiliser pour construire une fonction et ainsi déterminer la valeur des coefficients Clm, nous aurons recours à une projection de cette fonction sur chacune des fonctions de base. La figure 3.8 à la page 31 provenant de l’article Schönefeld (2005) illustre très bien ce principe sur une fonction en deux dimensions.

Figure 3.8 – Expansion et reconstruction approximative de f (x) = 1.75x3+ 0.6x2+ 0.21x − 0.06 en utilisant les quatre premiers polynômes de Legendre 1, x,1

2(3x

2− 1) et 1 2(5x

3− 3x)

(a) Projection d’une fonction rouge sur quelques-uns des pre- miers polynômes de Legendre.

(b) Reconstruction de la fonction rouge en ad- ditionnant la bonne proportion des fonctions de base

Dans l’exemple de la figure 3.8, j’ai utilisé un ensemble de fonctions linéaires de base afin d’obtenir une approximation de la fonction originale. De plus, ces fonctions de base sont une suite de polynômes orthogonaux. Étant donné leur orthogonalité, ces suites infinies de poly- nômes ont une propriété intéressante. Comme présenté dans l’équation (3.3) tirée deSchönefeld

(2005), lorsque l’on intègre le produit de deux de n’importe lequel des polynômes (p) de la suite à l’intérieur de leur domaine [a, b] d’orthogonalité, on obtient 0 (sauf si on prend deux fois le même polynôme).

Posons : Z b a w(x)pn(x)pm(x)dx = cnδnm= cmδnm, (3.3) où δnm= ( 1 : n = m 0 : n 6= m

et w(x) est une fonction de poids indépendante des indices entiers n et m.

La propriété représentée par l’équation (3.3) nous permet d’appeler les polynômes p(x) des fonctions de base. Les fonctions orthogonales de base permettent l’expression de n’importe laquelle fonction affine par morceaux qui est continue sur l’intervalle [a, b], comme une com- binaison linéaire d’une série infinie de fonctions linéaires de base. C’est comme si les fonctions orthogonales entre elles n’auraient pas d’incidence sur l’influence des autres, tout en occupant

le même espace. Ce même effet permet à la transformation de Fourier de décomposer un signal en ses composantes sinusoïdales.

Afin de trouver la valeur des coefficients Clm de l’équation (3.1), nous utiliserons l’égalité suivante :

Clm= Z

s

f (s)Ylm(s) ds, (3.4)

oùRs représente l’intégrale de surface s. Ceci n’est qu’une façon plus compacte d’écrire :

Z s f (s)Ylm(s) ds ≡ Z ϕ Z θ f (θ, ϕ)Ylm(θ, ϕ) dθdϕ.

3.4.3 Principe d’intégration discrète de Monte-Carlo

Il serait difficile d’évaluer symboliquement l’équation (3.4) à l’aide de tables d’intégrales, car il faudrait au préalable poser l’équation correspondant au résultat de la reconstruction 3D et ainsi établir la fonction f (s) exacte. Nous connaissons la valeur de la fonction f (s) avec n’importe quel s (nous savons si à une coordonnée de l’espace se trouve un objet d’intérêt), mais nous ne connaissons pas à priori d’expression simple pour la définir mathématiquement. Nous aurons recours à un calcul d’intégration numérique, afin de résoudre l’équation (3.4) à l’aide d’une méthode d’intégration de Monte-Carlo.

Les méthodes de Monte-Carlo désignent les méthodes utilisant des procédés aléatoires pour calculer une valeur numérique. Le nom de ces méthodes est inspiré des jeux de hasard pratiqués à Monte-Carlo et selon Metropolis(1987), elles ont été développées principalement lors de la Seconde Guerre mondiale dans le cadre des recherches sur la fabrication de la bombe atomique par John von Neumann et Stanislas Ulam.

Rappelons-nous que le calcul d’une intégrale correspond à chercher l’aire sous une courbe. L’approche consiste à prendre au hasard un nombre N de points x0, x1, ..., xN −1 distribués

de manière à peu près uniforme dans un volume V et vérifier la proportion de ces points qui sont sous la courbe (dans notre cas, qui font partie de l’objet d’intérêt). Nous pourrons ainsi approximer sa valeur de cette manière :

Z f dV ≈ V hf i ± V r hf2i − hf i2 N , (3.5) où hf i ≡ 1 N N −1 X i=0 f (xi) hf2i ≡ 1 N N −1 X i=0 f2(xi).

On peut observer à la figure 3.9un exemple du résultat de la méthode d’intégration dite de Monte-Carlo sur une fonction en deux dimensions.

Figure 3.9 – Approximation de la mesure d’une surface à l’aide de la méthode de Monte-Carlo

Intégration de f (x) = sin(x)2 dans l’intervalle [0, 2π].

Dans la surface aux points maximums (0, 0) et (2π, 1.025), il y a 742 sur 1500 points qui sont sous la courbe. L’approximation de la valeur de l’in- tégrale est de 742/1500 ∗ 2pi ∗ 1.025 = 3.1858.

La valeur exacte de l’intégrale est π.

L’approche de Monte-Carlo possède une marge d’erreur d’environ :

± V r

hf2i − hf i2

N (3.6)

Il est à noter que cette marge d’erreur n’est pas exacte et qu’il est possible que l’erreur soit dans les faits plus grande. Cependant, comme la loi des grands nombres énoncée par Jacques Bernoulli dans Bernoulli(1713) l’indique, il est intéressant de remarquer que lorsque le nombre de points que l’on utilise pour évaluer cette intégrale augmente, l’erreur engendrée par le calcul numérique de l’intégrale diminue. En fait, lorsque le nombre de points utilisés pour évaluer l’intégrale tend vers l’infini, l’erreur se dissipe presque complètement. Plusieurs méthodes existent pour réduire l’erreur engendrée et accélérer le temps de calcul, comme présenté dans

Press et collab. (2007).

La méthode d’intégration numérique de Monte-Carlo nous permet de trouver la valeur des coefficients Clm de l’équation (3.1) de la manière suivante :

Clm= Z s f (s)Ylm(s) ds ≈ V 1 N N −1 X i=0 f (s)Ylm(s). (3.7)

Étant donné qu’il n’est pas réellement envisageable d’utiliser un nombre infini de points, j’ai utilisé un point par voxel de la grille de notre reconstruction 3D qui se trouve à la surface de notre sphère d’intérêt. Notre volume d’intérêt V est équivalent à l’aire de la surface de notre sphère, c’est-à-dire : 4π (la normalisation des coordonnées de l’objet d’intérêt à chaque décomposition nous permet d’avoir le rayon de la sphère toujours égal à 1).

3.4.4 Calcul des fonctions Ym l

L’opérateur de Laplace, aussi nommé le Laplacien, est noté ∇2 ou ∆. Cet opérateur appa- rait dans de nombreuses équations en physique et en chimie, par exemple celle qui décrit la propagation d’une onde, celle de diffusion, celle de Poisson et même celle de Schrödinger. En coordonnées cartésiennes, il correspond à :

∇2f = ∂ 2f ∂x2 + ∂2f ∂y2 + ∂2f ∂z2.

Les fonctions Ylm(θ, ϕ) sont les harmoniques sphériques. Lorsque l’on utilise la méthode de séparation des variables pour résoudre l’équation de Laplace ∇2f = 0, elles représentent la partie angulaire d’un des ensembles de solutions possibles. Pour les curieux et pour les pas- sionnés des mathématiques, la manière d’arriver à ces solutions a été approfondie entre autres par Richard Courant et David Hilbert dans leur fameux livre «Methoden der mathematischen Physik» et se trouve dans les sections §V.8 et §VII.5 de sa version anglaiseCourant et Hilbert

(1953).

Claude Cohen-Tannoudji (dansCohen-Tannoudji(1997)), Albert Messiah (dansMessiah(1959)), les auteurs des recettes numériques (dans Press et collab. (2007)) et d’autres définissent les fonctions Ylm de la manière suivante :

Y`m(θ, ϕ) = s (2` + 1) 4π (` − m)! (` + m)!P m ` (cos θ) eimϕ (3.8) ou comme ceci : Y`m(θ, ϕ) = (−1)m s (2` + 1) 4π (` − m)! (` + m)!P m ` (cos θ) eimϕ

selon qu’ils incluent le facteur de phase de Condon-Shortley (−1)m à l’intérieur des fonctions associées de Legendre P`m ou s’ils préfèrent le laisser à l’extérieur.

Comme proposé par Robin Green dans l’article Green(2003), nous utiliserons une variante de cet ensemble de solutions de l’équation de Laplace afin d’éviter d’utiliser des nombres complexes lors du calcul de cette décomposition :

Y`m(θ, ϕ) =          √ 2Klmcos(mϕ)Plm(cosθ), si m > 0 √ 2Klmsin(−mϕ)Pl−m(cosθ), si m < 0 Kl0Pl0(cosθ), si m = 0 (3.9) avec Klm = s (2` + 1) 4π (` − |m|)! (` + |m|)!. (3.10)

Comme noté par George B. Arfken et ses collaborateurs dans Arfken et collab. (2012), ces fonctions sont orthonormales, car elles sont des solutions normalisées d’un problème de la forme de Sturm-Liouville avec :

Z π θ=0

Z 2π ϕ=0

sin(θ)Y`mY`m0 0dϕdθ = δ``mm0, (3.11)

ce qui nous assure que ces fonctions peuvent servir de fonctions de base pour effectuer notre décomposition. Il nous reste maintenant à calculer les fonctions associées de Legendre P`m.

3.4.5 Fonctions associées de Legendre

En prenant la définition des fonctions associées de Legendre P`mdans le livre de Claude Cohen- Tannoudji (Cohen-Tannoudji(1997)) et en y incluant le facteur de phase de Condon-Shortley, nous obtenons :

P`m(x) = (−1)m (1 − x2)m/2 d

m

dxm(P`(x)) (3.12)

où P` sont les polynômes de Legendre tels que décrits par la formule de Rodrigues (Rodrigues

(1815)) : Pl(x) = 1 2ll! dl dxl h (x2− 1)li. (3.13)

Robin Green, dans son article Green (2003), a présenté une approche itérative inspirée des recettes numériques (Press et collab.(2007)) permettant d’éviter de calculer plusieurs dérivées à chaque décomposition. Robin Green et les auteurs des recettes numériques ont fourni le code de leur algorithme pour calculer les fonctions associées de Legendre. L’approche présentée par Green est basée sur trois relations de récurrence ((3.14) (3.15) (3.16)) qui permettent de calculer ces fonctions :

Pmm= (−1)m(2m − 1)!!(1 − x2)m/2 (3.14)

Pm+1m = x(2m + 1)Pmm (3.15)

(` − m)P`m = x(2` − 1)P`−1m − (` + m − 1)P`−2m , (3.16)

où x ! ! représente la double factorielle, c’est-à-dire : (2m − 1)!! =

m

Y

i=1

(2i − 1).

La double factorielle représente le produit de tous les nombres entiers impairs plus petits ou égal à x. Par exemple : 7 ! ! = 1 x 3 x 5 x 7 = 105. Notons que par définition, 0 ! !=1.

L’expression (3.14) servira de point de départ de l’approche. On peut remarquer que c’est la seule des trois règles qui n’exige pas la connaissance à priori de résultats du calcul de la valeur d’autres fonctions. L’idée est de calculer d’abord le Pmmle plus élevé possible. Si ` = m, le calcul de l’équation (3.14) est suffisant pour obtenir la valeur de la fonction. Dans les autres cas, où m est nécessairement plus petit que `, on utilise la règle (3.14) une fois pour calculer Pm+1m , car on a besoin de la valeur de deux bandes inférieures (P`−1m et P`−2m ) dans l’équation (3.16) pour obtenir le résultat de la fonction à une bande supérieure. Ensuite, on utilise la règle représentée par l’équation (3.16) autant de fois que nécessaire, afin d’obtenir la valeur de la fonction associée de Legendre correspondant au ` désiré.

3.4.6 Principe de limitation de bandes

Il est important de remarquer que l’équation (3.17) permettant une décomposition en harmo- niques sphériques est exacte et qu’elle n’est pas une approximation. Cependant, elle contient une sommation à l’infini que l’on ne pourra pas calculer dans un intervalle de temps raison- nable. On devra alors se satisfaire d’une approximation de la fonction originale, en fixant le nombre de bandes ` = m que l’on calculera.

f (θ, ϕ) = +∞ X l=0 +l X m=−l Clm· Ylm(θ, ϕ) (3.17)

On peut facilement supposer que le nombre nécessaire de fonctions de base doit être très grand pour pouvoir reconstruire toutes les fonctions d’un ensemble. Dans la pratique, le nombre de coefficients nécessaires à une reconstruction très fidèle n’est pas si grand. On peut observer à la figure3.10provenant de l’articleVranić et collab.(2001), différents résultats de reconstructions 3D d’une voiture, en variant le nombre d’harmoniques (de coefficients Clm) utilisées lors du calcul de la décomposition.

On peut voir à la figure 3.10 que les premières bandes (correspondant aux basses fréquences, c’est-à-dire aux petites valeurs de ` = m de l’équation (3.17)) donnent rapidement l’allure générale de l’objet. Comme notre algorithme de reconstruction 3D opère dans un environne- ment difficile, on obtient déjà des résultats bruités (contenant des erreurs de reconstruction en comparaison avec ce qu’un modèle parfait de l’animal observé devrait être) avant même de les décomposer. On peut filtrer le bruit en abandonnant le contenu correspondant aux hautes fréquences (les bandes correspondant aux valeurs de ` = m élevées). De cette ma- nière, nous pouvons diminuer le nombre de coefficients à comparer lors de notre recherche de correspondances avec les animaux contenus dans notre base de connaissances.

3.4.7 Invariance à la rotation et à la pose

Afin d’éliminer le biais causé par la translation de l’objet, nous allons le déplacer de manière à ce que son centre de masse se retrouve au point (0,0,0). Nous faisons ensuite une mise à l’échelle de notre objet de manière à ce que la distance moyenne entre les voxels et le centre soit d’environ 32 voxels. Cette approche est moins influencée par les voxels issus d’erreurs de reconstruction 3D que celle correspondant à l’utilisation d’une mise à l’échelle basée sur la normalisation des dimensions de la boite englobant tous les voxels. Il est à noter que les dimensions exactes de l’objet servent aussi de critères lors de la comparaison de l’objet avec ceux de la base de connaissances.

Thomas Funkhouser et Michael Kazhdan ont proposé une approche qui est invariante à la rotation dans Kazhdan(2004) et dans Funkhouser et collab.(2003). En posant SH :

SH(f ) = {kf0(θ, φ)k, kf1(θ, φ)k, ...}, (3.18)

où SH represente l’énergie d’un fonction f (θ, φ) définie à la surface d’une sphère et fl est

fl(θ, ϕ) = +l X m=−l Clm· Ym l (θ, ϕ) (3.19)

avec les fonctions Ylm(θ, ϕ) définies selon (3.8).

En utilisant |x| comme étant la conjugaison complexe, la norme L2 est :

kxk =p(

i

X

k=1

où x est un vecteur colonne habituel, c’est-à-dire : ~ x =       x1 x2 ... xi       . (3.21)

En utilisant les propriétés des harmoniques sphériques et le fait qu’effectuer une rotation sur une fonction sphérique ne change pas sa norme L2, ils ont observé que :

SH(R(f )) = SH(f ),

où R est une rotation quelconque.

Ils ont suggéré d’utiliser leur fonction SH comme critère de comparaison, afin de comparer les objets. On peut évidemment se demander combien d’efficacité on perd en négligeant l’infor- mation contenue dans la phase de l’objet. Dejan V. Vranić a tenté de démontrer dansVranić

(2003) l’importance de ne pas négliger cette information et suggère d’aligner les objets en effectuant une analyse en composantes principales pour y arriver.

Je n’ai pas la prétention de connaitre la solution quant au choix de la meilleure approche, mais de manière intuitive, ainsi que de manière empirique dans mes données personnelles, l’approche de Vranić semble obtenir de meilleurs résultats. De plus, les circonstances de mon utilisation de la décomposition me permettent d’envisager que dans la majorité de mes observations les animaux auront les pattes perpendiculaires au sol, en raison de la présence d’un phénomène décrit par la loi de la gravitation découverte par Isaac Newton.

Dans notre approche classique, il nous reste à normaliser la position des animaux sur un seul axe de rotation. Nous appliquons une rotation à l’objet de manière à ce que les points aient la plus grande variance possible sur l’axe x. On peut remarquer qu’en utilisant cette approche, il reste une ambigüité sur l’orientation dans l’espace des animaux. À la suite de cette rotation, l’animal peut être positionné de face ou de dos. J’ai simplement utilisé les deux positions possibles lors de la recherche de correspondances avec les animaux dans la base de connaissances.

Dans l’approche structurée, comme il est plus difficile de normaliser la rotation, j’ai utilisé la fonction SH de Funkhouser et Kazhdan que j’ai présentée à l’équation (3.18).

Documents relatifs