名前

ST_SnapToGrid — グリッドにスナップさせるリサンプリングを行います。新しいピクセル値は、最近傍補間('NearestNeighbor')、双線形補間('Bilinear')、3次補完('Cubic')、3次スプライン補完('CubicSpline')、ランツォシュ補完('Lanczos')、のいずれかのアルゴリズムを使います。デフォルトは最近傍補完です。

概要

raster ST_SnapToGrid(raster rast, double precision gridx, double precision gridy, text algorithm=NearestNeighbour, double precision maxerr=0.125, double precision scalex=DEFAULT 0, double precision scaley=DEFAULT 0);

raster ST_SnapToGrid(raster rast, double precision gridx, double precision gridy, double precision scalex, double precision scaley, text algorithm=NearestNeighbour, double precision maxerr=0.125);

raster ST_SnapToGrid(raster rast, double precision gridx, double precision gridy, double precision scalexy, text algorithm=NearestNeighbour, double precision maxerr=0.125);

説明

任意のピクセル角(gridx, gridy)で定義されるグリッドにスナップさせるリサンプリングを行います。新しいピクセル値は、最近傍補間('NearestNeighbor')、双線形補間('Bilinear')、3次補完('Cubic')、3次スプライン補完('CubicSpline')、ランツォシュ補完('Lanczos')、のいずれかのアルゴリズムを使います。デフォルトは最近傍補完で、最も早いですが最も悪い内挿を行います。

gridxgridyは、新しいグリッドの任意のピクセルの角を定義します。必ずしも新しいラスタの左上隅であるわけではありませんし、新しいラスタ範囲の内側にある必要も端にある必要もありません。

任意で新しいグリッドのピクセルサイズをscalexscaleyで定義することができます。

新しいラスタの範囲は元のラスタの範囲を含みます。

maxerrが指定されていない場合には0.125とします。

[注記]

ラスタが既知の空間参照系(SRID)にある場合に限って動作します。

[注記]

詳細についてはGDAL Warp resampling methodsを参照して下さい。

[注記]

グリッドパラメタより多くの制御が必要な場合には、ST_Resampleを使います。

初出: 2.0.0 GDAL 1.6.1以上が必要です。

ラスタをわずかに異なるグリッドにスナップさせる例です。

-- 元のラスタのピクセルサイズ
SELECT ST_UpperLeftX(ST_AddBand(ST_MakeEmptyRaster(10, 10, 0, 0, 0.001, -0.001, 0, 0, 4269), '8BUI'::text, 1, 0))
					
-- リサンプリングしたラスタのピクセルサイズ
SELECT ST_UpperLeftX(ST_SnapToGrid(ST_AddBand(ST_MakeEmptyRaster(10, 10, 0, 0, 0.001, -0.001, 0, 0, 4269), '8BUI'::text, 1, 0), 0.0002, 0.0002))
                    

関連情報

ST_Resample, ST_Rescale, ST_UpperLeftX, ST_UpperLeftY