Que sont les cartes raster ? Ce sont des fichiers images géoréférencés, c'est-à-dire positionnés à la surface du globe terrestre pour ce qui nous concerne.
Un raster est une image matricielle constituée de points de couleurs. Chaque point de couleur est un pixel px (picture element). Le rendu de l’image est fonction de la résolution de l’écran sur lequel nous allons l’observer.
Cette résolution se mesure en dpi (pixels par pouce). Plus la résolution est grande moins les pixels sont grands, et l’image apparaitra petite et précise.
Combien une image de 800 pixels de large, sur mon écran de PC qui est large de 50cm et qui a une résolution d’écran de 1920 px en horizontal mesurera sur l’écran ?
Résolution de l’écran en px/cm : 1920 / 50 = 38 px/cm soit par pouce ( 2,54 cm) 38 x 2.54 = 96 dpi
Il va de soi que la résolution horizontale est égale à la résolution verticale afin que nos carrés ne soit pas des rectangles, et les cercles des ellipses !
L’image mesurant 800 px elle mesurera sur l’écran :
800 /38 = 21 cm ou 800 / 96 = 8,3 pouce
Ces petits rappels seront nécessaires pour bien saisir la suite.
OpenStreetMap par le biais du protocole TMS (Tile Map Service) met à disposition des petits fichiers image ou tuiles de 256 x 256 px au format png représentant le globe terrestre sous 18 ou 19 niveaux de zoom.
Il existe en fonction de l’usage par l’utilisateur plusieurs déclinaisons de type de cartes que nous verrons plus loin.
Comment sont organisées les tuiles ?
Dans une organisation pyramidale où chaque niveau correspond à un niveau de zoom. Ou chaque tuile de 256 x 256 px d'un étage se décompose en 4 autres tuiles à l'étage en dessous.
Le zoom 0 représente tout le globe sur 1 image de 256 px de coté
Le zoom 1 représente tout le globe sur 2 x 2 = 4 images de 256 px de coté
Le zoom 2 représente tout le globe sur 4 x 4 = 16 images de 256 px de coté
Le zoom 3 représente tout le globe sur 8 x 8 = 64 images de 256 px de coté
Le zoom 4 représente tout le globe sur 44 = 256images
Le zoom 18 représente le globe sur 4 18 = 68 719 476 736 images
Pourquoi une mosaïque de tuiles ?
2 raisons :
Pour faciliter le traitement des données : En effet tous les utilisateurs ont des besoins différents. Avec des logiciels utilisant le protocole TMPS, l’utilisateur pourra télécharger la zone exacte qu’il souhaite sans s’encombrer de zones inutiles et il pourra charger uniquement les niveaux de zoom dont il a besoin.
Le logiciel en travaillant avec des petits fichiers à afficher sur l’écran utilisera moins de ressources de la part des processeurs et sera plus rapide que s'il était amené à traiter une carte recouvrant tout un pays ou un continent.
Comment les logiciels de cartographie stockent cette grande quantité de petites tuiles ?
Au moment du téléchargement avec des logiciels travaillant avec le protocole TMS, les tuiles sont rangées méthodiquement dans une arborescence Z – X - Y. Principe d'une armoire Z contenant des tiroirs X, contenant eux mêmes les fichiers Y de carte.
Exemple de récupération de cartes OSM et ordonnancement des répertoires :
Il y a en premier un répertoire créé pour le niveau Z correspondant au niveau de zoom
Ici les zoom 1 à 16 sont chargés
Ensuite dans chaque répertoire de niveau Z il y a des sous répertoires créés de niveau X qui correspondent à des bandes verticales Nord Sud de 256px de côté. Ces bandes sont numérotées d’Ouest en Est en commençant par le méridien de longitude -180°
Dans le niveau de zoom 9 il y a des cartes présentes dans les bandes 252 à 262 à partir de la longitude -180
Dans chacun de ces répertoires sont stockées les tuiles de 256 x 256px depuis le Nord vers le Sud. Le niveau Y est donc le nom du fichier image représenté par un numéro d’ordre. Le premier fichier à pour limite Nord la latitude 85.051100°N et le dernier à pour limite Sud la latitude -85.051100°S En effet le type de projection pour les très hautes latitudes génère trop de déformation (le cosinus de la latitude s’approchant de 0, l’échelle horizontale s’approche de 0, alors que verticalement l’échelle reste la même qu’à l’équateur. Voir l'article sur la projection utilisée par OSM
Dans une bande il y a 8 cartes de chargées correspondant au bande 182 à 189 à partir de 85,0511° Nord
Que cela soit sur les serveurs d’OSM ou sur les PC distants ou Smartphone les fichiers sont rangés ainsi.
Pour voir une tuile individuelle, il suffit d'appeler le serveur dans un navigateur et d'écrire le chemin et le nom de fichier avec la syntaxe suivante :
http://adresse du serveur/zoom/x/y.png
Voici un exemple concret pour visualiser une carte OSM représentant les pistes cyclables:
http://tile.opencyclemap.org/cycle/15/16592/11272.png
En cliquant sur le lien ci-dessus on visualise une tuile au zoom 15 où on reconnaitra la tour Effel et le Trocadéro
Mais il faut être rassuré, en fonction des besoins de l’utilisateur un logiciel TMS enverra des requêtes pour charger les tuiles et les ordonner automatiquement (ouf!)
Il y en a 2 outils gratuits très commodes pour télécharger des tuiles et leur arborescence que je présente sur ce site: Mobile Atlas Creator et OsmAndMapCreator
Pour illustrer la mosaïque, les niveaux de zoom et l’ordonnancement voici une progression qui nous conduira du planisphère à la tour Eiffel.
A chaque fois que l’on monte de 1 niveau de zoom on divise la surface du globe par 4 en doublant l’échelle. Ainsi chaque nouvelle carte représente un quadrant de la carte précédente : soit le quadrant Nord-Ouest, Nord-Est, Sud-Ouest ou Sud-Est.
Pour chaque image on verra le zoom Z, le répertoire X ainsi que le "nom" du fichier Y
Remarques :
En fonction de Z niveau de Zoom X < 2Z et Y < 2Z
Exemple : Z= 4 alors X<16 et Y <16
Beaucoup de services livrant en consultation ou téléchargement des cartes en lignes utilisent exactement cette nomenclature : OSM, Google, Microsoft etc. en plan, vue satellite, relief etc.
Pour identifier une tuile en fonction des coordonnées géographiques et du zoom, ou en fonction de sa nomenclature Z, X, Y, et tout savoir sur ces dimensions, son échelle, sa superficie et enfin la télécharger pour la visualiser, j'ai monté un tableur Open office ou Excel disponible ici
Chaque tuile mesure 256 X256px soit 65536 px. En format .BMP il faudrait un octet par pixel, nous aurions quel que soit le type de carte, des tuiles de 65 Koctet. Comme les images sont compressées au format .PNG, en fonction du type de contenu elles pèseront de 15 à 40 Ko. On peut donc évaluer pour une surface donnée de carte l'impact des niveaux de zoom sur le volume d'information à charger.
On se rappellera que le passage du zoom N à N+1 ajoute 4 fois plus de Kilo octets que celui correspondant au zoom de niveau N. Attention cela va très vite ! N'oublions pas qu'un niveau 14 à 45° de latitude correspond à une carte au 1/25000 et qui si l'on souhaite plus grande précision les cartes vectorielles sont une excellente alternative.
Je vous invite à aller sur le lien suivant pour accéder à la page de ce site qui contient un outil Javascript que j'ai monté pour avoir la correspondance entre coordonnées et numéro de tuile et la possibilité de la visualiser directement sur la page.