Name

ST_Resample — Skaliert einen Raster mit einem bestimmten Algorithmus, neuen Dimensionen, einer beliebigen Gitterecke und über Parameter zur Georeferenzierung des Rasters, die angegeben oder von einem anderen Raster übernommen werden können.

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);

Beschreibung

Skaliert einen Raster mit einem bestimmten Algorithmus, neuen Dimensionen (width & height), einer Gitterecke (gridx & gridy) und über Parameter zur Georeferenzierung des Rasters (scalex, scaley, skewx & skewy), die angegeben oder von einem anderen Raster übernommen werden können. Wenn Sie einen Referenzraster verwenden, müssen beide Raster die selbe SRID haben.

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.

Wenn maxerr nicht angegeben ist, wird der maximale Fehler mit 0.125 Prozent angesetzt.

[Note]

Siehe GDAL Warp resampling methods für mehr Details.

Verfügbarkeit: 2.0.0 benötigt GDAL 1.6.1+

Enhanced: 3.4.0 max and min resampling options added

Beispiele

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
                

Siehe auch

ST_Rescale, ST_Resize, ST_Transform