專利名稱:可變形對象識別系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明總體上涉及機(jī)器視覺系統(tǒng),更具體地,涉及對經(jīng)歷部分遮擋(partial occlusion)、雜波(clutter)或非線性對比度變化的非線性變換對象的視覺識別。
背景技術(shù):
對于許多計算機(jī)視覺應(yīng)用,特別是機(jī)器視覺應(yīng)用來說,在圖像中將給定的二維對象模板快速、魯棒而準(zhǔn)確地本地化是自然的先決條件。例如對于拾放應(yīng)用,對象識別方法必須確定成像對象的位置。當(dāng)結(jié)合成像設(shè)備的已知幾何參數(shù)給定對象的位置時,可以通過本領(lǐng)域眾知的方法來計算對象的姿態(tài)。當(dāng)給定這個姿態(tài)時,機(jī)器人可以從例如傳送帶抓取對象。在各種檢驗工作中,提取對象的位置使得能夠?qū)D像中的找到區(qū)域(foundregion)解扭曲(un-warp),并且便于光學(xué)字符識別或與例如用于對可能的制造誤差進(jìn)行檢測的原型圖像的比較。
在本領(lǐng)域中已經(jīng)提出了幾種用來在圖像中確定對象的位置的方法。大多數(shù)方法比較一組可能的對象姿態(tài)與圖像之間的相似性。超過閾值并且就該相似性量度而言局部最大的位置被選作對象的位置。
依賴于所使用的相似性量度,實現(xiàn)了相對于不利成像條件的某種不變性。例如,以歸一化相關(guān)性作為相似性量度,實現(xiàn)了相對于模型圖像和搜索圖像(search image)之間的線性灰度值變化的不變性。與本發(fā)明特別相關(guān)的是相對于部分遮擋、雜波和非線性對比度變化而具有不變性的相似性量度,通過引用將其結(jié)合在本申請中(US 7,062,093、EP 1193642和JP3776340)。所述度量(metric)的總體思想是將圖像和模型特征的規(guī)一化方向的點積用作模型和圖像之間的相似性的量度。
典型地,遍及全部姿態(tài)參數(shù)的窮盡搜索的計算代價很大,并且對于大多數(shù)實時應(yīng)用來說是不容許的。大多數(shù)現(xiàn)有技術(shù)的方法通過用模型圖像和搜索圖像建立圖像金字塔來克服這種速度限制(參見例如Tanimoto(1981)〔Steven L.Tanimoto,Template matching in pyramids,ComputerGraphics and Image Processing,16356-369,1981〕,或者Brown(1992)〔Lisa Gottesfeld Brown,A survey of image registration techniques,ACMComputing Surveys,24(4)325-376,1992年12月〕)。然后,只在最高金字塔級針對整個搜索范圍來評估相似性量度。在較低級,只跟蹤有希望的匹配候選者,直到達(dá)到最低的金字塔級。這里,所使用的金字塔級的數(shù)目是一個關(guān)鍵的決策,其直接影響對象識別方法的運(yùn)行時間。典型地,基于最高金字塔圖像中的對象的最小尺寸來選擇金字塔級的數(shù)目。如果該圖像中的對象很小,則難以將對象與例如雜波區(qū)分開來。這樣就必須評估過多的可能匹配候選者。如果選擇的金字塔級不足,則在最高金字塔級的搜索將慢到難以進(jìn)行的程度。
加快搜索的另一種方法是假定受檢對象的運(yùn)動參數(shù)可以通過線性仿射變換來近似。根據(jù)下式,線性仿射變換將輸入點(x,y)T映射到輸出點(x′,y′)T 可以將這個廣義公式進(jìn)一步分解成更具幾何意義的參數(shù)表示式
這些參數(shù)描述了將原x和y軸縮放不同的比例因子sx和sy;y軸相對于x軸的傾斜變換(skew transformation),即y軸旋轉(zhuǎn)角度θ,而x軸保持固定;兩個軸均旋轉(zhuǎn)角度
最后平移矢量(tx,ty)T。典型地,對象識別系統(tǒng)只是針對例如只有平移和旋轉(zhuǎn)的簡化子集來評估這些參數(shù)。此外,參數(shù)被局限于某個固定范圍,例如減小的旋轉(zhuǎn)范圍。這就減小了對象識別系統(tǒng)在最高的金字塔級所必須檢查的可能姿態(tài)的空間,從而提高了搜索速度。
然而,在多種情況下,必須要找到的對象是根據(jù)較之于線性仿射變換或其子集更廣義的變換來變換的。一種這樣的變換是透視變換,該變換描述了根據(jù)下式對從不同相機(jī)位置成像的平面對象的映射 (參見Hartley和Zisseman(2000)[Richard Hartley和AndrewZisserman,Multiple View Geometry in ComputerVision,CambridgeUniversity Press,2000])。這九個參數(shù)按比例限定,產(chǎn)生8個自由度。
我們明確地把兩種情況區(qū)別開一種情況是,對象識別系統(tǒng)的最終任務(wù)只是修正圖像;另一種情況是,必須確定對象的姿態(tài)。對于前者,確定透視變換就足夠了。這里,反轉(zhuǎn)的透視變換被用來修正圖像。
對于必須要確定對象的三維姿態(tài),而且提供了相機(jī)內(nèi)部參數(shù)的情況,只用6個自由度就足以描述姿態(tài)(3個用于平移,3個用于旋轉(zhuǎn))。要指出的重要的一點是,透視變換不能總是被直接變換成姿態(tài),因為為了產(chǎn)生真實的姿態(tài),必須為透視變換的8個參數(shù)另外施加兩個非線性約束(BertholdK.P.Horn,Projective Geometry considered Harmful,1999)。一旦得到有效的透視變換,則可以借助于本領(lǐng)域眾知的方法將它直接分解成三維姿態(tài)(例如Oliver Faugeras,Three-dimensional computer visiona geometricviewpoint,The MIT press,2001,chapter 7.5)。優(yōu)選的方法是直接搜索三維姿態(tài)參數(shù),而不是先確定透視變換然后將其分解成姿態(tài)。
線性變換不能滿足需要的另一個實例是當(dāng)對象的圖像發(fā)生非線性變形時。這可能是由于未能預(yù)先校正相機(jī)透鏡系統(tǒng)導(dǎo)致的畸變。進(jìn)一步的實例是當(dāng)成像是在像熱空氣那樣產(chǎn)生不規(guī)則畸變的介質(zhì)中進(jìn)行或者圖像是在水下所拍攝時。非線性變換的另一個來源是當(dāng)對象本身可變形時,例如當(dāng)它被印在彎曲或皺折的表面時。這里,不但要確定姿態(tài),而且還必須同時確定模型的變形。對非剛性變形的數(shù)學(xué)描述是增加扭曲W(x,y),以便根據(jù)下式對點進(jìn)行變換 如果且U(r)=r2 logr2,則得到薄板樣條函數(shù)(Fred L.Bookstein,“Principal WarpsThin-plate Splines and theDecomposition of Deformations”,IEEE Transactions on pattern analysisand machine intelligence,Vol 11,No.6,567-585 1989)。這里,扭曲(warp)由錨點Pi和系數(shù)wi來參數(shù)化。所得到的扭曲使錨點之間的曲率最小。
用于非線性對象識別的大多數(shù)現(xiàn)有技術(shù)的方法做這樣的假定即使整個對象發(fā)生變形,模型的足夠小的部分即使在變形之后在圖像中仍十分相似。
然而,如何將這個假定結(jié)合到對象識別系統(tǒng)的有效搜索方法中仍是懸而未決的問題。一種方法(參見例如US 7,239,929或US 7,190,834)包括以分級的方式來組織模型的分解部分。這里,一個部分被選作細(xì)分(subdivision)的根部。從這個根部開始,其它對象以樹狀結(jié)構(gòu)組織。應(yīng)該指出的重要的一點是在隨后的搜索中對這個根部進(jìn)行單獨檢測。一旦檢測到這個根部,后續(xù)部分的可能位置的范圍基于對象變形的假定而變窄。對其它部分的搜索由此而簡化。
然而,這個現(xiàn)有技術(shù)的方法存在幾個明顯的問題。一個問題是對部分的搜索典型地不如對整個對象的搜索容易辨別,因為部分所包含的信息必然較少。這就導(dǎo)致了假匹配并因為必須評估更多的匹配假設(shè)(matchhypothesis)而導(dǎo)致搜索速度減小。進(jìn)一步的局限是部分的尺寸小于整個模型的尺寸,因此,在圖像中的模型的相對尺寸變得太小而不能被基于特征的方法使用之前,只能使用較少的金字塔級。
本發(fā)明的目的是一種用于可變形對象檢測的綜合方法,該方法結(jié)合了所述不變性匹配度量、將模型分解成部分的方法以及將對所有部分的所有搜索結(jié)果同時加以考慮的搜索方法的優(yōu)點。盡管模型被分解成子部分,但是用來在最高金字塔級搜索的模型的相關(guān)尺寸并沒有減小。因此,本發(fā)明沒有現(xiàn)有技術(shù)方法中所存在的數(shù)目減小的金字塔級的速度限制。
發(fā)明內(nèi)容
本發(fā)明提供了一種用于對象識別的系統(tǒng)和方法,其對部分遮擋、雜波以及非線性照度變化是魯棒的,并且,即使當(dāng)對象由于透視變形或更廣義的變形而變換時,也能夠?qū)ο筮M(jìn)行識別。
本發(fā)明包括一種用于識別圖像中的經(jīng)歷廣義非線性變形的模型對象的方法,該方法包括以下步驟 (a)在電子存儲器中獲取模型對象的圖像; (b)將模型對象的圖像變換成與搜索空間的遞歸細(xì)分一致的多級表示,所述多級表示至少包括所述對象的圖像; (c)針對搜索空間的每一個離散化級,生成模型對象的至少一個預(yù)先計算的模型,所述預(yù)先計算的模型包括多個具有對應(yīng)方向矢量的模型點,所述模型點和方向矢量通過返回每一個模型點的方向矢量的圖像處理操作產(chǎn)生; (d)生成將所述多個模型點細(xì)分成多個部分的細(xì)分,其中,模型的變形實例通過對所述部分進(jìn)行變換來表示; (e)在電子存儲器中獲取搜索圖像; (f)將搜索圖像變換成與搜索空間的遞歸細(xì)分一致的多級表示,所述多級表示至少包括所述搜索圖像; (g)對多級表示的每一個變換的圖像執(zhí)行圖像處理操作,該圖像處理操作返回所述搜索圖像內(nèi)的模型點的子集的方向矢量,該子集對應(yīng)于搜索所述至少一個預(yù)先計算的模型所應(yīng)該針對的變換范圍; (h)計算將局部度量的結(jié)果相結(jié)合的全局匹配度量,其中,對于局部度量,在接近于預(yù)先計算的模型的受限制的變換范圍內(nèi)搜索模型的部分,并將每個部分的最適合者視為該部分對全局匹配度量的貢獻(xiàn); (i)確定那些其匹配度量超過了用戶可選擇的閾值且其匹配度量局部最大的模型姿態(tài),以及,根據(jù)這些模型姿態(tài)產(chǎn)生處于搜索空間的最粗糙的離散化級的所述至少一個預(yù)先計算的模型的實例的列表; (j)計算描述所述部分的局部位移的變形變換; (k)通過搜索空間的遞歸細(xì)分,跟蹤處于搜索空間的最粗糙的離散化級的所述至少一個預(yù)先計算的模型的實例,直到達(dá)到最精細(xì)的離散化級; (l)在每一級計算相應(yīng)的變形變換,并將所述變形變換傳送到下一級; (m)在最精細(xì)的離散化級提供模型對象實例的變形變換和模型姿態(tài)。
在從屬權(quán)利要求中說明了根據(jù)本發(fā)明的優(yōu)選實施例。
本發(fā)明包括一種用于識別圖像中的經(jīng)歷廣義非線性變形的模型對象的系統(tǒng),該系統(tǒng)包括 (a)用于在電子存儲器中獲取模型對象的圖像的裝置; (b)用于將模型對象的圖像變換成與搜索空間的遞歸細(xì)分一致的多級表示的裝置,所述多級表示至少包括所述對象的圖像; (c)用于針對搜索空間的每一個離散化級,生成模型對象的至少一個預(yù)先計算的模型的裝置,所述預(yù)先計算的模型包括多個具有對應(yīng)方向矢量的模型點,所述模型點和方向矢量通過返回每一個模型點的方向矢量的圖像處理操作產(chǎn)生; (d)用于生成將所述多個模型點細(xì)分成多個部分的細(xì)分的裝置,其中,模型的變形實例通過對所述部分進(jìn)行變換來表示; (e)用于在電子存儲器中獲取搜索圖像的裝置; (f)用于將搜索圖像變換成與搜索空間的遞歸細(xì)分一致的多級表示的裝置,所述多級表示至少包括所述搜索圖像; (g)用于對多級表示的每一個變換的圖像執(zhí)行圖像處理操作的裝置,該圖像處理操作返回所述搜索圖像內(nèi)的模型點的子集的方向矢量,該子集對應(yīng)于搜索所述至少一個預(yù)先計算的模型所應(yīng)該針對的變換范圍; (h)用于計算將局部度量的結(jié)果相結(jié)合的全局匹配度量的裝置,其中,對于局部度量,在接近于預(yù)先計算的模型的受限制的變換范圍內(nèi)搜索模型的部分,并將每個部分的最適合者視為該部分對全局匹配度量的貢獻(xiàn); (i)用于確定那些其匹配度量超過了用戶可選擇的閾值且其匹配度量局部最大的模型姿態(tài)以及根據(jù)這些模型姿態(tài)產(chǎn)生處于搜索空間的最粗糙的離散化級的所述至少一個預(yù)先計算的模型的實例的列表的裝置; (j)用于計算描述所述部分的局部位移的變形變換的裝置; (k)用于通過搜索空間的遞歸細(xì)分,跟蹤處于搜索空間的最粗糙的離散化級的所述至少一個預(yù)先計算的模型的實例,直到達(dá)到最精細(xì)的離散化級的裝置; (l)用于在每一級計算相應(yīng)的變形變換,并將所述變形變換傳送到下一級的裝置; (m)用于在最精細(xì)的離散化級提供模型對象實例的變形變換和模型姿態(tài)的裝置。
待識別的對象的模型包括多個具有對應(yīng)方向矢量的點,這些點可以通過標(biāo)準(zhǔn)圖像處理算法來得到,例如通過邊緣檢測方法或線檢測方法。在生成模型時,點集被分成多個部分。這些部分在搜索期間可相對于它們的原始位置移動,從而允許模型靈活地改變它的形狀。在一個優(yōu)選實施例中,模型的每一個部分只包括一個模型點。在另一個優(yōu)選實施例中,每一個部分包括若干鄰近的點,這些點相互之間保持剛性。
在搜索期間,例如針對廣義仿射姿態(tài)范圍將原始模型實例化。在每一個位置,模型的實例通過以近距離變換獨立地變換每一個部分來變形。針對每一個部分,在這個受限制的范圍內(nèi)的每一個變換處計算匹配度量。在一個優(yōu)選實施例中,匹配度量是該部分的方向矢量與經(jīng)預(yù)處理的搜索圖像的方向矢量的歸一化點積。整個模型的匹配度量是最適合部分的變形變換處的最適合部分的歸一化總和。在一個優(yōu)選實施例中,假定關(guān)于匹配度量的得分低于閾值的那些部分處于遮擋狀態(tài),從而在進(jìn)一步的處理中舍棄這些部分。匹配度量最大的部分的變換決定該部分相對于原始位置的變形。這個位移被用來計算預(yù)先選擇的變形模型。在一個優(yōu)選實施例中,非線性變形的模型是透視變換。在另一個實施例中,它是例如樣條函數(shù)或另一種本領(lǐng)域公知的用于對點集進(jìn)行插值或近似的方法。一旦計算出這個變換函數(shù),可以反轉(zhuǎn)找到圖像區(qū)域的變形來產(chǎn)生修正的圖像。
根據(jù)以下詳述,并結(jié)合附圖,可以更加全面地理解本發(fā)明,在附圖中 圖1是本發(fā)明的一個優(yōu)選實施例的流程圖,示出了所述方法的步驟; 圖2示出了對象的圖像以及用于模型生成的對象周圍的興趣區(qū)域; 圖3A示出了模型生成,其中對象在平面表面上; 圖3B示出了模型生成,其中對象被校準(zhǔn)板遮擋; 圖4A是一組由邊緣濾波器產(chǎn)生的模型點; 圖4B示出了將模型點細(xì)分成多個部分的示例細(xì)分,其中描述了模型中心以及這些部分相對于模型中心的平移; 圖4C示出了典型的由于所述部分在附近的局部運(yùn)動而產(chǎn)生的模型的變形; 圖5示出了當(dāng)前圖像,該圖像包含對象的兩個變形的實例以及就模型的兩個找到實例而言的對象檢測結(jié)果; 圖6示出了通過擬合變形函數(shù)而產(chǎn)生的剛性模板與變形模板之間的變形映射,其中變形映射的示例點是部分的中心; 圖7示出了實施圖1-6的方法的對象識別系統(tǒng)的示意性框圖;以及 圖8示出了使用計算機(jī)可讀介質(zhì)來實施圖1-6的方法的計算機(jī)的示意性框圖。
具體實施例方式 本發(fā)明提供了一種用于可變形對象識別的方法,其對遮擋、雜波以及非線性對比度變化是魯棒的。
本發(fā)明還提供了一種圖7所示的對象識別系統(tǒng),其用于圖8所示的計算機(jī),以便實施在這里結(jié)合圖1-6所描述的方法。
圖1給出了對所述方法的步驟的概括。所述方法分成產(chǎn)生對象模型的離線階段和在搜索圖像中找到所述對象模型的在線階段。模型生成的輸入是以未變形方式示出對象的示例圖像。在圖2中,示出了房子形狀的示例對象的圖像202。興趣區(qū)域201限制對象在圖像中的位置。典型地,這個區(qū)域由對象識別系統(tǒng)的用戶在離線訓(xùn)練階段限定。如果對象識別系統(tǒng)的用戶只對隨后修正搜索圖像中的對象感興趣,有時只有對象的一小部分對于隨后的處理來說是特別令人感興趣的。例如,在必須從包裹中讀取信件的應(yīng)用中,可以指定另外的興趣區(qū)域203,其針對隨后必須被解扭曲的模型而限定該區(qū)域的位置和尺寸。盡管對象檢測系統(tǒng)使用來自整個對象的信息,但是必須修正的只是那個對象特別令人感興趣的部分。這就提高了速度,特別是當(dāng)對象只有一小部分令人感興趣時。
在一些應(yīng)用中,對象識別系統(tǒng)的用戶對對象的姿態(tài)感興趣,例如在機(jī)器人操作裝置的拾放應(yīng)用中。然而,圖像中的興趣區(qū)域201只是指定了對象在圖像中的位置和尺寸。要確定對象的度量姿態(tài),必須將成像裝置的內(nèi)部幾何參數(shù)提供給系統(tǒng)。成像裝置300(見圖3A)的內(nèi)部幾何參數(shù)典型地由以下幾個方面來描述它的焦距、主點(principal point)在圖像中的位置、像素元件在行和列方向的尺寸以及模擬由透鏡引起的枕形畸變或桶形畸變的畸變系數(shù)。要利用對象識別系統(tǒng)來控制機(jī)器人,還需要進(jìn)一步的信息,如相機(jī)在世界坐標(biāo)系中的姿態(tài)。具有相機(jī)和機(jī)器人在世界坐標(biāo)系中的位置允許將姿態(tài)從相機(jī)的局部坐標(biāo)系轉(zhuǎn)換成機(jī)器人的坐標(biāo)框架以及相反過程。因此,相機(jī)坐標(biāo)系中的姿態(tài)信息可以轉(zhuǎn)換成機(jī)器人能夠直接執(zhí)行的控制任務(wù)。相機(jī)的內(nèi)部和外部參數(shù)可以通過本領(lǐng)域已知的方法事先確定(參見例如MVTec Software GmbH,HALCON 8.0 Documentation,Solution Guide II-F,3d Machine Vision,2007)。
一旦確定了這些參數(shù),則需要模型對象301的興趣區(qū)域在相機(jī)坐標(biāo)系中的相對姿態(tài)來對對象進(jìn)行相對姿態(tài)估算(見圖3和4)。這是重要的,因為通常沒有成像對象的先驗度量信息可供利用,因而不能說對象是例如小且接近相機(jī)的或者是大且遠(yuǎn)離相機(jī)的。這里的兩種情況會得到相同的圖像。提供這種度量信息的典型方法是人工指定例如世界點和圖像點之間的點對應(yīng),并且測量它們在圖像和世界兩者中的位置,從而消除了成像過程的比例模糊(scale ambiguity)。
然而,這種方法容易出錯,并且使對象識別系統(tǒng)使用起來麻煩,因為以人工方式提供點對應(yīng)是一項費(fèi)時的工作。在一個優(yōu)選實施例中,將已經(jīng)測量的平面校準(zhǔn)板303覆在興趣對象上,并且獲取顯示校準(zhǔn)板的圖像(見圖3B)。在這個示意圖中,校準(zhǔn)板303包含限定點對應(yīng)的暗圓形。因為校準(zhǔn)板的尺寸和點的精確度量位置是已知的,所以可以在相機(jī)坐標(biāo)系中確定校準(zhǔn)平面的相對姿態(tài)。然后將校準(zhǔn)板從對象移走,并獲取顯示處在與校準(zhǔn)板相同的位置的對象的第二幅圖像。因為校準(zhǔn)板的姿態(tài)和用于模型生成的對象的姿態(tài)在世界和圖像中是相同的,對象的對應(yīng)姿態(tài)得以自動確定。校準(zhǔn)板303的區(qū)域直接與用于模型生成的對象的圖像結(jié)合使用。這個過程使得能夠容易地使用系統(tǒng),因為用戶不再需要在圖像中指定對象的區(qū)域。代之以他一次性地將校準(zhǔn)網(wǎng)格放置在對象上、拍攝圖像、然后去掉校準(zhǔn)板并拍攝對象的第二幅圖像。在另一優(yōu)選實施例中,由校準(zhǔn)板限定的興趣區(qū)域的矩形形狀可以以人工方式調(diào)節(jié)以適合于任意形狀的平面對象,而不是校準(zhǔn)網(wǎng)格的矩形形狀。這里,只要限定模型的興趣區(qū)域與校準(zhǔn)板處在同一平面內(nèi),就仍然可以使用由校準(zhǔn)板所給出的點對應(yīng)。此外,本領(lǐng)域的任何技術(shù)人員都能夠直接將這個過程擴(kuò)展為甚至可以用于非平面對象。這里,可以例如以循環(huán)方式收集平面子結(jié)構(gòu)的興趣區(qū)域和度量信息,并將這些部分組合成對對象的三維描述。
對象識別系統(tǒng)將模型生成的圖像變換成包含原始圖像的經(jīng)平滑和子采樣的版本的遞歸細(xì)分。在以下表述中,遞歸細(xì)分、多級表示和圖像金字塔在使用時具有相同的含義。在一個優(yōu)選實施例中,遞歸細(xì)分是均值圖像金字塔。在另一個優(yōu)選實施例中,應(yīng)用高斯圖像金字塔。從限定模型位置的興趣區(qū)域產(chǎn)生同一個多級表示。針對每一個多級表示,模型生成從圖像的所述區(qū)域提取邊緣點。邊緣檢測結(jié)果在圖4A中示出。這里,邊緣檢測不僅提取位置,還提取強(qiáng)對比度變化的方向。所使用的邊緣檢測是例如Sobel濾波或Canny邊緣檢測濾波,或任何本領(lǐng)域已知的從圖像提取有向特征點的其它濾波。本發(fā)明不限于邊緣特征,本領(lǐng)域的技術(shù)人員能夠容易地將其擴(kuò)展到線特征或興趣點特征。為清楚起見,在進(jìn)一步的討論中我們只限于邊緣點。圖4A的小箭號400表示邊緣點的位置和方向。針對每一個模型點,所提取的邊緣點被變換成模型坐標(biāo)框架(由圓圈401表示)并被保存到存儲器中。因此,系統(tǒng)得到對被成像對象的幾何描述。
限定模型原點的模型坐標(biāo)框架401典型地通過獲取點集的重心來計算。坐標(biāo)框架的取向與圖像相同。因此,將模型坐標(biāo)框架映射成模板圖像坐標(biāo)框架的變換是簡單的平移。在另一優(yōu)選實施例中,用戶針對模型原點提供不同的點。以人工方式設(shè)置原點的典型應(yīng)用是應(yīng)該找到在該應(yīng)用中特別令人感興趣的對象上的位置,例如金屬部件的鉆孔中心。顯然,這個位置典型地不對應(yīng)于模型中心。這個中心模型點特別令人感興趣,因為由于對象識別系統(tǒng)認(rèn)為它表示對象位置,所以返回這個點的姿態(tài)。
通過施加從模型坐標(biāo)框架到圖像坐標(biāo)框架的廣義仿射變換映射,可以將模型的不同實例投射到圖像中。然而,到目前為止,模型實例是剛性的。
為考慮相繼的非線性模型變形,將所述多個邊緣點組織成若干組的次多個(sub-plurality)點。通過局部地變換所述若干組的次多個點,組與組相互之間的空間關(guān)系發(fā)生變化,從而導(dǎo)致整個對象的非線性形狀變化。這里,施加于每一個組的局部變換是足夠小的仿射變換,或者是其子集,如剛性變換或平移。示例的模型細(xì)分在圖4B中示出。部分生成(partgeneration)的輸入是事先通過特征提取產(chǎn)生的邊緣點400的集合。
一旦提取了邊緣點,部分生成的任務(wù)是將這些點分組成空間相關(guān)的結(jié)構(gòu)403。這里,本發(fā)明假定空間相關(guān)的結(jié)構(gòu)甚至在變換之后都保持相同。本發(fā)明的一個方面是以人工方式進(jìn)行這種聚類。這里,用戶將他認(rèn)為會保持相似的部分選擇成為一組。本發(fā)明的另一個實施例通過自動方法執(zhí)行聚類。一種直接的方法是對模型設(shè)置固定的細(xì)分并將在一個細(xì)分單元內(nèi)的點歸屬于一個部分。另一種方法是計算模型點的鄰域曲線圖并將固定數(shù)量的最近的點選在一個部分內(nèi)。另一種方法是對點集進(jìn)行譜分解。這些譜分解方法的實例在本領(lǐng)域內(nèi)被稱為例如k均值聚類或歸一化分割(Jianbo Shi和Jitendra Malik,Normalized cuts and image segmentation,In IEEEConference on Computer Vision and Pattern Recognition,第731-737頁,1997)。要指出的重要的一點是,本發(fā)明不限于這樣的情況即不同組的所述次多個點是分離的集合。在一個優(yōu)選實施例中,針對每一個點及其最近的鄰近點生成一組次多個點。與所使用的細(xì)分方法無關(guān),模型點被分成n個部分,每個部分包含ki個模型點。為了加速隨后的計算,使用一種數(shù)據(jù)結(jié)構(gòu),對于每一個部分,該數(shù)據(jù)結(jié)構(gòu)包含它所包含的模型點的索引nij。這里,索引i的范圍是從1到n,并限定哪一個部分被選擇;j從1到ki,并限定該部分的點。如果例如每一個部分具有相同數(shù)量的模型點,則使用矩陣表示,其中每一行限定部分,每一列限定該部分中的索引。
限定這樣一種細(xì)分之后,例如通過獲取相應(yīng)點集的重心來計算每一個部分403的中心402。部分的中心與模型401的原點之間的變換404保存在模型中。因此,部分的中心的相對位置被轉(zhuǎn)換成將模型的坐標(biāo)框架變?yōu)椴糠值淖鴺?biāo)框架的變換,如歐幾里德變換式。這些變換允許將模型點的位置和方向從部分的坐標(biāo)框架轉(zhuǎn)換成模型的坐標(biāo)框架的轉(zhuǎn)換以及相反的轉(zhuǎn)換。例如通過沿x和y軸的小的移動或繞部分的中心的旋轉(zhuǎn)來改變模型與部分之間的相對變換404,允許將模型的變形版本實例化。由于沿x和y方向的小的平移而產(chǎn)生的一些示例的變形在圖4C中說明。
本發(fā)明的一個方面是對已知的用于在存在部分遮擋、雜波以及非線性照度變化的情況下檢測圖像中的剛性對象的方法和系統(tǒng)(參見US7,062,093)加以擴(kuò)展。
將模型的有向點集與搜索圖像的稠密梯度方向場相比較。即使傳送到梯度幅度的非線性照度變化相當(dāng)大,梯度方向仍保持相同。此外,在搜索圖像中完全避免了滯后閾值(hysteresis threshold)或非最大抑制(non-maximum suppression),從而實現(xiàn)了相對于任意照度變化的真正的不變性。部分遮擋、噪聲以及雜波導(dǎo)致搜索圖像中的隨機(jī)梯度方向。這些效應(yīng)降低了關(guān)于這個度量的得分的最大值,但不改變它的位置。得分值(score value)的語義是匹配模型點的分?jǐn)?shù)。
有效搜索的思想是對象識別系統(tǒng)僅對廣義仿射變換或它的子集進(jìn)行全局實例化。通過允許部分的局部移動以及將最大響應(yīng)作為最適合者,搜索隱含地對更高等級的非線性變換進(jìn)行了評估。在圖5中對此進(jìn)行了說明,其中示出了具有兩個變形模型實例的搜索圖像。在左邊示出了模型的透射變換實例500。在右邊描述了更復(fù)雜的任意變形501。如圖所示,局部適配的部分403在搜索圖像中對對象進(jìn)行近似。改變部分的剛性位置與局部適配的位置之間的局部變換,允許表示很多種類的模型外觀。
一項重要的觀測結(jié)論是通過將圖像變換成金字塔表示,在每一級只需補(bǔ)償小的變形。例如,即使對象在最低的金字塔級具有復(fù)雜的變形,最高的金字塔級處的外觀也不發(fā)生大的變化。另一方面,如果對象具有一個大的變形,則可以在最高級對其進(jìn)行補(bǔ)償。在本發(fā)明中,變形以遞歸的方式沿著金字塔傳送。如果所有較高級別的變形都在較高的金字塔級得到補(bǔ)償,則對象的外觀在每一級只發(fā)生相對小的變化。
因此,通過將搜索度量分成全局部分sg和局部部分sl,本發(fā)明擴(kuò)展了用于可變形對象檢測的所述度量。為清楚起見,我們只給出用于平移的公式,這意味著只針對每一行r和列c計算得分??梢灾苯訉⑵鋽U(kuò)展為用于廣義仿射參數(shù)。如上所述,模型被分成n部分,每一部分包含ki個模型點。
全局度量定義為 意思是它是針對索引i所限定的每一個部分計算的局部匹配的得分值的組合。
局部匹配度量定義為 這里,ij對限定指示哪一個模型點在哪一部分中的索引,其中每一部分具有ki個模型點。rij和cij是相應(yīng)的模型點在模型坐標(biāo)系中的行和列位移。局部變換Tl用來改變模型的形狀。典型地,這些是具有例如在每一個方向上1個像素平移的小作用的歐幾里德變換。上標(biāo)m和s限定d是模型的方向矢量或搜索圖像中的相應(yīng)位置的方向矢量。
在每一個可能姿態(tài)位置,每一個部分具有如獨立的得分值,該得分值由類似于US 7,062,093中所述的度量給出。針對每一個部分,在其原始仿射位置附近的范圍內(nèi)評估所述度量。局部鄰域內(nèi)的最大得分作為該部分的最適合者。通過計算由每一個部分中的模型點的數(shù)量歸一化的局部度量的結(jié)果的總和來獲取全局度量。在不偏離本發(fā)明的范圍的情況下,可以得出各種不同的度量。本發(fā)明的一個變體是可以針對每一個部分設(shè)置一個該部分所必須超過的閾值。否則,認(rèn)為所述部分被遮擋,因此將其舍棄而不做進(jìn)一步的處理。
其中
另一個優(yōu)選實施例是當(dāng)部分的尺寸不同時。此時,人們通過每一個部分所包含的模型點的數(shù)量來對其影響進(jìn)行加權(quán)。
甚至在不知道確切的變形時,一組廣義仿射變換的全局得分值也允許確定對象近似地位于何處。另一個變體是為了實現(xiàn)相對于對比度反轉(zhuǎn)(contrast reversal)的不變性,從局部得分度量中舍棄極性信息。這是通過在局部度量中使用模型點和圖像點的方向矢量的歸一化點積的和的絕對值或絕對值的和來完成的。
通過獲取每一個部分的最佳匹配,不僅獲得了得分值,還獲得了對變形的估算。這些是限定最大局部得分的局部變換Tl。在具有了每一個部分的局部位移之后,相應(yīng)的非線性模型被擬合。即使對于沒有模型點的位置,也可以計算平滑變形。圖6示出了一個示例變形。部分402的中心移動到附近的位置603。針對這些點來擬合非線性變換,將原始剛性空間(示意性地描述為網(wǎng)格601)變換成變形空間602。在本領(lǐng)域這是一個眾知的問題,已經(jīng)提出了根據(jù)函數(shù)插值和近似來實現(xiàn)的各種解決方案。這里,本發(fā)明的一個方面是只將每一個部分的局部位移用作函數(shù)點并為每一個點擬合例如透視變換。這可以例如通過直接線性變換方法(Hartley和Zisserman 2000)來進(jìn)行。如果假定模型是剛性的,則可以通過諸如Levenberg-Marquardt算法的魯棒迭代非線性最小化來直接擬合三維姿態(tài)。對于可變形模型的情況,樣條函數(shù)由位移來定義。這個樣條函數(shù)是例如B樣條函數(shù)或薄板樣條函數(shù)。這些函數(shù)的系數(shù)通過直接方法計算。然而,如果使用了例如薄板樣條函數(shù),則必須反轉(zhuǎn)很大的線性系統(tǒng)(linersystem)來獲取扭曲系數(shù)。因此,在另一個優(yōu)選實施例中使用由模型點的變形限定的調(diào)和插值方法。此時,將模型點的位移插入描述沿行和列方向扭曲的兩個圖像中。然后,通過被稱為調(diào)和修補(bǔ)(harmonic inpainting)的方法為沒有模型點的區(qū)域修補(bǔ)變形(參見Aubert,G和Kornprobst,P.,Mathematical Problems in Image Processing,Partial DifferentialEquations and the Calculus of Variations(second edition),volume 147 ofApplied Mathematical Sciences,Springer-Verlag,2006)。為了使扭曲很平滑,將變形傳回到模型點的原始區(qū)域。因此,不僅獲得了插值函數(shù),還獲得了近似函數(shù)。這個方法的優(yōu)點是運(yùn)行時間只是線性相關(guān)于對象的尺寸,而不是例如像薄板樣條那樣三次方地相關(guān)于錨點的數(shù)量。
通常,特別是對于嚴(yán)重變形,不可能一步提取到變形。當(dāng)給定變形映射時,對全部模型點和相應(yīng)的方向進(jìn)行變換。利用這個被變換的模型,現(xiàn)在針對局部位移再一次獨立地搜索模型的每一組次多個點。這給出了確定小位移并擬合被評估的模型的循環(huán),直到達(dá)到收斂。典型地,通過檢查位移是否變得小于預(yù)定閾值來檢驗收斂。對于所限定的超過閾值并且局部最大的全局實例的范圍,將具有位置、得分和變形信息的對象假設(shè)(objecthypothesis)放入列表,以便在較低的金字塔級對它們作進(jìn)一步的檢查。在一個優(yōu)選實施例中,不僅設(shè)置關(guān)于全局得分值的閾值,而且還設(shè)置產(chǎn)生于最高金字塔級的假設(shè)的最大數(shù)目。此時,全部假設(shè)根據(jù)它們的得分值而分類,而且只有固定數(shù)量的最佳匹配的候選者才被放入進(jìn)一步處理的假設(shè)的列表中。
一旦確定了模型在特定金字塔級的確切位置和變形,必須沿著金字塔將該變形傳送到下一個金字塔級。這樣做是重要的,以便在較低的級僅僅必須評估小搜索范圍的局部變形。在一個優(yōu)選實施例中,來自較低級的原始仿射模型通過遞歸細(xì)分而變換成較高的金字塔級。已經(jīng)提取的較高級的變形被施加到模型上,而現(xiàn)在已變換的來自較低級的模型被變回到它的原始金字塔級。在這個級上的搜索從根據(jù)較高金字塔級的變形變換的模型的實例開始。
沿著圖像金字塔對假設(shè)的跟蹤一直進(jìn)行到達(dá)到最低的金字塔級為止。在最低的金字塔級,以甚至高于原始圖像的分辨率來確定位移。因此,在亞像素精度的位置對部分進(jìn)行實例化,并且確定圖像中的對應(yīng)的最大邊緣幅度。此時,部分的位移不再由梯度方向限定,而由梯度幅度限定。按照以上方法,使用小位移以很高的精度來擬合變形函數(shù)。一旦在最低級找到對象,則返回位置、姿態(tài)和變形函數(shù)。此外,返回全局得分函數(shù)的值,以便為用戶提供以多好的程度找到對象的量度。
盡管上面詳細(xì)描述了本發(fā)明的幾個具體實施例,然而在不偏離本發(fā)明的范圍的情況下可以對優(yōu)選實施例進(jìn)行各種修改。因此,除非在所附權(quán)利要求中指出,以上描述不應(yīng)作為對本發(fā)明的限制。
權(quán)利要求
1.一種用于識別圖像中的經(jīng)歷廣義非線性變形的對象的方法,該方法包括以下步驟
(a)在電子存儲器中獲取模型對象的圖像;
(b)將模型對象的圖像變換成與搜索空間的遞歸細(xì)分一致的多級表示,所述多級表示至少包括所述對象的圖像;
(c)針對搜索空間的每一個離散化級,生成模型對象的至少一個預(yù)先計算的模型,所述預(yù)先計算的模型包括多個具有對應(yīng)方向矢量的模型點,所述模型點和方向矢量通過返回每一個模型點的方向矢量的圖像處理操作產(chǎn)生;
(d)生成將所述多個模型點細(xì)分成多個部分的細(xì)分,其中,模型的變形實例通過對所述部分進(jìn)行變換來表示;
(e)在電子存儲器中獲取搜索圖像;
(f)將搜索圖像變換成與搜索空間的遞歸細(xì)分一致的多級表示,所述多級表示至少包括所述搜索圖像;
(g)對多級表示的每一個變換的圖像執(zhí)行圖像處理操作,該圖像處理操作返回所述搜索圖像內(nèi)的模型點的子集的方向矢量,該子集對應(yīng)于搜索所述至少一個預(yù)先計算的模型所應(yīng)該針對的變換范圍;
(h)計算將局部度量的結(jié)果相結(jié)合的全局匹配度量,其中,對于局部度量,在接近于預(yù)先計算的模型的受限制的變換范圍內(nèi)搜索模型的部分,并將每個部分的最適合者視為該部分對全局匹配度量的貢獻(xiàn);
(i)確定那些其匹配度量超過了用戶可選擇的閾值且其匹配度量局部最大的模型姿態(tài),以及,根據(jù)這些模型姿態(tài)產(chǎn)生處于搜索空間的最粗糙的離散化級的所述至少一個預(yù)先計算的模型的實例的列表;
(j)計算描述所述部分的局部位移的變形變換;
(k)通過搜索空間的遞歸細(xì)分,跟蹤處于搜索空間的最粗糙的離散化級的所述至少一個預(yù)先計算的模型的實例,直到達(dá)到最精細(xì)的離散化級;
(l)在每一級計算相應(yīng)的變形變換,并將所述變形變換傳送到下一級;
(m)在最精細(xì)的離散化級提供模型對象實例的變形變換和模型姿態(tài)。
2.根據(jù)權(quán)利要求1所述的方法,其中,以高于最精細(xì)的離散化級的分辨率來確定所述部分的位置。
3.根據(jù)權(quán)利要求2所述的方法,其中,除了用戶可選擇的閾值之外,只有可達(dá)用戶可選擇的最大數(shù)量的最佳假設(shè)實例也被生成到最粗糙的離散化級上的可能匹配的列表中。
4.根據(jù)權(quán)利要求3所述的方法,其中,每一個部分的局部匹配度量的得分必須超過用戶可選擇的局部閾值,否則,認(rèn)為該部分被遮擋并且將該部分舍棄而不做進(jìn)一步的處理。
5.根據(jù)權(quán)利要求4所述的方法,其中,每一個部分由多個點組成,其中所述細(xì)分生成交疊的點集。
6.根據(jù)權(quán)利要求4所述的方法,其中,每一個部分由多個點組成,其中所述點集是分離的集合。
7.根據(jù)權(quán)利要求6所述的方法,其中,利用k均值聚類或利用歸一化分割來進(jìn)行所述細(xì)分。
8.根據(jù)權(quán)利要求4所述的方法,其中,所計算的變換是透視變換。
9.根據(jù)權(quán)利要求4所述的方法,其中,模型生成另外接收有關(guān)成像裝置的內(nèi)部幾何參數(shù)和模型的度量信息作為輸入,所計算的變換是三維姿態(tài)。
10.根據(jù)權(quán)利要求4所述的方法,其中,所計算的變換是薄板樣條、圓柱變換或調(diào)和插值。
11.根據(jù)權(quán)利要求4所述的方法,其中,所變換的模型部分和搜索圖像的方向矢量的歸一化點積之和被用于局部得分度量。
12.根據(jù)權(quán)利要求4所述的方法,其中,所變換的模型部分和搜索圖像的方向矢量的歸一化點積之和的絕對值被用于局部得分度量。
13.根據(jù)權(quán)利要求4所述的方法,其中,所變換的模型部分和搜索圖像的方向矢量的歸一化點積的絕對值之和被用于局部得分度量。
14.一種用于識別圖像中的經(jīng)歷廣義非線性變形的對象的系統(tǒng),該系統(tǒng)包括
(a)用于在電子存儲器中獲取模型對象的圖像的裝置;
(b)用于將模型對象的圖像變換成與搜索空間的遞歸細(xì)分一致的多級表示的裝置,所述多級表示至少包括所述對象的圖像;
(c)用于針對搜索空間的每一個離散化級,生成模型對象的至少一個預(yù)先計算的模型的裝置,所述預(yù)先計算的模型包括多個具有對應(yīng)方向矢量的模型點,所述模型點和方向矢量通過返回每一個模型點的方向矢量的圖像處理操作產(chǎn)生;
(d)用于生成將所述多個模型點細(xì)分成多個部分的細(xì)分的裝置,其中,模型的變形實例通過對所述部分進(jìn)行變換來表示;
(e)用于在電子存儲器中獲取搜索圖像的裝置;
(f)用于將搜索圖像變換成與搜索空間的遞歸細(xì)分一致的多級表示的裝置,所述多級表示至少包括所述搜索圖像;
(g)用于對多級表示的每一個變換的圖像執(zhí)行圖像處理操作的裝置,該圖像處理操作返回所述搜索圖像內(nèi)的模型點的子集的方向矢量,該子集對應(yīng)于搜索所述至少一個預(yù)先計算的模型所應(yīng)該針對的變換范圍;
(h)用于計算將局部度量的結(jié)果相結(jié)合的全局匹配度量的裝置,其中,對于局部度量,在接近于預(yù)先計算的模型的受限制的變換范圍內(nèi)搜索模型的部分,并將每個部分的最適合者視為該部分對全局匹配度量的貢獻(xiàn);
(i)用于確定那些其匹配度量超過了用戶可選擇的閾值且其匹配度量局部最大的模型姿態(tài)以及根據(jù)這些模型姿態(tài)產(chǎn)生處于搜索空間的最粗糙的離散化級的所述至少一個預(yù)先計算的模型的實例的列表的裝置;
(j)用于計算描述所述部分的局部位移的變形變換的裝置;
(k)用于通過搜索空間的遞歸細(xì)分,跟蹤處于搜索空間的最粗糙的離散化級的所述至少一個預(yù)先計算的模型的實例,直到達(dá)到最精細(xì)的離散化級的裝置;
(l)用于在每一級計算相應(yīng)的變形變換,并將所述變形變換傳送到下一級的裝置;
(m)用于在最精細(xì)的離散化級提供模型對象實例的變形變換和模型姿態(tài)的裝置。
15.一種計算機(jī)程序產(chǎn)品,包括存儲在計算機(jī)可讀介質(zhì)上的程序代碼裝置,用于在所述計算機(jī)程序產(chǎn)品在計算機(jī)上運(yùn)行時執(zhí)行根據(jù)權(quán)利要求1到13所述的方法。
全文摘要
本發(fā)明提供了一種用于甚至在存在部分遮擋、雜波以及非線性照度變化的情況下在圖像中檢測可變形對象的系統(tǒng)和方法。公開了一種用于可變形對象檢測的綜合方法,該方法結(jié)合了基于模型點的歸一化梯度方向的匹配度量、將模型分解成部分的分解以及將針對所有部分的所有搜索結(jié)果同時加以考慮的搜索方法的優(yōu)點。盡管模型被分解成子部分,但是用來在最高金字塔級搜索的模型的相關(guān)尺寸并沒有減小。因此,本發(fā)明沒有現(xiàn)有技術(shù)方法中所存在的數(shù)目減小的金字塔級的速度限制。
文檔編號G06K9/46GK101488187SQ200810090409
公開日2009年7月22日 申請日期2008年3月31日 優(yōu)先權(quán)日2008年1月18日
發(fā)明者安德烈亞斯·霍夫豪澤, 卡斯滕·施特格 申請人:Mv科技軟件有限責(zé)任公司