ST_Resample — Rééchantillonne un raster, en utilisant l'algorithme spécifié, les nouvelles dimensions, un coin arbitraire de la grille et un ensemble de paramètres de géo-référencement définis ou empruntés à un autre raster.
raster ST_Resample(
raster rast, integer width, integer height, double precision gridx=NULL, double precision gridy=NULL, double precision skewx=0, double precision skewy=0, text algorithm=NearestNeighbor, double precision maxerr=0.125)
;
raster ST_Resample(
raster rast, double precision scalex=0, double precision scaley=0, double precision gridx=NULL, double precision gridy=NULL, double precision skewx=0, double precision skewy=0, text algorithm=NearestNeighbor, double precision maxerr=0.125)
;
raster ST_Resample(
raster rast, raster ref, text algorithm=NearestNeighbor, double precision maxerr=0.125, boolean usescale=true)
;
raster ST_Resample(
raster rast, raster ref, boolean usescale, text algorithm=NearestNeighbor, double precision maxerr=0.125)
;
Rééchantillonne un raster, en utilisant l'algorithme spécifié, les nouvelles dimensions (width & height), un coin de la grille (gridx & gridy) et un ensemble de paramètres de géo-référencement (scalex, scaley, skewx & skewy) définis ou empruntés à un autre raster. Si un raster de référence est spécifié, les deux rasters doivent avoir le même SRID.
Les nouvelles valeurs des pixels sont calculées par un des algorithmes de rééchantillonnage suivants :
NearestNeighbor (plus proche voisin)
Bilinear (Bilinéaire)
Cubic (Cubique)
CubicSpline (Cubique Spline)
Lanczos
Max
Min
L'algorithme par défaut est NearestNeighbor, qui est le plus rapide mais donne le moins bon résultat.
Une erreur maximale de 0.125 est utilisée si le paramètre maxerr
n'est pas spécifié.
Voir GDAL Warp resampling methods pour plus de détails. |
Disponibilité : 2.0.0 Nécessite GDAL 1.6.1+
Améliration : 3.4.0 ajout des options de rééchantillonnage max et min
SELECT ST_Width(orig) AS orig_width, ST_Width(reduce_100) AS new_width FROM ( SELECT rast AS orig, ST_Resample(rast,100,100) AS reduce_100 FROM aerials.boston WHERE ST_Intersects(rast, ST_Transform( ST_MakeEnvelope(-71.128, 42.2392,-71.1277, 42.2397, 4326),26986) ) LIMIT 1 ) AS foo; orig_width | new_width ------------+------------- 200 | 100