すべてのプロダクト
Search
ドキュメントセンター

PolarDB:ST_AsImage

最終更新日:Mar 29, 2026

ラスタを指定した範囲、ピラミッドレベル、バンド選択、およびフォーマットに従って切り抜き、BYTEA イメージに変換します。デフォルトでは、最大 100 MB のイメージデータを返します。

構文

bytea ST_AsImage(raster raster_obj,
        box extent,
        integer pyramidLevel default 0,
        cstring bands default '',
        cstring format default 'PNG',
        cstring option default '');

パラメーター

パラメーター説明
raster_obj変換対象のラスタです。
extent出力イメージのバウンディングボックスです。デフォルトでは地理座標を使用します。
pyramidLevel読み取り対象のピラミッドレベルです。有効な値は 0 から始まります。デフォルト値: 0
bands出力イメージに含めるバンドです。有効な値は 0 から始まります。'0-2' のように範囲を指定するか、'1,2,3' のようにリスト形式で指定できます。空欄の場合は、デフォルトで最初の 3 バンドが使用されます。バンド数によって出力モードが決まります:1 = グレースケール、2 = グレースケール + アルファ、3 = R, G, B、4 = R, G, B, アルファ。JPEG の場合、1 または 3 バンドを指定してください。PNG の場合、1、2、3、または 4 バンドを指定してください。
format出力イメージのフォーマットです。有効な値: PNG(デフォルト)、JPEG
option高度な変換オプションを指定する JSON 文字列です。詳細については、「オプション」をご参照ください。

オプション

option パラメーターには、以下のフィールドを含む JSON 文字列を指定できます。

フィールドデフォルト値説明
nodataboolfalseNoData 値を使用するかどうかを指定します。true の場合:NoData 値が処理されます。false の場合:NoData 値は通常の値として処理されます。
nodataValueinteger0ラスタの NoData 値です。nodatatrue の場合に必須です。
rast_coordboolfalseextent パラメーターが地理座標ではなくピクセル座標を使用するかどうかを指定します。true の場合、x は列番号、y は行番号(ともに 0 から開始)となります。
strengthstringnone表示強調モードです。none を指定すると強調処理は適用されません。stats を指定すると、統計値に基づくヒストグラム伸張が適用されます。
qualityinteger75圧縮品質です。有効な値: 1~100。

注意事項

  • デフォルトでは、最大 100 MB の切り抜きデータを返すことができます。この制限を調整するには、ganos.raster.clip_max_buffer_size パラメーターを設定してください。

すべての例では、raster_table をクエリし、id = 1 でフィルターします。

地理座標を使用した切り抜き(基本)

SELECT ST_AsImage(raster_obj,
                  '(-180,-90), (0,0)'::Box)
FROM raster_table
WHERE id = 1;

ピラミッドレベルを指定

SELECT ST_AsImage(raster_obj,
                  '(-180,-90), (0,0)'::Box,
                  1)
FROM raster_table
WHERE id = 1;

バンド範囲を指定

SELECT ST_AsImage(raster_obj,
                  '(-180,-90), (0,0)'::Box,
                  1,
                  '0-2')
FROM raster_table
WHERE id = 1;

出力フォーマットを指定

SELECT ST_AsImage(raster_obj,
                  '(-180,-90), (0,0)'::Box,
                  1,
                  '0-2',
                  'PNG')
FROM raster_table
WHERE id = 1;

統計値に基づくヒストグラム伸張を適用

SELECT ST_AsImage(rast,
                  '(-180,-90), (0,0)'::Box,
                  0,
                  '',
                  'PNG',
                  '{"nodata":"false","nodatavalue":"0","rast_coord":"false","strength":"stats","quality":"75"}')
FROM raster_table
WHERE id = 1;

ピクセル座標による切り抜きとヒストグラム伸張の併用

SELECT ST_AsImage(rast,
                  '(0,0), (200,100)'::Box,
                  0,
                  '',
                  'PNG',
                  '{"nodata":"false","nodatavalue":"0","rast_coord":"true","strength":"stats","quality":"75"}')
FROM raster_table
WHERE id = 1;