Analyse de pente

ST_Aspect

La fonction « ST_Aspect » produit à partir d'un canal un autre canal (sous forme de nouveau raster) dont la valeur représente l'azimut de la pente au pixel.

1
CREATE TABLE mnt_aspect AS
2
SELECT 1 rid, ST_Aspect(ST_Union(rast)) rast FROM mnt_25m_asc;
3
SELECT AddRasterConstraints('mnt_aspect', 'rast');
ST_Aspect rendu par QGIS (style par défaut : le contraste de gris ne représente aucunement la pente, mais l'azimut de la pente)

ST_Slope

La fonction « ST_Slope » calcule l'angle vertical de la pente et s'utilise comme ST_Aspect.

1
CREATE TABLE mnt_slope AS
2
SELECT 1 rid, ST_Slope(ST_Union(rast)) rast FROM mnt_25m_asc;
3
SELECT AddRasterConstraints('mnt_slope', 'rast');
ST_Slope rendu par QGIS : la luminosité est proportionnelle à l'angle (min → max) (exprimé en degrés)

Recombinaison en multiples canaux d'un même raster

Nous avons produit a raster spécifique comme résultat de ST_Slope et un autre pour ST_Aspect. Il serait intéressant de les combiner au sein d'un même raster, pour simplifier la manipulation. Il appartient au SIG comment coloriser le raster en fonction de ces canaux.

Pour combiner des canaux, on utilise la fonction « ST_AddBand » qui retourne le raster donné en argument auquel on a ajouté les canaux provenant des raster donnés en argument ARRAY.

Exemple tuile par tuile (un léger défaut apparaît sur les frontières des tuiles) :

1
CREATE TABLE mnt_slope_aspect AS
2
SELECT 1 rid,
3
ST_AddBand(rast, ARRAY[ST_Slope(rast), ST_Aspect(rast)]) rast
4
FROM mnt_25m_asc;
5
SELECT AddRasterConstraints('mnt_slope_aspect', 'rast');

QGIS appliquera par défaut un style RVB (canal 1 = rouge, 2 = vert, 3 = bleu), en utilisant l'intervalle valeur minimale → maximale pour la proportionnalité de luminosité. L'outil d'interrogation (icône « i ») permet d'inspecter ces 3 canaux et de constater qu'en tout point leur valeur est bien égale au raster indépendant équivalent (le canal 2 de « mnt_slope_aspect » et bien égale au canal 1 unique de raster à canal unique « mnt_slope ».

Avec ce style, le quantité de rouge représente l'altitude, la quantité de vert l'importance de la pente et de bleu l'orientation de la pente (de 0° à 360°).

Exemple du mnt_slope_aspect avec le style par défaut : canal 1 = rouge, 2 = vert, 3 = bleu