以位元字串矩陣為圖像索引的空間知識表示法 An Improved Bit-Pattern-Based Matrix Spatial Knowledge
Representation for Iconic Indexing of Symbolic Pictures
簡永仁 蔡旺達 靜宜大學 靜宜大學
yrjean @pu.edu.tw [email protected]
0B
摘要
在影像資料庫領域中,有許多方法可以幫助使 用者搜尋想要的影像,這些方法的根本通常是利用 與影像內容相關的各種資訊來註解影像,建立索 引,以方便並加速使用者的搜尋。在本文中,我們 提出一個新的空間知識表示法(spatial knowledge representation),融合 bit-pattern matrix(BP-matrix)及 2D C+-string 的優點,稱之為 BP+ matrix,用來表示 影像中所有物件之空間資訊。我們針對 BP matrix 所定義的十二位元字串加以精簡改良,只利用九個 位元構成位元字串,即可以表示原來所記載的所有 空間資訊,同時參考2D C+-string 的概念,在我們 所提出的新矩陣中加入物件的尺寸、位置資訊,使 我們的影像空間知識表示法可以支援更精確的空 間 推 理(spatial reasoning) 與 相 似 檢 索 (similarity retrieval),最後我們更提出九層相似等級的影像檢 索,以因應對相似比對精確度要求各不同的種種可 能的應用。
關鍵詞:空間推理,圖像索引,影像檢索,空間知 識表示法。
1B
Abstract
In this paper, we proposed an improved bit-pattern based matrix to represent iconic indexing of symbolic picture called BP+ matrix. In this spatial knowledge representation, the relationship of any two objects is along x-axis (or y-axis). We use 9 bits in each bit-pattern to represent the corresponding spatial operator. Here, it saves more storage than bit- pattern matrix, because we use fewer bits to denote each spatial operator. In the matrix, it not only recorded the relationships between any two objects, but also recorded the size and location of every object in the symbolic picture. In BP matrix, the diagonal fields are not used; we improved this point and recorded size of every object; and added one row under the original matrix to record the location of every object. In BP+ matrix, we can make our spatial knowledge representation more precisely than BP matrix.
Key words:spatial reasoning, iconic indexing, image
retrieval, spatial knowledge。
1.
2B前言
在影像資料庫領域中,以影像內含的資訊為依 據 進 行 影 像 檢 索 的 方 法 稱 為content-based image retrieval(CBIR),而所謂影像內含資訊,包括顏色、
紋路、外觀,還有物件們之間的空間關係。而描述 物件們之間的空間關係的方法稱為空間知識表示 法(spatial knowledge representation)。
在先前便有許多學者提出不同的空間知識表 示法。在1987年,Chang等人[6]首先提出一種利用 高階的物件導向來做影像中的空間推理(spatial reasoning)之方法,所謂的空間推理就是利用影像 中所有的物件,透過空間知識表示法的規則,而推 論出物件們之間的關係,在瞭解物件之間的關係 後 , 把 這 些關 係 記 錄 下來 當 作 影 像的 圖 像 索 引 (iconic indexing)。圖像索引不僅可以幫助影像儲 存,且利用圖像索引也可用來做空間推理與相似度 檢索的動作。
在大型的影像資料庫中,儲存的影像數量是非 常龐大的,在這樣的情況下,當使用者想搜尋某張 特定的影像,便無法用人工的方式來比對,所要藉 助的就是影像資料庫中每張影像所有的圖像索引 來判斷資料庫中的影像是否符合使用者的需求,在 這樣的情況下,圖像索引中所儲存的資訊是否能幫 助使用者正確找出所要搜尋之影像及影像檢索搜 尋的方法就顯得非常的重要。
在影像空間知識表示法上用來觀察物件之間 的關係,主要有分為兩個系統,第一種為卡笛生座 標系統(Cartesian coordinate system)是利用物件投 射在X軸、Y軸上之相對關係;第二種是利用物件在 環形(ring-direction)或扇形方向(sector-direction)上 的關係的波拉座標系統(polar coordinate system)。
而在本文中所用到的方法是屬於第一種的卡笛生 座標系統,來觀察物件與物件之間的關係。
根據Chang等人[6]提出了所謂的2D String,這 是符合卡笛生座標系統中最早期的空間知識表示 法,在一個平面上,利用影像中物件投射在X軸跟Y 軸上的位置,來比較每個物件在X軸上的關係及在Y 軸上的關係,且用三個空間運算子來表示及記錄物 件之間所相對的空間關係,由於2D String只能簡單
表示物件的幾種關係,無法給予空間關係較完整的 表示,所以後來在Chang等人於1988年[5]所提出的 2D G-string 對 這 一 點 作 了 相 當 大 的 改 進 , 2D G-string採用了切割的機制,而物件切割的時機,是 當影像中的物件在投射到X軸或Y軸時,發現有與其 他物件重疊的現象時,便會採取切割機制,2D G-string在提出了這一項切割機制後,的確幫助了原 本2D string來更有效率的表示出一張影像中物件之 間的空間關係,加強了影像重建的精確度。但是2D G-string提出的切割機制仍然有較不成熟的缺點存 在,2D G-string對於切割時機的判斷,是針對的物 件在投射到X軸或Y軸時,有重疊的現象發生,便會 做切割的機制,而切割的位置,是在物件有與其他 物件重疊到的起點(begin-bound)或終點(end-bound) 處,進行切割的動作,而這樣的方法,在影像中所
擁有物件數量相當多的情況下,因切割而產生的子 物件(subpart)數量會多的驚人。
在Lee 和 Hsu[19]所提出的 2D C-string 中,針 對 2D G-string 的切割機制進行改進,2D G-string 表示法之切割的時機只針對一群重疊物件中的主 要物件(dominating object)的終點進行切割,如此,
切割的次數減少,相對應切割所生成的子物件也減
少許多,使影像所需儲存的圖像索引資訊大為精 簡。圖(1)中的便是一個簡單的比較 2D G-string 及 2D C-string 例子,可以很清楚的看出兩張相同影像 所做的切割次數及其各自所記錄的圖像索引的長 度。
尚有相當重要的一點便是 2D C-string 將原本 2D string 所提出的三個空間運算子擴充至七個,如 表(1)內容所示,因為當在切割的次數減少時,各個 子物件之間的關係就不會那麼單純的只有三種空 間關係,所以才需要新的空間運算子,來表示其他 後續提出的空間關係。
由於上述所提到的數種空間知識表示法皆是 只記錄影像中物件相對的空間關係,並沒有記錄物 件 之 間 的 距 離(distance) 、 物 件 尺 寸 (size) 及 位 置 (location)的資訊,使得這些方法在物件關係的表達 上會產生不明確的情況,因此,Huang和Jean[14]針 對2D C-string加以改良,且提出了2D C+-string,其 記錄了三種計量資訊(metric information)來表達物 件的尺寸、位置及物件之間的相對距離,也改進了 2D C-string在物件空間關係上會表達不明確的情 況。
在前面所提到的空間知識表示法都是利用字 串的方式來對一張影像做影像索引,而我們文章中 還有參考到另一類做影像索引的方法,這類方法主 要 利 用 矩 陣 的 方 式 來 記 錄 影 像 中 物 件 的 關 係 [9,10,12] 。 Chang 等 人 於 2003 年 提 出 bit-pattern matrix[10],其方法是利用一個n×n矩陣來表示一個 有n個物件的影像,它將獨特的位元字串儲存在矩 陣之中,只要針對矩陣與矩陣之間的位元字串做比 對,就可以得知兩張影像的相似度,而這樣利用位 元字串來做比對的優點,即是在比對處理的過程 中,會擁有更快的速度。
而我們融合2D C+-string和bit-pattern matrix兩 種方法,主要就是希望能得到一個相似度比對更為 精確,且影像檢索更為快速的空間知識表示法,這 便是我們提出本篇研究的動機。
我們將在第二節中對本文主要所參考到的 2D C+-string 和 bit-pattern matrix 做一些更詳細的說 明;第三節至第六節中會介紹我們針對過去的方法 所提出的新的空間知識表示法,以及如何使用我們 所提的空間知識表示法的影像表示格式、如何做空 間推理及影像的檢索,第七節則是我們的結論。
2D G-string:A|B=A|B|C=B|C
2D C-string:A]B|B]C|C
圖(1) 2D G-string 與 2D C-string 之圖例
Notation Condition Meaning A<B end(A)<begin(B) A disjoins B A=B begin(A)=begin(B) end(A)=end(B) A is the same as B
A|B end(A)=begin(B) A is edge to edge with B
A%B begin(A)<begin(B) end(A)>end(B) A contains B and they have not the same bound A[B begin(A)=begin(B) end(A)>end(B) A contains B and they have the same begin bound A]B begin(A)<begin(B) end(A)=end(B) A contains B and they have the same end bound A/B begin(A)<begin(B)<end(A)end(B) A is partly overlapping with B
表(1) 2D G-string 中所提出的空間運算子及其定義
2.
3B先前研究
在這個章節中,主要介紹本文所參考的兩個空 間知識表示法,分別為2D C+-string 及 BP matrix。
2D C+-string
2D C+-string 如先前所提,記錄了物件的三種 計量資訊(metric information),分別為物件的尺寸、
位置及物件之間的距離,而這三種資訊分別記錄在 圖像索引中的三個地方:
(1)在物件的表示空間的運算子後方加入物件 大小的數據。
(2)在%運算子後記錄兩個物件之間相差之距 離。
(3)在<運算子後加入兩個物件的距離。
2D C+-string 在改進 2D C-string 後,於原本的 2D C-string 相較下有三項優勢:
(1)在影像的重建上更加精確。
(2)在影像的檢索上,模擬兩可的情況減少。
(3)可以記錄物件之間的邏輯大小、位置及相對 距離。
圖(2)便是 2D C+-string 的空間知識表示法的表
示範例,從範例中我們可以清楚的看出2D C+-string 的空間知識表示法對物件的位置、距離等的記錄格 式。
BP matrix
在Chang等人[10]所提出的bit-pattern matrix中 的 物 件 空 間 關 係 表 示 法 , 亦 是 繼 承 了 當 初2D C-string的表示法中所定義的空間關係,使用2D C-string中所提出的空間運算子,來表示兩個物件投 影在一個軸上的十三種空間關係。在Lee和Hsu[19]
所提出的2D C-string中提出了七種不同的空間運算 子,但是為了在空間表示法及空間推理上方便,便 將七個空間運算子稍做變化,以擴充至十三空間運 算子{<,<*,/,/*,|,|*,%,%*,[,[*,],]*,=},如此一來,每 個運算子正好可以表示兩個物件投影在一個軸上 的空間關係。符號"*"代表的是相反(inverse)的意 思。例如有某兩物件為A、B,而他們的空間關係為 A<*B,則實際上他們的空間關係為B<A。
A
B D
C 2
1
3 4
7 6 5
0
圖(3)
而擴充至十三個空間運算子之所以有助於空 間推理及空間表示法,我們舉下列例子來進行說 明。如圖(3)中,物件A與物件B投射在X軸上的相對 關係為A<B、投射在Y軸上的相對關係為B<A。但 是在利用"*"這個符號,我們可以簡單的明白A、
B兩物件投射在X軸及Y軸上的空間關係是<和<*。
兩個物件投射在一個軸上,有著十三種空間關 係存在,而從一個平面的角度來看,兩個物件投影 在X軸、Y軸上,總共會有一百六十九種空間關係 [19],這一百六十九種空間關係又分為五個空間種 類 , 分 別 為 :disjoin 、 join 、 belong 、 contain 、 partly_overlap。
A
B D
C
1
3 4
7 6
0
8 9
以X 軸為觀點的
2D C+-strin :Bg 7%(A4](D1<1C1)|C1)
以Y 軸為觀點的
2D C+-string:B1<2D3]C2|C3%1A1
圖(2) 2D C+-string 之圖例 以X 軸為觀點的 2D C+-u-string:
B7%(A4](D1<1C1)|C1)
以Y 軸為觀點的 2D C+-v-string:
B1<2D3]C2|C3%1A1
Bit-pattern matrix 依據五種空間種類的規則,為 每 種 空 間 關 係 各 自 設 計 一 個 獨 特 位 元 字 串 (spatial-operator bit-pattern),規則如圖(4)所示。在 第零至第八個位元的規則,主要是可以用來判斷物 件與物件之間,究竟是屬於何種空間種類;其餘三 個位元的目的,是用來區分前九個位元所代表的空 間關係集合裡的某一特定空間關係。BP matrix 利用 上述的規則,定義出十三種空間關係的位元字串,
如下:
<: 001000000001 [*: 010101010100
<*: 010000000001 [: 010011001100
|: 001000000110 ]: 100011001100
|*: 010000000110 ]*: 100101010100
in{%*,[*,
]*} in{%,[
,]} in{%,[,],%*,
[*,]*,=,/,/*} in{/, in{%*,
[*,]*} in{%,[,]} not in
{<,<*} in in /*} {|,|*} {<,<*}
partly overlap
belong contain disjoin
join
9 8 7 6 5 4 3 2 1 0 distinguish spatial
operator in the same category
圖(4) BP matrix 中的位元字串規則 11 10
3.
4BBP
+matrix
在觀察上一節中所提到的 2D C+-string 及 BP matrix 這兩種空間知識表示法後,分析兩種空間知 識表示法的優缺點,我們提出了一種融合這兩種表 示法的一個新的表示法,稱為BP+ matrix。
BP+ matrix 是亦是利用矩陣來儲存圖像索引的 一種空間知識表示法,其優點有:
%: 001011001100 /: 001001100100
%*: 001101010100 /*: 010001100100
=: 000001011100
在 bit-pattern matrix 中,利用了這樣的位元字 串來記錄及表達一張影像的圖像索引,把一張擁有 m 個物件的影像的圖像索引,記錄在一個 m×m 的 矩陣中,在影像的檢索上,利用矩陣中的位元字串 執行位元比對,做 AND 及 OR 的比對動作。在電 腦內部所有的資料真正在運算、處理的方法,即是 利用位元0 與 1 的格式進行比對、運算,無論何種 資料,都會轉換成0、1 的位元串列。Bit-pattern matrix 利用此項優點,在一開始對影像做圖像索引時,即 記錄了這樣格式的資訊,表示其在影像檢索時,比 較兩張影像的圖像索引的速度會更加快速、省時。
在下圖(5)中便是一個 BP matrix 的範例,圖中矩陣 的部分便是影像索引的格式,矩陣內容記錄的是圖 中所有物件的關係。
(1) 針對物件的大小及物件之間相對的距離做更加 明確的記錄。
(2) 在影像重建及表達上會變的更精確。
(3) 在影像檢索上變的更加嚴謹。
我們新的方法對原本bit-pattern matrix 的位元 字串規則做了改進,在各個位元所代表的空間關係 集合中,找出其之間相似處,進行修改、精簡的動 作
。
圖(6)的內容就是經過我們修改後產生的新的 字串規則在第零至第六個位元是可以用來判斷物 件的空間種類,第七及第八個位元則是用來區分前 七個位元中各自代表的空間關係集合中特定的空 間關係,與圖(4)中原本的 BP matrix 所提出的字串 規則比較下,明顯可以看出兩者所利用的位元個數 的差異,在此處,我們利用較少的位元數所生成的 位元字串一樣可以代表原本的十三種空間關係,在 此我們更能比原本的bit-pattern matrix 中所提出的 位元字串節省更多空間。而圖(6)用的格式,亦可做 到分辨五種空間種類的功能。下列說明我們如何透 過兩個物件在X 軸、Y 軸上的兩種空間關係來判斷 此二物件是屬於何種空間種類。
(1) Disjoin 規則:至少有一種空間關係是屬於 {<,<*}集合中的空間關係。
圖(5) BP matrix 圖例
8 7 6 5 4 3 2 1 0
not in
=,<,<*,|,|*
in
=,%,[,]
in
=,%*,[*,]*
in
=,%*,[*,]*,%,[,],/,/*
in in
|,|*
in /,/* <,<*
圖(6) BP+ matrix 位元字串規則
(2) Join 規則:兩種空間關係至少有一種為{|,|*}的 集合中的空間關係,且不可有{|,|*}集合中的空 間關係。
(3) Contain 規則:兩種空間關係都必定為{=,[,],%}
集合內的空間關係。
(4) Belong 規則:兩種空間關係都必定為 {=*,[*,]*,%*}集合內的關係。
(5) Partly_overlap。partly_overlap 具有兩種不同的 規則,只要符合其中一項規則便成立。
z 規則 1:其中一種空間關係為{/,/*},另一種 空間關係就必定為{=,/,/*[,[*,],]*,%,%*}
z 規則 2:一種空間關係為{[,],%},另一種空間 關係為{[*,]*,%*}
依照上述的規則,在初始時,我們把位元字串 的初始值預設為 000000000,位元字串中的每一個 位元都代表的圖(6)中相對應到的空間關係集合。除 了利用十三種位元字串來表示物件之間的空間關 係之外,我們會把一張影像用切割的機制,對一張 影像垂直及水平平均切割為十六個區塊,如圖(7)
就是一個針對我們所提出的BP+ matrix 所做的一個 簡單的例子,以及其圖像索引之格式,例如在圖(7) 中,矩陣內的 處即代表物件 A 之大小、 即代 表物件A 在影像中的起始位置,在後面的章節中,
我們將會對其圖像索引的格式作詳細的介紹。這樣 的用法是可以幫助我們記錄物件的起始點和物件 的尺寸,只需要知道物件的起始點在哪個區塊及物
件的邊長橫跨了幾個區塊,就可以知道物件位置及 其尺寸,只要兩個物件的起始點在同一區塊中,即 可視此二物件起始點相同,如此作法,乃因有時影 像在縮放上,可能會產生些微的誤差,假如記錄的 太過精確,會導致同一張影像在經過縮放的動作後 就變的不一樣,所以我們利用這樣的動作當作一個 可以稍微容錯的機制,以避免兩張在肉眼上看起來 相似的影像,卻可能因相似度檢索過於嚴苛,而被 判定成不相似。
sA bA
4.
5B位元字串生成
在這個章節中,我們將先介紹我們所提出的空 間知識表示法中,用來代表各個空間關係的位元字 串以及如何判斷兩個物件的關係是屬於何種空間 種類。
我們只取第零到第六個有代表空間關係的位元 來做空間種類的判斷。 代表的定義為 A、B 兩 物件投影在X 軸上的關係、 代表的定義為A、
B 兩物件投影在 Y 軸上的關係,我們把代表一個空
u B
r
A, vB
r
A,間 關 係 的 位 元 字 串 稱 為 為
spatial-operator-bit-pattern,簡稱 sobp[12]。
B C
1. Disjoin 規則:至少有一種空間關係為<或是
<*。
sobp(r):=sobp(r)|0000001 ∀r∈{<,<*}
A 跟 B 兩物件投影在 X 軸跟 Y 軸的兩個 空間關係的位元字串先做 OR 字串比對的動 作,再跟0000001 做 AND 字串比對的動作,
出來的結果是 0000001 表示兩種關係的位元 字串在第零個位元處必定都是1,這樣就可以 確保一定有{<,<*}集合內的空間關係出現。
2. Join 規則:兩種空間關係其中之一為{|,|*}集合 中之關係,且另一種空間關係不可為{<,<*}
集合中之關係。
sobp(r):=sobp(r)| 0000010 ∀r∈{|,|*}
sobp(r)≠sobp(r)|0000001 ∀r∉{<,<*}
在表示兩個物件投影在X 軸及 Y 軸上的 兩個空間關係中,至少有一種空間關係是{|,|*}
集合內的關係,且必定不會有{<,<*}集合中的 A
圖(7) BP+ matrix 的影像表示及矩陣內容
表(2) 判斷空間種類之運算式 Disjoin (sobp (
r
u )| sobp( ))&0000001= =0000001B A,
,
, ,
, ,
, , ,
, ,
v B
r
A,Join (sobp (
r
u )| sobp( ))&0000011= =0000010B A
v B
r
A,Contain (sobp (
r
u )&sobp(r
))&0100000==0100000B A
v B A
Belong (sobp (
r
u )&sobp(r
))&0100000==0010000B A
v B A
Partly_overlap ((sobp ( )&sobp(
r
))&0000100)|(( (sobp (r
)&sobp(r
))&0001000)=0001100 Or (Ar
B♁Ar
B)&0110111=0110000u B
r
A, AvB AuB AvBu B A
v B A
關係的出現,所以第零個位元的值永遠是0、
而第一個位元一定為1,這樣便可得知其中一 種空間關係一定為{|,|*}集合內的關係。
3. Contain 規則:表示兩個物件投影在 X 軸及 Y 軸上的兩種空間關係皆必定為{=,[,],%}集合 內的關係。
sobp(r):=sobp(r)|0100000 ∀r∈{=,[,],%}
兩種空間關係的位元字串做AND 的位元 比對動作,在做AND 後,第五個位元值必定 為1,所以在兩個位元字串作 AND 後,再跟 0100000 做 AND 的位元比對動作,可確保投 影在X 軸跟 Y 軸的兩個位元字串值在第五個 位元皆會是1,便可以確保兩種空間關係都一 定會{=,[,],%}集合內的關係。
4. Belong 規 則 : 兩 種 空 間 關 係 皆 必 定 為 {=*,[*,]*,%*}集合內的關係。
sobp(r):=sobp(r)|0010000 ∀r∈{=*,[*,]*,%*}
兩個空間關係的位元字串先做AND 的動 作,在做AND 的動作後,第四個位元的值必 定為1,所以在兩個位元字串作 AND 後,再 跟0010000 做 AND,可確保投影在 X 軸跟 Y 軸的兩個位元字串值在第四個位元都會是 1 , 如 此 可 確 保 兩 種 空 間 關 係 都 一 定 會 {=,[*,]*,%*}集合內的關係。
5. Partly_overlap:
規則1:其中一種空間關係為{/,/*},另一種為 {=,/,/*[,[*,],]*,%,%*}。
sobp(r):=sobp(r)|0000100
∀r∈{/,/*}
sobp(r):=sobp(r)|0001000
∀r∈{=,%*,[*,]*,%,[,],/,/*}
z Step 1:一開始先把兩物件投影在 X 軸跟 Y 軸上的兩個空間關係位元字串先做 OR 的 比較動作,然後再跟0000100 做 AND 的比 較,在這裡可以至少知道其中一種空間關 係一定為{/,/*}內的關係。
z Step 2:把兩物件投影在 X 軸跟 Y 軸上的 兩個位元字串做AND 的比較,若兩個位元 字串的第三個位元都為1,就知道兩個字串 的第三個位元都是1,可以推得兩種空間關 係一定都為{/,/*,[,[*,],]*,%,%*,=}集合內的 關係,所以在跟0001000 做 AND 的動作。
z Step 3:在 step 1 和 step 2 時,亦可確認不 會有{<,<*,|,|*}集合中的關係出現。在兩個 位元字串經過step 1 和 step 2 兩個步驟後,
取其結果,並將各自的結果做OR 的動作,
當結果為0001100,規則一便成立。
規則2:一種空間關係為{[,],%},另一種空間 關係為{[*,]*,%*}。
sobp(r):=sobp(r)|0100000
∀r∈{=,[,],%}
sobp(r):=sobp(r)|0010000
∀r∈{=*,[*,]*,%*}
sobp(r) ≠sobp(r)|1000000 ∀r∉{<,<*}
z Step 1:{[,],%}集合內的空間關係位元字串 在 第 零 個 到 第 六 個 位 元 的 表 示 值 皆 為 1101000;{[*,]*,%*}集合內的空間關係位 元字串在第零個到第六個位元的值都為 1011000。以上兩個的關係就是在第四個跟 第五個位元的值一定都會不同,所以把兩 個位元字串作XOR 的比較後,第四個跟第 五個位元的值皆必為1。
z Step 2:把 step 1 的結果和 0110111 做 AND 的比對動作,若得到的結果為0110000,在 第四個跟第五個位元都為1,表示兩種關係 必分別屬於{[,],%}及{[*,]*,%*}集合內的 關係,而第零個到第二個位元在結果為 0 之原因是為了預防下列三種狀況的發生:
Case 1:一種空間關係為=,一種空 間關係為{<,<*}集合內的關係。
= :0111000
< :0000001
<*:0000001
Case 2:一種空間關係為=,一個種 空間關係為{|,|*}集合內的關係。
= :0111000
| :0000010
|*:0000010
Case 3:一種空間關係為=,一種空 間關係為{/,/*}集合內的關係。
= :0111000
/ :1001100
/*:1001100
Case 1 中,=與{<,<*}集合內的位元字 串在經過 step 1 的結果為 0111001,再和 0110111 做 AND 的動作後,得到的結果必 不 符 合 0110000,這樣可以確保不會有 {<,<*}集合內的空間關係出現。而 case 2 亦是相同的道理。
Case 3 的狀況本屬於 partly_overlap 的 規則,但由於partly_overlap 有兩種規則的 關係,基於嚴謹性的理由,我們仍然把這 種可能的例外區別開來。
下列就是依照我們所定義之字元串列規則而 設計出來的各種空間關係之位元字串:
<: 010000001 [: 101101000
<*: 100000001 [*: 101011000
|: 010000010 ]: 001101000
|*: 100000010 ]*: 001011000
%: 011101000 /: 011001100
%*: 011011000 /*: 101001100
=: 000111000
5.
6B空間推理
我們所提出的空間知識表示法的矩陣中,主要 有三種不同的位元字串,第一種便是在前面介紹到 用來表示空間關係的位元字串;第二種是用來表示 影像中物件尺寸的位元字串;第三種為表示影像中 物件位置的位元字串,格式分別說明如下:
1. 第一種為描述物件空間關係的位元字串,其 格式如圖(6)所示。
2. si= six0siy
six 為一個四位元的子字串,代表物件 i 在X 軸上的尺寸,而 siy為一個四位元的子字 串,代表物件i 在 Y 軸上的尺寸,中間以 0 來區隔。
3. bi= bix0biy
bix 為一個四位元的子字串,代表物件 i 在X 軸上的位置,而 siy為一個四位元的子字 串,代表物件i 在 Y 軸上的位置,中間以 0 來區隔。
如圖(8)所示,就是本文所定義的空間表示法的 格式。矩陣(1)和矩陣(2)則為兩個互相對應的矩陣,
矩陣(1)是我們所提出的矩陣格式樣式,s 處代表的 是物件投影在X 軸及 Y 軸的大小、b 處代表的是物 件在X 軸及 Y 軸上的起點位置。矩陣(2)為矩陣在 實際儲存影像資訊後的實際樣式。如在矩陣最左上 角欄位AA 的位置上為 010101000,這個字串的意 義如下。
AA :0101U0U1000 6 9
我們以物件所佔用的區塊數來表示物件的大 小,並以0000 代表一、0001 代表二、…,以此類 推, 1111 則代表十六。而計算物件起始區塊的方 式亦同。觀察上述字串,可以很清楚得知代表物件 A 投影在 X 軸時所佔用的區塊數為六、投影在 Y 軸上所佔用的區塊數為九。而在矩陣(2)對應到的矩 陣(1)的 b 處的格式設定與 s 處之設定相同,不同的 地方是 s 處代表的意義是物件的大小,而 b 處代表
的為各個物件的起始位置。
我們這樣的方法對於矩陣中每一個欄位,都做 到都充分的利用,相較於BP matrix 中的矩陣尚有 沒有利用到的欄位,我們的方法更是充分發揮了矩 陣的功用。
A
B C A
B C
6.
7B影像檢索
由 於 我 們 的 空 間 表 示 法 可 以 記 錄 物 件 的 關 係,還可以記錄物件的起始位置及大小,所以在檢 索的過程中,我們可以分別的更加詳細。而下列我 們先對檢索定義中出現的標示符號定義。
矩陣(1)
Definition 1:
B
c
A, 物件A 與物件 B 的空間種類u B
r
A, 物件A 與物件 B 在 X 軸上的空間關係v B
r
A, 物件A 與物件 B 在 Y 軸上的空間關係v
s
A 物件A 在 X 軸上的起點位置u
s
A 物件A 在 Y 軸上的起點位置u
l
A 物件A 在 X 軸上的大小v
l
A 物件A 在 Y 軸上的大小 矩陣(2)圖(8) BP+ matrix 的影像表示及儲存格式
假設有兩張影像為 f 及 f `,在為 f 中有 A 和 B 兩個物件,而 f `中亦有 A、B 兩物件。
在 f 中物件 A、B 的空間種類為 、在X 軸 上的空間關係為 、在Y 軸的關係為AB ,而針
c
,u B
r
A,r
Av,B對單一物件來觀察:
z 物件 A:在 X 軸上的起點位置 u
l
A、在X 軸上的尺寸 u
s
A、在 Y 軸上的起點位置l
Av、在Y 軸上的尺寸 v
s
Az 物件 B:在 X 軸上的起點位置 u
l
B、在X 軸上的尺寸 u
s
B 、在 Y 軸上的起點位置l
Bv、在Y 軸上的尺寸 v
s
B。在 f `中物件 A、B 的空間種類為 、在X 軸 上的空間關係為 、在Y 軸的關係為 、而針
, ,B
c
A ', u B
r
Ar
Av,'B對單一物件來觀察:
z 物件 A:在 X 軸上的起點位置 u'
l
A、在X 軸上的尺寸 u'
s
A、在Y 軸上的起點位置l
vA'、在Y 軸上的尺寸 v'
s
A。z 物件 B:在 X 軸上的起點位置 u'
l
B、在X 軸上的尺寸 u'
s
B,在Y 軸上的起點位置l
Bv'、在Y 軸上的尺寸 v'
s
B。接下來我們就開始說明如何得知 f 及 f `兩張影 像符合何種等級的檢索。我們把影像檢索的等級分 為九個等級的相似程度,下列就是針對各個層級的 檢索所需要滿足的條件,以及其層級還需先通過哪 個層級的檢索,如type-10 就必須先通過 type-00 再 通過 = or = 這樣的條件,才可成 立。
u B
r
A,r
Au,'Br
Av,Br
Av,'B1. type-00: =
B
c
A,c
,A,Bstrong 表(3) BP+ matrix 的九層影像檢索的相似等級
weak type-00:
B
c
A,c
A,, Br
Au,Br
Au,'Bv B
r
A,r
Av,'Bu B
r
A,r
Au,'Bv B
r
A,r
Av,'B=
type-10: (type-00) and type-20: (type-10) and
2. type-10:(type-00) & u = or =
B
r
A, ' , u Br
Ar
Av,B ' , v Br
A3. type-20:(type-10) & u = & =
B
r
A,r
Au,'Br
Av,Br
Av,'B4. type-01:(type-00) &
s
uA=s
uA',s
Av=s
Av'& u= , = ' sB sBu' sBv sBv
5. type-11:(type-10) &
s
uA=s
uA',s
Av=s
Av'& u= ', =
s
Bs
uBs
Bvs
Bv'= or
=
= and
= weak
type-01: (type-00) and
u
s
As
uA's
Avs
Av'u
s
Bs
Bu's
Bvs
Bv'u
s
As
uA's
vA vA'u
s
Bs
Bu's
Bvs
Bv'u
s
As
uA's
Avs
Av'u
s
Bs
Bu's
Bvs
Bv'= , = and
= , =
type-11: (type-10) and
= , =
s
and= , =
type-21: (type-20) and
= , = and
= , =
type-02: (type-01) and
=
l
,l
=l
and=
l
,l
=l
u
l
A Au' Av Av' ul
B Bu' Bv Bv'u
l
A Au' Av Av' ul
B Bu' Bv Bv'u
l
Al
Au'l
Av Av'u
l
Bl
Bu'l
Bv Bv'type-12: (type-11) and
=
l
,l
=l
and=
l
,l
=l
type-22: (type-21) and
= , =
l
and= , =
l
strong
f1
fq f2
f3 f4 f5
圖(9) A B
C A B
C
A B C
A B C
A B A
B C
C
6. type-21:(type-20) & u= , = '
s
As
uA's
vAs
Av 在接下來,我們將各自定義要如何才能判斷兩 張影像符合何種層級的檢索方法,我們給予 T1 及 T2兩個矩陣,假設 T1為使用者用來進行檢索資料 庫中影像的圖像索引矩陣、T2為資料庫中,某一影 像的圖像索引矩陣。& u= ', = '
s
Bs
Bus
Bvs
Bv7. type-02:(type-01) & =
l
Aul
Au',l
Av=l
Av'& u= ', = '
l
Bl
Bul
Bvl
Bv8. type-12:(type-11) & =
l
Aul
Au',l
Av=l
Av'type-00:
& =u ', = '
l
Bl
Bul
Bvl
Bv (1) 在此我們只考量矩陣中,儲存物件關係的 欄位。根據我們所描述的空間種類規則,先判斷矩陣中所記錄的每一對物件是屬於 何種空間種類,我們用 C1及 C2分別代表 T1及T2所生成出來表示物件空間種類的矩 陣。
9. type-22:(type-21) &
l
Au=l
Au',l
Av=l
Av'& u= ', = '
l
Bl
Bul
Bvl
Bv從表(3)中,我們可以很清楚的看出所有檢索層 級的關係,瞭解其精確的強弱,越往右或是往下的 檢索層級,所要符合的條件越嚴格,而檢索出來的 結果就會越精確,例如用 type-22 來檢索影像,所 得到的影像數量,一定會比用其他層級的檢索法所 得到的影像數量少。
(2) C=C1-C2
(3) 所得到的 C,若在下三角形矩陣部分皆為 零,則表示兩張影像符合type-00 層級的檢 索。
例如,在圖(9)中,假設 fq 為使用者檢索的影 像,f1至 f5為存在資料庫中的影像。符合 type-00 的影像為f1~f5,符合type-10 的影像有 f2~f5,符合 type-20 的影像有 f3、f4、f5,符合type-21 的影像有 f4以及f5,最後符合type-22 的影像只有 f5。
type-01:
(1) 通過 type-00 的檢索。
(2) T=T1-T2 1≦i≦m,i=j (3) 若 T 為零,則代表符合 type-01。
在 BP matrix 中只使用了三層檢索層級,並不 顧慮影像的大小及位置,依照其文章內所提到之檢 索進行圖(9)之檢索的結果,f3、f4、f5 三張影像皆 只符合其文章中相似等級最高的檢索層級,無法判 斷三張影像的不同。所以我們參考2D C+-string 的 優點,利用記錄的物件大小、位置,進行 f3、f4、 f5 三張影像各自不同的檢索,有所不同的是 2D C+-string 中的影像表示法內記錄的是物件之間的精 確大小、位置及相對的距離,而我們記錄的是物件 邏輯上的大小、位置及距離。
type-02:
(1) 通過 type-01 的檢索。
(2) T=T1-T2 1≦i≦m,j=m+1 (3) 若 T 為零,則代表符合 type-02。
type-10:
(1) 通過 type-00 的檢索。
(2) T=T1-T2,在此只考量矩陣中記錄物件關 係的欄位,其他的欄位皆暫用零來表示。
(3) T*=T(i,j)×T(j,i) 1≦i≦m,1≦j<i 在前面我們已經介紹過要判斷每個檢索層級
所要符合的條件,接著我們將介紹如何去判斷這些 條件是否被滿足。在Definition 2 中,C 有可能為 1 至 5 其中一個數字,其代表的意義為五種空間種 類,1 代表 disjoin、2 代表 join、3 代表 contain、4 代表belong、5 代表 partly_overlap;T 代表一個影 像所生成的圖像索引矩陣,m 是一個矩陣的最大行 數,i 和 j 代表矩陣的行列數,如標示為 T[i,j],在 此,i 代表矩陣中的第 i 行,j 代表矩陣中的第 j 列。
(4) 所得到的 T*,若在下三角形矩陣部分皆為 零,即表示符合type-10。
type-11:
(1) 通過 type-10 的檢索。
(2) T=T1-T2 1≦i≦m,i=j (3) 若 T 為零,則代表符合 type-11。
type-12:
Definition 2:
C[i,j]=1, if (T[i,j]| T[j,i])&0000001= =0000001 C[i,j]=2, if (T[i,j]| T[j,i])&0000011= =0000010 C[i,j]=3, if (T[i,j]& T[j,i])&0100000= =0100000 C[i,j]=4, if (T[i,j]& T[j,i])&0100000= =0010000
C[i,j]=5, if ((T[i,j]| T[j,i])&0000100)|((T[i,j]&T[j,i])&0001000)= =0001100 or (T[i,j]♁T[j,i])&0110111= =0110000
1≦i≦m,1≦j<i
(1) 通過 type-11 的檢索。
(2) T=T1-T2 1≦i≦m,j=m+1 (3) 若 T 為零,則代表符合 type-12。
type-20:
(1) 通過 type-10 的檢索。
(2) T=T1-T2,在此只考量矩陣中記錄物件關 係的欄位,其他欄位接不考量。
(3) 若得到的 T 為零,則代表符合 type-20 的檢 索。
type-21:
(1) 通過 type-20 的檢索。
(2) T=T1-T2 1≦i≦m,i=j (3) 若 T 為零,則代表符合 type-21。
type-22:
(1) 通過 type-21 的檢索。
(2) T=T1-T2 1≦i≦m,j=m+1 (3) 若 T 為零,則代表符合 type-22。
以上就是我們所定義用來分辨各層檢索的方 法及其步驟,利用這些方法,我們可以正確的找出 任兩張影像之間,究竟符合何種層級之檢索。
7.
8B結論
在本文中,我們主要融合 BP matrix 及 2D C+-string 的概念,提出一個改良的空間知識表示 法,稱為BP+ matrix,。BP+ matrix 最主要的改進有 三點:一、在原本BP matrix 沒有利用到矩陣的對 角線欄位中,記錄了物件大小的資訊;二、在矩陣 底層增加一列來記錄物件的位置;三、將原本 BP matrix 用來表示空間關係的位元字串改善的更為精 簡。由本文中,可以證明我們所提出的BP+ matrix 表示法與 BP matrix 表示法相較起來,在影像的表 示及影像相似度檢索上,的確更為精確。也如同我 們在文中所強調BP+ matrix 的三個優點,BP+ matrix 的 確 能 使 我們 在 記 載 影像 的 空 間 資訊 上 更 加 嚴 謹、影像檢索上更加精確。在未來的研究,我們希 望能夠繼續加強本文中所提出的BP+ matrix,使其 影像表示法更加精確,能夠更有效率的表達一張影 像中,所擁有的資訊,我們將預計將再融合其他的 空間知識表示法的優點,結合目前我們所擁有之技 巧,希望可以加強目前所擁有之空間知識表示法,
使其不論在影像的表示或檢索上,可以得到更精確 且更有效率的效果。
參考文獻
[1] Anthony J.T. Lee and H.P. Chiu , 2D Z-string: A New Spatial Knowledge Representation for Image Databases, Pattern Recognition Letters, 24, 3015-3026, 2003.
[2] Chang, C.C., , Spatial match retrieval of symbolic pictures. J. Information science. Eng. 7 (4), 405–422, 1991.
[3] Chang, C.C., Lee, S.Y., Retrieval of similar pictures on pictorial databases. Pattern Recognition 24 (7), 675–680, 1991.
[4] Chang C.C., and C.-F. Lee , Relative coordinates oriented symbolic string for spatial relationship retrieval, Pattern Recognition 28, 563–570, 1995.
[5] Chang, S.K., Jungert , E., Li, Y., Representation and retrieval of symbolic pictures using generalized 2D strings. Technical Report, University of Pittsburgh, 1988.
[6] Chang, S.K., Shi, Q.Y., Yan, C.W., Iconic indexing by 2D strings. IEEE Trans. Pattern Anal.
Mach. Intell. 9, 413–429, 1987.
[7] Chang, Y.I., Ann, H.Y., Yeh, W.H. , A unique-ID-based matrix strategy for efficient iconic indexing of symbolic pictures. Pattern Recognition 33, 1263–1276, 2000.
[8] Chang, Y.I., Ann, H.Y., Yeh, W.H., An efficient signature file strategy for similarity retrieval from large iconic image database. J. Visual Languag Computer 13 (2), 117–147, 2002.
[9] Chang, Y.I., Yang, B.Y., Yeh, W.H., A generalized prime-number-based matrix strategy for efficient iconic indexing of symbolic pictures.
Pattern Recognition Letter. 22, 657–666, 2001.
[10] Chang, Y.I., Yang, B.Y., Yeh, W.H., A bit-pattern-based matrix strategy for efficient iconic indexing of symbolic pictures. Pattern Recognition Letter 24, 537–545, 2003.
[11] Chang, Y.I., Yang, B.Y., Yeh, W.H., An Efficient Signature Extraction Method for Image Similarity Retrieval. Journal of Information Science and Engineering, Vol. 22 No. 1, pp. 63-94, 2006.
[12] Chang, Y.I., Yang, B.Y., A prime-number-based matrix strategy for efficient iconic indexing of symbolic pictures. Pattern Recognition 30 (10), 1–13, 1997.
[13] D.S. Guru. P. Nagabhushan Triangular spatial relationship a new approach for spatial knowledge representation, Pattern Recognition Letters 22 999–1006, 2001.
[14] Huang, P.W., Jean, Y.R., Using 2D C+-string as spatial knowledge representation for image database systems. Pattern Recognition 27, 1249–1257, 1994.
[15] Lee, S.Y., Shan, M.K., Yang, W.P., Similarity retrieval of iconic image databases. Pattern Recognition 22 (6), 675-682, 1994.
[16] Petraglia, G., Sebillo, M., Tucci, M., Tortora, G., Virtual images for similarity retrieval in image databases. IEEE Trans. Knowledge Data Eng. 13 (6), 951–967, 2001.
[17] P. W. Huang and C. H. Lee, Image database design based on 9D-SPA representation for spatial
relations, IEEE Transactions on Knowledge and Data Engineering, 16, 1486-1496, 2001.
[18] P. W. Huang and H. Y. Lin, Content-based Image Retrieval Using Shape Features Indexed by Compact R-trees, Journal of Information &
Optimization Sciences, 26(3), 559-586, 2005.
[19] S.Y. Lee, F.J. Hsu, 2D C-string: A new spatial knowledge representation for image database systems. Pattern Recognition 23, 1077–1087, 1990.
[20] S.Y. Lee, F.J. Hsu, Spatial reasoning and similarity retrieval of images using 2D C-string knowledge representation. Pattern Recognition 25, 305–318, 1992.
[21] S. Y. Lee, M. C. Yang and J. W. Chen, 2D B-string: a spatial knowledge representation for image database systems, Proc. ICSc’92 Second Int.
Computer Sci. Con&, 609-615, 1992.
[22] Y. H. Wang, Image indexing and similarity retrieval based on spatial relationship model, Information Sciences, 154, 39-58, 2003.
[23] X.M.Zhou, C.H.Ang, T.W.Ling, Image retrieval based on object's orientation spatial relationship, Pattern Recognition Letters, 22 469-477, 2001.