照会を行うためにフィーチャー、フィーチャーの値および重みを指定するためには照会ストリングを使用することができます。 照会ストリングは、feature_name value の形式を持つ文字ストリングです。 ここで、feature_name (フィーチャー名) は QBIC フィーチャー名であり、value (値) はフィーチャーに関連する値です。
1 つの照会に複数のフィーチャーを指定することができます。 その後、フィーチャーごとにフィーチャー名と値のペアを、フィーチャーの値 の説明に従って指定します。 各ペアは、AND 文節で区切ります。 1 つの照会に複数のフィーチャーを指定する場合、フィーチャーの重み で説明するように、1 つまたは複数のフィーチャーに重みを割り当てることができます。 その後、照会ストリングは feature_name value weight の形式を持ちます。 weight (重み) はフィーチャーに割り当てる重みです。
イメージ・エクステンダーには、照会ストリングを使用する 1 つの API (QbQueryStringSearch) と 2 つの UDF (QbScoreFromStr と QbScoreTBFromStr) が用意されています。 照会を出す場合、適切な API または UDF を使用し、入力パラメーターとして照会ストリングを指定してください。 (詳細については、イメージ内容による照会の実行を参照してください。)
照会内で各フィーチャーに関する照会ストリングにフィーチャー値 (feature value) を指定します。
DB2 コマンド内部で照会を渡す際、照会を適正に機能させるためには、特定のファイル命名規則に従わなければなりません。スペースまたは右不等号括弧 (>) を含むファイル名は、二重引用符で囲む必要があります。 その他のファイル名は、二重引用符で囲んでも囲まなくてもかまいません。ファイル名の前後に引用符を使う場合には、それぞれの引用符の前にエスケープ文字 (\) を付けなければなりません。 照会が DB2 コマンド内で渡されない場合は、引用符にエスケープ文字を付ける必要はありません。
次の例では、照会ストリングは DB2 コマンドで渡されます。
db2 "select image_id from table (mmdbsys.QbScoreTBFromStr ('texture file=<server,patterns/ptrn07.gif>', 'fabric', 'swatch_img', 10)) as T1"
次の表は、各フィーチャーに指定できる値をリストしています。
各フィーチャー名のすぐ下にあるのは、代わりに使用できる短縮名です。
フィーチャー名 | 値 |
---|---|
averageColor、average、または QbColorFeatureClass | color=<Rvalue, Gvalue, Bvalue>
各色の値は、0 から 255 の整数で、画像の赤の値 (Rvalue)、緑の値 (Gvalue)、および青の値 (Bvalue) を指定します。
file=<file_location, filename>
file_location は、サーバー・ファイル用の サーバーです。 filename は、ファイルが常駐しているシステムに適した形式で指定した完全なファイル・パス、または相対ファイル名です。 DB2 エクステンダーは環境変数を使用して相対ファイル名を解析します (環境変数の使用によるファイル名の解決方法を参照)。 |
histogram、histogramcolor、または QbColorHistogramFeatureClass | histogram=<(hist_value, Rvalue, Gvalue, Bvalue>), ...
各ヒストグラム色の値は、ヒストグラム (hist_value) 内のその色のパーセント (1 から 100)、およびその色の赤の値 (Rvalue)、緑の値 (Gvalue)、および青の値 (Bvalue) を示す文節に指定します。
file=<file_location, filename>
file_location は、サーバー・ファイル用の サーバーです。 filename は、ファイルが常駐しているシステムに適した形式で指定した完全なファイル・パス、または相対ファイル名です。 DB2 エクステンダーは環境変数を使用して相対ファイル名を解析します。 |
draw、positional、または QbDrawFeatureClass | file=<file_location, filename>
handle=<image_handle>
file_location は、サーバー・ファイル用の サーバーです。 filename は、ファイルが常駐しているシステムに適した形式で指定した完全なファイル・パス、または相対ファイル名です。 DB2 エクステンダーは環境変数を使用して相対ファイル名を解析します。 |
texture または QbTextureFeatureClass | file=<file_location, filename>
handle=<image_handle>
file_location は、サーバー・ファイル用の サーバーです。 filename は、ファイルが常駐しているシステムに適した形式で指定した完全なファイル・パス、または相対ファイル名です。 DB2 エクステンダーは環境変数を使用して相対ファイル名を解析します。 |
1 つの照会ストリングに複数のフィーチャーを指定する場合、1 つまたは複数のフィーチャーに重み (feature weight) を割り当てることもできます。 フィーチャーの重みは、イメージ・エクステンダーが類似性得点を計算し、イメージ内容による照会の結果を戻すときに、フィーチャーに置く強調を示します。 フィーチャーに指定する重みが大きければ大きいほど、照会に組み込まれたそのフィーチャーに対する強調が大きくなります。 重みは、0.0 より大きい実数 (たとえば 2.5 または 10.0) です。 照会ストリングで重みを割り当てない場合、イメージ・エクステンダーはそのフィーチャーの省略時の重みを使用します。 フィーチャーが 1 つの照会ストリングに指定された唯一のフィーチャーである場合、重みの割り当ては無意味です。 (そのフィーチャーは照会内で常にすべての重みを持ちます。)
フィーチャーの重みは、照会内に指定した他のフィーチャーに相対的です。 たとえば、照会ストリングに平均色とテクスチャーのフィーチャーを指定し、平均色に 2.0 の重み値を指定するとします。 これにより、イメージ・エクステンダーは、平均色の値にテクスチャー値の 2 倍の強調を与えることになります。
次の照会ストリングは、平均的な赤色を指定します。
averageColor color=<255, 0, 0>
次の照会ストリングは、10% の赤、50% の緑、および 40% の青からなるヒストグラムを指定します。
histogram histogram=<(10, 255, 0, 0), (50, 0, 255, 0), (40, 0, 0, 255)>
次の照会ストリングは、平均色値とテクスチャー値を指定します。 テクスチャー値はサーバー・ファイル内の画像によって提供されます。 テクスチャーの重みは平均色の 2 倍です。
averageColor color=<30, 200, 25> and texture file=<server, "\patterns\pattern7.gif"> weight=2.0