Wikipédia:Jargon/Géolocalisation/Les systèmes de projection

Un article de Wikipédia, l'encyclopédie libre.

Il existe une catégorie? dédiée à ce sujet : Modèle générique de paramétrage de carte.

On décrit ici les systèmes de projection des modèles génériques de paramétrage de carte. Ce sont, pour la plupart, des versions approchés des systèmes de pseudo[1] projections cartographiques couramment employées.

La catégorie Catégorie:Exemple de géolocalisation automatisée fournit des tests de rendus.

Coordonnées polaires

Sommaire

[modifier] Considérations générales

Il existe une catégorie? dédiée à ce sujet : Modèle de fonction mathématique pour la cartographie.

Le problème consiste à convertir la donnée de coordonnées géographiques (latitude, longitude) en position à l'écran (en pixel) pour une carte donnée. Des modèles génériques de paramétrage de carte correspondent aux différents types de projections cartographiques

[modifier] Cadrage

Icône de détail Modèles concernés : {{Latitude}}{{Longitude}}

Les paramètres à fournir sont (essentiellement), suivant le modèle générique, parmi ces paramètres :

  • les latitudes : top, latitude, bottom
  • les longitudes : right, longitude, left
  • les tailles en pixels : iheight, iwidth
paramètres à fournir pour le paramétrage d'une carte géographique.
Image:Geographic coordinates on map.svg

Puisqu'en l'état actuel des choses, beaucoup de modèles ne fournissent pas directement les paramètres latitude et longitude. Il existe deux modèles {{Latitude}} et {{Longitude}} qui permettent d'obtenir ces valeurs.

[modifier] Décomposition de la projection

En réalité un modèle de paramétrage de carte ne fournit pas une position à l'écran ; mais un couple (x,y) où (largeur*x,largeur*y) sont les nombres de pixels à l'écran ; ce qui permet d'ajuster la taille de l'image affichée avec largeur.

Les modèles de paramétrage de carte implémentent donc deux fonctions de conversion :

0 ≤ x(lat, long) ≤ 1[2],       0 ≤ y(lat,long)iheight/iwidth

où (lat, long) sont les coordonnées géographiques d'un point exprimées en degrés

Un modèle (générique) de paramétrage de carte retourne donc les coordonnées (x,y) à partir de la donnée des coordonnées (lat,long). Cette conversion se décompose en trois étapes :

1) Conversion des degrès en radians :

\varphi={\pi\over 180}\operatorname{lat},       \lambda={\pi\over 180}\operatorname{long} ;       (\varphi_0={\pi\over 180}\operatorname{latitude},       \lambda_0={\pi\over 180}\operatorname{longitude})

2) Projection cartographique proprement dite :
Ici, on considère la Terre comme une sphère parfaite de rayon 1. Les coordonnées géographiques (latitude, longitude) sont ici (\varphi,λ) exprimés en radian. On recherche la conversion en coordonnées (X,Y) du point sur la carte. Le point (0,0) correspondra toujours aux coordonnées (\varphi_0,λ0) et sera le centre de la carte. L'échelle en ce centre est de 1:1[3]. Les fonctions sont donc :

X(\varphi,\lambda),       Y(\varphi,\lambda)

Ces fonctions sont détaillées ci-après.
3) Conversion de (X,Y) en (x,y) :

x={1\over 2}+{180\over\pi}{c_x\over\operatorname{iwidth}} X,       y={1\over 2}{\operatorname{iheight}\over \operatorname{iwidth}}-{180\over\pi}{c_y\over \operatorname{iwidth}} Y[4]

c_x\!\, et c_y\!\, sont (de manière parfois artificielle)  :

c_x={1\over\cos(\varphi_0)}{\operatorname{iwidth}\over(\operatorname{right}- \operatorname{left})},       c_y={\operatorname{iheight}\over(\operatorname{top}- \operatorname{bottom})}

[modifier] Distance

Icône de détail Modèle concerné : {{Distance cartographique}}

[modifier] Échelle

Icône de détail Modèle concerné : {{Échelle cartographique}}

Si la carte n'est pas déformée, les deux coefficients c_x\!\, et c_y\!\, doivent être égaux et donnent l'échelle de la carte (non redimensionnée) en pixels par radian (de latitude ou, de longitude à l'équateur).

En réalité, {{Géolocalisation/Projection bilinéaire}} est le seul modèle à employer les paramètres left, right ; les autres utilisent simplement longitude. C'est donc c_y\!\, qui doit être retenu pour l'échelle.

[modifier] Déformation

Icône de détail Modèle concerné : {{Déformation cartographique}}

La déformation est le rapport entre échelle horizontale et échelle verticale ou encore, pour une distance donnée, le rapport des longueurs (en pixels) de la représentation de cette distance sur un méridien et un parallèle.

déformation globale = {c_x\over c_y} = 
{\operatorname{iwidth} \over \operatorname{iheight}} \,
{(\operatorname{top}-\operatorname{bottom}) \over \cos(\varphi_0)(\operatorname{right}-\operatorname{left})}

{{Déformation cartographique}} calcule une déformation locale au centre de la carte. La formule est

déformation centrale =  
{
x(\operatorname{latitude},\operatorname{longitude}+0.01/\cos(\operatorname{latitude}))-x(\operatorname{latitude},\operatorname{longitude}) 
\over 
y(\operatorname{latitude}-0.01,\operatorname{longitude})-y(\operatorname{latitude},\operatorname{longitude})
}

Notons que ces deux formules donnent le même résultat pour la {{Géolocalisation/Projection bilinéaire}}.

Une déformation de 1 correspond en théorie à une absence de déformation. En réalité, à cause de l'aplatissement de la Terre, le rapport optimal est

Circonférence équatoriale 40 075 km

=
1,0017
Circonférence sur un méridien 40 008 km

Une déformation supérieure à 1 correspond à un écrasement vertical[5].

Omis {{Géolocalisation/Projection bilinéaire}}, les modèles emploient c_y\!\, (ou déformation*c_y\!\, lorsque le paramètre déformation existe) au lieu de c_x\!\,.

[modifier] Excentrage

Certaines cartes ont été recadrées. La conséquence de ce recadrage est que le méridien central (qui est vertical et rectiligne) se trouve excentré, voire même, hors carte. Pour supporter cela, certains modèles génériques ont un paramètre alternatif x0 pour fournir la position horizontale en pixels du méridien central sur la carte.

[modifier] Projections cylindres ou pseudo-azimutales

La transformation verticale
Chez la plupart de ces systèmes de projection, Y=(\varphi-\varphi_0) ; cela signifie que les parallèles sont des droites horizontales régulièrement espacés. La transformation verticale est simplement :
y(lat)=iheight/iwidth * (top-lat)/(top-bottom)

[modifier] Pseudo projection équirectangulaire

C'est la conversion la plus simple :

X=\cos(\varphi_0)(\lambda-\lambda_0),       Y=(\varphi-\varphi_0)

Méridiens et parallèles forment une grille régulière. L'entrée des valeurs top, bottom, right, left, laisse la place à une possible déformation.

x(long)=(long-left)/(right-left)
y(lat)=iheight/iwidth * (top-lat)/(top-bottom)
Note
La carte doit normalement résulter d'une "projection" équirectangulaire. Dans ce cas, il n'y pas de déformation au centre (c'est à dire, que l'on aura déformation=1).

[modifier] Pseudo projection "linéaire"

Cette conversion est moins approximative car elle tient compte de l'oblicité des méridiens. Méridiens et parallèles demeurent des droites régulièrement espacées.

X=(\cos(\varphi_0) - \sin(\varphi_0)(\varphi-\varphi_0))(\lambda-\lambda_0),     Y=(\varphi-\varphi_0)

\cos(\varphi_0) - \sin(\varphi_0)(\varphi-\varphi_0) est le développement limité d'ordre 1 de \cos(\varphi) en \varphi_0 qui correspond à la projection arquée.

x(lat,long)=1/2+ iheight/iwidth*COEF*(long-longitude)/(top-bottom)
COEF= cos(π/180*(top+bottom)/2) - sin(π/180*(top+bottom)/2) * (π/180*(lat-(top+bottom)/2))
y(lat)=iheight/iwidth * (top-lat)/(top-bottom)


[modifier] Pseudo projection "arquée"

Ici les méridiens sont arqués, les parallèles demeurent des droites régulièrement espacées.

X=\cos(\varphi)(\lambda-\lambda_0),     Y=(\varphi-\varphi_0-\tan{\varphi} \frac{a}{2} {(\lambda-\lambda_0)}^2)

Un paramètre supplémentaire a permet d'ajuster l'arquage. Sa valeur doit être positive pour l'hémisphère nord (a=0.4 pour {{Géolocalisation/France}}).

x(lat,long)=1/2+ iheight/iwidth*COEF*(long-longitude)/(top-bottom)
COEF= cos(π/180*lat)
y(lat,long)=iheight/iwidth * (top-lat-tan(π/180*lat)*a/2*π/180*(long-longitude)^2)/(top-bottom)

[modifier] Projection sur un plan

La projection la plus naturelle est la vue en perspective, qui correspond à une projection sur un plan tangent à la surface du globe. C'est une projection azimutale. Elle est paramétrée par la donnée d'une échelle, et la donnée de la position d'un point de convergence (la position de l'œil) que l'on donne en coordonnées sphérique : (\lambda_0, \varphi_0, d)d\not=1. Le plan de projection est alors tangent à la sphère au point (\lambda_0, \varphi_0, 1) (le centre de projection).

Si C est le centre de projection, D le point de convergence, la projection d'un point S de la surface du globe est simplement le point P d'intersection de la droite SD avec le plan. Les valeurs (X,Y) sont les coordonnées du vecteur CP dans un repère orthonormé (i',j',k') (d'origine C) du plan de projection. i' et j' appartiennent au plan et k' et sur l'axe CD. On choisira bien sur le repère où i' est dans un plan horizontal (afin que l'axe Nord-Sud soit vertical).

X=\alpha \cos(\varphi)\sin(\lambda-\lambda_0),     Y=\alpha (\sin(\varphi-\varphi_0)-\sin(\varphi_0)\cos(\varphi)(\cos(\lambda-\lambda_0)-1))

α = (d − 1) / (dK)

K=\cos(\varphi-\varphi_0)+\cos(\varphi_0)\cos(\varphi)(\cos(\lambda-\lambda_0)-1)

Voir Vertical Perspective Projection

[modifier] Projection gnomonique

La projection est gnomonique lorsque d=0. La Terre est donc vue depuis son centre. Voir Gnomonic Projection.

[modifier] Projection stéréographique

La projection est stéréographique lorsque d=-1. La Terre est donc vue depuis l'antipode du centre de projection. Voir Stereographic Projection.

[modifier] Projection orthographique

La projection est orthographique lorsque d=\infty. La Terre est donc vue "à l'infinie".

[modifier] Projection azimutale

La projection est azimutale lorsque \varphi_0=\pi / 2. La Terre est donc vue de Pôle. Cette projection est également un cas limite de projection conique.

[modifier] Projections coniques

Les caractéristiques de la projection coniques sont :

  • Les parallèles sont des cercles
  • Les méridiens sont des droites régulièrement espacées qui se coupent en un pôle.

La formule générale est

X=r(\varphi) \sin(\beta)\!\,,     Y=r(\varphi_0) - r(\varphi) \cos(\beta)\!\,,     où   \beta=(\lambda-\lambda_0) \sin(\varphi_0).

[modifier] Pseudo projection conique linéaire

Ici les parallèles sont régulièrement espacées (linéarité). Donc r(\varphi)=\pi/2-\varphi\!\, :

X=(\pi/2-\varphi) \sin(\beta)\!\,,     Y=(\pi/2-\varphi_0) - (\pi/2-\varphi) \cos(\beta)\!\,.

[modifier] Projection conique centrale sur le cône tangent

Il s'agit d'une projection centrale sur le cône tangent. Ici les parallèles ne sont plus régulièrement espacées mais se répartissent selon la \tan{(\varphi-\varphi_0)}

X=r \sin(\beta)\!\,,     Y=d - r \cos(\beta)\!\,,     où   d=1/\tan{\varphi_0}=\tan{(\pi/2-\varphi_0)},     r=d-\tan{(\varphi-\varphi_0)}.

Les modèles génériques {{Géolocalisation/Projection conique linéaire}} et {{Géolocalisation/Projection conique avec DL}} mettent en œuvre cette projection. Dans le second, les fonctions trigonométriques ont été remplacées pas des développements limités ; ce qui dégrade très légèrement le résultat ; mais améliore considérablement le temps de calcul.

[modifier] Projection conique centrale sur un cône sécant

Si \varphi_1 et \varphi_2 sont les deux méridiens sécants et \varphi_0=(\varphi_1+\varphi_2)/2 alors :

r(\varphi)=\cos({\varphi_2-\varphi_1 \over 2}) ({1 \over \tan{\varphi_0}} -\tan{(\varphi-\varphi_0)} ).

Ces projections sont en réalité toutes identiques à la projection sur le cône tangent, à une déformation près, puisque l'absence de déformation n'est pas sur le méridien centrale mais sur les deux méridiens sécants.

[modifier] Pseudo projections coniques complexes

Article principal : Projection de Lambert.

Les cartes emploient généralement des (pseudo) projections coniques complexes (souvent appelées « projection conique modifiée ») tels que la projection sur un cône sécant, et surtout la projection de Lambert. La formule théorique générale est alors trop complexes pour être implémentées.

Heureusement les modèles {{Géolocalisation/Projection conique modifiée}} et {{Géolocalisation/Projection conique avec DL}} possèdent l'un et l'autre, un paramétrage suffisamment souple pour "émuler" ces systèmes de projections complexes. Ces modèles ne permettent donc qu'une approximation de la projection conique modifiée en paramétrant davantage (ce qui permet un meilleur ajustement en "jouant" sur les paramètres).

[modifier] Projections du monde

[modifier] Pseudo projection sinusoïdale

La projection sinusoïdale[6] est réservée à la carte du monde centrée ; donc (\varphi_0,\lambda_0)=(0,0). Ici les méridiens ont une forme sinusoïdale, les parallèles demeurent des droites régulièrement espacées.

X=\cos(\varphi)\lambda,     Y=\varphi

[modifier] Références

  • Jean Lefort, L'aventure cartographique, Belin, 2004, 319 p. (ISBN 2-84245-069-8), « Annexe B », p. 291-318

  1. On a pris le soin de distinguer sous le terme « pseudo projection » des transformations qui ne peuvent être assimilées à des projections au sens mathématique du terme.
  2. cet encadrement n'est bien sur plus valable lorsque le point est hors-carte.
  3. c'est à dire, une distance de 1 sur la shère donne une distance de 1 sur la carte en son centre
  4. le signe - s'explique par le fait que si l'axe des Y est conventionnellement orienté vers le haut, la position verticale à l'écran croît vers le bas (concrètement : top > bottom pour des latitudes et top < bottom à l'écran).
  5. ou un étirement horizontal, selon le point de vue.
  6. La projection sinusoïdale est aussi appelée projection de Samson ou de Flamsteed.