ST_Reskew — 通过仅调整栅格的倾斜(或旋转参数)来重采样栅格。新的像素值使用最近邻(英文或美式拼写)、双线性、三次、三次样条或 Lanczos 重采样算法计算。默认值为最近邻。
栅格 ST_Reskew(
栅格 rast, 双精度 skewxy, 文本 algorithm=NearestNeighbor, 双精度 maxerr=0.125)
;
栅格 ST_Reskew(
栅格 rast, 双精度 skewx, 双精度 skewy, 文本 algorithm=NearestNeighbor, 双精度 maxerr=0.125)
;
通过仅调整栅格的倾斜(或旋转参数)来重采样栅格。新的像素值使用最近邻(英文或美式拼写)、双线性、三次、三次样条或 Lanczos 重采样算法计算。默认值是最近邻,它是最快的,但会导致最差的插值。
skewx
和 skewy
定义新的倾斜。
新栅格的范围将包含所提供栅格的范围。
如果未指定 maxerr
,则最大误差百分比为 0.125。
有关更多详细信息,请参考:GDAL Warp 重采样方法。 |
ST_Reskew 与 ST_SetSkew 的不同之处在于,ST_SetSkew 不会重采样栅格以匹配栅格范围。ST_SetSkew 仅更改栅格的元数据(或地理参考)以校正最初错误指定的倾斜。ST_Reskew 会生成具有不同宽度和高度的栅格,这些宽度和高度经过计算以适应输入栅格的地理范围。ST_SetSkew 不会修改栅格的宽度或高度。 |
可用性:2.0.0 需要 GDAL 1.6.1+
更改:2.1.0 可在没有 SRID 的栅格上工作
一个简单的示例,将栅格的倾斜从 0.0 重斜到 0.0015。
-- the original raster non-rotated SELECT ST_Rotation(ST_AddBand(ST_MakeEmptyRaster(100, 100, 0, 0, 0.001, -0.001, 0, 0, 4269), '8BUI'::text, 1, 0)); -- result 0 -- the reskewed raster raster rotation SELECT ST_Rotation(ST_Reskew(ST_AddBand(ST_MakeEmptyRaster(100, 100, 0, 0, 0.001, -0.001, 0, 0, 4269), '8BUI'::text, 1, 0), 0.0015)); -- result -0.982793723247329