Vue « raster_overviews » et miniatures de rasters
Un raster est une grille de points régulièrement alignés dans une étendue géographique donnée. La résolution représente le nombre de points par unité géographique. Plus la résolution est grande, plus les calculs sont détaillés et plus l'affichage pourra être « fin » (non pixellisé).
Or la résolution a un coût : un grand nombre de points signifie un poids important de données pour l'échange, ce qui peut être inutile lorsqu'on manipule le raster à petite échelle.
Pour cette raison, il est d'usage pour les rasters en général, d'utiliser des miniatures conjointement au raster d'origine. Le logiciel SIG saura sélectionner la miniature la plus adaptée pour ses traitements, ou le raster d'origine si nécessaire.
On parlera alors de structure pyramidale, où le raster donné est accompagné de ses miniature ½, ¼, 1/8, etc. Cette façon de faire est habituelle pour le format TIFF qui peut contenir ses miniature à l'intérieur du même fichier. D'autres stratégies offertes par les SIG consiste à générer des miniatures « externes » : un PNG par exemple sera décliné en plusieurs fichiers PNG dans le même répertoire, représentant chacun une miniature donnée.
PostGIS RASTER permet de gérer des miniatures à l'intérieur de la base de données. La convention est la suivante : pour une table « raster » donnée, on maintient une table nommée « o_N_raster », où « raster » est le nom de la table raster source et « N » le facture de miniature (2 pour ½, 4 pour ¼, etc.).
La vue « raster_overviews » liste pour chaque raster les miniatures disponibles. Ceci est possible car chaque miniature de raster (qui est elle-même un raster) définit une contrainte nommée « enforce_overview_rast » qui indique de quel raster source il est une miniature.
C'est grâce à cette vue « raster_overviews » que les outils externes savent comment exploiter les miniatures pour un raster donné.
La fonction ST_CreateOverview permet de générer des miniatures automatiquement (avec les bonnes contraintes) pour un raster existant. Nous n'allons pas l'utiliser ici. À la place, nous allons utiliser l'option « -l » de l'utilitaire raster2pgsql pour générer les miniatures directement à l'import.