本發明屬于計算機圖像處理和機器視覺領域,涉及兩種基于視覺詞匯的局部特征點驗證。
背景技術:
基于局部特征的圖像檢索是目前較為主流的拷貝圖像檢索方式,將局部特征點描述子量化為視覺詞匯并采用詞袋模型來表示圖像,是當前圖像檢索的一類重要方法。但是通過局部特征的描述子量化得到的視覺詞匯相對于自然語言中的詞匯并沒有明確的意義,容易受到噪聲的影響。為了能夠保證視覺詞匯的區分能力要求,詞典中視覺詞匯數量越多越好。但是越多的視覺詞匯導致了其抗噪能力變弱,并且在局部特征量化為視覺詞匯時需要耗費更多的計算量。針對局部特征量化為視覺詞匯后導致的多義問題,有部分的研究者關注到了該問題,并提出了部分的解決方法。
為增加局部特征匹配的準確性,減少視覺詞匯歧義現象,有研究者在著力于增加視覺詞匯的信息量,以提高視覺詞匯的識別度。多個字典用于量化局部特征的方法可以提高圖像檢索的召回率,但多個字典量化會有交集,這些交集屬于冗余數據。大量的冗余數據不僅無助于提高檢索效果,而且會影響檢索效率。為解決這一問題,Zheng提出了一種基于多個字典的貝葉斯合并方法用于降低字典的關聯度,減少冗余數據。Mortensen在每個局部特征點上增加全局紋理向量,使局部特征具有全局屬性。該方法可用于提高視覺詞匯的區別能力,但該方法在圖像的尺度變換上魯棒性不夠好。
有研究者希望通過建模視覺詞匯(局部特征)的空間依賴關系來提高視覺詞匯的描述能力。Yao提出了一種視覺詞匯的上下文描述子生成方法,該方法考慮特征點與近鄰特征點之間的關系,在圖像檢測的過程中計算視覺詞匯之間的上下文相似性關系判斷視覺詞匯是否正確匹配。Liu基于局部特征提出了兩種方法,分別以局部特征點之間一對一以及一對多的關系為特征點進行編碼。上述的兩種方法屬于先驗證的方法,在圖像檢測之前為特征點建立好關系,在檢索速度上有著明顯的優勢。采用類似的基于近鄰局部特征的方法,往往忽略了特征點之間的全局性關系。
為兼顧到全局性,近年來也有學者考慮局部特征的全局性約束。Zheng發現,在圖像檢索過程中,查詢圖像與候選圖像中正確匹配的視覺短語具有相對穩定的位置關系,如匹配的視覺短語的坐標相減,正確匹配的點會落入相對集中的位置。Zhou采用了緊致的空間編碼方法來描述視覺詞匯的相互位置關系。但該方法對圖像的旋轉變換支持不是很理想,需要通過構建多個方向的位置關系來提高對旋轉變換的魯棒性。
針對局部特征量化為視覺詞匯后導致的多義現象而造成的匹配準確率較低的問題,本發明的兩種方法提出利用基于局部特征的全局關系增強視覺詞匯區分能力。該方法滿足了緊致性和魯棒性兩方面要求,可以應對圖像的各種編輯和變換,并有較好的效果;
技術實現要素:
本發明的目的是針對現有技術的不足,提供了兩種基于全局關系一致性約束的局部特征點驗證方法。
本發明解決其技術問題所采用的技術方案如下:
1.基于全局關系一致性約束的局部特征點驗證方法,其特征在于包括如下三部分:(1)離線學習部分,(2)特征點量化部分,(3)特征點投票驗證部分;離線學習部分用于構建視覺詞匯詞典;特征點量化部分根據離線學習所得到的視覺詞匯詞典對局部特征進行量化;特征點投票驗證部分用于對候選圖像中的特征點驗證,具體實現如下:
步驟(1)離線學習,對大量樣本分組聚類得到視覺詞匯詞典。
步驟(2)通過視覺詞匯詞典對查詢圖像的特征點量化,得到視覺詞匯。
步驟(3)對于查詢圖像的視覺詞匯在索引庫中匹配得到候選特征點,以候選特征點的所屬圖像唯一標識建立關系,得到若干候選圖像。
步驟(4)通過全局一致性弱關系或強幾何關系約束對特征點驗證,最后達到對候選圖像驗證的目的。
(1)離線學習部分,該部分的關鍵之處在于局部特征的視覺詞匯詞典的構建,具體步驟如下:
1-1.選取大量圖像構建圖像庫,并提取圖像庫中圖像的局部特征點及其特征描述子,將提取的特征描述子構建成樣本庫;
1-2.通過樣本庫獲得視覺詞匯詞典;具體的,對樣本庫中特征描述子的特征向量進行分組,在每個特征組上通過K均值聚類得到K個類中心,每個類中心為一個特征向量即代表視覺詞匯中的一個詞根,K個類中心為該特征組的詞根集合;在每個特征組上構建的詞根集合進行組合得到視覺詞匯詞典;
(2)特征點量化部分,特征點的量化包括兩個部分:局部特征描述子的量化,主方向、尺度以及坐標量化。
2-1.局部特征描述子量化:對輸入圖像提取局部特征點集合S={Pi,i∈[0,Q]},Q為輸入圖像中局部特征點的個數,Pi指代第i個局部特征點;并依據視覺詞匯詞典通過分組量化方法將局部特征點Pi的特征描述子量化為視覺詞匯VWi;具體步驟如下:
2-1-1.從輸入圖像中提取局部特征點Pi的特征描述子Fi、位置(Pxi,Pyi)、尺度σi和主方向θi信息,即局部特征點Pi表示為[Fi,θi,σi,Pxi,Pyi];
2-1-2.對每個局部特征點Pi的特征描述子Fi,依據視覺詞匯詞典采用分組量化方法得到視覺詞匯;依據視覺詞匯詞典的分組量化是將特征描述子Fi分成M組,每組為D/M個特征,其中D為特征描述子Fi特征向量的維數;然后對每組的特征向量根據步驟1-2訓練好的視覺詞匯詞典單獨量化為Vj,則采用分組量化得到特征描述子Fi的視覺詞匯VWi為:其中,L為視覺詞匯詞典中對應組的詞根數;從而一個局部特征點Pi被表示為[VWi,θi,σi,Pxi,Pyi];每組特征向量的量化通過在該組的詞根集合中基于歐式距離查找最近的類中心,并將該類中心的下標作為其量化結果;
2-2.主方向、尺度以及坐標量化:上文中提到的主方向θ是一個浮點型的弧度值,在這里將其量化成整型角度值θ:θi=θi*180/π。
同樣位置信息(Pxi,Pyi)與尺度σi也量化為整形。在量化尺度時,將σi乘100然后取整,保留了一定的精度。
(3)特征點投票驗證部分,該部分的實現包括兩種方式:第一種是基于全局弱關系一致性約束的局部特征點驗證方法,第二種是基于全局強幾何關系一致性約束的局部特征點驗證方法。兩種方式中均采用投票機制:在一幅候選圖像中,若某一候選特征點與一定比例的上下文特征點同時滿足約束關系,認為該點為正確匹配的特征點。
在特征點驗證的過程中,主要根據局部特征點的方位特征、主方向特征和尺度特征來驗證特征點是否匹配;兩種方式介紹如下:
3-1.弱關系一致性驗證:該方法依據正確匹配特征點之間的主方向與尺度大小具有一致性的原理。具體步驟如下:
3-1-1.通過查詢圖像的特征點量化所得到的視覺詞匯,與索引庫中的特征點進行匹配得到的大量候選特征點。以這些特征點所屬的圖像ID(imgId)作為關鍵詞構建Hash表,找到若干候選圖像。
3-1-2.在查詢圖像中,若一特征點的尺度小于某一上下文特征點,則在候選圖像中,對應的候選特征點同樣應滿足該約束。同時主方向也應當滿足這一條件,公式如下:
其中,Scl表示尺度,Ori表示主方向,下標ai,aj表示a圖像第i,j個特征點。Mi,j為1表示兩個特征點i,j滿足該一致性關系約束,特征點j對特征點i的票數增加1。若某特征點與一定比例的上下文特征點滿足該約束,則認為該候選特征點為正確匹配點。在圖像檢索的過程中,計算正確匹配特征點所得到的投票總和S。
其中,是特征點i所得到的票數,Th為投票閾值。各候選圖像的投票和S,用于衡量一個候選圖像的相似程度。
3-2.強幾何驗證:強幾何驗證是計算特征點之間的主方向差以及角位差兩個角度關系。該方法所使用的兩個角度中,主方向差是兩特征點之間主方向的差。主方向差可以通過如下公式計算得到:
β=|Orii-Orij|
Orii是待驗證點的i主方向,Orij是待驗證點i的上下文特征點j的主方向。
角位差可通過如下公式計算得到:
其中,arctan2(Pi,Pj)是兩特征點Pi,Pj連線與水平方向的夾角。強幾何關系驗證方法如下:
3-2-1.通過查詢圖像的特征點量化所得到的視覺詞匯,與索引庫中的特征點進行匹配得到的大量匹配特征點。以這些特征點所屬的圖像ID(imgId)作為關鍵詞構建Hash表,找到若干候選圖像。
3-2-2.在正確匹配的特征點之間,查詢圖像兩個特征點之間的主方向差,與候選圖像對應的兩特征點之間的主方向差,應趨近于相等。同理角位差也應當趨近于相等,對應特征點之間的主方向差的差:
其中,表示圖像a中特征點i與j的主方向差,表示圖像b中對應的特征點的主方向差。
以及角位差的差:
其中,表示圖像a中特征點i與j的角位差,表示圖像b中對應的特征點的角位差。
若i,j兩點滿足約束關系,則Mi,j等于1。這里采用投票的方式來判斷候選特征點是否為正確匹配的特征點。若某一特征點與該圖像中一定比例的上下文特征點滿足此關系,則認為這一特征點為正確匹配的特征點。統計每幅候選圖像中正確匹配點,并計算正確匹配特征點所得到的投票總和S。
其中,是特征點i所得到的票數。各候選圖像的投票和S,用于衡量一個候選圖像的相似程度。
本發明相對于現有技術具有以下有益效果:
本發明可以用于大規模圖像檢索,提高檢索的效率和準確率;而且該方法是采用局部特征點全局性關系驗證候選圖像,因此當候選圖像的候選特征點過多時,可以采用候選圖像中的尺度較大特征點,實驗結果證明比使用所有候選特征點的效果更好,速度更快。同時通過該方法對圖像的縮放、旋轉、裁剪等圖像變換具有很好的魯棒性。
附圖說明
圖1表示本發明的流程圖;
圖2弱關系一致性驗證示意圖;
圖3強幾何驗證示意圖;
具體實施方式
在具體實施中,該算法采用SIFT算子,在以下的敘述中,局部特征點的描述子就是指SIFT,不再具體指明。本實施例中主要介紹兩種方法:第一種方法是基于全局弱關系一致性約束的局部特征點驗證方法,第二種方法是基于全局強幾何關系一致性約束的局部特征點驗證方法。可用于圖像檢索和基于局部特征點的圖像識別和檢測方法中。
下面將參考附圖進一步介紹本發明的實施例。
圖1是該發明的流程框圖,表示了各個部分關系及其流程。兩種方法具體包括如下部分:離線學習部分、特征點量化部分和特征點投票驗證部分。離線學習部分用于視覺詞匯詞典的構建,包括獲取樣本點,樣本點聚類以及生成詞典。特征點量化包含三個部分,局部特征點提取,主方向、方位、尺度量化以及描述子量化。第三部分特征點投票驗證包括兩個部分,在索引庫中找到候選圖像以及候選特征點,通過投票的方式驗證候選特征點。
(1)圖1中離線學習部分主要包括:視覺詞匯詞典的構建。
選取大量圖像,提取其特征點作為樣本學習庫。然后,對特征描述子樣本庫中的特征描述子的特征向量進行分組;在每個特征組上通過K均值聚類得到K個類中心,每個類中心為一個特征向量即代表視覺詞匯中的一個詞根,K個類中心為該特征組的詞根集合;從每個特征組的詞根集合中選擇一個詞根就生成了一個視覺詞匯。在每個特征組上構建的詞根集合進行組合得到視覺詞匯詞典。在本實施例中,局部特征點的特征描述子被分為4個組,每組8個特征值,通過K均值聚類構建64個類中心,每個類中心為該組的詞根;4個類中心為本方法的視覺詞典;每組的類中心都保存在一個數組中,并存儲到文件中;在進行量化局部特征描述子時方法需要裝載該數組到內存中。
最后,對樣本庫中的局部特征描述子根據視覺詞匯詞典采用分組量化方法得到視覺詞匯。在本實施例中,提取的SIFT的特征描述子為32維的特征向量。
(2)圖1中特征點量化部分的具體步驟如下:
首先對圖像提取局部特征點集合S={Pi,i∈[0,Q]},Q為圖像中局部特征點的個數;并通過依據視覺詞匯詞典的分組量化方法將局部特征點Pi的特征描述子量化為視覺詞匯VWi。具體步驟如下:
圖1中的提取局部特征點,在本實施例中,對檢測得到的局部特征點采用SIFT描述子進行描述;一個局部特征點(Pi)通過SIFT描述子可表示為:[Fi,θi,σi,Pxi,Pyi];其中Fi為特征描述子向量,用梯度直方圖表示;θi為主方向;σi為局部特征點的尺度,(Pxi,Pyi)為局部特征點(Pi)在圖像中的空間位置。在本實施例中,Fi被設置為一個32維的特征向量。通過局部特征點提取與描述,圖像被表示為SIFT描述子的集合。
圖1中的特征描述子量化對每個局部特征點的特征描述子(Fi)采用依據視覺詞匯的分組量化方法得到視覺詞匯;分組量化是將特征描述子Fi(D維的特征向量)分成M組,每組為D/M個特征,然后對每組的特征向量根據訓練好的詞典單獨量化為Vj,則采用分組量化得到特征描述子的視覺詞匯(VW)為:其中L為視覺詞匯詞典中對應組的詞根數。經過局部特征描述子的量化,一個局部特征點Pi被表示為[VWi,θi,σi,Pxi,Pyi]。
圖1中22用以對其他SIFT特征屬性量化,需要量化的屬性包括主方向θi、尺度σi以及方位(Pxi,Pyi)。主方向θi是一個浮點型的弧度值,在這里將其量化成整型角度值:θi=θi*180/π;
同樣位置信息(Pxi,Pyi)與尺度也量化為整形。在量化尺度時,將乘100然后取整,保留了一定的精度。
(3)圖1中特征點投票驗證部分主要包括31獲取候選圖像和候選特征點,32通過投票驗證候選特征點。在圖像檢索應用中,依據查詢圖像特征點的視覺詞匯在索引庫中得到大量候選特征點,這些候選特征點根據圖像ID(imgId)得到若干候選圖像。本文兩種方法是通過全局一致性約束對候選圖像中候選特征點進行驗證達到圖像拷貝檢測的目的。該發明中特征點的驗證包括兩種方法,一種是通過正確匹配特征點之間的主方向與尺度相對大小存在關系一致性來驗證候選特征點,成為弱關系一致性驗證。另外一種是通過特征點之間的主方向差以及角位差兩個強幾何關系對特征點驗證,稱為強幾何驗證。
3-1.弱一致性關系驗證:依據正確匹配特征點之間的主方向與尺度大小具有一致性的原理,采用投票的方式驗證特征點是否為正確匹配的特征點。具體步驟如下:
3-1-1.通過查詢圖像的特征點量化所得到的視覺詞匯,與索引庫中的特征點進行匹配得到的大量匹配特征點。以這些特征點所屬的圖像ID(imgId)作為關鍵詞構建Hash表,找到若干候選圖像。
3-1-2.如圖2(a)和2(b)所示,在查詢圖像中,若一特征點的尺度小于另外一特征點,則在候選圖像中,相同的視覺詞匯應當滿足該約束。同時主方向也應當滿足這一條件。若一特征點與該候選圖像中一定比例的特征點滿足此關系,則認為這一特征點為正確匹配的特征點。如下兩個公式所示:
其中,Scl表示尺度,Ori表示主方向,下標ai,aj表示a圖像第i,j個特征點。Mi,j為1表示兩個特征點i,j滿足該一致性關系約束,特征點j對特征點i的票數增加1。若某特征點與一定比例的上下文特征點滿足該約束,則認為該點為正確點。在圖像檢索的過程中,計算正確匹配特征點所得到的投票總和S。
其中,是特征點i所得到的票數,Th為投票閾值。各候選圖像的投票和,用于衡量一個候選圖像的相似程度。
具體執行過程的偽代碼如下:
3-2.強幾何驗證:強幾何驗證是計算特征點之間的主方向差以及角位差兩個角度關系。所需要用到的特征點的屬性包括主方向與方位特征。該方法所使用的兩個角度中,主方向差是兩特征點之間主方向的差,角位差是主方向與兩特征點之間連線的夾角。主方向差可以通過如下公式計算得到:
β=|Orii-Orij|
角位差可通過如下公式計算得到:
3-2-1.類似于步驟3-1-1,通過查詢圖像的特征點量化所得到的視覺詞匯,與索引庫中的特征點進行匹配得到的大量匹配特征點。以這些特征點所屬的圖像ID(imgId)作為關鍵詞構建Hash表,找到若干候選圖像。
3-2-2.在正確匹配的特征點之間,查詢的圖像兩個特征點的主方向差,與候選圖像對應的兩特征點的主方向差,應趨近于相等。同理角位差也應當趨近于相等,對應特征點之間的主方向差的差:
以及角位差的差
應趨近于0。
若i,j兩點滿足約束關系,則Mi,j等于1。這里采用投票的方式來判斷候選特征點是否為正確匹配的特征點。若某一特征點與該圖像中一定比例的其他候選特征點滿足此關系,則認為這一特征點為正確匹配的特征點。統計每幅候選圖像中正確匹配點,并計算正確匹配特征點所得到的投票和S。
其中,是特征點i所得到的票數。各候選圖像的投票和,用于衡量一個候選圖像的相似程度。
具體執行過程的偽代碼如下:
前面已經具體描述了本發明的實施方案,應當理解,對于一個具有本技術領域的普通技能的人,在不背離本發明的范圍的情況下,在上述的和在權利要求中特別提出的本發明的范圍內進行變化和調整能同樣達到本發明的目的。