圖像識別設備及方法
2023-10-31 04:06:27 2
專利名稱:圖像識別設備及方法
技術領域:
本發明涉及圖像處理領域,更具體地講,涉及一種圖像識別設備及方法。
背景技術:
隨著網際網路技術的發展,人們能夠訪問大量的信息,這包括文本信息、多媒體信息。因此,從網際網路中找到希望的信息變為一個重要問題。基於文本的檢索和搜索技術在搜尋引擎中已經被廣泛使用並取得了極大的成功。然而,對於多媒體信息的搜索,特別是對於圖像和視頻內容的搜索較為困難。這主要是搜尋引擎不能理解圖像的含義或者不能將圖像中的內容轉換為文本的形式進行描述。 當前,圖像搜尋引擎基本上僅是利用圍繞圖像的文本(例如,網頁中圖像周圍的文本信息) 作為搜索的依據,而不是直接從圖像中搜索信息。換句話說,當前的圖像搜尋引擎實質上還是通過搜索網頁上用於描述圖像的文本來搜索圖像。在這種情況下,如果沒有用於描述圖像的文本信息或者文本信息錯誤,則無法搜索到正確的結果。為了解決上述問題,當前的主要解決方案是利用圖像識別技術,從待搜索的圖像中識別出其中存在的對象,來用於圖像的搜索。第2010/0124377號美國專利申請公開了一種圖像分類方法,其中,首先將圖像的預定位置上的點設置為關鍵點,基於關鍵點提取SIFT特徵或者SURF特徵;利用稀疏編碼對提取的特徵進行編碼;使用最大匯聚方法對編碼後的特徵進行匯聚;最後利用SVM分類器從上述匯聚結果中識別圖像中的對象。在上述方案中,在圖像的預定位置提取一種類型的特徵來根據提取的特徵識別圖像中的對象。這種方式雖然簡化了提取方式,然而需要大量的樣本才能訓練出效果較好的分類器,這導致識別結果的健壯性不是很高,受外部因素的影響較大。因此,在圖像識別中,需要一種能夠具有較高的識別結果健壯性的識別設備和方法。
發明內容
本發明的目的在於提供一種圖像識別方法和設備,其通過提取多種類型的特徵來識別圖像,並對來自不同類型的特徵的識別結果進行融合。為了實現上述目的,提供一種圖像識別方法,包括從輸入圖像提取K種類型的特徵,其中,K為大於1的自然數;分別對提取的K種類型的特徵進行編碼,以獲得用於表示輸入圖像的與K種類型相應的K個直方圖;利用用於對預設的M個類進行分類的分類器對獲得的K個直方圖進行分類,以獲得預設的M個類的得分,其中,針對K種類型的每種類型,髮1丨練用於對預設的M個類進行分類的分類器,來對相應類型的直方圖進行分類,其中,M為大於1的自然數;對獲得的預設的M個類的得分進行融合。所述融合的步驟可包括根據特徵的類型將相同類的各個得分加權,將相同類的加權後的得分相加,得到與M個類相應的M個得分。
所述融合的步驟還可包括選擇M個類中的一個類作為主導類,根據主導類與M個類中的其他類之間的依存關係,對所述M個得分加權,將加權後的M個得分相加,以得到與主導類相應的一個得分,其中,依次選擇M個類的每個類作為主導類,計算與每個主導類相應的得分。所述融合的步驟可包括選擇M個類中的一個類作為主導類,根據主導類與M個類中的其他類之間的依存關係,對M個類中的每個類的得分加權,將加權後的得分相加,以得到與主導類相應的一個得分,其中,依次選擇M個類的每個類作為主導類,計算與每個主導類相應的得分。將相同類的得分加權的步驟可包括訓練用於加權的權重,以最大化平均精度。訓練用於加權的權重的步驟可包括對權重向量e進行初始化,得到初始化的權重向量%,其中,向量%的各個元素的值相同;使用當前的向量ep計算平均精度& = AP(ep),其中,APO為計算平均精度的函數,其中,在執行初始化之後,當前向量% = e0 ;獲得步長向量6,通過將當前的向量 與步長向量6相加,得到新的向量eMW,其中,步長向量6的各個元素是預定數值範圍內的隨機數;使用新的向量eMW再次計算平均精度Enrat = AP(enew);如果Enew大於等於&,則% = ,重複將當前的向量%改變步長6的步驟;如果Enrat小於Ep,則確定隨機函數rand ( ,Enew)是否大於0 ;如果確定rand ( ,Enew)大於0, 則% = enew,重複將當前的向量%改變步長6的步驟;如果確定rand(Ep,Enew)不大於0, 則 保持不變,重複將當前的向量 改變步長6的步驟,其中,隨機函數rand p,Enrat)滿足下面的條件Εη 越大,rand(Ep, Enew) > 0的概率越大;或者在Emw大於一閾值之後,Enew 越大,rand( ,Enew) > 0的概率越大。向量%的各個元素的值可等於向量%的元素的數量的倒數。當改變步長預定次數之後或者當Enrat達到預定值時,將此時的 作為最終訓練得到的權重向量e。根據主導類與M個類中的其他類之間的依存關係進行加權的步驟可包括訓練用於加權的權重,以最大化平均精度。訓練用於加權的權重的步驟可包括對權重向量e進行初始化,得到初始化的權重向量%,其中,在向量%中,主導類的得分的權重被初始化為1,其他類的得分的權重被初始化為O ;使用當前的向量\計算平均精度4 = AP(ep),其中,APO為計算平均精度的函數,其中,在執行初始化之後,當前向量 =e(l;獲得步長向量6,通過將當前的向量 與步長向量6相加,得到新的向量eMW,其中,步長向量6的各個元素是預定數值範圍內的隨機數;使用新的向量再次計算平均精度Emw = AP(enew);如果Emw大於等於Ep,則% = enOT,重複將當前的向量 改變步長6的步驟;如果Emw小於Ep,則確定隨機函數rand (Ep, Enew)是否大於0;如果確定rand (Ep,EnJ大於0,則% = eMW,重複將當前的向量%改變步長6的步驟;如果確定rand p,Enrat)不大於0,則 保持不變,重複將當前的向量 改變步長6的步驟,其中,隨機函數rand (Ep,EnJ滿足下面的條件Emw越大,rand (Ερ,Εη ) > 0的概率越大;或者在Enrat大於一閾值之後,Enew越大,rand(Ep, Enew) > 0的概率越大。當改變步長預定次數之後或者當Enrat達到預定值時,將此時的 作為最終訓練得到的權重向量e。從輸入圖像提取K種類型的特徵的步驟可包括利用K種不同的提取特徵的方法從輸入圖像來提取K種類型的特徵。利用K種不同的提取特徵的方法從輸入圖像來提取K種類型的特徵的步驟可包括採用不同的特徵點提取方法從輸入圖像提取特徵點,利用至少一種特徵描述方法對提取的特徵點建立描述子,以提取K種類型的特徵。利用K種不同的提取特徵的方法從輸入圖像來提取K種類型的特徵的步驟可包括採用不同的特徵點提取方法從輸入圖像提取特徵點,利用不同的特徵描述方法對提取的特徵點建立描述子,以提取K種類型的特徵。利用K種不同的提取特徵的方法從輸入圖像來提取K種類型的特徵的步驟可包括採用不同的特徵點提取方法從輸入圖像提取特徵點,利用尺度不變特徵變換SIFT針對提取的特徵點建立SIFT描述子,以提取基於不同特徵點提取方法的SIFT特徵。可利用支持向量機將各個分類器訓練為一個線性分類器來實現對獲得的預設的M 類的得分的融合。所述融合的步驟可包括針對基於同一類型的特徵訓練的M個類的分類器的得分,從M個類中選擇一個類作為主導類,根據主導類與M個類中的其他類之間的依存關係, 對基於同一類型的特徵訓練的M個類的分類器的得分加權,將加權後的得分相加,以得到與主導類相應的一個得分,其中,依次選擇M個類的每個類作為主導類,計算與每個主導類相應的得分,其中,對於每種類型的特徵執行所述加權相加處理。所述方法還包括根據特徵的類型,對所述融合的步驟的加權相加後的結果中相同類的各個得分加權,將相同類的加權後的得分相加,得到與M個類相應的M個得分。本發明的另一方面提供一種圖像識別設備,包括特徵提取單元,從輸入圖像提取 K種類型的特徵,其中,K為大於1的自然數;編碼及匯聚單元,分別對提取的K種類型的特徵進行編碼,以獲得用於表示輸入圖像的與K種類型相應的K個直方圖;分類單元,利用用於對預設的M個類進行分類的分類器對獲得的K個直方圖進行分類,以獲得預設的M個類的得分,其中,針對K種類型的每種類型,訓練用於對預設的M個類進行分類的分類器,來對相應類型的直方圖進行分類,其中,M為大於1的自然數;融合單元,對獲得的預設的M個類的得分進行融合。融合單元可包括基於特徵的融合單元,根據特徵的類型將相同類的各個得分加權,將相同類的加權後的得分相加,得到與M個類相應的M個得分。融合單元還可包括基於類的融合單元,選擇M個類中的一個類作為主導類,根據主導類與M個類中的其他類之間的依存關係,對所述M個得分加權,將加權後的M個得分相力口,以得到與主導類相應的一個得分,其中,依次選擇M個類的每個類作為主導類,計算與每個主導類相應的得分。融合單元可包括基於類的融合單元,選擇M個類中的一個類作為主導類,根據主導類與M個類中的其他類之間的依存關係,對M個類中的每個類的得分加權,將加權後的得分相加,以得到與主導類相應的一個得分,其中,依次選擇M個類的每個類作為主導類,計算與每個主導類相應的得分。在將相同類的得分加權時,訓練用於加權的權重,以最大化平均精度。在訓練用於加權的權重時對權重向量e進行初始化,得到初始化的權重向量%, 其中,向量%的各個元素的值相同;使用當前的向量%計算平均精度& = AP(ep),其中,APO為計算平均精度的函數,其中,在執行初始化之後,當前向量 =e(1;獲得步長向量 6,通過將當前的向量 與步長向量6相加,得到新的向量eMW,其中,步長向量6的各個元素是預定數值範圍內的隨機數;使用新的向量enOT再次計算平均精度Enrat = AP(enew);如果Emw大於等於^,則% = ,重複將當前的向量%改變步長6的步驟;如果Enrat小於&, 則確定隨機函數rand ( ,Enew)是否大於0 ;如果確定rand ( ,Enew)大於0,則% = eMW,重複將當前的向量 改變步長6的步驟;如果確定rand p,EnJ不大於0,則 保持不變, 重複將當前的向量%改變步長6的步驟,其中,隨機函數rand( ,Enew)滿足下面的條件 Enew越大,rand( ,Enew) > 0的概率越大;或者在Enew大於一閾值之後,Enew越大,rand( , Enew) > 0的概率越大。向量%的各個元素的值可等於向量%的元素的數量的倒數。當改變步長預定次數之後或者當Enrat達到預定值時,將此時的 作為最終訓練得到的權重向量e。在根據主導類與M個類中的其他類之間的依存關係進行加權時,訓練用於加權的權重,以最大化平均精度。在訓練用於加權的權重時對權重向量e進行初始化,得到初始化的權重向量%, 其中,在向量%中,主導類的得分的權重被初始化為1,其他類的得分的權重被初始化為0 ; 使用當前的向量%計算平均精度& = AP(ep),其中,APO為計算平均精度的函數,其中,在執行初始化之後,當前向量% = 獲得步長向量6,通過將當前的向量^5p與步長向量6 相加,得到新的向量,其中,步長向量6的各個元素是預定數值範圍內的隨機數;使用新的向量eMW再次計算平均精度Enrat = AP (enew);如果Enrat大於等於Ep,則ep = enev,重複將當前的向量 改變步長6的步驟;如果Emw小於Ep,則確定隨機函數rand(Ep,Enew)是否大於0 ;如果確定rand (Ep,Emw)大於0,則% = enew,重複將當前的向量%改變步長6的步驟;如果確定rand p,Enrat)不大於0,則 保持不變,重複將當前的向量 改變步長6的步驟,其中,隨機函數rand (Ep,Enew)滿足下面的條件En 越大,rand (Ep,Enew) > 0的概率越大;或者在Emw大於一閾值之後,Enew越大,rand (Ep, Enew) > 0的概率越大。當改變步長預定次數之後或者當Enrat達到預定值時,將此時的 作為最終訓練得到的權重向量e。從輸入圖像提取K種類型的特徵時採用不同的特徵點提取方法從輸入圖像提取特徵點,利用尺度不變特徵變換SIFT針對提取的特徵點建立SIFT描述子,以提取基於不同特徵點提取方法的SIFT特徵。可利用支持向量機將各個分類器訓練為一個線性分類器來實現對獲得的預設的M 類的得分的融合。融合單元可包括基於類的融合單元,針對基於同一類型的特徵訓練的M個類的分類器的得分,從M個類中選擇一個類作為主導類,根據主導類與M個類中的其他類之間的依存關係,對基於同一類型的特徵訓練的M個類的分類器的得分加權,將加權後的得分相力口,以得到與主導類相應的一個得分,其中,依次選擇M個類的每個類作為主導類,計算與每個主導類相應的得分,其中,對於每種類型的特徵執行所述加權相加處理。可根據特徵的類型,對基於類的融合單元的加權相加後的結果中相同類的各個得分加權,將相同類的加權後的得分相加,得到與M個類相應的M個得分。
本發明的另一方面提供一種提供圖像搜索服務的系統,所述系統包括所述圖像識別設備,其中,所述圖像識別設備對從網絡上抓取的圖像中的對象進行識別,以利用識別的結果來建立對抓取的圖像的描述。本發明的另一方面提供一種在數位電視中投放廣告的系統,所述系統包括所述圖像識別設備,其中,所述圖像識別設備對用戶當前觀看的視頻中的對象進行識別,以投放與識別的對象相關的廣告。根據本發明的圖像識別方法和設備,利用了多種類型的特徵,並考慮不同類型的特徵之間的關係以及不同類之間的依存關係,對來自不同類型的特徵的識別結果進行了融合,提高了識別精度和穩定性。
通過下面結合附圖進行的詳細描述,本發明的上述和其它目的、特點和優點將會變得更加清楚,其中圖1示出根據本發明的實施例的圖像識別設備的框圖;圖2示出根據本發明的實施例的訓練權重向量的方法的流程圖;圖3示出根據本發明的實施例的圖像識別方法的流程圖。
具體實施例方式下面,參照附圖詳細描述根據本發明的實施例。圖1示出根據本發明的圖像識別設備100的框圖。圖像識別設備100包括特徵提取單元110、編碼及匯聚(pool)單元120、分類單元130和融合(fusion)單元140。特徵提取單元110從輸入的圖像提取不同類型的特徵。這裡的不同類型是指特徵的提取方式的不同。特徵提取單元110可利用不同的提取特徵的方式從輸入圖像來提取不同類型的特徵,即,每種類型的特徵對應於一種特徵提取方法。例如,可利用尺度不變特徵變換(SIFT)從輸入圖像提取SIFT特徵;利用Dense SIFT方法從輸入圖像提取Dense SIFT特徵;利用CSIFT (ColorSIFT,顏色SIFT)方法從輸入圖像提取CSIFT特徵;利用局部二值模式(LBP)方法從輸入圖像提取LBP特徵。上述類型的特徵僅是示例性的,也可利用其他特徵提取方法來提取特徵。在本發明的另一個實施例中,僅採用SIFT方法提取不同類型的特徵。具體地說, 首先採用不同的特徵點提取方法從輸入圖像提取特徵點,然後利用SIFT方法針對提取的特徵點建立SIFT描述子,從而提取到基於不同特徵點提取方法的SIFT特徵。提取的SIFT 特徵可基於特徵點提取方法而被分為不同類型的特徵。由於SIFT方法提取的特徵匹配能力較強,並且對於旋轉、尺度縮放、亮度變化保持不變,並且對視角變換、仿射變換、噪聲也保持穩定性,因此採用這種方式提取的不同類型的特徵整體上匹配能力以及穩定性也較強。例如,可利用 DoG (Difference of Gaussian)、Harris (Harris Laplace)等各種特徵點方法來提取特徵點。此外,除了使用SIFT方法建立描述子之外,也可使用不同的特徵描述方法(例如, SIFT、DenseSIFT, CSIFT、LBP、MSER等特徵描述算法)對特徵點及其鄰域進行描述,以建立描述子。編碼及匯聚單元120對特徵提取單元110所提取的不同類型的特徵分別進行編碼,以獲得用於表示輸入圖像的直方圖。提取的特徵通常由描述子進行表示。利用訓練得到的碼本對用於描述特徵的描述子進行編碼以獲得重構係數。輸入圖像可以被看作由以重構係數加權的碼本中的碼字構成。接著,對重構係數進行匯聚處理,以得到輸入圖像的直方圖,用以描述輸入圖像。假設提取了 Κ(κ為大於1的自然數)種類型的特徵,則可以得到K個碼本和K個直方圖。在本發明的一個對特徵進行編碼的實施例中,使用向量量化來對提取的特徵進行編碼。向量量化是指首先隨機選取一些點作為聚類中心,然後通過一系列訓練,產生一些新的聚類中心,當該算法逐漸穩定以後,就認為這些聚類中心是用於構成碼本所需要的碼字。常用的向量量化方法包括Vocabulary forest方法和k-means方法,這裡將不再詳述。在本發明的另一個對特徵進行編碼的實施例中,使用稀疏編碼來對提取的特徵進行編碼。在稀疏編碼中,同樣利用訓練得到的碼本來獲得重構係數。具體地說,假設X是D維特徵的樣本集合,X= {xi; X2,... xM}, Xi e Rd。稀疏編碼訓練的目標是利用樣本X訓練一組基V,所述基V最小化一個目標函數。訓練後的基V作為碼本。該目標函數可被表述如下
Afmin Ilxro — Ur V||2 + AIumI該函數的意義是使樣本集合X在V上的編碼儘量稀疏,且重構誤差儘量小。其中, U= {Ul,...,uM}是使用碼本V重構樣本X時要用到的重構係數。目標函數中第一項的作用是使重構誤差儘量小,即樣本X與重構得到的向量UV儘量接近。公式中第二項的意義是使重構係數的和儘量小。λ是平衡兩項要求的權重係數。當碼本V已經訓練得到後,在稀疏編碼過程中,需要對特徵提取單元110提取的每個特徵χ求得最佳的重構係數U。這時的目標函數變為ππη||χ -UV||2 + A|u|稀疏編碼和向量量化的不同在於對目標函數的約束不同。在向量量化中,僅能選擇一個碼。在稀疏編碼中,可選擇多個碼,其線性組合被用作給定特徵的重構。通過多個碼, 可減小重構錯誤,因此可增加最終分離的準確性。此外,也可使用其他編碼方法對提取的特徵進行編碼,將不再詳述。在對提取的特徵編碼之後,可使用最大匯聚(max pooling)方法利用編碼的結果來重構直方圖。應該理解,也可以使用其他的已知的匯聚方法來重構直方圖,將不再詳述。分類單元130基於編碼及匯聚單元120針對每種類型的特徵所產生的直方圖,利用分類器對輸入圖像中的對象進行分類。由於針對不同類型的特徵產生了多個直方圖,因此需要針對每種類型的特徵所產生的直方圖來訓練分類器。例如,提取了 K種類型的特徵,則產生K個直方圖H1, H2,... Hk,需要分別針對每種特徵來訓練分類器,以對對應的直方圖進行分類。針對每種特徵對於每個類可訓練得到一個或多個分類器。在訓練分類器的第一實施例中,假設存在M個類(即,存在M類對象,M為大於1的自然數),則針對M個類中的任意兩類訓練一個分類器,從而針對每種特徵可得到 MX (M-I)/2個分類器。在訓練分類器的第一實施例中,針對每種特徵對於每個類訓練一個分類器,從而針對每種特徵可得到M個分類器。每個分類器可輸出一個數值以表示屬於該類的似然度。在訓練M個分類器中的每個分類器時,可選擇屬於與分類器相應的類的P個正樣本,並且選擇屬於其他(M-I)個類的(M-I) XP個負樣本。即,從每個類選擇P個樣本。在上述選取樣本的方式中,當M比較大時,會導致正樣本和負樣本的數量差別很大,導致訓練時出現樣本的不平衡。因此,也可以從其他(M-I)個類中隨機選擇P個負樣本, 以解決不平衡的問題。在訓練分類器的第二實施例中,針對每種特徵對於每個類訓練多個分類器。在上述第一實施例中,當選擇P個負樣本時,解決了 M較大時樣本不平衡的問題。然而,這樣又會導致負樣本數量不足的問題。為了解決該問題,在本實施例中,從其他(M-I)個類中隨機選擇多組負樣本,每組負樣本具有P個樣本。利用P個正樣本和每組負樣本分別進行訓練, 可以得到多個分類器。假設選擇Q組負樣本,則每個特徵下的每個類可以得到Q個分類器, 每個特徵下存在MXQ個分類器,系統中總共存在KXMXQ個分類器。在訓練分類器的第三實施例中,可在第二實施例的基礎上,將得到的Q個分類器組合為一個分類器,這樣,組合後的分類器的輸出為這Q個類器的得分之和或者得分的平均值。此時,分類器的數量與第一實施例中得到的分類器的數量相同。在訓練好分類器之後,由於針對每種類型的特徵對於每個類訓練分類器,並且對於每個類可能訓練多個分類器,這樣一個類存在與之相應的多個得分。這樣,很難直接使用這些得分來識別輸入圖像中的對象,需要對這些得分進行融合。上面訓練分類器的實施例僅是示例性的,也可以使用其他的訓練方式來訓練分類器,並且其得分同樣可以使用下面將要介紹的融合單元140進行融合。融合單元140對分類單元130的分類結果進行融合,從而得到最終的分類結果。融合單元140包括基於特徵的融合單元141和基於類的融合單元142。基於特徵的融合單元141考慮特徵的類型對分類結果進行融合。基於類的融合單元142考慮不同類之間的關係對分類結果進行融合。下面首先描述基於特徵的融合單元141。由於利用不同的特徵提取方式提取的特徵在通過編碼及匯聚單元120和分類單元130的處理後,對最終的分類結果的準確性有不同的影響,因此在對每個類的多個得分進行融合時,考慮提取的特徵的類型來分別對該類的多個得分加權後融合。對於M個類中的每個類,基於特徵的融合單元141根據特徵的類型確定每個類的各個得分的權值,將每個類的各個得分加權後相加,以得到每個類的得分的融合結果。例如,在訓練分類器的第一和第三實施例中總共有KXM個分類器,獲得KXM個得分,融合之後存在M個得分;在訓練分類器的第二實施例中總共有KXMXQ個分類器,獲得 KXMXQ個得分,融合之後存在M個得分。相對於訓練分類器的第三實施例,由於訓練分類器的第二實施例中的每個特徵下的每個類的Q個分類器的結果通過融合過程也被進行了融合,因此訓練分類器的第二實施例優於訓練分類器的第三實施例。在確定權重的一個實施例中,利用每個分類器的得分作為樣本,通過支持向量機 (SVM)將各個分類器訓練成一個線性分類器。這樣,該線性分類器的係數向量對應於多種類型的特徵的得分空間的平面,從而獲得不同的權重。使用SVM獲得線性分類器的方式直接優化了原有分類器的誤差,然而該方式並沒有優化平均精度(average precision, AP)。在確定權重的另一實施例中,使用隨機搜索係數的訓練方式來確定與提取的特徵的類型相關的權重。整個訓練處理的目標在於尋找合適的權重向量e,以實現最大的AP。在訓練時權重向量e,可以同時訓練所有M個類,也可以分別訓練每個類。優選地,分別訓練每個類,這樣可以防止過訓練的問題。在訓練過程中需要一個樣本庫來驗證訓練的權重所能達到的AP。可以構建一個樣本庫,該樣本庫包括N個樣本。順序執行上面描述的特徵提取處理(由特徵提取單元110 執行)、編碼和匯聚處理(由編碼及匯聚(pool)單元120執行)、分類處理(由分類單元 130執行)對N個樣本進行處理,獲得用於進行驗證的驗證集合S = {S1; &,. . . Si,. . . , Si= {(Xl,yi), ... (Xj, Yj), . . . (XN,。},其中,Si表示M個類中第i類的驗證集合;N表示樣本的數量。=(si; s2,...,、),表示利用第j個樣本獲得的r個得分,r表示第j類的得分的數量…用於指示屬於第i類的對象實際上是否存在於第j個樣本中(例如,可令 Yj e {-1,1},-1表示不存在,1表示存在)。應該理解,在針對每種類型的特徵對於每個類訓練一個分類器的情況(例如,上述訓練分類器的第一和第三實施例),r等於特徵的類型的數量K ;在針對每種類型的特徵對於每個類訓練多個分類器的情況,r等於訓練得到的全部用於對第i類進行分類的分類器的數量(例如,對於訓練分類器的第二實施例,r = KXQ)。下面結合圖2來詳細描述通過隨機搜索係數來訓練權重向量e的流程。圖2是示出根據本發明的實施例的訓練權重向量的方法的流程圖。在步驟201,對向量e進行初始化,得到初始化的權重向量%。在初始化時,令向量%的各個元素的值具有某一預定值(例如,1/t,t為元素的數量,其中,當同時訓練所有類時,t等於所有得分的數量;當分別訓練每個類時,t = r)。在步驟202,使用當前的向量ep(執行步驟201之後,當前的向量% = e0)利用驗證集合S來計算AP,S卩,Et = AP(ep)。這裡,AP為計算AP的函數。由於AP的算法是公知的,將不再詳述。在步驟203,獲得步長向量6,通過將當前的向量 與步長向量6相加,得到新的向量eMW,其中,步長向量6的各個元素是預定數值範圍內的隨機數。即,每次獲得的步長向量6的元素的值在一個預定數值範圍內隨機變化。在步驟204,再次計算 AP,S卩,Enew = AP (enew)。在步驟205,確定Enew是否大於等於4。如果在步驟205確定Enew大於等於Ep,則在步驟206,ep = enew,重複進行步驟203。如果在步驟205確定Enew小於4,則在步驟207確定rand ( ,Enew)是否大於0。
如果在步驟207確定rand ( ,Enew)大於0,則在步驟208,ep = enew,重複進行步驟 203。如果在步驟207確定rand ( ,Enew)不大於0,則在步驟209,ep保持不變,重複進行步驟203。在上述處理中,向量e隨機遍歷整個空間。如果步長6使AP增加,則接受該步長。如果步長6沒有使AP增加,則仍具有一定可能性來接受該步長,該可能性在隨機函數 rand(Ep, EnJ中被控制。隨機函數rand(Ep, EnJ滿足下面的條件Enew越大,rand(Ep, EnJ > 0的概率越大;或者在Emw大於一閾值之後,Enew越大,rand(Ep, Enew) > 0的概率越大。在改變步長的步驟進行預定次數之後或者當Emw達到預定值時,將得到的ep作為最後得到的權重向量e。下面,詳細描述基於類的融合單元142。基於類的融合單元142對於每個類,通過將該類的得分與其他的類的得分進行融合來得到該類的融合得分。不同類之間通常存在兩種關係,即支持關係在一副圖像中,兩類物體總是一起出現;牴觸關係,兩類物體不能共存於一副圖像中。支持關係的示例是公共汽車和轎車。但是支持關係並不是對稱的。公共汽車支持轎車,但轎車不會以相同的機率支持公共汽車。這是因為具有公共汽車的圖像通常包括轎車,但是具有轎車的圖像並不總是包括公共汽車。牴觸關係的示例是飛機和船,它們一般處於不同的背景中,因此它們通常不會共存。類似地,牴觸關係也是不對稱的。例如,在存在飛機的情況下存在船的概率比在存在船的情況下存在飛機的概率要小。因此,可以基於一個類與其他類的依存關係,對該類的得分與其他類的得分進行融合而得到該類的新的得分。為了方便,該類在下文中被稱為主導類。具體地說,M個類中的每個類輪流作為主導類,將主導類的得分和其他類的得分都進行加權後相加,得到主導類的新得分,即,得到每個類的新得分。基於類的融合單元142可以在對基於特徵的融合單元141的融合結果的基礎上進行操作或對分類單元130的分類結果進行操作。可以利用圖2示出的訓練流程來訓練用於基於類的融合單元142所執行的融合的權重。在該訓練處理中,在步驟201對權重向量e進行初始化時,需要將其中的主導類的權重初始化為1,而其他類的權重初始化為0。當基於類的融合單元142在對基於特徵的融合單元141的融合結果的基礎上進行操作時,融合單元141的融合結果包括分別對應於M個類的M個得分ISc1, ..Sc2,... ScM}, 當其中的第i類作為主導類時,第i類的融合後的新得分SSci = e{Sci; Sc2, . . . ScM}= eiSCl+e2Sc2+. . . +eMScM。在對權重向量e進行初始化時,權重向量e中的力被初始化為1, 向量e的其他元素被初始化為0。應該理解,為了驗證基於類的融合單元142所使用的權重向量e,需要順序執行上面描述的特徵提取處理(由特徵提取單元110執行)、編碼和匯聚處理(由編碼及匯聚 (pool)單元120執行)、分類處理(由分類單元130執行)、基於特徵的融合(由基於特徵的融合單元141執行)對N個樣本進行處理,獲得用於進行驗證的驗證集合SS= (SS1, SS2,... SSi,... SSJjSSi = {(xi; Y1),... (Xj, Yj),... (xL,yN)},其中,SSi 表示 M 個類中第 i 類的驗證集合;Xj = (S1, S2, ... , sM)表示利用第j個樣本獲得的來自M個類的得分…用於指示屬於第i類的對象實際上是否存在於第j個樣本中。在另一基於類的融合單元142的實施例中,基於類的融合單元142還可以直接對分類單元130的分類結果進行操作。當基於類的融合單元142直接對分類單元130的分類結果進行上述融合時,在分類單元130的分類結果中,每個類按特徵的類型存在多個得分, 並且在同一特徵下也可能還存在多個得分(例如,上述訓練分類器的第二實施例的情況)。 因此,存在下面兩種形式的融合(1)按特徵的類型,對於每個類執行上述融合。(2)不考慮特徵的類型,對於每個類執行上述融合。對於情況(1),按特徵的類型對每種類型下的M個類的每個類進行基於類的融合, 最後得到MXK個得分。當對一個特徵類型下的用於M個類的分類器的得分進行基於類的融合時,將主導類的在該特徵類型下的所有得分和其他類的在該特徵類型下的所有得分都進行加權後相加,從而得到融合後的新得分。在權重向量e被初始化時,屬於主導類的得分的權重在步驟201中被初始化為1,屬於其他類的得分的權重被初始化為0。此時,為了驗證基於類的融合單元142所使用的權重向量e時,需要順序執行上面描述的特徵提取處理(由特徵提取單元Iio執行)、編碼和匯聚處理(由編碼及匯聚(pool) 單元120執行)、分類處理(由分類單元130執行)對N個樣本進行處理,獲得用於進行驗證的驗證集合 SS = (SS1, SS2, . . . SSi, . . . SSM}, SSi = {(X1, Y1), . . . (x」,y」),...(xL, YN)}, 其中,SSi表示M個類中第i類的驗證集合=(si; S2,..., sa)表示利用第j個樣本獲得的來自M個分類的得分,a表示分類器的總數量…用於指示屬於第i類的對象實際上是否存在於第j個樣本中。得到的MXK個得分可以被基於特徵的融合單元141進一步進行基於特徵的融合, 從而得到M個得分。應該理解,此時驗證集合中的r表示第j類的經過基於類的融合後的得分的數量。對於情況O),在對一個主導類的得分進行融合時,將該主導類的所有得分和其他類的所有得分都進行加權後相加,從而得到融合後的新得分。此時,在表示訓練分類單元 130的分類結果中的所有得分的權重的權重向量e被初始化時,屬於主導類的得分的權重在步驟201中被初始化為1,屬於其他類的得分的權重被初始化為0。這樣,最後得到M個得分作為最終的結果,其中,每個得分對應於一個類。這樣,在該另一基於類的融合單元142的實施例中,在前一基於類的融合單元142 的實施例的基礎上,還可以提供一種或多種最終的融合結果。在另外的實施例中,可省略基於類的融合單元142,僅以基於特徵的融合單元141 的融合結果作為最終結果。下面,結合圖1-3描述根據本發明的圖像識別方法。圖3示出根據本發明的圖像識別方法的流程圖。在步驟301,特徵提取單元110從輸入的圖像提取不同類型的特徵。在步驟302,編碼及匯聚單元120對提取的不同類型的特徵分別進行編碼,以獲得用於表示輸入圖像的直方圖。在步驟303,分類單元130基於編碼及匯聚單元120針對每種類型的特徵所產生的直方圖,利用分類器對輸入圖像中的對象進行分類。在步驟304,融合單元140對分類單元130的分類結果進行融合,從而得到最終的分類結果。在執行融合的第一實施例中,在步驟304執行融合時,可通過基於特徵的融合單元141對分類單元130的分類結果進行基於特徵的融合,然後通過基於類的融合單元142 對基於特徵的融合單元141的融合結果進行基於類的融合。在執行融合的第二實施例中,在步驟304執行融合時,基於類的融合單元142對分類單元130的分類結果按照特徵的類型進行基於類的融合,然後通過基於特徵的融合單元 141對基於類的融合單元142的融合結構進行基於特徵的融合。在執行融合的第三實施例中,在步驟304執行融合時,基於類的融合單元142不考慮特徵的類型對分類單元130的分類結果進行基於類的融合。在執行融合的第四實施例中,在步驟304執行融合時,可通過基於特徵的融合單元141對分類單元130的分類結果進行基於特徵的融合。可以同時利用執行融合的第一實施例、第二實施例、第三實施例和第四實施例中的至少一個來進行融合處理,以提供至少一個最終的分類結果。根據本發明的圖像識別方法和設備,利用了多種類型的特徵,並考慮不同類型的特徵之間的關係以及不同類之間的依存關係,對來自不同類型的特徵的識別結果進行了融合,提高了識別精度和穩定性。本發明的圖像識別方法和設備可應用於需要進行圖像識別的各個領域。例如,在圖像搜索中,圖像搜尋引擎(或系統)可應用本發明的圖像識別方法和/或設備,對從網絡上抓取的圖像中的對象進行識別,從而能夠對抓取的圖像建立準確的描述,解決了現有的圖像搜索技術中僅能利用圖像所在的網頁中的文字對圖像建立描述所導致的描述不準確的問題;再例如,在數位電視的廣告投放中,廣播投放系統也可應用本發明的圖像識別方法和/或設備,對用戶當前觀看的視頻中的對象進行識別,從而投放與識別的對象相關的廣儘管已經參照其示例性實施例具體顯示和描述了本發明,但是本領域的技術人員應該理解,在不脫離權利要求所限定的本發明的精神和範圍的情況下,可以對其進行形式和細節上的各種改變。
權利要求
1.一種圖像識別方法,包括從輸入圖像提取K種類型的特徵,其中,K為大於1的自然數; 分別對提取的K種類型的特徵進行編碼,以獲得用於表示輸入圖像的與K種類型相應的K個直方圖;利用用於對預設的M個類進行分類的分類器對獲得的K個直方圖進行分類,以獲得預設的M個類的得分,其中,針對K種類型的每種類型,訓練用於對預設的M個類進行分類的分類器,來對相應類型的直方圖進行分類,其中,M為大於1的自然數; 對獲得的預設的M個類的得分進行融合。
2.如權利要求1所述的圖像識別方法,其中,所述融合的步驟包括根據特徵的類型將相同類的各個得分加權,將相同類的加權後的得分相加,得到與M個類相應的M個得分。
3.如權利要求2所述的圖像識別方法,其中,所述融合的步驟還包括選擇M個類中的一個類作為主導類,根據主導類與M個類中的其他類之間的依存關係,對所述M個得分加權,將加權後的M個得分相加,以得到與主導類相應的一個得分,其中,依次選擇M個類的每個類作為主導類,計算與每個主導類相應的得分。
4.如權利要求1所述的圖像識別方法,其中,所述融合的步驟包括選擇M個類中的一個類作為主導類,根據主導類與M個類中的其他類之間的依存關係,對M個類中的每個類的得分加權,將加權後的得分相加,以得到與主導類相應的一個得分,其中,依次選擇M個類的每個類作為主導類,計算與每個主導類相應的得分。
5.如權利要求2所述的圖像識別方法,其中,將相同類的得分加權的步驟包括訓練用於加權的權重,以最大化平均精度。
6.如權利要求5所述的圖像識別方法,其中,訓練用於加權的權重的步驟包括對權重向量e進行初始化,得到初始化的權重向量%,其中,向量%的各個元素的值相同;使用當前的向量ep計算平均精度& = AP (ep),其中,AP 為計算平均精度的函數,其中,在執行初始化之後,當前向量% = % ;獲得步長向量6,通過將當前的向量 與步長向量6相加,得到新的向量,其中, 步長向量6的各個元素是預定數值範圍內的隨機數; 使用新的向量eMW再次計算平均精度Emw = AP(enew); 如果Emw大於等於&,則% = ,重複將當前的向量%改變步長6的步驟; 如果Emw小於Ep,則確定隨機函數rand(Ep,Enew)是否大於0 ; 如果確定rand (Ep,Enew)大於0,則% = enew,重複將當前的向量%改變步長6的步驟; 如果確定rand p,EnJ不大於0,則 保持不變,重複將當前的向量 改變步長6的步驟,其中,隨機函數rand(Ep,Enew)滿足下面的條件Enew越大,rand(Ep,Enew) > 0的概率越大;或者在Emw大於一閾值之後,Enew越大,rand (Ep, Enew) > 0的概率越大。
7.如權利要求6所述的圖像識別方法,其中,當改變步長預定次數之後或者當Enrat達到預定值時,將此時的ep作為最終訓練得到的權重向量e。
8.如權利要求3或4所述的圖像識別方法,其中,根據主導類與M個類中的其他類之間的依存關係進行加權的步驟包括訓練用於加權的權重,以最大化平均精度。
9.如權利要求8所述的圖像識別方法,其中,訓練用於加權的權重的步驟包括 對權重向量e進行初始化,得到初始化的權重向量%,其中,在向量%中,主導類的得分的權重被初始化為1,其他類的得分的權重被初始化為0 ;使用當前的向量ep計算平均精度& = AP (ep),其中,AP 為計算平均精度的函數,其中,在執行初始化之後,當前向量% = % ;獲得步長向量6,通過將當前的向量 與步長向量6相加,得到新的向量,其中, 步長向量6的各個元素是預定數值範圍內的隨機數; 使用新的向量eMW再次計算平均精度Emw = AP(enew); 如果Emw大於等於&,則% = ,重複將當前的向量%改變步長6的步驟; 如果Emw小於Ep,則確定隨機函數rand(Ep,Enew)是否大於0 ; 如果確定rand (Ep,Enew)大於0,則% = enew,重複將當前的向量%改變步長6的步驟; 如果確定rand p,EnJ不大於0,則 保持不變,重複將當前的向量 改變步長6的步驟,其中,隨機函數rand(Ep,Enew)滿足下面的條件Enew越大,rand(Ep,Enew) > 0的概率越大;或者在Emw大於一閾值之後,Enew越大,rand (Ep, Enew) > 0的概率越大。
10.如權利要求9所述的圖像識別方法,其中,當改變步長預定次數之後或者當Enrat達到預定值時,將此時的ep作為最終訓練得到的權重向量e。
11.如權利要求1所述的圖像識別方法,其中,從輸入圖像提取K種類型的特徵的步驟包括採用不同的特徵點提取方法從輸入圖像提取特徵點,利用至少一種特徵描述方法對提取的特徵點建立描述子,以提取K種類型的特徵。
12.如權利要求1所述的圖像識別方法,其中,利用支持向量機將各個分類器訓練為一個線性分類器來實現對獲得的預設的M類的得分的融合。
13.如權利要求1所述的圖像識別方法,其中,所述融合的步驟包括針對基於同一類型的特徵訓練的M個類的分類器的得分,從M個類中選擇一個類作為主導類,根據主導類與 M個類中的其他類之間的依存關係,對基於同一類型的特徵訓練的M個類的分類器的得分加權,將加權後的得分相加,以得到與主導類相應的一個得分,其中,依次選擇M個類的每個類作為主導類,計算與每個主導類相應的得分,其中,對於每種類型的特徵執行所述加權相加處理。
14.如權利要求14所述的圖像識別方法,還包括根據特徵的類型,對所述融合的步驟的加權相加後的結果中相同類的各個得分加權,將相同類的加權後的得分相加,得到與M 個類相應的M個得分。
15.一種圖像識別設備,包括特徵提取單元,從輸入圖像提取K種類型的特徵,其中,K為大於1的自然數; 編碼及匯聚單元,分別對提取的K種類型的特徵進行編碼,以獲得用於表示輸入圖像的與K種類型相應的K個直方圖;分類單元,利用用於對預設的M個類進行分類的分類器對獲得的K個直方圖進行分類, 以獲得預設的M個類的得分,其中,針對K種類型的每種類型,訓練用於對預設的M個類進行分類的分類器,來對相應類型的直方圖進行分類,其中,M為大於1的自然數; 融合單元,對獲得的預設的M個類的得分進行融合。
16.一種提供圖像搜索服務的系統,所述系統包括權利要求15所述的圖像識別設備, 其中,所述圖像識別設備對從網絡上抓取的圖像中的對象進行識別,以利用識別的結果來建立對抓取的圖像的描述。
17.一種在數位電視中投放廣告的系統,所述系統包括權利要求15所述的圖像識別設備,其中,所述圖像識別設備對用戶當前觀看的視頻中的對象進行識別,以投放與識別的對象相關的廣告。
全文摘要
本發明提供一種圖像識別設備及方法。該圖像識別方法包括從輸入圖像提取K種類型的特徵,其中,K為大於1的自然數;分別對提取的K種類型的特徵進行編碼,以獲得用於表示輸入圖像的與K種類型相應的K個直方圖;利用用於對預設的M個類進行分類的分類器對獲得的K個直方圖進行分類,以獲得預設的M個類的得分,其中,針對K種類型的每種類型,訓練用於對預設的M個類進行分類的分類器,來對相應類型的直方圖進行分類,其中,M為大於1的自然數;對獲得的預設的M個類的得分進行融合。在本發明的圖像識別中,利用了多種類型的特徵,並對來自不同類型的特徵的結果進行了融合,提高了識別精度和穩定性。
文檔編號G06K9/62GK102567736SQ20101060511
公開日2012年7月11日 申請日期2010年12月14日 優先權日2010年12月14日
發明者毛文濤, 王強, 程剛, 金智淵, 馬賡宇 申請人:三星電子株式會社, 北京三星通信技術研究有限公司