イメージ、オーディオ、およびビデオ・エクステンダー 管理およびプログラミングの手引き

画像の得点の取り出し

イメージ・エクステンダーには、表列内のカタログ・イメージの得点を取り出すために、SQL ステートメントで使用できる 4 つの UDF があります。

得点は倍精度の浮動小数点数で、値は 0.0 から無限大までです。 得点が低ければ低いほど、その画像のフィーチャー値は、照会に指定したフィーチャー値に類似しています。 値 0.0 は、その画像が厳密に一致していることを意味します。

以下の UDF があります。

推奨事項: 単一のカタログ・イメージの得点を入手するには、QbScoreFromStr UDF を使用します。 表列内の複数のカタログ・イメージの得点を入手するには、QbScoreTBFromStr UDF を使用します。

単一画像の得点の取り出し

表列内の単一のカタログ・イメージの得点を入手するには、QbScoreFromStr UDF を使用します。 QbScoreFromStr UDF への入力としては照会ストリングを指定します。 QbScoreFromName UDF を使用する場合には、QbScoreFromName UDF への入力として照会オブジェクトの名前を指定します。 いずれの UDF を使用する場合でも、ターゲット・イメージを含んでいる表列の名前を指定します。

次の照会では、QbScoreFromStr UDF を使用して、表列のカタログ・イメージで、平均色が赤に最も近いものを見つけます。

SELECT name, description
decimal (QbScoreFromStr(swatch_img,
            'QbColorFeatureClass color=<255, 0, 0>'),   /* query string *
                  10, 5) AS score
FROM fabric                                             /* table column */
ORDER BY score
 

複数の画像の得点の取り出し

表列内の複数のカタログ・イメージの得点を入手するには、QbScoreTBFromStr UDF を使用します。名前付きの照会の場合には、QbScoreTBFromName UDF を使用することができます。 2 つの UDF は、画像ハンドルと得点からなる 2 列の表を戻します。 表内の行は得点の昇順になります。 結果の表のハンドル列の名前は IMAGE_ID であり、得点列の名前は SCORE です。

QBScoreTBFromStr UDF に対する入力として、照会ストリングを指定します。 QbScoreTBFromName UDF への入力としては照会オブジェクトの名前を指定します。 いずれの UDF を使用する場合でも、ターゲット・イメージを含んでいる表と列の名前を指定します。 結果の表に戻す行の最大数も指定することができます。 結果の最大数を指定しない場合、UDF はターゲット表列内のカタログ・イメージごとに 1 行を戻します。

次の照会では、QbScoreTBFromStr UDF を使用して、表列のカタログ・イメージで、テクスチャーがサーバー・ファイルの画像のテクスチャーに最も近いものを 10 個見つけます。

SELECT name, description
FROM fabric
WHERE CAST (swatch_img as varchar(250))IN
 SELECT CAST (image_id as varchar(25)) FROM TABLE
 (QbScoreTBFromStr
 (QbTextureFeatureClass file=<server,"patterns/ptrn07.gif">'   /*query string */
      'fabric',                                               /* table */
      'swatch_img',                                           /* table column */
      10))                                       /* maximum number of results */
AS T1));
 


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]