.
Dans les bases de données Oracle, les données raster peuvent être stockés dans des objets SDO_GEORASTER, disponibles dans l’extension Oracle Spatial. Dans QGIS, l’extension GeoRasterOracle Spatial est supporté par GDAL et dépend de la version d’Oracle installée sur votre machine. Bien que ce soit un outil propriétaire, Oracle fournit un logiciel gratuit à des fins de tests ou de développement. Voici un exemple simple de comment charger des images raster dans Georaster :
$ gdal_translate -of georaster input_file.tif geor:scott/tiger@orcl
Le raster va être chargé dans la table par défaut, GDAL_IMPORT, en tant que colonne nommée RASTER.
Tout d’abord, l’extension GeoRaster Oracle doit être activé dans le gestionnaire d’extensions (voir The Plugins Menus). La première fois que vous chargez un GeoRaster dans QGIS, vous devez créer une connexion à la base de données Oracle contenant la donnée. Pour ce faire, commencez par cliquer sur le bouton Ajouter une couche GeoRaster Oracle de la barre d’outils – ceci va ouvrir la boîte de dialogue Sélectionnez un GeoRaster Oracle Spatial. Cliquez sur [Nouveau] pour ouvrir la boîte de dialogue et indiquez les paramètres de connexion (voir Figure_oracle_raster_1) :
Nom : Entrez un nom pour la connexion.
Instance de base de données : Entrez le nom de la base de données à laquelle vous voulez vous connecter.
Nom d’utilisateur : Indiquez le nom d’utilisateur permettant de se connecter à la base de données.
Mot de passe : Saisissez le mot de passe associé au nom d’utilisateur.
Figure Oracle Raster 1:
Dans la fenêtre principale GeoRaster Oracle Spatial (voir Figure_oracle_raster_2), utilisez la liste déroulante pour choisir une connexion, et cliquez sur [Connecter] pour accéder à la base de données. Vous pouvez également éditer les paramètres de connexion en cliquant sur [Éditer], ou supprimer la connexion en choisissant [Supprimer].
Une fois connecté, les noms des tables de la base contenant des colonnes GeoRaster compatibles au format GDAL vont s’afficher dans la fenêtre des sous-jeux de données.
Cliquez sur l’un de ces sous-jeux de données puis sur [Sélectionner] pour choisir la table. Une nouvelle liste affiche maintenant les noms des colonnes GeoRaster dans cette table, il s’agit généralement d’une courte liste car la plupart des utilisateurs n’ont pas plus d’une ou deux colonnes GeoRaster dans une même table.
Cliquez sur l’une des sous-jeux puis sur [Sélectionner] pour choisir une combinaison d’une table et d’une colonne La fenêtre montrera alors toutes les lignes contenant un objet GeoRaster Vous remarquerez que la liste affichera la table de données raster et les identifiants Raster.
A tout moment la sélection peut être éditée manuellement pour pointer directement le GeoRaster voulu ou retourner au début pour prendre une autre table.
Figure Oracle Raster 2:
L’entrée de sélection de données peut également être utilisée pour définir une clause WHERE à la fin de la chaîne d’identification (par exemple geor:scott/tiger@orcl,gdal_import,raster,geoid=). Voir la page http://www.gdal.org/frmt_georaster.html pour plus d’information.
En sélectionnant un GeoRaster depuis la liste, cette image sera chargée dans QGIS.
La fenêtre de Sélection de GeoRaster Oracle Spatial peut maintenant être fermée, la connexion sera conservée pour une prochaine ouverture, la même liste de sous-jeux de données sera ainsi disponible, ce qui facilitera l’affichage de nouvelles images dans le même contexte.
Note
Les GeoRasters qui contiennent des tuiles/pyramides s’afficheront plus rapidement mais elles devront être générées hors de QGIS en utilisant Oracle PL/SQL ou gdaladdo.
L’exemple suivant utilise gdaladdo:
gdaladdo georaster:scott/tiger@orcl,georaster\_table,georaster,georid=6 -r
nearest 2 4 6 8 16 32
Cet exemple utilise PL/SQL:
$ sqlplus scott/tiger
SQL> DECLARE
gr sdo_georaster;
BEGIN
SELECT image INTO gr FROM cities WHERE id = 1 FOR UPDATE;
sdo_geor.generatePyramid(gr, 'rLevel=5, resampling=NN');
UPDATE cities SET image = gr WHERE id = 1;
COMMIT;
END;