ST_Resample
Name
ST_Resample — Resample a raster using a specified resampling algorithm, new dimensions, an arbitrary grid corner and a set of raster georeferencing attributes defined or borrowed from another raster.
Synopsis
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
)
;
Description
Resample a raster using a specified resampling algorithm, new dimensions (width & height), a grid corner (gridx & gridy) and a set of raster georeferencing attributes (scalex, scaley, skewx & skewy) defined or borrowed from another raster. If using a reference raster, the two rasters must have the same SRID.
New pixel values are computed using one of the following resampling algorithms:
-
NearestNeighbor (english or american spelling)
-
Bilinear
-
Cubic
-
CubicSpline
-
Lanczos
-
Max
-
Min
The default is NearestNeighbor which is the fastest but results in the worst interpolation.
A maxerror percent of 0.125 is used if no
maxerr
is specified.
Refer to: GDAL Warp resampling methods for more details. |
Availability: 2.0.0 Requires GDAL 1.6.1+
Enhanced: 3.4.0 max and min resampling options added
Examples
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