ST_Raster 値のラスタ サブセットの抽出

ST_Raster の subset 関数は、自身のサブセットを ST_Raster 値として返します。この関数は、古い ST_Raster 値から新しい ST_Raster 値を作成するときに、地理座標またはピクセル座標によって定義された範囲内にあるピクセルなど、元の ST_Raster 値の一部だけが必要な場合に便利です。また、ST_Raster 値の特定のバンドだけが必要な場合や、出力を特定のバンドと範囲によって定義されたピクセルだけに制限する場合にも使用できます。

以下の例では、subset 関数を使用して、地理座標によってパリ市の範囲を抽出しています。結果は同じテーブルにある名前が Paris という新しいレコードに挿入されます。subset の結果は JPEG 圧縮され、挿入前に共一次内挿法によってピラミッドが構築されます。

手順:
  1. 使用しているデータベース管理システムに応じた SQL ステートメントを使用します。

    Oracle

    INSERT INTO URBAN_AREA (sde.st_raster, name)
    SELECT t.raster.subset(
    'extent=(2.313,48.825,2.381,48.891)',
    'compression=rgb,level=-1,bilinear'),'Paris'
    FROM URBAN_AREA t
    WHERE NAME = 'ALL_CITIES';
    

    PostgreSQL

    INSERT INTO urban_area (sde.st_raster, name)
    SELECT subset(raster,
    'extent=(2.313,48.825,2.381,48.891)',
    'compression=rgb,level=-1,bilinear'),'paris'
    FROM urban_area
    WHERE name = 'all_cities';
    

    SQL Server

    INSERT INTO urban_area (dbo.st_raster, name)
    SELECT raster.subset(
    'extent=(2.313,48.825,2.381,48.891)',
    'compression=rgb,level=-1,bilinear'),'Paris'
    FROM urban_area
    WHERE name = 'all_cities';
    

関連トピック

5/25/2014