このトピックでは、ST_PointValues関数について説明します。 ST_PointValues関数は、特定の位置にあるすべてのバンドのピクセル値を返します。
構文
setof record ST_PointValues(raster raster_obj, integer column_sn, integer row_sn, boolean exclude_nodata default true, out integer* band, out float8 value);
setof record ST_PointValues(raster raster_obj, float8 x, float8 y, boolean exclude_nodata default true, text options default '{}', out integer band, out float8 value);
パラメーター
パラメーター | 説明 |
raster_obj | ラスターオブジェクト |
column_sn | 左上隅から始まるピクセルの列インデックス。 |
row_sn | 左上隅から始まるピクセルの行インデックス。 |
x | ピクセルの経度。 |
y | ピクセルの緯度。 |
exclude_nodata | NoData値を除外するかどうかを指定します。 このパラメーターをtrueに設定すると、NoData値を持つピクセルは返されません。 |
バンド | ピクセルのバンド番号。 |
値 | ピクセル値。 |
options | ピクセル再サンプリング方法。 パラメーターをJSON文字列形式で指定します。
|
戻り値
戻り値 | 説明 |
バンド | バンド番号。 |
value | ピクセル値。 |
説明
この関数は、列番号と行番号、または経度と緯度の座標に基づいて、すべてのバンドのピクセル値を返します。
リサンプルパラメータを設定すると、4つの隣接するピクセル値が計算に含まれます。
例
SELECT * FROM (SELECT (st_pointValues(rast, 125.84382034243441 , 47.67709555783107, false)).* FROM t_pixel WHERE id = 3) a ORDER BY band;
サンプル結果:
band | value ------+------- 0 | 66 1 | 87 2 | 28
SELECT * FROM (SELECT (st_pointValues(rast, 125 , 47)).* FROM t_pixel WHERE id = 3) a ORDER BY band;
サンプル結果:
band | value ------+------- 0 | 39 1 | 66 2 | 11
idwリサンプリングメソッドを指定します。
SELECT * FROM (SELECT (st_pointValues(rast, 125.84382034243441 , 47.67709555783107, false, '{"resample" : "idw"}')).* FROM t_pixel WHERE id = 3) a ORDER BY band;
サンプル結果:
band | value ------+-------------------- 0 | 60.81401293159196 1 | 85.23822259113626 2 | 26.300926205142165