ST_Rescale — 通过仅调整其比例(或像素大小)来重采样栅格。使用NearestNeighbor(英式或美式拼写)、双线性、立方、立方样条线或Lanczos重采样算法计算新的像素值。默认为NearestNeighbor。
raster
ST_Rescale
(
raster
rast
, double precision
scalexy
, text
algorithm=NearestNeighbor
, double precision
maxerr=0.125
)
;
raster
ST_Rescale
(
raster
rast
, double precision
scalex
, double precision
scaley
, text
algorithm=NearestNeighbor
, double precision
maxerr=0.125
)
;
通过仅调整其比例(或像素大小)来重采样栅格。使用NearestNeighbor(英式或美式拼写)、双线性、立方、立方样条线或Lanczos重采样算法计算新的像素值。默认值为NearestNeighbor,它是最快的,但结果是最差的插值。
scalex
和
scaley
定义新的像素大小。若要获得定向良好的栅格,scaleY通常必须为负数。
如果新的scalex或scaleY不是栅格宽度或高度的除数,则生成的栅格的范围将扩展为包含所提供的栅格的范围。如果要确保保留准确的输入范围,请参见 ST_Resize
maxerr
是重采样算法的变换近似阈值(以像素为单位)。如果没有,则使用缺省值0.125
maxerr
与GDAL gdalwarp实用程序中使用的值相同。如果设置为零,则不会发生近似。
![]() |
|
请参阅: GDAL扭曲重采样方法 了解更多详细信息。 |
![]() |
|
ST_RESale不同于 ST_SetScale 在ST_SetScale中,不要重新采样栅格以匹配栅格范围。ST_SetScale仅更改栅格的元数据(或地理参考)以更正最初错误指定的比例。ST_RESERSCALE会导致计算出的栅格具有不同的宽度和高度,以适应输入栅格的地理范围。ST_SetScale不修改栅格的宽度或高度。 |
可用性:2.0.0需要GDAL 1.6.1+
已更改:2.1.0适用于没有SRID的栅格
将栅格从0.001度的像素大小重新调整为0.0015度的像素大小的简单示例。
-- the original raster pixel size
SELECT ST_PixelWidth(ST_AddBand(ST_MakeEmptyRaster(100, 100, 0, 0, 0.001, -0.001, 0, 0, 4269), '8BUI'::text, 1, 0)) width
width
----------
0.001
-- the rescaled raster raster pixel size
SELECT ST_PixelWidth(ST_Rescale(ST_AddBand(ST_MakeEmptyRaster(100, 100, 0, 0, 0.001, -0.001, 0, 0, 4269), '8BUI'::text, 1, 0), 0.0015)) width
width
----------
0.0015