ラスターオブジェクトを PNG フォーマットのバイナリストリームにエンコードします。
構文
bytea ST_AsPNG(raster raster_obj,box extent,
integer pyramidLevel default 0,
cstring bands default '',
cstring option default '');パラメータ
パラメータ名 | 説明 |
raster_obj | 処理するラスターオブジェクト。 |
extent | 画像のエクステント。デフォルトでは地理座標系が使用されます。 |
pyramidLevel | 画像のピラミッドレベル。値は 0 から始まります。デフォルト値は 0 です。 |
bands | 取得するバンドのリスト。値は 0 から始まります。 |
option | JSON 文字列で指定する変換オプション。 |
以下では、option パラメータについて説明します。
パラメータ | 説明 | 型 | デフォルト値 | 備考 |
nodata | NoData 値を使用するかどうかを指定します。 | bool | false |
|
nodataValue | NoData 値。 | integer | 0 | nodata を true に設定した場合、このパラメータに値を設定する必要があります。 |
rast_coord | 入力 box がピクセル座標を使用するかどうかを指定します。 | bool | false | ピクセル座標を使用する場合、x はピクセルの列番号、y は行番号を示します。列番号と行番号はいずれも 0 から始まります。 |
strength | 画像を強調するかどうかを指定します。 | string | none | 強調メソッド。有効な値:
|
quality | 圧縮品質。 | integer | 75 | 圧縮品質。有効な値:1 ~ 100。 |
説明
この関数は、画像データを bytea フォーマットで返します。
デフォルトのクリッピングキャッシュは 100 MB です。そのため、結果データは 100 MB を超えることはできません。キャッシュサイズを変更するには、[ganos.raster.clip_max_buffer_size] パラメータを使用します。
バンド数は次のとおりです:
1:グレースケール画像。
2:グレースケールバンドとアルファバンド。
3:R、G、B バンド。
4:R、G、B バンド、およびアルファバンド。
例
-- クリッピング範囲を使用します。
SELECT ST_AsPNG(raster_obj,
'(-180,-90), (0,0)'::Box)
FROM raster_table
WHERE id =1;
-- ピラミッドレベルを指定します。
SELECT ST_AsPNG(raster_obj,
'(-180,-90), (0,0)'::Box,
1)
FROM raster_table
WHERE id =1;
-- バンドとクリッピング範囲を指定します。
SELECT ST_AsPNG(raster_obj,
'(-180,-90), (0,0)'::Box,
1,
'0-2')
FROM raster_table
WHERE id =1;
-- 統計値を使用して画像をストレッチします。
SELECT ST_AsPNG(rast,
'(-180,-90), (0,0)'::Box,
0,
'',
'{"nodata":"false", "nodatavalue":"0","rast_coord":"false", "strength":"stats", "quality":"75"}')
FROM raster_table
WHERE id =1;