名前

ST_AsJPEG — ラスタの選択されたバンドを、単一のJoint Photographic Exports Group (JPEG)画像としてバイト配列で返します。バンドを指定せず、1バンドか3より多いバンドがある場合には、1番バンドを使用します。3バンドのみ指定した場合には、3バンドを使用し、RGBに対応付けます。

概要

bytea ST_AsJPEG(raster rast, text[] options=NULL);

bytea ST_AsJPEG(raster rast, integer nband, integer quality);

bytea ST_AsJPEG(raster rast, integer nband, text[] options=NULL);

bytea ST_AsJPEG(raster rast, integer[] nbands, text[] options=NULL);

bytea ST_AsJPEG(raster rast, integer[] nbands, integer quality);

説明

ラスタの選択されたバンドを、単一のJoint Photographic Exports Group (JPEG)画像として返します。 より一般でないラスタタイプで出力する必要がある場合には、ST_AsGDALRasterを使います。バンドを指定せず、1バンドか3より多いバンドがある場合には、1番バンドを使用します。3バンドのみ指定した場合には、3バンドを使用します。この関数には多数の任意引数が付くさまざまな形式があります。引数については次の通りです。

  • nband 単一バンド出力のためのものです。

  • nbands 出力バンドの配列(JPEGでは3要素が最大です)で、バンドの並び順はRGBです。たとえばARRAY[3,2,1]は、3番バンドを赤、2番バンドを緑、1番バンドを赤にそれぞれ対応させます。

  • quality 0から100の数値です。高いほどしっかりした画像になります。

  • options JPEGのために定義するGDALオプションの文字列配列です(ST_GDALDriversのcreate_optionsを見てください)。JPEGの妥当なパラメタはPROGRESSIVEの'ON'または'OFF'と、QUALITYの0から100までの数(デフォルトは75)です。詳細についてはGDAL Raster format optionsをご覧下さい。

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

例: 出力

-- 前から3バンドを75%品質で出力
SELECT ST_AsJPEG(rast) As rastjpg
    FROM dummy_rast WHERE rid=2;
    
-- 第1バンドのみ90%品質で出力
SELECT ST_AsJPEG(rast,1,90) As rastjpg
    FROM dummy_rast WHERE rid=2;
    
-- 前から3バンドを、プログレッシブ、90%品質で出力します
-- 2番を赤、1番を緑、3番を青にします
SELECT ST_AsJPEG(rast,ARRAY[2,1,3],ARRAY['QUALITY=90','PROGRESSIVE=ON']) As rastjpg
    FROM dummy_rast WHERE rid=2;

関連情報

「PostGISラスタを使ったカスタムアプリケーションの構築」, ST_GDALDrivers, ST_AsGDALRaster, ST_AsPNG, ST_AsTIFF