名前

ST_Reskew — スキュー(回転パラメタ)の調整によるリサンプリングを行います。新しいピクセル値は、最近傍補間('NearestNeighbor')、双線形補間('Bilinear')、3次補完('Cubic')、3次スプライン補完('CubicSpline')、ランツォシュ補完('Lanczos')、のいずれかのアルゴリズムを使います。デフォルトは最近傍補完です。

概要

raster ST_Reskew(raster rast, double precision skewxy, text algorithm=NearestNeighbour, double precision maxerr=0.125);

raster ST_Reskew(raster rast, double precision skewx, double precision skewy, text algorithm=NearestNeighbour, double precision maxerr=0.125);

説明

スキュー(回転パラメタ)の調整によるリサンプリングを行います。新しいピクセル値は、最近傍補間('NearestNeighbor')、双線形補間('Bilinear')、3次補完('Cubic')、3次スプライン補完('CubicSpline')、ランツォシュ補完('Lanczos')、のいずれかのアルゴリズムを使います。デフォルトは最近傍補完で、最も早いですが最も悪い内挿を行います。

skewxskewyによって新しいスキューが定義されます。

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

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

[注記]

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

[注記]

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

[注記]

ST_ReskewはST_SetSkewと異なります。ST_SetSkewはラスタの範囲をあわせるためのリサンプリングをしません。根本的に誤った設定を行ったのを訂正するためにラスタのメタデータ(地理参照)を変更するだけです。ST_Reskewは、入力ラスタの地理範囲に合わせて計算された幅、高さを持つラスタを返します。ST_SetSkewはラスタの幅も高さも変更しません。

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

スキューを0.0から0.0015に変えてリサンプリングを行う例です。

-- 元のラスタのピクセルサイズ
SELECT ST_Rotation(ST_AddBand(ST_MakeEmptyRaster(100, 100, 0, 0, 0.001, -0.001, 0, 0, 4269), '8BUI'::text, 1, 0))
					
-- リサンプリングされたラスタのピクセルサイズ
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))
                    

関連情報

ST_Resample, ST_Rescale, ST_SetSkew, ST_SetRotation, ST_SkewX, ST_SkewY, ST_Transform