9.6 SDO_GEOR_AGGR.mosaicSubset

形式

SDO_GEOR_AGGR.mosaicSubset(
     inGeoRasters     IN SYS_REFCURSOR, 
     pyramidLevel     IN NUMBER DEFAULT NULL, 
     outSRID          IN NUMBER DEFAULT NULL, 
     outModelCoordLoc IN NUMBER DEFAULT NULL, 
     referencePoint   IN SDO_GEOMETRY DEFAULT NULL, 
     cropArea         IN SDO_GEOMETRY DEFAULT NULL, 
     polygonClip      IN VARCHAR2 DEFAULT 'FALSE', 
     boundaryClip     IN VARCHAR2 DEFAULT 'TRUE', 
     layerNumbers     IN VARCHAR2 DEFAULT NULL, 
     outResolutions   IN SDO_NUMBER_ARRAY DEFAULT NULL, 
     resolutionUnit   IN VARCHAR2 DEFAULT NULL, 
     mosaicParam      IN VARCHAR2 DEFAULT NULL, 
     storageParam     IN VARCHAR2 DEFAULT NULL, 
     outGeoRaster     IN OUT SDO_GEORASTER, 
     bgValues         IN SDO_NUMBER_ARRAY DEFAULT NULL, 
     parallelParam    IN VARCHAR2 DEFAULT NULL);

または

SDO_GEOR_AGGR.mosaicSubset(
     georasterTableNames  IN VARCHAR2, 
     georasterColumnNames IN VARCHAR2, 
     pyramidLevel         IN NUMBER DEFAULT NULL, 
     outSRID             IN NUMBER DEFAULT NULL, 
     outModelCoordLoc    IN NUMBER DEFAULT NULL, 
     referencePoint      IN SDO_GEOMETRY DEFAULT NULL, 
     cropArea            IN SDO_GEOMETRY DEFAULT NULL, 
     polygonClip         IN VARCHAR2 DEFAULT 'FALSE', 
     boundaryClip        IN VARCHAR2 DEFAULT 'TRUE', 
     layerNumbers        IN VARCHAR2 DEFAULT NULL, 
     outResolutions      IN SDO_NUMBER_ARRAY DEFAULT NULL, 
     resolutionUnit      IN VARCHAR2 DEFAULT NULL, 
     mosaicParam         IN VARCHAR2 DEFAULT NULL, 
     storageParam        IN VARCHAR2 DEFAULT NULL, 
     outGeoRaster        IN OUT SDO_GEORASTER, 
     bgValues            IN SDO_NUMBER_ARRAY DEFAULT NULL, 
     parallelParam       IN VARCHAR2 DEFAULT NULL);

または

SDO_GEOR_AGGR.mosaicSubset(
     inGeoRasters     IN SYS_REFCURSOR, 
     pyramidLevel     IN NUMBER DEFAULT NULL, 
     elevationParam   IN VARCHAR2, 
     outSRID          IN NUMBER DEFAULT NULL, 
     outModelCoordLoc IN NUMBER DEFAULT NULL, 
     referencePoint   IN SDO_GEOMETRY DEFAULT NULL, 
     cropArea         IN SDO_GEOMETRY DEFAULT NULL, 
     polygonClip      IN VARCHAR2 DEFAULT 'FALSE', 
     boundaryClip     IN VARCHAR2 DEFAULT 'TRUE', 
     layerNumbers     IN VARCHAR2 DEFAULT NULL, 
     outResolutions   IN SDO_NUMBER_ARRAY DEFAULT NULL, 
     resolutionUnit   IN VARCHAR2 DEFAULT NULL, 
     mosaicParam      IN VARCHAR2 DEFAULT NULL, 
     storageParam     IN VARCHAR2 DEFAULT NULL, 
     outGeoRaster     IN OUT SDO_GEORASTER, 
     bgValues         IN SDO_NUMBER_ARRAY DEFAULT NULL, 
     parallelParam    IN VARCHAR2 DEFAULT NULL,
     referenceImage   IN SDO_GEORASTER DEFAULT NULL,
     referenceValue1  IN SDO_NUMBER_ARRAY DEFAULT NULL,
     referenceValue2  IN SDO_NUMBER_ARRAY DEFAULT NULL,
     refHistograms    IN SDO_GEOR_HISTOGRAM_ARRAY DEFAULT NULL);

または

SDO_GEOR_AGGR.mosaicSubset(
     georasterTableNames  IN VARCHAR2, 
     georasterColumnNames IN VARCHAR2, 
     pyramidLevel         IN NUMBER DEFAULT NULL, 
     elevationParam       IN VARCHAR2, 
     outSRID              IN NUMBER DEFAULT NULL, 
     outModelCoordLoc     IN NUMBER DEFAULT NULL, 
     referencePoint       IN SDO_GEOMETRY DEFAULT NULL, 
     cropArea             IN SDO_GEOMETRY DEFAULT NULL, 
     polygonClip          IN VARCHAR2 DEFAULT 'FALSE', 
     boundaryClip         IN VARCHAR2 DEFAULT 'TRUE', 
     layerNumbers         IN VARCHAR2 DEFAULT NULL, 
     outResolutions       IN SDO_NUMBER_ARRAY DEFAULT NULL, 
     resolutionUnit       IN VARCHAR2 DEFAULT NULL, 
     mosaicParam          IN VARCHAR2 DEFAULT NULL, 
     storageParam         IN VARCHAR2 DEFAULT NULL, 
     outGeoRaster         IN OUT SDO_GEORASTER, 
     bgValues             IN SDO_NUMBER_ARRAY DEFAULT NULL, 
     parallelParam        IN VARCHAR2 DEFAULT NULL,
     referenceImage       IN SDO_GEORASTER DEFAULT NULL,
     referenceValue1      IN SDO_NUMBER_ARRAY DEFAULT NULL,
     referenceValue2      IN SDO_NUMBER_ARRAY DEFAULT NULL,
     refHistograms        IN SDO_GEOR_HISTOGRAM_ARRAY DEFAULT NULL);

説明

仮想モザイクまたはGeoRasterオブジェクトのコレクションに基づいて高度な大規模モザイク処理またはサブセット化を実行します。出力データは、永続的な格納または他の処理のためにGeoRasterオブジェクトに書き込まれます。必要に応じて、内部的幾何補正、共通ポイント・ルール、切れ目充填およびカラー・バランスが実行されます。

パラメータ

inGeoRasters

カーソルのソースGeoRasterオブジェクトを指定します。

georasterTableNames

ソースGeoRasterオブジェクトを含む表の名前(カンマ区切り)を指定します。

これらの表のMIN_X_RES$およびMAX_X_RES$列の定義と使用の詳細は、「使用上のノート」および「MIN_X_RES$およびMAX_X_RES$を使用した問合せパフォーマンスの向上」を参照してください。

georasterColumnNames

georasterTableNamesの表名に対応する表のSDO_GEORASTER型の列の名前(カンマ区切り)を指定します。

pyramidLevel

操作用のソースGeoRasterオブジェクトのピラミッド・レベルを指定します。このパラメータは、outResolutionsパラメータが指定されていない場合に使用され、それ以外の場合、モザイクに含まれるソースGeoRasterオブジェクトのピラミッド・レベルはoutResolutionsパラメータによって決定されます。

ソースGeoRasterオブジェクトにピラミッド・レベル0の同じ解像度が含まれる場合のみ、pyramidLevelパラメータおよびオプションpyramid=true(storageParamパラメータ内)が有効です。 

outResolutionsパラメータがNULLでない場合、pyramidLevelパラメータは無視されます。

elevationParam

標高パラメータのaverage(平均表面高度)を含む文字列を指定します。このパラメータは、引用符で囲まれた文字列で、キーワード=値のペア('average=800'など)を含める必要があります。このパラメータは、出力GeoRasterオブジェクトの標高を指定します。このパラメータがNULLの場合、averageには0が使用されます。

elevationParamパラメータを使用する場合、入力GeoRasterオブジェクトには3DモデルSRIDおよびゼロ以外の平均の表面の高さが含まれる必要があります。

outSRID

出力GeoRasterオブジェクトの座標系を指定します。NULLか、またはMDSYS.CS_SRS表のSRID列の値を指定する必要があります。

outModelCoordLoc

セルによって表現される領域のベースのモデル位置を示す値を指定します。CENTERの場合は0UPPERLEFTの場合は1を指定します。NULLの場合、CENTERが使用されます。

referencePoint

モザイクの参照点として使用するSDO_GEOMETRY型の点を指定します。点を指定する場合、モザイク処理されたイメージの左上角が参照点に揃えられます(referencePointと出力の左上角の間の距離がピクセルの整数になります)。このパラメータがNULLの場合、参照点は、cropAreaの左上角または(cropAreaがNULLの場合)出力エクステントの左上角を暗黙的に使用します。

cropArea

クロッピング領域を定義します。SDO_GEOMETRYオブジェクトにNULL以外のSRIDが含まれる場合、SDO_GEOMETRYオブジェクトで指定される座標はモデル空間にあり、ソースGeoRasterオブジェクトは地理参照される必要がありますが、それ以外の場合、SDO_GEOMETRYオブジェクトで指定される座標はセル空間にあり、ソースGeoRasterオブジェクトは地理参照されても地理参照されなくてもかまいません。polygonClipFALSEの場合、cropAreaのMBRがモザイク処理されたデータをクロッピングするために使用されます。polygonClipTRUEの場合、cropAreaのジオメトリがモザイク処理されたデータをクロッピングするために使用されます。

polygonClip

文字列TRUEではモザイク処理されたデータをクロッピングするためにcropArea値が使用され、文字列FALSEまたはNULL値ではモザイク処理されたデータをクロッピングするためにcropAreaのMBRが使用されます。

boundaryClip

文字列TRUEまたはNULL値では、cropAreaをクリップするために仮想モザイクの境界が使用され、文字列FALSEでは、仮想モザイクの外部にあるがcropArea内にある領域に背景値が入力されます。

layerNumbers

処理を実行する論理レイヤー番号を示す文字列を指定します。カンマで値を区切り、ハイフンで範囲を指定します(たとえば、2-4はレイヤー2、3および4を示します)。指定しない場合、モザイク結果にはソースGeoRasterオブジェクトと同じ数のバンドが含まれます。

outResolutions

出力GeoRasterデータの解像度を指定します。NULLの場合、デフォルトは、最初に出現したGeoRasterオブジェクトの解像度です。詳細は、「使用上のノート」を参照してください。

resolutionUnit

outResolutionsパラメータの単位を指定します。NULLの場合、デフォルトは出力SRIDの単位です。指定する場合、"unit=value"という形式で、引用符で囲んだ文字列にする必要があります。valueは単位名の値です(SDO_UNITS_OF_MEASURE表の有効なUNIT_OF_MEAS_NAME値)。このパラメータは、outResolutionsがNULLである場合は無視されます。

mosaicParam

モザイク・パラメータを指定するため、キーワード=値のペアのカンマで区切られた引用符付き文字列を指定します。これには、表9-1のキーワードを1つ以上含めることができます。

ノート:

GeoRasterのサブプログラムに対する文字列(VARCHAR2)パラメータの中に数値がある場合は、ロケールにかかわらず、小数点にはピリオド(.)を使用する必要があります。

表9-1 mosaicParamキーワード

キーワード 説明

cbreference

(referenceImagereferenceValue1、/referenceValue2およびrefHistogramsパラメータを含むプロシージャ構文でサポートされます。)colorBalanceで使用される参照値のソースを指定します。次のいずれかの値を指定できます。

  • VALUE: 参照値は、referenceValue1およびreferenceValue2パラメータで指定されます。

  • IMAGE: 参照値は、referenceImageパラメータから取得されます。

  • OVERLAP: 参照値は、ソース・イメージの重複する領域から導出されます。

    (SDO_GEOR_AGGR.appendappendParamが指定されている場合は常に無視されます。)

colorBalance

カラー・バランスの方法を指定します。次のいずれかの値を指定できます。

  • NONE (デフォルト): カラー・バランスは実行されません。

  • LINEARSTRETCHING: 線形ストレッチ・メソッドを使用して、ソース・イメージのセル値を参照の最小値および最大値にストレッチします。

    cbreferenceパラメータがVALUEの場合、パラメータreferenceValue1に参照の最小値が含まれ、パラメータreferenceValue2に参照の最大値が含まれます。referenceValue1またはreferenceValue2がNULLの場合、デフォルト値0および255がそれぞれ使用されます。referenceValue1またはreferenceValue2に1つの値のみが含まれる場合、すべてのバンドに適用されます。それ以外の場合、参照値は各バンドに対応しています。したがって、SDO_NUMBER_ARRAYの値の数はソース・イメージのバンドの数と同じである必要があります。

    cbreferenceパラメータがIMAGEの場合、referenceImageの最小値および最大値が参照として使用されます。

    cbreferenceパラメータが指定されない場合、minValおよびmaxValパラメータを使用して、最小および最大の参照値を指定します。

  • STATISTICMATCHING: 参照統計と一致するようにソース・イメージをストレッチします。

    cbreferenceパラメータがVALUEの場合、パラメータreferenceValue1に参照の平均値が含まれ、パラメータreferenceValue2に参照の標準偏差値が含まれます。referenceValue1またはreferenceValue2がNULLの場合、デフォルト値128および100がそれぞれ使用されます。referenceValue1またはreferenceValue2に1つの値のみが含まれる場合、すべてのバンドに適用されます。それ以外の場合、参照値は各バンドに対応しています。したがって、SDO_NUMBER_ARRAYの値の数はソース・イメージのバンドの数と同じである必要があります。

    cbreferenceパラメータがIMAGEの場合、参照イメージの平均値および標準偏差値が一致に使用されます。

    cbreferenceパラメータがOVERLAPの場合、平均値および標準偏差値が重複する領域から導出されます。

    cbreferenceパラメータが指定されていない場合、stdおよびmeanパラメータを使用して参照統計を指定します。

  • HISTOGRAMMATCHING: ソース・イメージのヒストグラムとして参照ヒストグラムを使用します。

    cbreferenceパラメータがVALUEの場合、パラメータreferenceHistogramは各バンドの参照ヒストグラムを定義します。1つの参照ヒストグラムのみを指定すると、すべてのバンドに適用されます。

    cbreferenceパラメータがIMAGEの場合、各バンドの参照イメージのヒストグラムが一致用の参照として使用されます。

    cbreferenceパラメータがOVERLAPの場合、重複する領域のヒストグラムを使用して一致を導出します。

commonPointRule

重複する領域のセル値を取得するための方法を指定します。次のいずれかの値を指定できます。

  • START: 最初に出現したGeoRasterオブジェクトの値が使用されます。

  • END: 最後に出現したGeoRasterオブジェクトの値が使用されます。

  • LATEST: メタデータに最も新しいEndDateTimeが含まれるGeoRasterオブジェクトの値が使用されます。

  • OLDEST: メタデータに最も古いEndDateTimeが含まれるGeoRasterオブジェクトの値が使用されます。

  • CTC: 出力ウィンドウの中心に最も近いGeoRasterオブジェクトのコール値が使用されます。

  • HIGH: すべての重複するGeoRasterオブジェクトの最大セル値が使用されます。

  • LOW: すべての重複するGeoRasterオブジェクトの最小セル値が使用されます。

  • AVERAGE: 重複するGeoRasterオブジェクトのすべてのセル値の平均が使用されます。

  • HIGHRES: 空間解像度が最も高いGeoRasterオブジェクトの値が使用されます。

fillGap

ソース・イメージ間の狭い切れ目を埋めるかどうかを指定します。TRUEでは、2ピクセル以下の幅の切れ目が最も近くにあるピクセル値で埋められます。FALSEでは、切れ目が0 (ゼロ)またbgValueで埋められます。

maxVal

colorBalanceLINEARSTRETCHINGでない場合またはcbreferenceキーワードが指定されている場合は無視されますが、それ以外の場合、線形ストレッチ・メソッドの範囲で最も大きい値を指定します。デフォルトは255です。(SDO_GEOR_AGGR.appendappendParamが指定されている場合は常に無視されます。)

mean

colorBalanceSTATISTICMATCHINGでない場合またはcbreferenceキーワードが指定されている場合は無視されますが、それ以外の場合は統計一致メソッドの参照の平均を指定します。(SDO_GEOR_AGGR.appendappendParamが指定されている場合は常に無視されます。)

minVal

colorBalanceLINEARSTRETCHINGでない場合またはcbreferenceキーワードが指定されている場合は無視されますが、それ以外の場合、線形ストレッチ・メソッドの範囲で最も小さい値を指定します。デフォルトは0です。(SDO_GEOR_AGGR.appendappendParamが指定されている場合は常に無視されます。)

nodata

重複する領域の処理時またはリサンプリングの実行時にNODATA (NODATA値またはNODATAビットマップ・マスク)を考慮するかどうかを指定します。デフォルト値はFALSEです。

重複する領域を処理する場合、nodata=TRUEは、NODATA値のセルを重複する領域の計算に含めません。nodata=FALSEは、すべての重複するセルを重複する領域の計算に含めます。

リサンプリングを実行する場合およびリサンプリング・メソッドがBILINEARBIQUADRATICCUBICAVERAGE4またはAVERAGE16の場合、リサンプリングに含まれるセルにNODATA値がある場合にnodata=TRUEがリサンプリングの結果をNODATA値にします。

resampling

モザイク操作中に使用するリサンプリング・メソッドを指定します(リサンプリングが含まれるか、幾何補正が必要な場合)。NN(デフォルト)、BILINEARBIQUADRATICCUBICAVERAGE4またはAVERAGE16のいずれかの値を指定できます。詳細は、「リサンプリングおよび内挿」を参照してください。

resamplingTolerance

ソースGeoRasterオブジェクトを完全に揃えられない場合にリサンプリングを実行しない許容差を指定します。値は、0から0.5の間にする必要があり、単位はピクセルまたはセルです(たとえば、0.5は半分のピクセルまたはセルを意味します)。指定しない場合、0.5が使用され、リサンプリングは発生しません。

resFilter

出力解像度の範囲にあるGeoRasterオブジェクトのみを選択するようにソースGeoRasterオブジェクトを絞り込むかどうかを指定します(outResolutionパラメータ)。TRUE (デフォルト)の場合、解像度フィルタリングが有効です。FALSEの場合、解像度フィルタリングが無効になり、すべてのソースGeoRasterオブジェクトがモザイク処理プロセスに含まれます。(SDO_GEOR_AGGR.appendappendParamが指定されている場合は常に無視されます。)

std

colorBalanceSTATISTICMATCHINGでない場合またはcbreferenceキーワードが指定されている場合は無視されますが、それ以外の場合は統計一致メソッドの参照の標準偏差を指定します。(SDO_GEOR_AGGR.appendappendParamが指定されている場合は常に無視されます。)

storageParam

記憶域パラメータを示す文字列を指定します(「記憶域パラメータ」を参照)。このパラメータがNULLの場合、結果のGeoRasterオブジェクトは、モデル空間(存在する場合)またはセル空間で最初に出現したソースGeoRasterオブジェクトと同じ記憶域パラメータ(blockSizecellDepthinterleavingおよびcompression)を持ちます。ただし、モザイク処理する最初に出現したGeoRasterオブジェクトと同じ記憶域パラメータをモザイクに設定する場合を除き、出力モザイクのサイズに応じて記憶域パラメータ(特にブロック化サイズ)を指定することをお薦めします。

pyramid=trueを指定すると、outResolutionsパラメータがNULLでpyramidLevelパラメータがNULLでない場合にソースGeoRasterオブジェクトのピラミッドがモザイク処理されます。結果のGeoRasterオブジェクトの最大ピラミッド・レベルは、ソースGeoRasterオブジェクトの最大ピラミッド・レベルの最小値です。デフォルトはpyramid=falseであるため、ピラミッドはモザイク処理されません。

bitmapmask=trueが指定されている場合、ソースGeoRasterオブジェクトのビットマップ・マスクもモザイク処理されます。

outGeoRaster

操作の結果を格納するGeoRasterオブジェクトを指定します。ソースGeoRasterオブジェクトと同じにすることはできません。

bgValues

部分的に空のラスター・ブロックを入力する背景セル値(完全な空のラスター・ブロックは入力されずに空のままです)。クリップ・ポリゴンの外部にある領域やソース・イメージに含まれない切れ目の領域など、モザイク処理の結果から発生する空の領域を入力するために使用されます。(「空のラスター・ブロック」も参照してください。)SDO_NUMBER_ARRAYオブジェクト内の要素の数は、1つ(すべてのバンドに同じ入力値を使用)またはバンド次元のサイズ(各バンドにそれぞれ異なる入力値を使用)のいずれかであることが必要です。たとえば、SDO_NUMBER_ARRAY(1,5,10)では、1番目のバンドに1、2番目のバンドに5、3番目のバンドに10が入力されます。デフォルトのbgValuesは0 (ゼロ)です。

入力値は、ターゲットのセル深度で指定される有効なセル値を指定する必要があります。

parallelParam

操作の並列度を指定します。指定する場合、parallel=nという形式である必要があります(nは1より大きい)。データベース・オプティマイザでは、このパラメータによって指定された並列度を使用します。指定しない場合、デフォルトでパラレル処理は行われません。(詳細は、「GeoRasterでのパラレル処理」を参照してください。)

並列性が指定されている場合、プロシージャによって内部コミット操作が実行されます。エラーが発生した場合(Oracle Parallel Serverが原因である場合でも)、操作をロールバックするために、モザイク処理された結果のGeoRasterオブジェクトを明示的に削除する必要があります。

referenceImage

カラー・バランス操作中に使用される参照イメージを指定します。NULLの場合、デフォルトは問合せの最初のイメージです。

referenceValue1

カラー・バランス操作中に使用される参照値を指定します。値の意味は、カラー・バランス・メソッドで決定されます。

referenceValue2

カラー・バランス操作中に使用される参照値を指定します。値の意味は、カラー・バランス・メソッドで決定されます。

referenceHistograms

カラー・バランス操作中に使用される参照ヒストグラムを指定します。

使用上のノート

プロシージャの最初の2つの構文は、基本的なカラー・バランス・メソッドを指定し、出力GeoRasterオブジェクトの標高が0であると仮定します。プロシージャの最後の2つの構文は、参照値または参照イメージを使用した高度なカラー・バランス・メソッドを指定します。出力GeoRasterオブジェクトの標高値を指定する必要があります。

ソースGeoRasterオブジェクトは、モザイク処理を実行できるように、イメージまたはラスター・データとして準備しておく必要があります。つまり、モザイク処理されるGeoRasterオブジェクトは、次の条件を満たしている必要があります。

  • 地理参照されているオブジェクトと地理参照されていないオブジェクトを混在させないこと。すべてのオブジェクトが地理参照されているか、地理参照されているオブジェクトが1つもないこと。

  • 同じレイヤー数またはバンド数を持つ。ソース・オブジェクトの行および列の次元サイズに対する制限はありません。

モザイク処理されるGeoRasterオブジェクトが地理参照される場合、これらのオブジェクトはその地理参照情報に従ってともに配置されます。GeoRasterオブジェクトが地理参照されない場合、これらのオブジェクトはULTCoordinate値に従ってともに配置されます。(ULTCoordinateの詳細は、「GeoRasterデータ・モデル」を参照してください。)

結果のGeoRasterオブジェクトの空間参照メタデータは、outSRIDおよびoutResolutionsパラメータによって決定されます。outSRIDが指定されていない場合、最初に出現したソースGeoRasterオブジェクトのSRIDが使用されます。outResolutionsが指定されていない場合、指定したピラミッド・レベル(pyramidLevelパラメータ)で最初に出現したソースGeoRasterオブジェクトの空間解像度が使用されます。空間解像度は、すべてのソース・イメージのメタデータに設定する必要があります。

ソースGeoRasterオブジェクトがoutSRIDと異なるSRIDを持っているか、幾何補正されていない場合、モザイク処理されたGeoRasterオブジェクトが同一のSRIDおよび空間解像度の値を持つように、動的に再投影または幾何補正されます。

ソースGeoRasterオブジェクトが重複している場合、重複する領域のデータは、mosaicParamパラメータで指定されたルールに準拠します。デフォルトでは、最後に出現したソースGeoRasterオブジェクトのセル値が使用されます。

出力モザイクに提供されるソースGeoRasterオブジェクトは、空間がcropAreaパラメータ、解像度がoutResolutionsパラメータ(解像度の選択)によって選択されます。

  • cropAreaパラメータを使用してソースGeoRasterオブジェクトの空間エクステントを問い合せて、cropAreaジオメトリに含まれるGeoRasterオブジェクトを決定します。したがって、空間索引をGeoRasterオブジェクトのspatialExtent属性で作成する必要があります。

  • outResolutions値がソースGeoRasterオブジェクトの解像度の範囲内であるように、outResolutionsパラメータを使用してソースGeoRasterオブジェクトを検索します。GeoRasterオブジェクトの空間解像度の範囲は、ピラミッド・レベル0の解像度とGeoRasterオブジェクトの最高のピラミッド・レベルの解像度によって決定されます。ピラミッド・レベル0より低い半分のピラミッドと最高のピラミッド・レベルより高い半分のピラミッド・レベルです。たとえば、GeoRasterオブジェクトにピラミッド・レベル0の30メートルの解像度および最高のピラミッド・レベル5の960メートルの解像度が含まれる場合、このGeoRasterオブジェクトの空間解像度の範囲は、22.5メートル((30 + 30/2)/2)から1440メートル((960 + 960*2)/2)の間です。

outResolutionsパラメータを使用した解像度の選択の高速化を可能にするには、georasterTableNamesパラメータにリストされている表の列MIN_X_RES$およびMAX_X_RES$ (両方ともNUMBER型)を定義します(MIN_X_RES$とMAX_X_RES$では、それぞれソースGeoRasterオブジェクトの最小および最大の空間解像度の値を指定します)。(多数のソースGeoRasterオブジェクトがある場合、Bツリー索引をMIN_X_RES$およびMAX_X_RES$列で作成する必要があります。)この機能を利用するには、georasterTableNamesパラメータのプロシージャ構文を使用する必要があります。また、MIN_X_RES$およびMAX_X_RES$列に格納される解像度の値にソースGeoRasterオブジェクトのspatialExtent属性に格納されるSRIDと同じ単位が含まれる必要があります。

mosaicParamパラメータのresFilter=falseを設定して、解像度の選択をオフにできます。解像度の選択をオフにすると、ソースGeoRasterオブジェクトが空間的にのみフィルタ処理されます。

ソースGeoRasterオブジェクトに空のラスター・ブロックが含まれるか、ソースGeoRasterオブジェクトが領域全体を覆っていない場合、モザイク処理された結果のGeoRasterオブジェクトには、空のラスター・ブロックまたは部分的に空のラスター・ブロック(空のラスター・ブロックを参照)が含まれます。いずれのソースGeoRasterオブジェクトにも含まれない結果のラスター・ブロックは、空のままです。部分的に空のラスター・ブロックにはbgValuesパラメータに指定した値が入力されます。bgValuesパラメータを指定しない場合は0 (ゼロ)が入力されます。

storageParam文字列でbitmapmaskパラメータがtrueに設定されている場合、ビットマップ・マスクがモザイク処理されます。デフォルトでは、ビットマップ・マスクはモザイク処理されません。ビットマップ・マスクもNODATAとみなされる可能性があることに注意してください(その場合、表9-1のNODATAキーワードを参照してください)

mosaicParamcolorBalanceオプションを使用するには、ソース・イメージのSDO_GEOR.generateStatisticsをコールし、イメージの統計を生成してそれらをソース・イメージのメタデータに格納する必要があります。

ソースとなるすべてのGeoRasterオブジェクトが空白で、同じblankCellValue値を持つ場合、結果のGeoRasterオブジェクトも空白になり、そのblankCellValue値を持ちます。そうでない場合、結果のGeoRasterオブジェクトは空白にはなりません。

モザイク処理の結果を含めるGeoRasterオブジェクト(georasterパラメータ)には、ソースGeoRasterオブジェクト(モザイク処理を行う対象となるオブジェクト)を指定することはできません。

モザイク処理では、一定の間隔で内部コミット操作が実行されるため、ロールバックできません。処理が中断された場合、ダングリング・ラスター・ブロックがラスター・データ表に存在する可能性があります。ダングリング・ラスター・ブロックは、GeoRasterオブジェクトおよびシステム・データをデータベースでメンテナンスすることにより処理できます(「データベースのGeoRasterオブジェクトおよびシステム・データのメンテナンス」を参照)。

詳細は、「大規模イメージのモザイク処理」および「仮想モザイク」を参照してください。

次の例は、指定されたpyramidLevelでソース・イメージをモザイクする方法を示しています。これには、すべてのソース・イメージが同じ空間解像度を持ち、指定されたpyramidLevelで生成されたピラミッドを持っている必要があります。

DECLARE
gr sdo_georaster;
BEGIN
    INSERT INTO georaster_table (georid, georaster)
        VALUES (10, SDO_GEOR.init('RDT_1',10))
        RETURNING georaster INTO gr;
    
-- mosaic at pyramidLevel=1,output SRID defaults to 
-- the SRID of the first source image, fillGap=true. 
-- Enable parallel processing with parallel degree set as 4.
    SDO_GEOR_AGGR.mosaicSubset('georaster_table_1, georaster_table_2', 
                   'georaster, georaster', 
                   1, null, null, null, null, null,
                   null, null, null, null, null, 
                   'fillGap=true', 
                   'blocking=optimalpadding, blocksize=(512,512,3)', 
                   gr, null, 'parallel=4');
 
    UPDATE georaster_table SET georaster = gr WHERE georid=10;
    COMMIT;                                                              
END;
/

次の例は、outSRIDoutResolutionsおよびcropAreaパラメータを使用して、ソース・イメージの最初のバンドをモザイクする方法を示しています。重複する領域は、commonPointRuleモザイク・パラメータによって決まります。

DECLARE
gr             sdo_georaster;
outSRID        number;
cropArea       sdo_geometry;
resolutions    sdo_number_array;
resolutionUnit varchar2(16);
bgValues       sdo_number_array;
layerNumbers   varchar2(8);
mosaicParam    varchar2(64);
BEGIN
    INSERT INTO georaster_table (georid, georaster)
        VALUES (10, SDO_GEOR.init('RDT_1',10))
        RETURNING georaster INTO gr;

    -- set the parameters
    outSRID := 4326;
    cropArea :=  sdo_geometry(2003, 26986, null,                 
              sdo_elem_info_array(1, 1003, 3), 
              sdo_ordinate_array(399180, 4247820, 
                                 496140,4353900) );
    resolutions := sdo_number_array(30, 30);
    resolutionUnit := ‘unit=meter’;
    layerNumbers := ‘0’;
    bgValues := sdo_number_array(0);
    mosaicParam := ‘commonPointRule=high, nodata=true’;

-- Enable parallel processing with parallel degree set as 4.
    SDO_GEOR_AGGR.mosaicSubset('georaster_table_1, georaster_table_2', 
                   'georaster, georaster', 
                   null, null, outSRID, null, null, cropArea,
                   null, null, layerNumbers, resolutions,
                   resolutionUnit, mosaicParam, 
                   'blocking=optimalpadding, blocksize=(512,512,3)', 
                   gr, bgValues, 'parallel=4');
 
    UPDATE georaster_table SET georaster = gr WHERE georid=10;
    commit;
END;
/