您可使用查詢字串來識別查詢的特性、特性值和特性比重。 查詢字串是一種字串, 其格式為 feature_name value, 其中 feature_name 指 QBIC 特性名稱, value 是與特性相關的值。
您可以在一個查詢中指定多個特性。 然後,為每一個特性指定特性名稱值配對,如特性值中所述。 每一個配對是以子句 AND 隔開。當您在一個查詢中指定多個特性時, 您亦可指定比重給一或多個特性,如特性比重中所述。 接著查詢字串的格式為 feature_name value weight, 其中 weight 是指定給特性的比重。
Image Extender 提供共用一個查詢字串的 API (QbQueryStringSearch) 和兩個 UDF (QbScoreFromStr 和 QbScoreTBFromStr)。 當您發出查詢時,請使用適當的 API 或 UDF,並指定查詢字串作為輸入參數。 (詳細資訊,請參閱按影像內容發出查詢。)
在查詢字串中,為查詢中每一個特性指定一個特性值。
當傳遞查詢到 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 | 顏色=<Rvalue、Gvalue、Bvalue>
顏色值範圍為 0 到 255 的整數,可用來識別影像的紅色值 (Rvalue)、 綠色值 (Gvalue) 和藍色值 (Bvalue)。
檔案=<file_location, filename>
對伺服器檔案,file_location 是 server。 filename 是以檔案所在的系統, 其適合的格式來指定之完整檔案路徑或相對檔名。DB2 Extender 將使用環境變數解析相對檔名 (請參閱如何使用環境變數來分辨檔名)。 |
histogram、histogramcolor 或 QbColorHistogramFeatureClass | 直方圖=<(hist_value、Rvalue、Gvalue、Bvalue>),...
每一個直方圖色值都指定在一個子句中, 此子句用來識別直方圖 (hist_value) 中顏色的百分比 (1 到 100), 以及顏色的紅色值 (Rvalue)、綠色值 (Gvalue) 和藍色值 (Bvalue)。
檔案=<file_location, filename>
對伺服器檔案,file_location 是 server。 filename 是以檔案所在的系統, 其適合的格式來指定之完整檔案路徑或相對檔名。DB2 Extender 將使用環境變數解析相對檔名。 |
draw、positional 或 QbDrawFeatureClass | 檔案=<file_location, filename>
handle=<image_handle>
對伺服器檔案,file_location 是 server。 filename 是以檔案所在的系統, 其適合的格式來指定之完整檔案路徑或相對檔名。DB2 Extender 將使用環境變數解析相對檔名。 |
texture 或 QbTextureFeatureClass | 檔案=<file_location, filename>
handle=<image_handle>
對伺服器檔案,file_location 是 server。 filename 是以檔案所在的系統, 其適合的格式來指定之完整檔案路徑或相對檔名。DB2 Extender 將使用環境變數解析相對檔名。 |
如果在查詢字串中指定多個特性,您也可以為一或多個特性指定比重。 特性的比重指出 Image Extender 在計算相似性點數及傳回影像內容的查詢結果時, 對特性的強調。 您為特性指定的比重越高,則在查詢中對該特性的強調就越大。 比重指大於 0.0 的實際數字,例如 2.5 或 10.0。如果您沒有在查詢字串中指定比重,則 Image Extender 將使用特性的預設比重。如果該特性是查詢字串中唯一指定的特性,則不需 要指定比重。(在查詢中,該特性將一直保有完整的比重。)
特性的比重與查詢中指定的其它特性有關。例如,假定您指定平均色和紋理特性, 並對平均色指定比重值 2.0。它告知 Image Extender 給予平均色值相較於紋理值兩倍的強調。
下列查詢字串指定紅色的平均色:
averageColor color=<255, 0, 0>
下列查詢字串指定紅色 10%、綠色 50% 及藍色 40% 所構成的直方圖:
histogram histogram=<(10, 255, 0, 0), (50, 0, 255, 0), (40, 0, 0, 255)>
下列查詢字串指定平均色值和紋理值。紋理值由伺服器檔案中的影像提供。 紋理比平均色加倍重要:
averageColor color=<30, 200, 25> and texture file=<server, "\patterns\pattern7.gif"> weight=2.0