J Oracle Multimedia SQL/MM Still Imageオブジェクト型

Oracle Multimediaには、ISO/IEC 13249-5:2001 SQL MM Part5:StillImage規格(通常、SQL/MM Still Image規格と呼ばれる)の第1版に準拠したオブジェクト型について次の情報が含まれます。

注意:

ISO/IEC 13249-5:2001 SQL MM Part5:StillImage規格(通常、SQL/MM Still Image規格と呼ばれる)の第1版に準拠したオブジェクト型に対するOracle Multimediaのサポートは、Oracle Database 12c リリース2 (12.2)では非推奨であり、将来のリリースではサポートされなくなる可能性があります。できるだけ早く、非推奨となった機能の使用を停止することをお薦めします。

  • SI_AverageColorオブジェクト型

    イメージの平均色特性を記述します。

  • SI_Colorオブジェクト型

    デジタル・イメージの色値をカプセル化します。

  • SI_ColorHistogramオブジェクト型

    イメージ・サンプルによって表示される色の相対頻度を記述します。

  • SI_FeatureListオブジェクト型

    複合特性によって表現されるイメージを記述します。複合特性は、最大4つの基本イメージ特性(SI_AverageColor、SI_ColorHistogram、SI_PositionalColorおよびSI_Texture)と、それらに関連付けられた特性の重みに基づきます。

  • SI_PositionalColorオブジェクト型

    イメージの位置色特性を記述します。イメージがn×m個の四角形に分割されると想定すると、位置色特性は、その四角形の主要なn×m色によってイメージを特徴付けます。

  • SI_StillImageオブジェクト型

    高さ、幅、フォーマットなどの固有のイメージ特性でデジタル・イメージを表現します。

  • SI_Textureオブジェクト型

    反復項目のサイズ(粗さ)、輝度のバリエーション(コントラスト)および主要な方向(方向性)によって特徴付けられるイメージのテクスチャ特性を記述します。

StillImageオブジェクト型は、ordisits.sqlファイルで定義されています。インストール後、このファイルは次のOracleホーム・ディレクトリに格納されています。

<ORACLE_HOME>/ord/im/admin (LinuxおよびUNIXの場合)

<ORACLE_HOME>\ord\im\admin (Windowsの場合)

対応するオブジェクト型名を持つパブリック・シノニムが、これらの各StillImageオブジェクト型に作成されます。したがって、StillImageオブジェクト型を指定する際、ORDSYSスキーマ名を指定する必要はありません。

後続の説明では、SQLファンクションおよびプロシージャの作成と使用の概要、VARRAY型の属性の構文、およびサポートされているイメージ・フォーマットと実装定義された値の情報を検出する際に使用できるSI_INFORMTN_SCHEMAのビューについて説明します。

J.1 SQLファンクションおよびプロシージャ

Still Imageの各コンストラクタまたはメソッドには、同等のSQLファンクションまたはプロシージャが存在します。各コンストラクタまたはメソッドの説明では、それと同等のファンクションまたはプロシージャを示しています。「説明」、「パラメータ」、「使用上の注意」および「例外」の項では主にメソッドについて説明していますが、これらの項の内容は、そのメソッドと同等のSQLファンクションまたはプロシージャにも適用できます。

すべてのSQLファンクションおよびプロシージャは、実行者権限が設定されたORDSYSスキーマにスタンドアロン・ファンクションとして作成されます。対応するファンクション名またはプロシージャ名を持つパブリック・シノニムが、すべてのSQLファンクションおよびプロシージャに作成されます。そのため、ファンクションまたはプロシージャのコール時にスキーマ名を指定する必要はありません。たとえば、シノニムのないコールでは、ORDSYS.SI_MkAvgClr(averageColor)を使用します。シノニムのあるコールでは、SI_MkAvgClr(averageColor)を使用します。すべてのデータベース・ユーザーは、これらのファンクションおよびプロシージャをコールできます。

J.2 内部ヘルパー型

配列で構成される属性は、内部ヘルパー型として指定されます。内部ヘルパー型は、ORDSYSスキーマに作成され、パブリック・シノニムを持ちません。

内部ヘルパー型には次のものがあります。

  • colorsList

    この内部ヘルパー型の構文は、次のとおりです。

    CREATE OR REPLACE TYPE colorsList AS VARRAY(100) OF SI_Color;
    

    この内部ヘルパー型は、SI_ColorHistogramオブジェクト型のSI_ColorsList属性の指定に使用されます。

  • colorFrequenciesList

    この内部ヘルパー型の構文は、次のとおりです。

    CREATE OR REPLACE TYPE colorFrequenciesList AS VARRAY(100) OF DOUBLE PRECISION;
    

    この内部ヘルパー型は、SI_ColorHistogramオブジェクト型のSI_FrequenciesList属性の指定に使用されます。

  • colorPositions

    この内部ヘルパー型の構文は、次のとおりです。

    CREATE OR REPLACE TYPE colorPositions AS VARRAY(9) OF SI_Color;
    

    この内部ヘルパー型は、SI_PositionalColorオブジェクト型のSI_ColorPositions属性の指定に使用されます。

  • textureEncoding

    この内部ヘルパー型の構文は、次のとおりです。

    CREATE OR REPLACE TYPE textureEncoding AS VARRAY(5) of DOUBLE PRECISION;
    

    この内部ヘルパー型は、SI_Textureオブジェクト型のSI_TextureEncoding属性の指定に使用されます。

J.3 SI_AverageColorオブジェクト型

SI_AverageColorオブジェクト型は、イメージの平均色特性を記述します。これは、実行者権限が設定されたORDSYSスキーマに作成されます。INSTANTIABLEおよびNOT FINAL型として宣言されます。

注意:

属性に直接アクセスすると、SI_AverageColorオブジェクトの内部表現を変更してしまう可能性があるため、それを避けるためにSI_AverageColorオブジェクト型のコンストラクタおよびメソッドを使用してください。

このオブジェクト型の属性は、ordisits.sqlファイルで次のように定義されています。

-------------------
-- TYPE ATTRIBUTES
-------------------
SI_AverageColorSpec SI_Color,

説明:

  • SI_AverageColorSpec: オブジェクトの平均色。

J.4 SI_AverageColorのコンストラクタ

SI_AverageColorオブジェクトのコンストラクタは2つあります。

J.4.1 SI_AverageColor(averageColorSpec)

構文

SI_AverageColor(averageColorSpec IN SI_Color)
 RETURN SELF AS RESULT DETERMINISTIC;

同等のSQLファンクションの構文

SI_MkAvgClr(avgClr IN SI_Color) RETURN SI_AverageColor DETERMINISTIC;

説明

SI_AverageColorオブジェクトを構築します。SI_AverageColorSpec属性は、指定した色の値で初期化されます。

パラメータ

averageColorSpec avgClr

SI_AverageColorオブジェクトの構築に使用する色を指定します。

プラグマ

なし。

例外

なし。

使用上の注意

次の1つ以上の条件に該当する場合、エラー・メッセージが戻されます。

  • 指定したaverageColorSpecの値がNULLである。

  • 指定したaverageColorSpecの値が有効なSI_Color値でない。

なし。

J.4.2 SI_AverageColor(sourceImage)

構文

SI_AverageColor(sourceImage IN SI_StillImage)
 RETURN SELF AS RESULT DETERMINISTIC;

同等のSQLファンクションの構文

SI_FindAvgClr(sourceImage IN SI_StillImage)
  RETURN SI_AverageColor DETERMINISTIC;

説明

指定されたイメージからSI_AverageColor値を導出します。イメージは、n個のサンプルに分割されます。次に、すべてのサンプルの各構成要素(赤、緑、青)が個別に加算され、サンプル数で除算されます。これにより、指定したイメージの構成要素の値が取得されます。SI_AverageColorを決定する処理は、次の式でも説明できます(nはサンプル数です)。

パラメータ

sourceImage

平均色特性の抽出元のイメージを指定します。

プラグマ

なし。

例外

なし。

使用上の注意

次の1つ以上の条件に該当する場合、エラーが戻されます。

  • 指定したイメージの値がNULLである。

  • sourceImage.SI_Contentの値がNULLである。

  • 指定したイメージのフォーマットで、平均色特性がサポートされていない。任意のイメージのフォーマットで、テクスチャ特性がサポートされているかどうかを確認するには、SI_IMAGE_FORMAT_FEATURESビューまたはSI_IMAGE_FRMT_FTRSビューを問い合せてください。

なし。

J.5 SI_AverageColorのメソッド

イメージ・マッチングに使用できるSI_AverageColorのメソッドが1つあります。

J.5.1 SI_AverageColorのSI_Score( )

構文

SI_Score(image in SI_StillImage)
 RETURN DOUBLE PRECISION DETERMINISTIC;

同等のSQLファンクションの構文

SI_ScoreByAvgClr(feature IN SI_AverageColor, image IN SI_StillImage)
 RETURN DOUBLE PRECISION DETERMINISTIC;

説明

指定されたイメージを、メソッドが適用されるSI_AverageColorオブジェクト・インスタンスと比較して、スコアを判断して戻します。このメソッドは、DOUBLE PRECISIONの値を0から100の数値で戻します。値が0の場合、指定されたイメージとSI_AverageColorオブジェクト・インスタンスの平均色は同一です。値が100の場合は、指定されたイメージとSI_AverageColorオブジェクト・インスタンスの平均色は完全に異なります。

パラメータ

image

このメソッドを適用するSI_AverageColorオブジェクト・インスタンスと平均色特性を比較するイメージを指定します。

feature

SI_AverageColor値を指定します。

使用上の注意

次のいずれかの条件に該当する場合、NULL値が戻されます。

  • メソッドを適用するSI_AverageColorの値がNULLである。

  • 指定したイメージの値がNULLである。

  • image.content_SIの値がNULLである。

  • 指定したイメージ・フォーマットで、SI_AverageColor特性がサポートされていない。

プラグマ

なし。

例外

なし。

なし。

J.6 SI_Colorオブジェクト型

SI_Colorオブジェクト型は、デジタル・イメージの色値をRGB色値として表現します。これは、実行者権限が設定されたORDSYSスキーマに作成されます。INSTANTIABLEおよびNOT FINAL型として宣言されます。

注意:

属性に直接アクセスすると、SI_Colorオブジェクトの内部表現を変更してしまう可能性があるため、それを避けるためにSI_Colorのメソッドを使用してください。

このオブジェクト型の属性は、ordisits.sqlファイルで次のように定義されています。

-------------------
-- TYPE ATTRIBUTES
-------------------
redValue   INTEGER,
greenValue INTEGER,
blueValue  INTEGER,

説明:

  • redValue: RGB色値の赤の構成要素の整数値。

  • greenValue: RGB色値の緑の構成要素の整数値。

  • blueValue: RGB色値の青の構成要素の整数値。

J.7 SI_Colorのコンストラクタ

SI_Colorオブジェクト用に提供されるコンストラクタは、システムのデフォルト・コンストラクタのみです。

J.8 SI_Colorのメソッド

SI_Colorのメソッドは、RGB色値を使用してSI_Colorオブジェクトを構築するために使用します。

J.8.1 SI_RGBColor( )

構文

SI_RGBColor(redValue    IN INTEGER,
            greenValue  IN INTEGER,
            blueValue   IN INTEGER);

同等のSQLファンクションの構文

SI_MkRGBClr(redValue    IN INTEGER,
            greenValue  IN INTEGER,
            blueValue   IN INTEGER)  RETURN SI_Color;

説明

指定された赤、青および緑の値を使用して、RGB色領域にSI_Colorオブジェクトを構築します。

パラメータ

redValue

0から255の整数値を指定します。

greenValue

0から255の整数値を指定します。

blueValue

0から255の整数値を指定します。

使用上の注意

  • システムのデフォルト・コンストラクタをコールしてNULL値を指定し、SI_RGBColorメソッドをコールしてRGB値を設定する必要があります。この2段階の処理が必要な理由は、次のとおりです。

    • SQL/MM規格ではこの型用のオブジェクト・コンストラクタの仕様が規定されていないため、システムのデフォルト・コンストラクタを使用する必要があります。

    • デフォルト・コンストラクタは、引数の検証を行いません。SI_RGBColorメソッドをコールすることによって、色属性に割り当てる前に、指定した値を検証します。

  • 指定したいずれかの値がNULLの場合、または値が0から255以外の場合は、エラーが戻されます。

プラグマ

なし。

例外

なし。

なし。

J.9 SI_ColorHistogramオブジェクト型

SI_ColorHistogramオブジェクト型は、イメージの色ヒストグラム特性を表現します。イメージのサンプルによって表示される色の相対頻度を記述します。これは、実行者権限が設定されたORDSYSスキーマに作成されます。INSTANTIABLEおよびNOT FINAL型として宣言されます。このオブジェクト型の定義は次のとおりです。(colorsListおよびcolorFrequenciesList属性の構文の詳細は、「内部ヘルパー型」を参照してください。)

注意:

属性に直接アクセスすると、SI_ColorHistogramオブジェクトの内部表現を変更してしまう可能性があるため、それを避けるためにSI_ColorHistogramのコンストラクタおよびメソッドを使用してください。

このオブジェクト型の属性は、ordisits.sqlファイルで次のように定義されています。

-------------------
-- TYPE ATTRIBUTES
-------------------
SI_ColorsList       colorsList,
SI_FrequenciesList  colorFrequenciesList,

説明:

  • SI_ColorsList: イメージの色値を表現するSI_Colorオブジェクト型の配列。

  • SI_FrequenciesList: イメージの色頻度を表現するcolorFrequencies属性の配列。値の範囲は0から100です。各配列要素は、SI_ColorsList配列内での対応する色の頻度を表現します。

J.10 SI_ColorHistogramのコンストラクタ

SI_ColorHistogramオブジェクトのコンストラクタは複数あります。

J.10.1 SI_ColorHistogram(colors, frequencies)

構文

SI_ColorHistogram(SI_ColorsList       IN colorsList,
                  SI_FrequenciesList  IN colorFrequenciesList)
 RETURN SELF AS RESULT DETERMINISTIC;

説明

SI_ColorHistogramオブジェクトを構築します。次の属性が初期化されます。

  • SI_ColorsList配列属性: 指定した色の値で初期化されます。

  • SI_FrequenciesList配列属性: 指定した頻度の値で初期化されます。

SI_ColorsListおよびcolorFrequenciesList属性の構文の詳細は、「内部ヘルパー型」を参照してください。

プラグマ

なし。

同等のSQLファンクションの構文

SI_ArrayClrHstgr(colors      IN SI_ColorsList,
                 frequencies IN colorFrequenciesList),
 RETURN SI_ColorHistogram DETERMINISTIC;

パラメータ

SI_ColorsList colors

最大サイズのMaxHistogramLengthを持つ色の配列を指定します。SI_MaxHistogramLengthの値を取得するには、SI_INFORMTN_SCHEMAのSI_VALUESビューを問い合せてください。

SI_FrequenciesList frequencies

最大サイズのMaxHistogramLengthを持つ色頻度の配列を指定します。

例外

なし。

使用上の注意

次のいずれかの条件に該当する場合、エラーが戻されます。

  • 指定したいずれかの値がNULLである。

  • 指定したいずれかの頻度値が0から100以外である。

なし。

J.10.2 SI_ColorHistogram(firstColor, frequency)

構文

SI_ColorHistogram(firstColor  IN SI_Color,
                  frequency   IN DOUBLE PRECISION)
 RETURN SELF AS RESULT DETERMINISTIC;

同等のSQLファンクションの構文

SI_MkClrHstgr(firstColor  IN SI_Color,
              frequency   IN DOUBLE PRECISION)
 RETURN SI_ColorHistogram DETERMINISTIC;

説明

SI_ColorHistogramオブジェクトに単一の色/頻度ペアを作成します。次の属性が初期化されます。

  • SI_ColorsList配列属性: 指定したfirstColorの値で初期化されます。

  • SI_FrequenciesList配列属性: 指定したfrequencyの値で初期化されます。

パラメータ

firstColor

SI_ColorHistogramの色値を指定します。

frequency

firstColorパラメータのSI_ColorHistogramの頻度値を指定します。

プラグマ

なし。

例外

なし。

使用上の注意

次のいずれかの条件に該当する場合、エラーが戻されます。

  • 指定したいずれかの値がNULLである。

  • 指定した頻度が0から100以外である。

なし。

J.10.3 SI_ColorHistogram(sourceImage)

構文

SI_ColorHistogram(sourceImage IN SI_StillImage)
 RETURN SELF AS RESULT DETERMINISTIC;

同等のSQLファンクションの構文

SI_FindClrHstgr (sourceImage IN SI_StillImage)
 RETURN SI_ColorHistogram DETERMINISTIC;

説明

指定されたイメージから色ヒストグラムを抽出します。次の属性が初期化されます。

  • SI_ColorsList属性: 指定したイメージから導出された色値で初期化されます。

  • SI_FrequenciesList属性: 指定したイメージから導出された頻度で初期化されます。

パラメータ

sourceImage

色ヒストグラムの抽出元のイメージを指定します。

プラグマ

なし。

例外

なし。

使用上の注意

次のいずれかの条件に該当する場合、エラーが戻されます。

  • 指定したイメージの値がNULLである。

  • sourceImage.SI_Contentの値がNULLである。

  • このイメージ・フォーマットで、色ヒストグラム特性がサポートされていない。

任意のイメージ・フォーマットで色ヒストグラム特性がサポートされているかどうかを確認するには、SI_IMAGE_FORMAT_FEATURESビューまたはSI_IMAGE_FRMT_FTRSビューを問い合せてください。

なし。

J.11 SI_ColorHistogramのメソッド

色ヒストグラム構成とイメージ・マッチングに使用されるSI_ColorHistogramのメソッドは、複数あります。

J.11.1 SI_Append( )

構文

SI_Append(color      IN SI_Color,
          frequency  IN DOUBLE PRECISION);

同等のSQLプロシージャの構文

SI_AppendClrHstgr(feature    IN OUT NOCOPY SI_ColorHistogram,
                  color      IN SI_Color,
                  frequency  IN DOUBLE PRECISION);

説明

色/頻度ペアによって、指定されたSI_ColorHistogram値を拡張します。

パラメータ

color

ヒストグラムに追加する色値を指定します。

frequency

ヒストグラムに追加する色に対応する頻度値を指定します。

feature

色値および頻度値を追加する色ヒストグラムを指定します。

使用上の注意

次のいずれかの条件に該当する場合、エラーが戻されます。

  • 指定したいずれかの値がNULLである。

  • 頻度が0から100以外である。

  • SI_ColorsList属性にSI_MaxHistogramLength要素が指定されている。

プラグマ

なし。

例外

なし。

なし。

J.11.2 SI_ColorHistogramのSI_Score( )

構文

SI_Score(image IN SI_StillImage) RETURN DOUBLE PRECISION DETERMINISTIC;

同等のSQLファンクションの構文

SI_ScoreByClrHstgr(feature  IN SI_ColorHistogram,
                   image    IN SI_StillImage)
 RETURN DOUBLE PRECISION DETERMINISTIC;

説明

指定されたイメージの色ヒストグラムを、このメソッドが適用されるSI_ColorHistogramオブジェクト・インスタンスと比較して、スコアを判断して戻します。このメソッドは、DOUBLE PRECISIONの値を0から100の数値で戻します。値が0の場合、指定されたイメージとSI_ColorHistogramオブジェクト・インスタンスの色ヒストグラムは同一です。値が100の場合は、指定されたイメージとSI_ColorHistogramオブジェクト・インスタンスの色ヒストグラムは完全に異なります。次のいずれかの条件に該当する場合、NULL値が戻されます。

  • SI_ColorHistogramオブジェクト・インスタンスの値がNULLである。

  • 指定したイメージの値がNULLである。

  • image.SI_Contentの値がNULLである。

  • 指定したイメージのフォーマットで、色ヒストグラム特性の値がサポートされていない。

パラメータ

image

比較に使用する色ヒストグラム特性の抽出元のイメージを指定します。

feature

指定したイメージの色ヒストグラムと比較するヒストグラムを指定します。

使用上の注意

なし。

プラグマ

なし。

例外

なし。

なし。

J.12 SI_FeatureListオブジェクト型

最大4つの基本特性と、それらに関連付けられた特性の重みが含まれる複合特性です。重み値によって、イメージ・マッチング時に特定の特性に割り当てられる重要度が指定されます。各重み値には、0.0から1.0の値を指定できます。特性の重み値が0.0の場合、特性はイメージ・マッチングで考慮されません。このオブジェクト型は、実行者権限が設定されたORDSYSスキーマに作成されます。INSTANTIABLEおよびNOT FINAL型として宣言されます。

注意:

属性に直接アクセスすると、SI_FeatureListオブジェクトの内部表現を変更してしまう可能性があるため、それを避けるためにSI_FeatureListのコンストラクタおよびメソッドを使用してください。

このオブジェクト型の属性は、ordisits.sqlファイルで次のように定義されています。

-------------------
-- TYPE ATTRIBUTES
-------------------
AvgClrFtr_SI         SI_AverageColor,
AvgClrFtrWght_SI     DOUBLE PRECISION,
ClrHstgrFtr_SI       SI_ColorHistogram,
ClrHstgrFtrWght_SI   DOUBLE PRECISION,
PstnlClrFtr_SI       SI_PositionalColor,
PstnlClrFtrWght_SI   DOUBLE PRECISION,
TextureFtr_SI        SI_Texture,
TextureFtrWght_SI    DOUBLE PRECISION,

説明:

  • AvgClrFtr_SI: 平均色。

  • AvgClrFtrWght_SI: 平均色特性の重み(デフォルト値は0.0)。

  • ClrHstgrFtr_SI: 色ヒストグラム。

  • ClrHstgrFtrWght_SI: 色ヒストグラムの重み(デフォルト値は0.0)。

  • PstnlClrFtr_SI: 位置色。

  • PstnlClrFtrWght_SI: 位置色の重み(デフォルト値は0.0)。

  • TextureFtr_SI: テクスチャ。

  • TextureFtrWght_SI: テクスチャの重み(デフォルト値は0.0)。

J.13 SI_FeatureListのコンストラクタ

SI_FeatureListのコンストラクタは1つあります。

J.13.1 SI_FeatureList( )

構文

SI_FeatureList((AvgClrFtr_SI        IN SI_AverageColor,
                AvgClrFtrWght_SI    IN DOUBLE PRECISION,
                ClrHstgrFtr_SI      IN SI_ColorHistogram,
                ClrHstgrFtrWght_SI  IN DOUBLE PRECISION,
                PstnlClrFtr_SI      IN SI_PositionalColor,
                PstnlClrFtrWght_SI  IN DOUBLE PRECISION,
                TextureFtr_SI       IN SI_Texture,
                TextureFtrWght_SI   IN DOUBLE PRECISION)

同等のSQLファンクションの構文

SI_MkFtrList(averageColorFeature          IN SI_AverageColor,
             averageColorFeatureWeight    IN DOUBLE PRECISION,
             colorHistogramFeature        IN SI_ColorHistogram,
             colorHistogramFeatureWeight  IN DOUBLE PRECISION,
             positionalColorFeature       IN SI_PositionalColor,
             positionalColorFeatureWeight IN DOUBLE PRECISION,
             textureFeature               IN SI_Texture,
             textureFeatureWeight         IN DOUBLE PRECISION)
 RETURN SI_FeatureList;

説明

SI_FeatureListオブジェクトを構築します。すべての特性および特性の重みの属性が、対応する入力パラメータの値に設定されます。

パラメータ

AvgClrFtr_SI
averageColorFeature

SI_FeatureListの平均色を指定します。

AvgClrFtrWght_SI
averageColorFeatureWeight

SI_FeatureListの平均色の重みを指定します。デフォルト値は0.0です。重み値の範囲は、0.0から1.0です。値が0.0の場合、特性はイメージ・マッチング時に考慮されません。

ClrHstgrFtr_SI
colorHistogramFeature

SI_FeatureListの色ヒストグラムを指定します。

ClrHstgrFtrWght_SI
colorHistogramFeatureWeight

SI_FeatureListの色ヒストグラムの重みを指定します。デフォルト値は0.0です。重み値の範囲は、0.0から1.0です。値が0.0の場合、特性はイメージ・マッチング時に考慮されません。

PstnlClrFtr_SI
positionalColorFeature

SI_FeatureListの位置色を指定します。

PstnlClrFtrWght_SI
positionalColorFeatureWeight

SI_FeatureListの位置色の重みを指定します。デフォルト値は0.0です。重み値の範囲は、0.0から1.0です。値が0.0の場合、特性はイメージ・マッチング時に考慮されません。

TextureFtr_SI
textureFeature

SI_FeatureListのテクスチャを指定します。

TextureFtrWght_SI
textureFeatureWeight

SI_FeatureListのテクスチャの重みを指定します。デフォルト値は0.0です。重み値の範囲は、0.0から1.0です。値が0.0の場合、特性はイメージ・マッチング時に考慮されません。

プラグマ

なし。

例外

なし。

使用上の注意

次のいずれかの条件に該当する場合、エラーが戻されます。

  • AvgClrFtr_SI属性がNULL値でない場合に、AvgClrFtrWght_SI属性値がNULLまたは0(ゼロ)より小さい値である。

  • ClrHstgrFtr_SI属性がNULL値でない場合に、ClrHstgrFtrWght_SI属性値がNULLまたは0(ゼロ)より小さい値である。

  • PstnlClrFtr_SI属性がNULL値でない場合に、PstnlClrFtrWght_SI属性値がNULLまたは0(ゼロ)より小さい値である。

  • TextureFtr_SI属性がNULL値でない場合に、TextureFtrWght_SI属性値がNULLまたは0(ゼロ)より小さい値である。

なし。

J.14 SI_FeatureListのメソッド

イメージ・マッチングに使用されるSI_FeatureListのメソッドは、複数あります。

J.14.1 SI_AvgClrFtr( )

構文

SI_AvgClrFtr( ) RETURN SI_AverageColor DETERMINISTIC;

同等のSQLファンクションの構文

SI_GetAvgClrFtr(featureList IN SI_FeatureList)
 RETURN SI_AverageColor DETERMINISTIC;

説明

指定されたSI_FeatureListオブジェクトのAvgClrFtr_SI属性の値を戻します。

パラメータ

featureList

AvgClrFtr_SI属性の値を戻すSI_FeatureListオブジェクトを指定します。

使用上の注意

なし。

メソッド・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_AvgClrFtr, WNDS, WNPS, RNDS, RNPS)

ファンクション・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_GetAvgClrFtr, WNDS, WNPS, RNDS, RNPS)

例外

なし。

なし。

J.14.2 SI_AvgClrFtrWght( )

構文

SI_AvgClrFtrWght( ) RETURN DOUBLE PRECISION DETERMINISTIC;

同等のSQLファンクションの構文

SI_GetAvgClrFtrW(featureList IN SI_FeatureList)
 RETURN DOUBLE PRECISION DETERMINISTIC;

説明

指定されたSI_FeatureListオブジェクトのAvgClrFtrWght_SI属性の値を戻します。

パラメータ

featureList

AvgClrFtrWght_SI属性の値を戻すSI_FeatureListオブジェクトを指定します。

使用上の注意

なし。

メソッド・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_AvgClrFtrWght, WNDS, WNPS, RNDS, RNPS)

ファンクション・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_GetAvgClrFtrW, WNDS, WNPS, RNDS, RNPS)

例外

なし。

なし。

J.14.3 SI_ClrHstgrFtr( )

構文

SI_ClrHstgrFtr( ) RETURN SI_ColorHistogram DETERMINISTIC;

同等のSQLファンクションの構文

SI_GetClrHstgrFtr(featureList IN SI_FeatureList)
 RETURN SI_ColorHistogram DETERMINISTIC;

説明

指定されたSI_FeatureListオブジェクトのClrHstgrFtr_SI属性の値を戻します。

パラメータ

featureList

ColorHistogram_SI属性の値を戻すSI_FeatureListオブジェクトを指定します。

使用上の注意

なし。

メソッド・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_ClrHstgrFtr, WNDS, WNPS, RNDS, RNPS)

ファンクション・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_GetClrHstgrFtr, WNDS, WNPS, RNDS, RNPS)

例外

なし。

なし。

J.14.4 SI_ClrHstgrFtrWght( )

構文

SI_ClrHstgrFtrWght( ) RETURN DOUBLE PRECISION DETERMINISTIC;

同等のSQLファンクションの構文

SI_GetClrHstgrFtrW(featureList IN SI_FeatureList)
 RETURN DOUBLE PRECISION DETERMINISTIC;

説明

指定されたSI_FeatureListオブジェクトのClrHstgrFtrWght_SI属性の値を戻します。

パラメータ

featureList

ClrHstgrFtrWght_SI属性の値を戻すSI_FeatureListオブジェクトを指定します。

使用上の注意

なし。

メソッド・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_ClrHstgrFtrWght, WNDS, WNPS, RNDS, RNPS)

ファンクション・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_GetClrHstgrFtrW, WNDS, WNPS, RNDS, RNPS)

例外

なし。

なし。

J.14.5 SI_PstnlClrFtr( )

構文

SI_PstnlClrFtr( ) RETURN SI_PositionalColor DETERMINISTIC;

同等のSQLファンクションの構文

SI_GetPstnlClrFtr(featureList IN SI_FeatureList)
 RETURN SI_PositionalColor DETERMINISTIC;  

説明

指定されたSI_FeatureListオブジェクトのPstnlClrFtr_SI属性の値を戻します。

パラメータ

featureList

PstnlClrFtr_SI属性の値を戻すSI_FeatureListオブジェクトを指定します。

使用上の注意

なし。

メソッド・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_PstnlClrFtr, WNDS, WNPS, RNDS, RNPS)

ファンクション・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_GetPstnlClrFtr, WNDS, WNPS, RNDS, RNPS)

例外

なし。

なし。

J.14.6 SI_PstnlClrFtrWght( )

構文

SI_PstnlClrFtrWght( ) RETURN DOUBLE PRECISION DETERMINISTIC;

同等のSQLファンクションの構文

SI_GetPstnlClrFtrW(featureList IN SI_FeatureList)
 RETURN DOUBLE PRECISION DETERMINISTIC;

説明

指定されたSI_FeatureListオブジェクトのPstnlClrFtrWght_SI属性の値を戻します。

パラメータ

featureList

PstnlClrFtrWght_SI属性の値を戻すSI_FeatureListオブジェクトを指定します。

使用上の注意

なし。

メソッド・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_PstnlClrFtrWght, WNDS, WNPS, RNDS, RNPS)

ファンクション・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_GetPstnlClrFtrW, WNDS, WNPS, RNDS, RNPS)

例外

なし。

なし。

J.14.7 SI_FeatureListのSI_Score( )

構文

SI_Score(image  IN  SI_StillImage)
 RETURN DOUBLE PRECISION DETERMINISTIC;

同等のSQLファンクションの構文

SI_ScoreByFtrList(featureList IN SI_FeatureList,
                  image IN SI_StillImage)
 RETURN DOUBLE PRECISION DETERMINISTIC;

説明

任意のSI_FeatureList値に対する指定されたイメージのスコアを判断して戻します。戻されるスコア値が小さいほど、そのイメージは、スコアリングに使用したSI_FeatureListオブジェクトによって特徴付けられています。戻されるスコア値は次のように計算されます。

メソッドを適用するFeatureListオブジェクトで、NULL以外に指定されている特性の属性の数をnとします。iの範囲を1からnとして、特性の属性をfi、対応する特性の重み値をWiとします。fi.SI_Score(image)×Wiの合計をWiの合計で割った値が、スコア値です。スコア値を決定する処理は、次の式でも表すことができます。

このメソッドは、DOUBLE PRECISIONの値を0から100の数値で戻します。値が0の場合、イメージは特性リスト・オブジェクトと同一です。値が100の場合は、イメージは特性リスト・オブジェクトと完全に異なります。

パラメータ

featureList

イメージと比較するSI_FeatureListオブジェクトを指定します。

image

特性を抽出して指定したSI_FeatureListオブジェクトと比較し、スコア値を取得するイメージを指定します。

使用上の注意

次のいずれかの条件に該当する場合、NULL値が戻されます。

  • メソッドを適用する特性リストがNULL値である。

  • 指定したイメージの値がNULLである。

  • AvgClrFtr_SI、ClrHstgrFtr_SI、PstnlClrFtr_SIおよびTextureFtr_SIの値がすべてNULLである。

  • すべての特性(AvgClrFtrWght_SI、ClrHstgrFtrWght_SI、PstnlClrFtrWght_SIおよびTextureFtrWght_SI)の重みの合計が0(ゼロ)である。

プラグマ

なし。

例外

なし。

なし。

J.14.8 SI_SetFeature(averageColorFeature, averageColorFeatureWeight)

構文

SI_SetFeature(averageColorFeature        IN  SI_AverageColor,
              averageColorFeatureWeight  IN  DOUBLE PRECISION);

同等のSQLプロシージャの構文

SI_SetAvgClrFtr (featureList               IN OUT NOCOPY SI_FeatureList,
                 averageColorFeature       IN SI_AverageColor,
                 averageColorFeatureWeight IN DOUBLE PRECISION);

説明

指定されたSI_FeatureListオブジェクトのSI_AvgClrFtrおよびSI_AvgClrFtrWght属性を変更します。

パラメータ

averageColorFeature

平均色の新しい値を指定します。

averageColorFeatureWeight

平均色の新しい重みを指定します。

featureList

averageColorFeatureおよびaverageColorFeatureWeight値を更新するSI_FeatureListオブジェクトを指定します。

使用上の注意

  • averageColorFeatureパラメータの値がNULLの場合、AvgClrFtrWght_SI属性は0(ゼロ)に設定され、averageColorFeatureWeightパラメータの値は無視されます。

  • averageColorFeatureパラメータの値がNULL値でない場合に、対応するaverageColorFeatureWeightパラメータ値がNULLまたは0(ゼロ)より小さい値である場合、エラーが戻されます。

プラグマ

なし。

例外

なし。

なし。

J.14.9 SI_SetFeature(colorHistogramFeature, colorHistogramFeatureWeight)

構文

SI_SetFeature(colorHistogramFeature        IN  SI_ColorHistogram,
              colorHistogramFeatureWeight  IN  DOUBLE PRECISION);

同等のSQLプロシージャの構文

SI_SetClrHstgrFtr (featureList                  IN OUT NOCOPY SI_FeatureList,
                   colorHistogramFeature        IN SI_ColorHistogram,
                   colorHistogramFeatureWeight  IN DOUBLE PRECISION);

説明

指定されたSI_FeatureListオブジェクトのClrHstgrFtr_SIおよびClrHstgrFtrWght_SI属性を変更します。

パラメータ

colorHistogramFeature

色ヒストグラムの新しい値を指定します。

colorHistogramFeatureWeight

色ヒストグラムの新しい重み値を指定します。

featureList

colorHistogram値およびcolorHistogramFeatureWeight属性値を更新するSI_FeatureListオブジェクトを指定します。

使用上の注意

  • colorHistogramFeatureパラメータの値がNULLの場合、ClrHstgrFtrWght_SI属性は0(ゼロ)に設定され、colorHistogramFeatureWeightパラメータの値は無視されます。

  • colorHistogramFeatureパラメータの値がNULL値でない場合に、対応するcolorHistogramFeatureWeightパラメータ値がNULLまたは0(ゼロ)より小さい値である場合、エラーが戻されます。

プラグマ

なし。

例外

なし。

なし。

J.14.10 SI_SetFeature(positionalColorFeature, positionalColorFeatureWeight)

構文

SI_SetFeature(positionalColorFeature        IN  SI_PositionalColor,
              positionalColorFeatureWeight  IN  DOUBLE PRECISION);

同等のSQLプロシージャの構文

SI_SetPstnlClrFtr(featureList                   IN OUT NOCOPY SI_FeatureList,
                  positionalColorFeature        IN SI_PositionalColor,
                  positionalColorFeatureWeight  IN DOUBLE PRECISION);

説明

指定されたSI_FeatureListオブジェクトのPstnlClrFtr_SIおよびPstnlClrFtrWght_SI属性を変更します。

パラメータ

positionalColorFeature

位置色の新しい値を指定します。

positionalColorFeatureWeight

位置色の新しい重み値を指定します。

featureList

positionalColorおよびpositionalColorFeatureWeight属性を更新するSI_FeatureListオブジェクトを指定します。

使用上の注意

  • positionalColorFeatureパラメータの値がNULLの場合、PstnlClrFtrWght_SI属性は0(ゼロ)に設定され、positionalColorFeatureWeightパラメータの値は無視されます。

  • positionalColorFeatureパラメータの値がNULL値でない場合に、positionalColorFeatureWeightパラメータ値がNULLまたは0(ゼロ)より小さい値である場合、エラーが戻されます。

プラグマ

なし。

例外

なし。

なし。

J.14.11 SI_SetFeature(textureFeature, textureFeatureWeight)

構文

SI_SetFeature(textureFeature        IN  SI_Texture,
              textureFeatureWeight  IN  DOUBLE PRECISION);

同等のSQLプロシージャの構文

SI_SetTextureFtr(featureList           IN OUT NOCOPY SI_FeatureList,
                 textureFeature        IN SI_Texture,
                 textureFeatureWeight  IN DOUBLE PRECISION);

説明

指定されたSI_FeatureListオブジェクトのTextureFtr_SIおよびTextureFtrWght_SI属性を変更します。

パラメータ

textureFeature

テクスチャの新しい値を指定します。

textureFeatureWeight

テクスチャの新しい重み値を指定します。

featureList

textureFeatureおよびtextureFeatureWeight属性を更新するSI_FeatureListオブジェクトを指定します。

使用上の注意

  • textureFeatureパラメータの値がNULL値で、TextureFtrWght_SI属性が0(ゼロ)に設定されている場合、textureFeatureWeightパラメータの値は無視されます。

  • textureFeatureパラメータの値がNULLの場合に、textureFeatureWeightパラメータ値がNULLまたは0(ゼロ)より小さい値である場合、エラーが戻されます。

プラグマ

なし。

例外

なし。

なし。

J.14.12 SI_TextureFtr( )

構文

SI_TextureFtr( ) RETURN SI_Texture DETERMINISTIC;

同等のSQLファンクションの構文

SI_GetTextureFtr (featureList IN SI_FeatureList)
 RETURN SI_Texture DETERMINISTIC;

説明

指定されたSI_FeatureListオブジェクトのTextureFtr_SI属性の値を戻します。

パラメータ

featureList

TextureFtr_SI属性の値を戻すSI_FeatureListオブジェクトを指定します。

使用上の注意

なし。

メソッド・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_TextureFtr, WNDS, WNPS, RNDS, RNPS)

ファンクション・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_GetTextureFtr, WNDS, WNPS, RNDS, RNPS)

例外

なし。

なし。

J.14.13 SI_TextureFtrWght( )

構文

SI_TextureFtrWght( ) RETURN DOUBLE PRECISION DETERMINISTIC;

同等のSQLファンクションの構文

SI_GetTextureFtrW(featureList in SI_FeatureList)
 RETURN DOUBLE PRECISION DETERMINISTIC;

説明

指定されたSI_FeatureListオブジェクトのTextureFtrWght_SI属性の値を戻します。

パラメータ

featureList

TextureFtrWght_SI属性の値を戻すSI_FeatureListオブジェクトを指定します。

使用上の注意

なし。

メソッド・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_TextureFtrWght, WNDS, WNPS, RNDS, RNPS)

ファンクション・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_GetTextureFtrW, WNDS, WNPS, RNDS, RNPS)

例外

なし。

なし。

J.15 SI_PositionalColorオブジェクト型

SI_PositionalColorオブジェクトは、イメージの主要な色の位置を表現します。イメージがn×m個の四角形に分割される場合、位置色特性は、その四角形の主要なn×m色によってイメージを特徴付けます。このオブジェクト型は、実行者権限が設定されたORDSYSスキーマに作成されます。INSTANTIABLEおよびNOT FINAL型として宣言されます。(colorPositions属性の構文の詳細は、「内部ヘルパー型」を参照してください。)

注意:

属性に直接アクセスすると、SI_PositionalColorオブジェクトの内部表現を変更してしまう可能性があるため、それを避けるためにSI_PositionalColorオブジェクトのコンストラクタおよびメソッドを使用してください。

このオブジェクト型の属性は、ordisits.sqlファイルで次のように定義されています。

-------------------
-- TYPE ATTRIBUTES
-------------------
SI_ColorPositions  colorPositions,

説明:

  • SI_ColorPositions: イメージの主要な色の位置を表現するSI_Colorの配列。

J.16 SI_PositionalColorのコンストラクタ

SI_PositionalColorオブジェクトのコンストラクタは1つあります。

J.16.1 SI_PositionalColor( )

構文

SI_PositionalColor(sourceImage IN SI_StillImage)
 RETURN SELF AS RESULT DETERMINISTIC;

同等のSQLファンクションの構文

SI_FindPstnlClr(sourceImage  IN SI_StillImage)
 RETURN SI_PositionalColor DETERMINISTIC;

説明

指定されたイメージからSI_PositionalColorオブジェクトを構築します。SI_ColorPositions配列属性は、指定したイメージから導出された主要な色値で初期化されます。

SI_PositionalColorオブジェクトを導出する場合、イメージは、n×m個の四角形に分割されると仮定され、n×mの積がSI_NumberSectionsの値と等しくなります。(SI_NumberSectionsの値は、SI_INFORMTN_SCHEMAのSI_VALUESビューを問い合せてください。)各四角形の主要な色が決定されます。このように計算された配列が、SI_ColorPositions配列属性の値です。

パラメータ

sourceImage

位置色特性の抽出元のイメージを指定します。

プラグマ

なし。

例外

なし。

使用上の注意

次のいずれかの条件に該当する場合、エラーが戻されます。

  • sourceImageパラメータの値がNULLである。

  • sourceImage.SI_Contentの値がNULLである。

  • このイメージ・フォーマットで、位置色特性がサポートされていない。

任意のイメージ・フォーマットで位置色特性がサポートされているかどうかを確認するには、SI_IMAGE_FORMAT_FEATURESビューまたはSI_IMAGE_FRMT_FTRSビューを問い合せてください。

なし。

J.17 SI_PositionalColorのメソッド

イメージ・マッチングに使用できるSI_PositionalColorのメソッドが1つあります。

J.17.1 SI_PositionalColorのSI_Score( )

構文

SI_Score(image IN SI_StillImage) RETURN DOUBLE PRECISION DETERMINISTIC;

同等のSQLファンクションの構文

SI_ScoreByPstnlClr(feature IN SI_PositionalColor,
                   image   IN SI_StillImage),
 RETURN DOUBLE PRECISION DETERMINISTIC;

説明

指定されたイメージを、このメソッドが適用されるSI_PositionalColorオブジェクトと比較して、スコアを判断して戻します。イメージのスコアリングでは、そのイメージはn×m個の四角形に分割され、その積(m * n)がSI_NumberSectionsと等しくなります。(SI_NumberSectionsの値は、SI_INFORMTN_SCHEMAのSI_VALUESビューを問い合せてください。)戻される値が小さいほど、そのイメージのn×m個の主要な色は、このメソッドが適用されるSI_PositionalColorの主要な色によって特徴付けられています。

このメソッドは、DOUBLE PRECISIONの値を0から100の数値で戻します。ただし、次のいずれかの条件に該当する場合は、NULL値が戻されます。

  • このメソッドを適用するSI_PositionalColorオブジェクトの値がNULLである。

  • imageパラメータの値がNULLである。

  • image.content_SI属性の値がNULLである。

  • 指定したイメージで、位置色特性がサポートされていない。

パラメータ

feature

指定したイメージの位置色と比較する位置色を指定します。

image

比較に使用する位置色特性の抽出元のイメージを指定します。

使用上の注意

なし。

プラグマ

なし。

例外

なし。

なし。

J.18 SI_StillImageオブジェクト型

SI_StillImageオブジェクト型は、高さ、幅、フォーマットなどの固有のイメージ特性でデジタル・イメージを表現します。これは、実行者権限が設定されたORDSYSスキーマに作成され、INSTANTIABLEおよびNOT FINALとして宣言されます。

注意:

属性に直接アクセスすると、SI_StillImageオブジェクトの内部表現を変更してしまう可能性があるため、それを避けるためにSI_StillImageのコンストラクタおよびメソッドを使用してください。

このオブジェクト型の属性は、ordisits.sqlファイルで次のように定義されています。

-------------------
-- TYPE ATTRIBUTES
-------------------
content_SI           ORDSYS.ORDSOURCE,
contentLength_SI     INTEGER,
format_SI            VARCHAR2(4000),
height_SI            INTEGER,
width_SI             INTEGER,

-- Oracle attribute extensions

mimeType_ora          VARCHAR2(4000),
contentFormat_ora     VARCHAR2(4000),
compressionFormat_ora VARCHAR2(4000),
-- Flag to
retainFeatures_SI     INTEGER,

-- Oracle extension attributes to cache image features

averageColorSpec_ora SI_Color,
colorsList_ora       colorsList,
frequenciesList_ora  colorFrequenciesList,
colorPositions_ora   colorPositions,
textureEncoding_ora  textureEncoding,

説明:

  • content_SI: バイナリ・イメージまたはBLOBを含むORDSourceオブジェクト。(SQL/MMはSI_Content属性をBLOBとして指定します。)

  • contentLength_SI: イメージのバイト単位のコンテンツ長。

  • format_SI: イメージ・フォーマット。

  • height_SI: イメージの行数。

  • width_SI: イメージの列数。

  • mimeType_ora: MIMEタイプについての情報。(これは、SQL/MM Still Image規格に対するOracleの拡張機能です。)

  • contentFormat_ora: イメージのタイプ(モノクロなど)。(これは、SQL/MM Still Image規格に対するOracleの拡張機能です。)

  • compressionFormat_ora: イメージ・データに使用される圧縮アルゴリズム。(これは、SQL/MM Still Image規格に対するOracleの拡張機能です。)

  • retainFeatures_SI: イメージ特性を抽出してキャッシュするかどうかを示すフラグ。

  • averageColorSpec_ora: キャッシュされたSI_Colorオブジェクト。

  • colorsList_ora: キャッシュされた色の配列。

  • frequenciesList_ora: キャッシュされた色頻度の配列。

  • colorPositions_ora: キャッシュされた色の位置の配列。

  • textureEncoding_ora: キャッシュされたテクスチャの配列。

J.19 SI_StillImageのコンストラクタ

SI_StillImageオブジェクトで使用できるコンストラクタは3つあります。

注意:

SI_StillImageオブジェクトを構築する場合は、SI_StillImageオブジェクトのデフォルト・コンストラクタではなく、前述のいずれかのコンストラクタを使用することをお薦めします。

J.19.1 SI_StillImage(content)

構文

SI_StillImage(content IN BLOB) RETURN SELF as RESULT DETERMINISTIC;

同等のSQLファンクションの構文

SI_MkStillImage1(content in BLOB) RETURN SI_StillImage DETERMINISTIC;

説明

新しいSI_StillImageオブジェクトを戻します。このコンストラクタは、次のSI_StillImage属性を初期化します。

  • content_SI.localData: 指定したイメージで初期化されます。

  • contentLength_SI: 指定したイメージから抽出されたイメージの長さで初期化されます。

  • format_SI: 指定したイメージから抽出されたイメージのフォーマットで初期化されます。

  • height_SI: 指定したイメージから抽出されたイメージの高さで初期化されます。

  • width_SI: 指定したイメージから抽出されたイメージの幅で初期化されます。

パラメータ

content

イメージ・データを指定します。

プラグマ

なし。

例外

ORDImageSIExceptions.NULL_CONTENT

この例外は、contentパラメータがNULLの場合に発生します。

この例外の詳細は、「Oracle Multimediaオブジェクトの例外」を参照してください。

使用上の注意

なし。

なし。

J.19.2 SI_StillImage(content, explicitFormat)

構文

SI_StillImage(content         IN BLOB,
              explicitFormat  IN VARCHAR2)
 RETURN SELF as RESULT DETERMINISTIC;

同等のSQLファンクションの構文

SI_MkStillImage2(content in BLOB, explicitFormat in VARCHAR2)
 RETURN SI_StillImage DETERMINISTIC;

説明

指定されたイメージおよびフォーマットからSI_StillImageオブジェクトを構築します。このコンストラクタを使用すると、指定したイメージがサポートされていないイメージ・フォーマットである場合にも、イメージ・フォーマットを指定できます。サポートされているイメージ・フォーマットのリストを取得するには、SI_INFORMTN_SCHEMAのSI_IMAGE_FORMATSビューを問い合せてください。

このコンストラクタは、次のSI_StillImage属性を初期化します。

  • content_SI.localData: 指定したイメージで初期化されます。

  • contentLength_SI: 指定したイメージから抽出されたイメージの長さで初期化されます。

  • format_SI: 指定したイメージ・フォーマットで初期化されます。

  • height_SI: 指定したイメージから抽出されたイメージの高さで初期化されます。コンストラクタ・ファンクションが、指定されたイメージから高さの値を抽出できない場合、height_SI属性に高さの値を割り当てることができます(たとえば、myImage.height_SI := height)。

  • width_SI: 指定したイメージから抽出されたイメージの幅で初期化されます。コンストラクタ・ファンクションが、指定したイメージから幅の値を抽出できない場合、width_SI属性に幅の値を割り当てることができます(たとえば、myImage.width_SI := width)。

パラメータ

content

イメージ・データを指定します。

explicitFormat

指定したイメージがサポートされていないイメージ・フォーマットである場合に、Oracle Multimediaで使用するフォーマットを指定します。

プラグマ

なし。

例外

ORDImageSIExceptions.NULL_CONTENT

この例外は、contentパラメータがNULLの場合に発生します。

この例外の詳細は、「Oracle Multimediaオブジェクトの例外」を参照してください。

使用上の注意

explicitFormatパラメータがNULL値の場合、または次のいずれかの条件に該当する場合、エラーが戻されます。

  • explicitFormatパラメータの値はサポートされているフォーマットであるが、指定したイメージから抽出されたフォーマットと同一でない。

  • explicitFormatパラメータの値はサポートされていないフォーマットであるが、指定したイメージから抽出されたフォーマットがNULL値でない。

次の表に、explicitFormatパラメータと実際のイメージ・フォーマットの値、およびそれらの値の組合せでエラーが戻されるかどうかを示します。NULLのイメージ・フォーマットは、フォーマットをイメージから抽出できないことを示します。

表J-1 explicitFormatパラメータの値

explicitFormat イメージ・フォーマット エラーが戻されるか

GIF(サポートされているフォーマット)

GIF

いいえ

GIF(サポートされているフォーマット)

JPEG

はい

xyz(サポートされていないフォーマット)

GIF

はい

xyz(サポートされていないフォーマット)

NULL

いいえ

なし。

J.19.3 SI_StillImage(content, explicitFormat, height, width)

構文

SI_StillImage(content        IN BLOB,
              explicitFormat IN VARCHAR2,
              height         IN INTEGER,
              width          IN INTEGER)
 RETURN SI_STILLIMAGE as RESULT DETERMINISTIC;

同等のSQLファンクションの構文

ora_SI_MkStillImage(content        IN BLOB)
                    explicitFormat IN VARCHAR2,
                    height         IN INTEGER,
                    width          IN INTEGER)
 RETURN SI_StillImage DETERMINISTIC;

説明

指定されたイメージからSI_StillImage値を構築します。このコンストラクタを使用すると、指定したイメージがサポートされていないイメージ・フォーマットである場合にも、イメージ・フォーマット、高さおよび幅を指定できます。サポートされているイメージ・フォーマットのリストを取得するには、SI_INFORMTN_SCHEMAのSI_IMAGE_FORMATSビューを問い合せてください。

このコンストラクタおよび同等のSQLファンクションは、SQL/MM Still Image規格に対するOracleの拡張機能です。

このコンストラクタは、次のSI_StillImage属性を初期化します。

  • content_SI.localData: 指定したイメージで初期化されます。

  • contentLength_SI: 指定したイメージから抽出されたイメージの長さで初期化されます。

  • format_SI: 指定したイメージ・フォーマットで初期化されます。

  • height_SI: 指定したイメージから高さを抽出できない場合、指定した高さで初期化されます。

  • width_SI: 指定したイメージから幅を抽出できない場合、指定した幅で初期化されます。

パラメータ

content

イメージ・データを指定します。

explicitFormat

イメージがサポートされていないフォーマットである場合に、Oracle Multimediaで使用するフォーマットを指定します。

height

イメージがサポートされていないフォーマットである場合に、Oracle Multimediaで使用するheight_SI属性の値を指定します。

width

イメージがサポートされていないフォーマットである場合に、Oracle Multimediaで使用するwidth_SI属性の値を指定します。

プラグマ

なし。

例外

ORDImageSIExceptions.ILLEGAL_HEIGHT_WIDTH_SPEC

この例外は、heightまたはwidthパラメータの値がNULLまたは負の値の場合に発生します。

ORDImageSIExceptions.NULL_CONTENT

この例外は、contentパラメータがNULLの場合に発生します。

これらの例外の詳細は、「Oracle Multimediaオブジェクトの例外」を参照してください。

使用上の注意

explicitFormatパラメータ値がNULL値の場合、または次のいずれかの条件に該当する場合、エラー・メッセージが戻されます。

  • explicitFormatパラメータの値はサポートされているフォーマットであるが、イメージから抽出されたフォーマットと同一でない。

  • explicitFormatパラメータの値はサポートされていないフォーマットであるが、イメージから抽出されたフォーマットがNULL値でない。

次の表に、explicitFormatパラメータと実際のイメージ・フォーマットの値、およびそれらの値の組合せでエラーが戻されるかどうかを示します。NULLのイメージ・フォーマットは、フォーマットをイメージから抽出できないことを示します。

表J-2 explicitFormatパラメータの値

explicitFormat イメージ・フォーマット エラーが戻されるか

GIF(サポートされているフォーマット)

GIF

いいえ

GIF(サポートされているフォーマット)

JPEG

はい

xyz(サポートされていないフォーマット)

GIF

はい

xyz(サポートされていないフォーマット)

NULL

いいえ

なし。

J.20 SI_StillImageのメソッド

イメージ・データの操作に使用されるSI_StillImageのメソッドは、複数あります。

J.20.1 SI_ClearFeatures( )

構文

SI_ClearFeatures( );

説明

イメージ特性のキャッシュを無効にして、すべての内部イメージ特性の属性の値をNULLに設定します。イメージ・マッチングを実行していない場合、このメソッドをコールして、特性の同期化に関連する処理のオーバーヘッドを軽減できます。このメソッドは、サポートされていないイメージ・フォーマットには機能しません。

このメソッドは、SQL/MM Still Image規格の第1版には含まれていませんが、次の版に含まれることが認可されています。

パラメータ

なし。

使用上の注意

なし。

プラグマ

なし

例外

なし。

なし。

J.20.2 SI_InitFeatures( )

構文

SI_InitFeatures( );

説明

イメージ特性を抽出して、それらの特性をSI_StillImageオブジェクトにキャッシュします。このメソッドを一度コールすると、イメージが処理されるたびに新しいイメージ特性が自動的に抽出されるように、SI_StillImageによってイメージ特性が管理されます。イメージ・マッチングを行うユーザーは、このメソッドを使用することをお薦めします。

このメソッドは、SQL/MM Still Image規格の第1版には含まれていませんが、次の版に含まれることが認可されています。

パラメータ

なし。

使用上の注意

  • イメージ特性のキャッシュに関連するパフォーマンスへの影響は、次のとおりです。

    • SI_SetContentやSI_ChangeFormatなどのイメージ処理メソッドの処理速度は低下します。

    • SI_Scoreなどのイメージ・マッチング・メソッドの処理速度は向上します。

  • イメージ特性の抽出およびキャッシュは、サポートされていないイメージ・フォーマットには実行できません。

プラグマ

なし。

例外

ORDImageSIExceptions.UNSUPPORTED_IMAGE_FORMAT

この例外は、サポートされていないイメージ・フォーマットでこのメソッドがコールされた場合に発生します。

この例外の詳細は、「Oracle Multimediaオブジェクトの例外」を参照してください。

なし。

J.20.3 SI_ChangeFormat( )

構文

SI_ChangeFormat(targetFormat IN VARCHAR2);

同等のSQLプロシージャの構文

SI_ConvertFormat(image         IN OUT NOCOPY SI_StillImage,
                 targetFormat  IN VARCHAR2);

説明

SI_StillImageオブジェクトのフォーマットを変換して、影響を受ける属性を次のように調整します。

  • content_SIを、targetFormatパラメータで指定された値に変換します。

  • contentLength_SIを、content_SI属性から抽出した新しいイメージの長さで更新します。

  • format_SIを、targetFormatパラメータ値と同じ値に設定します。

  • height_SIを、content_SI属性から抽出した新しい高さで更新します。

  • width_SIを、content_SI属性から抽出した新しい幅で更新します。

パラメータ

image

コンテンツを変換するイメージを指定します。

targetFormat

イメージの変換後のフォーマットを指定します。

使用上の注意

次のいずれかの条件に該当する場合、エラー・メッセージが戻されます。

  • format_SI属性の値がNULLである。

  • targetFormatパラメータの値がNULLである。

  • format_SIからtargetFormatへの変換がサポートされていない。(任意のフォーマットの変換がOracle Multimediaでサポートされているかどうかを確認するには、SI_INFORMTN_SCHEMAのSI_IMAGE_FORMAT_CONVERSIONSまたはSI_FORMAT_CONVRSNSビューの値を問い合せてください。)

プラグマ

なし。

例外

なし。

なし。

J.20.4 SI_Content( )

構文

SI_Content ( )  RETURN BLOB DETERMINISTIC;

同等のSQLファンクションの構文

SI_GetContent(image IN SI_StillImage) RETURN BLOB DETERMINISTIC;

説明

このメソッドが適用されるSI_StillImageオブジェクトのcontent_SI属性に格納されたBLOBを戻します。

パラメータ

なし。

使用上の注意

なし。

メソッド・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_Content, WNDS, WNPS, RNDS, RNPS)

ファンクション・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_GetContent, WNDS, WNPS, RNDS, RNPS)

例外

なし。

なし。

J.20.5 SI_ContentLength( )

構文

SI_ContentLength ( )  RETURN INTEGER DETERMINISTIC;

同等のSQLファンクションの構文

SI_GetContentLngth(image IN SI_StillImage) RETURN INTEGER DETERMINISTIC;

説明

指定されたSI_StillImageオブジェクトのcontentLength_SI属性の値(バイト単位)を戻します。

パラメータ

image

コンテンツ長を戻すイメージを指定します。

使用上の注意

なし。

メソッド・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_ContentLength, WNDS, WNPS, RNDS, RNPS)

ファンクション・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_GetContentLngth, WNDS, WNPS, RNDS, RNPS)

例外

なし。

なし。

J.20.6 SI_Format( )

構文

SI_Format ( ) RETURN VARCHAR2 DETERMINISTIC;

同等のSQLファンクションの構文

SI_GetFormat(image IN SI_StillImage) RETURN VARCHAR2 DETERMINISTIC;

説明

このメソッドが適用されるSI_StillImageオブジェクトのformat_SI属性の値(TIFF、JFIFなど)を戻します。

パラメータ

なし。

使用上の注意

なし。

メソッド・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_Format, WNDS, WNPS, RNDS, RNPS)

ファンクション・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_GetFormat, WNDS, WNPS, RNDS, RNPS)

例外

なし。

なし。

J.20.7 SI_Height( )

構文

SI_Height ( )  RETURN INTEGER DETERMINISTIC;

同等のSQLファンクションの構文

SI_GetHeight(image IN SI_StillImage) RETURN INTEGER DETERMINISTIC;

説明

このメソッドが適用されるSI_StillImageオブジェクトのheight_SI属性の値(ピクセル単位)を戻します。

パラメータ

image

高さを戻すイメージを指定します。

使用上の注意

なし。

メソッド・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_Height, WNDS, WNPS, RNDS, RNPS)

ファンクション・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_GetHeight, WNDS, WNPS, RNDS, RNPS)

例外

なし。

なし。

J.20.8 SI_RetainFeatures( )

構文

SI_RetainFeatures( ); RETURN BOOLEAN DETERMINISTIC;

説明

イメージ特性を抽出してキャッシュするかどうかを示すブール値(TRUEまたはFALSE)を戻します。

このメソッドは、SQL/MM Still Image規格の第1版には含まれていませんが、次の版に含まれることが認可されています。

パラメータ

なし。

使用上の注意

なし。

メソッド・プラグマ

PRAGMA RESTRICT_REFERENCES(WNDS, WNPS, RNDS, RNPS)

例外

なし。

なし。

J.20.9 SI_SetContent( )

構文

SI_SetContent(content IN BLOB);

同等のSQLプロシージャの構文

SI_ChgContent(image   IN OUT NOCOPY SI_StillImage,
              content IN BLOB);

説明

SI_StillImageオブジェクトのコンテンツを更新します。次のように属性の値を設定します。

  • content_SIを、指定されたイメージに指定された値で更新します。

  • contentLength_SIを、指定されたイメージから抽出した新しいコンテンツ長で更新します。

  • height_SIを、指定されたイメージから抽出した新しい高さで更新します。

  • width_SIを、指定されたイメージから抽出した新しい幅で更新します。

パラメータ

content

イメージ・データを指定します。このイメージ・データのフォーマットは、現行のイメージのフォーマットと同じである必要があります。

image

コンテンツを更新するイメージを指定します。

使用上の注意

なし。

プラグマ

なし。

例外

ORDImageSIExceptions.NULL_CONTENT

この例外は、contentパラメータがNULLの場合に発生します。

この例外の詳細は、「Oracle Multimediaオブジェクトの例外」を参照してください。

なし。

J.20.10 SI_Thumbnail( )

構文

SI_Thumbnail ( ) RETURN SI_StillImage;

同等のSQLファンクションの構文

SI_GetThmbnl (image IN SI_StillImage)  RETURN SI_StillImage;

説明

指定されたSI_StillImageオブジェクトから縮小イメージを導出します。デフォルトの縮小サイズは80×80ピクセルです。このメソッドはイメージのアスペクト比を保持するため、導出される縮小サイズは80×80ピクセルに最も近いサイズになります。

パラメータ

image

縮小イメージを生成するイメージを指定します。

使用上の注意

なし。

プラグマ

なし。

例外

なし。

なし。

J.20.11 SI_Thumbnail(height,width)

構文

SI_Thumbnail(height IN INTEGER, width IN INTEGER)
 RETURN SI_StillImage DETERMINISTIC;

同等のSQLファンクションの構文

SI_GetSizedThmbnl(image IN SI_StillImage,
                  height  IN INTEGER,
                  width   IN INTEGER)
 RETURN SI_StillImage DETERMINISTIC;

説明

指定された高さおよび幅を使用して、指定されたSI_StillImageオブジェクトから新しい縮小イメージを導出します。このメソッドはアスペクト比を保持しません。

パラメータ

height

Oracle Multimediaで縮小イメージに使用する高さを指定します。

image

縮小イメージを生成するイメージを指定します。

width

Oracle Multimediaで縮小イメージに使用する幅を指定します。

使用上の注意

アスペクト比を保持するには、適切な高さと幅の値を指定します。適切な高さと幅の値を取得するには、イメージの高さと幅の値に必要なスケール変更係数を掛けます。たとえば、イメージ・サイズが100×100ピクセルで、元のイメージの4分の1の縮小イメージを導出する必要がある場合、height引数は100を2で割った値、width引数も100を2で割った値にする必要があります。導出される縮小イメージは50×50ピクセルになり、アスペクト比は保持されます。

プラグマ

なし。

例外

なし。

なし。

J.20.12 SI_Width( )

構文

SI_Width ( )  RETURN INTEGER DETERMINISTIC;

同等のSQLファンクションの構文

SI_GetWidth(image IN SI_StillImage) RETURN INTEGER DETERMINISTIC;

説明

このメソッドが適用されるSI_StillImageオブジェクトのwidth_SI属性の値(ピクセル単位)を戻します。

パラメータ

image

幅を戻すイメージを指定します。

使用上の注意

なし。

メソッド・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_Width, WNDS, WNPS, RNDS, RNPS)

ファンクション・プラグマ

PRAGMA RESTRICT_REFERENCES(SI_GetWidth, WNDS, WNPS, RNDS, RNPS)

例外

なし。

なし。

J.21 SI_Textureオブジェクト型

反復項目のサイズ(粗さ)、輝度のバリエーション(コントラスト)および主要な方向(方向性)によって、イメージのテクスチャ特性を記述します。このオブジェクト型は、実行者権限が設定されたORDSYSスキーマに作成されます。INSTANTIABLEおよびNOT FINAL型として宣言されます。(textureEncoding属性の構文の詳細は、「内部ヘルパー型」を参照してください。)

注意:

属性に直接アクセスすると、SI_Textureオブジェクトの内部表現を変更してしまう可能性があるため、それを避けるためにSI_Textureのコンストラクタおよびメソッドを使用してください。

このオブジェクト型の属性は、ordisits.sqlファイルで次のように定義されています。

-------------------
-- TYPE ATTRIBUTES
-------------------
SI_TextureEncoding  textureEncoding,

説明:

  • SI_TextureEncoding: 粗さ、コントラスト、方向性などのイメージのテクスチャ特性を表現するVARRAY。

J.22 SI_Textureのコンストラクタ

SI_Textureオブジェクトのコンストラクタは1つあります。

J.22.1 SI_Texture( )

構文

SI_Texture(sourceImage IN SI_StillImage) RETURN SELF AS RESULT DETERMINISTIC;

同等のSQLファンクションの構文

SI_FindTexture(sourceImage IN SI_StillImage) RETURN SI_Texture DETERMINISTIC;

説明

指定されたイメージからSI_Textureオブジェクトを構築します。

パラメータ

sourceImage

テクスチャ特性の抽出元のイメージを指定します。

プラグマ

なし。

例外

なし。

使用上の注意

次のいずれかの条件に該当する場合、エラーが戻されます。

  • 指定したイメージの値がNULLである。

  • sourceImage.SI_Contentの値がNULLである。

  • 指定したイメージのフォーマットで、テクスチャ特性がサポートされていない。任意のイメージのフォーマットで、テクスチャ特性がサポートされているかどうかを確認するには、SI_IMAGE_FORMAT_FEATURESビューまたはSI_IMAGE_FRMT_FTRSビューを問い合せてください。

なし。

J.23 SI_Textureのメソッド

イメージ・マッチングに使用できるSI_Textureのメソッドが1つあります

J.23.1 SI_TextureのSI_Score( )

構文

SI_Score(image IN SI_StillImage) RETURN DOUBLE PRECISION DETERMINISTIC;

同等のSQLファンクションの構文

SI_ScoreByTexture(feature IN SI_Texture,
                  image   IN SI_StillImage),
 RETURN DOUBLE PRECISION DETERMINISTIC;

説明

指定されたイメージを、メソッドが適用されるSI_Textureオブジェクトと比較して、スコアを判断して戻します。戻される値が小さいほど、そのイメージのテクスチャは、スコアリングに使用したSI_Texture値によって特徴付けられています。このメソッドは、DOUBLE PRECISIONの値を0から100の数値で戻します。ただし、次のいずれかの条件に該当する場合は、NULL値が戻されます。

  • このメソッドを適用するSI_Textureオブジェクトの値がNULLである。

  • 指定したイメージの値がNULLである。

  • image.SI_Contentsの値がNULLである。

  • 指定したイメージで、テクスチャ特性がサポートされていない。

パラメータ

feature

指定したイメージのテクスチャと比較する特性値を指定します。

image

スコアの比較に使用するテクスチャ特性の抽出元のイメージを指定します。

使用上の注意

なし。

プラグマ

なし。

例外

なし。

なし。

J.24 ビュー

SI_INFORMTN_SCHEMAスキーマには、サポートされているイメージ・フォーマットと実装定義された値を示すいくつかのビューが含まれています。これらのビューでは、SELECT権限がPUBLICに付与されます。ビューには次のものがあります。

  • SI_IMAGE_FORMATS

  • SI_IMAGE_FORMAT_CONVERSIONS

  • SI_IMAGE_FORMAT_FEATURES

  • SI_THUMBNAIL_FORMATS

  • SI_VALUES

この項に示す表では、これらの各ビューの列名、データ型および説明を示します。

表J-3では、SI_IMAGE_FORMATSビューについて説明します。このビューは、サポートされているイメージ・フォーマットを示します。

表J-3 SI_IMAGE_FORMATSビュー

列名 データ型 説明

SI_FORMAT

VARCHAR2(SI_MaxFormatLength)

サポートされているイメージ・フォーマットのリスト。

表J-4では、SI_IMAGE_FORMAT_CONVERSIONSビューについて説明します。このビューは、イメージ・フォーマット変換がサポートされているソースおよびターゲットのイメージ・フォーマットを示します。このビューの短縮名はSI_IMAGE_FORMAT_CONVRSNSです。

表J-4 SI_IMAGE_FORMAT_CONVERSIONSビュー

列名 データ型 説明

SI_SOURCE_FORMAT

VARCHAR2(SI_MaxFormatLength)

ソース・イメージのフォーマット。

SI_TARGET_FORMAT

VARCHAR2(SI_MaxFormatLength)

ターゲット・イメージのフォーマット。

表J-5では、SI_IMAGE_FORMAT_FEATURESビューについて説明します。このビューは、基本特性がサポートされているイメージ・フォーマットを示します。このビューの短縮名はSI_IMAGE_FRMT_FTRSです。

表J-5 SI_IMAGE_FORMAT_FEATURESビュー

列名 データ型 説明

SI_FORMAT

VARCHAR2(SI_MaxFormatLength)

フォーマット名。

SI_FEATURE_NAME

VARCHAR2(100)

特定のフォーマットでサポートされている基本特性名。値は次のいずれかです。

  • SI_AverageColor

  • SI_Texture

  • SI_PositionalColor

  • SI_ColorHistogram

表J-6では、SI_THUMBNAIL_FORMATSビューについて説明します。このビューは、縮小イメージを導出可能なイメージ・フォーマットを示します。このビューの短縮名はSI_THUMBNAIL_FRMTSです。

表J-6 SI_THUMBNAIL_FORMATSビュー

列名 データ型 説明

SI_FORMAT

VARCHAR2(SI_MaxFormatLength)

縮小イメージを導出可能なフォーマット。

表J-7では、SI_VALUESビューについて説明します。このビューは、実装定義された値を示します。

表J-7 SI_VALUESビュー

列名 データ型 説明

SI_VALUE

VARCHAR2( SI_MaxFormatLength)

実装定義されたメタ変数。SI_VALUESビューには8行が含まれ、各行には次のいずれかのSI_VALUE列値が含まれます。

  • SI_MaxContentLength: SI_StillImage属性のバイナリ表現の最大長。

  • SI_MaxFeatureNameLength: 基本イメージ特性名の文字表現の最大長。

  • SI_MaxFormatLength: イメージ・フォーマット表示の文字表現の最大長。

  • SI_MaxHistogramLength: SI_ColorHistogram特性値で使用できる色/頻度ペアの最大数。

  • SI_MaxRGBColor: RGB色領域で表現される色値の各構成要素の最大値。

  • SI_MaxTextureLength: SI_Textureオブジェクトのエンコーディング表現に必要なバイト数。

  • SI_MaxValueLength: SI_VALUESビュー内のメタ変数の文字表現(名前)の最大長。

  • SI_NumberSections: SI_PositionalColor値で表現される主要な色値の数。

SI_SUPPORTED_VALUE

NUMBER(38)

次の値を含む列。

  • 0

    実装が、SI_VALUE列で定義されるメタ変数を制限していないか、または制限を決定できない場合。

  • NULL

    実装が、メタ変数を適用可能な特性をサポートしていない場合。

  • NULLではない0以外の値

    このメタ変数の実装でサポートされる最大サイズ。