本發明涉及圖像處理領域,具體而言,涉及一種特征點跟蹤方法和裝置。
背景技術:
特征點(角點)提取是一種常用的圖像特征提取方法,通過對圖像中的特征點進行提取可以檢測、提取、識別和跟蹤圖像序列中的目標。FAST(Features from Accelerated Segment Test)是一種角點檢測方法,它可以用于特征點的提取,并完成跟蹤和映射物體。FAST角點檢測算法最初是由Edward Rosten和Tom Drummond提出,該算法最突出的優點是它的計算效率。
現有技術中,特征點跟蹤方法的工作原理如下:
在初始化時提取當前視野中的所有特征點,選取其中一定數量的質量較高的特征點進行跟蹤。由于攝像頭位置的改變或攝像頭視野中物體的移動可能導致圖像中的景象發生改變,在圖像發生改變時,圖像中的部分特征點可能會在圖像中移動或丟失。在之后的每一幀中,視覺系統會利用稀疏光流的方法對特征點進行跟蹤,根據之前幀的圖像和特征點找到之前的特征點在當前幀中匹配的位置。在跟蹤特征點的過程中部分特征點可能會跟蹤失敗,導致圖像中總的特征點數降低。由于算法通常要求保證特征點維持在一定的數量,為保證當前幀中跟蹤到的FAST特征點維持在一定數量,當特征點因機器人的運動而消失時,需要補充特征點。現有技術中,視覺系統會再次調用初始化時的方法遍歷當前圖像,找出當前視野中所有的特征點,并選取其中較好的特征點以補充特征點的數量。
上述提取當前視野中所有特征點的算法會遍歷整個圖像,導致了較大的時間耗費,在實時系統中,例如,機器人的視覺系統,遍歷圖像的時間開銷過大,會影響機器人整體的性能。
針對相關技術中的特征點跟蹤方法容易導致系統時間開銷過大的問題,目前尚未提出有效的解決方案。
技術實現要素:
本發明的主要目的在于提供一種特征點跟蹤方法和裝置,以解決相關技術中的特征點跟蹤方法容易導致系統時間開銷過大的問題。
為了實現上述目的,根據本發明的一個方面,提供了一種特征點跟蹤方法。該方法應用于具有圖像跟蹤單元的電子設備,電子設備用于基于圖像跟蹤單元執行對目標對象的跟蹤,該方法包括:確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n,其中,n為大于1的整數,第二幀圖像為第一幀圖像在時間維度上的前一幀圖像;對第一幀圖像執行第一處理直至找到n個新的特征點,其中,第一處理為在圖像中隨機選取像素點并檢測選取的像素點是否為特征點,新的特征點不同于第一幀圖像中未丟失的特征點;將第一幀圖像中未丟失的特征點和n個新的特征點組合得到第一幀圖像的全部特征點。
進一步地,在確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n之后,該方法還包括:判斷數量n是否超過預設閾值,其中,在判斷數量n是否超過預設閾值之后,該方法還包括:如果判斷出數量n超過預設閾值,對第一幀圖像執行第二處理以獲取第一幀圖像的所有的特征點,其中,第二處理為檢測圖像中所有的像素點是否為特征點;在獲取到的第一幀圖像的所有的特征點中確定符合預設條件的特征點;如果判斷出數量n未超過預設閾值,對第一幀圖像執行第一處理。
進一步地,在確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n之前,該方法還包括:對初始幀圖像執行第二處理以獲取初始幀圖像的所有的特征點;在獲取到的初始幀圖像的所有的特征點中確定符合預設條件的特征點。
進一步地,確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n包括:通過預設跟蹤算法在第一幀圖像中跟蹤第二幀圖像的特征點,其中,第二幀圖像的特征點在第一幀圖像中未跟蹤成功的特征點的數量為n,未跟蹤成功的特征點為在第二幀圖像中存在但在第一幀圖像中丟失的特征點。
進一步地,第一幀圖像和第二幀圖像為通過圖像跟蹤單元獲取的圖像,在對第一幀圖像執行第一處理直至找到n個新的特征點之前,該方法還包括:獲取圖像跟蹤單元的運動信息;根據圖像跟蹤單元的運動信息估算第一幀圖像相較于第二幀圖像丟失的n個特征點在第一幀圖像中所在的區域X;相應的,對第一幀圖像執行第一處理直至找到n個新的特征點,包括:對第一幀圖像中的區域X執行第一處理直至找到n個新的特征點。
為了實現上述目的,根據本發明的一個方面,提供了一種特征點跟蹤裝置。該裝置應用于具有圖像跟蹤單元的電子設備,電子設備用于基于圖像跟蹤單元執行對目標對象的跟蹤,該裝置包括:第一確定單元,用于確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n,其中,n為大于1的整數,第二幀圖像為第一幀圖像在時間維度上的前一幀圖像;第一執行單元,用于對第一幀圖像執行第一處理直至找到n個新的特征點,其中,第一處理為在圖像中隨機選取像素點并檢測選取的像素點是否為特征點,新的特征點不同于第一幀圖像中未丟失的特征點;組合單元,用于將第一幀圖像中未丟失的特征點和n個新的特征點組合得到第一幀圖像的全部特征點。
進一步地,該裝置還包括:判斷單元,用于在確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n之后,判斷數量n是否超過預設閾值,第二執行單元,用于在判斷數量n是否超過預設閾值之后,如果判斷出數量n超過預設閾值,對第一幀圖像執行第二處理以獲取第一幀圖像的所有的特征點,其中,第二處理為檢測圖像中所有的像素點是否為特征點;在獲取到的第一幀圖像的所有的特征點中確定符合預設條件的特征點,其中,第一執行單元還用于如果判斷出數量n未超過預設閾值,對第一幀圖像執行第一處理。
進一步地,第二執行單元還用于在確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n之前,對初始幀圖像執行第二處理以獲取初始幀圖像的所有的特征點,該裝置還包括:第二確定單元,用于在獲取到的初始幀圖像的所有的特征點中確定符合預設條件的特征點。
進一步地,第一確定單元包括:跟蹤模塊,用于通過預設跟蹤算法在第一幀圖像中跟蹤第二幀圖像的特征點,其中,第二幀圖像的特征點在第一幀圖像中未跟蹤成功的特征點的數量為n,未跟蹤成功的特征點為在第二幀圖像中存在但在第一幀圖像中丟失的特征點。
進一步地,第一幀圖像和第二幀圖像為通過圖像跟蹤單元獲取的圖像,該裝置還包括:獲取單元,用于在對第一幀圖像執行第一處理直至找到n個新的特征點之前,獲取圖像跟蹤單元的運動信息;估算單元,用于根據圖像跟蹤單元的運動信息估算第一幀圖像相較于第二幀圖像丟失的n個特征點在第一幀圖像中所在的區域X;其中,第一執行單元還用于對第一幀圖像中的區域X執行第一處理直至找到n個新的特征點。
本發明通過確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n,其中,n為大于1的整數,第二幀圖像為第一幀圖像在時間維度上的前一幀圖像;對第一幀圖像執行第一處理直至找到n個新的特征點,其中,第一處理為在圖像中隨機選取像素點并檢測選取的像素點是否為特征點,新的特征點不同于第一幀圖像中未丟失的特征點;將第一幀圖像中未丟失的特征點和n個新的特征點組合得到第一幀圖像的全部特征點,解決了相關技術中的特征點跟蹤方法容易導致系統時間開銷過大的問題,進而達到了減小特征點跟蹤方法占用的系統時間開銷的效果。
附圖說明
構成本申請的一部分的附圖用來提供對本發明的進一步理解,本發明的示意性實施例及其說明用于解釋本發明,并不構成對本發明的不當限定。在附圖中:
圖1是根據本發明第一實施例的特征點跟蹤方法的流程圖;
圖2是根據本發明第二實施例的特征點跟蹤方法的流程圖;
圖3是根據本發明第三實施例的特征點跟蹤方法的流程圖;以及
圖4是根據本發明實施例的特征點跟蹤裝置的示意圖。
具體實施方式
需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。下面將參考附圖并結合實施例來詳細說明本發明。
為了使本技術領域的人員更好地理解本申請方案,下面將結合本申請實施例中的附圖,對本申請實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分的實施例,而不是全部的實施例。基于本申請中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都應當屬于本申請保護的范圍。
需要說明的是,本申請的說明書和權利要求書及上述附圖中的術語“第一”、“第二”等是用于區別類似的對象,而不必用于描述特定的順序或先后次序。應該理解這樣使用的數據在適當情況下可以互換,以便這里描述的本申請的實施例。此外,術語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統、產品或設備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或對于這些過程、方法、產品或設備固有的其它步驟或單元。
本發明的實施例提供了一種特征點跟蹤方法。
該方法可以應用于具有圖像跟蹤單元的電子設備,電子設備可以基于圖像跟蹤單元執行對目標對象的跟蹤。例如,電子設備可以是機器人(如地面移動機器人、無人機等),機器人可以通過攝像頭拍攝目標對象,根據拍攝的圖像確定與目標對象之間的距離和方向等信息并根據這些信息跟蹤目標對象。
圖1是根據本發明實施例的特征點跟蹤方法的流程圖。如圖1所示,該方法包括以下步驟:
步驟S101,確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n。
其中,n為大于1的整數。
第一幀圖像和第二幀圖像可以是通過電子設備配置的圖像跟蹤單元拍攝到的圖像,也可以是通過其它圖像采樣裝置采集到的圖像并發送至電子設備。
第二幀圖像為第一幀圖像在時間維度上的前一幀圖像。第一幀圖像和第二幀圖像在時間上可以是相鄰的,第一幀圖像與第二幀圖像之間的時間間隔可以是根據該實施例提供的跟蹤方法確定的時間間隔,第一幀圖像與第二幀圖像之間的時間間隔可以與圖像采樣的時間間隔不同。
例如,圖像采樣的時間間隔為1ms,而該實施例提供的跟蹤方法的時間間隔為5ms,則第二幀圖像為第一幀圖像5ms之后采集得到的圖像。
電子設備在跟蹤目標對象時,可以通過采集到的圖像執行跟蹤,具體地,可以提取每幀圖像中的特征點,將每幀圖像的特征點與上一幀圖像的特征點進行比較,確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n。
步驟S102,對第一幀圖像執行第一處理直至找到n個新的特征點。
在確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n之后,對第一幀圖像執行第一處理直至找到n個新的特征點。
第一處理為在圖像中隨機選取像素點,并檢測選取的像素點是否為特征點。其中,新的特征點不同于第一幀圖像中未丟失的特征點。
需要指出的是,在第一幀圖像中未丟失的特征點在第一幀圖像中所處的像素位置可能與第二幀圖像中相應的特征點所處的像素位置不同,圖像跟蹤單元可以根據未丟失的特征點所處的像素位置的變化確定目標對象移動的方向和距離,并計算和控制電子設備的運動方向和速度以跟蹤目標對象。
步驟S103,將第一幀圖像中未丟失的特征點和n個新的特征點組合得到第一幀圖像的全部特征點。
在對第一幀圖像執行第一處理直至找到n個新的特征點之后,將第一幀圖像中未丟失的特征點和n個新的特征點組合得到第一幀圖像的全部特征點。
該實施例提供的特征點跟蹤方法,通過確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n,其中,n為大于1的整數,第二幀圖像為第一幀圖像在時間維度上的前一幀圖像;對第一幀圖像執行第一處理直至找到n個新的特征點,其中,第一處理為在圖像中隨機選取像素點并檢測選取的像素點是否為特征點,新的特征點不同于第一幀圖像中未丟失的特征點;將第一幀圖像中未丟失的特征點和n個新的特征點組合得到第一幀圖像的全部特征點,解決了相關技術中的特征點跟蹤方法容易導致系統時間開銷過大的問題,進而達到了減小特征點跟蹤方法占用的系統時間開銷的效果。
作為上述實施例的一個優選實施例,在確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n之后,該方法還可以包括:判斷數量n是否超過預設閾值,其中,在判斷數量n是否超過預設閾值之后,該方法還包括:如果判斷出數量n超過預設閾值,對第一幀圖像執行第二處理以獲取第一幀圖像的所有的特征點,其中,第二處理為檢測圖像中所有的像素點是否為特征點;在獲取到的第一幀圖像的所有的特征點中確定符合預設條件的特征點;如果判斷出數量n未超過預設閾值,對第一幀圖像執行第一處理。
也即,在確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n,如果丟失的數量n較小,例如,丟失少于5個特征點時,可以采用第一處理尋找新的特征點。如果丟失的數量n較大,則可以采用遍歷圖像中所有的像素是否為特征點的方式更新所有的特征點。
作為上述實施例的一個優選實施例,在確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n之前,該方法還可以包括:對初始幀圖像執行第二處理以獲取初始幀圖像的所有的特征點;在獲取到的初始幀圖像的所有的特征點中確定符合預設條件的特征點。
也即,在獲取初始幀圖像的特征點時,可以通過對初始幀圖像第二處理的方法獲取所有的特征點,并在獲取到的所有特征點中確定符合預設條件的特征點。
預設條件可以是設置了預設數量,在所有特征點中隨機選擇預設數量的特征點。
預設條件也可以是根據預設算法在得到的所有特征點中選取預設數量的質量較高的特征點作為初始幀圖像的特征點。
具體地,預設算法可以是用于計算特征點的質量的算法,特征點的質量可以與特征點在圖像中所在區域相關,例如,如果特征點出現在中心區域,則認為其質量較高,特征點的質量也可以與未消失的特征點的位置相關,例如,如果特征點與未消失的特征點距離較遠,則認為其質量較高,為了量化特征點的質量,可以通過具體的算法計算質量的“得分”,如可以確定一個質量評價目標函數,根據相關的因素作為因變量得到函數的值作為質量評價的結果以作為判斷質量高低的標準。
可選地,預設條件還可以包括在所有特征點中選取預設數量,例如,在通過預設算法計算特征點的質量評價結果之后,按照質量由高到低進行排序,選取前10個特征點作為新的一批特征點。
確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n可以是通過預設跟蹤算法在第一幀圖像中跟蹤第二幀圖像的特征點,跟蹤丟失的特征點的數量即為特征點丟失數量n。
其中,第二幀圖像的特征點在第一幀圖像中未跟蹤成功的特征點的數量為n,未跟蹤成功的特征點為在第二幀圖像中存在但在第一幀圖像中丟失的特征點。預設跟蹤算法可以是稀疏光流跟蹤方法等。通過預設跟蹤算法未跟蹤成功的特征點的數量為當前幀圖像丟失的特征點數量。
作為上述實施例的一個優選實施例,第一幀圖像和第二幀圖像為通過圖像跟蹤單元獲取的圖像,在對第一幀圖像執行第一處理直至找到n個新的特征點之前,該方法還包括:獲取圖像跟蹤單元的運動信息。
獲取圖像跟蹤單元的運動信息可以是根據第一幀圖像和第二幀圖像中均存在的特征點在圖像中所處像素位置的變化確定圖像跟蹤單元的運動信息,如果圖像跟蹤單元固定在電子設備上,圖像跟蹤單元的運動信息也即電子設備的運動信息,運動信息包括方向和距離。
在獲取圖像跟蹤單元的運動信息之后,根據圖像跟蹤單元的運動信息估算第一幀圖像相較于第二幀圖像丟失的n個特征點在第一幀圖像中所在的區域X,對第一幀圖像執行第一處理直至找到n個新的特征點為在第一幀圖像中的區域X中執行第一處理直至找到n個新的特征點。
通過上述方法可以縮小隨機選取區域的范圍,在隨機選取像素點以判斷是否為新的特征點時可以更快更高效地尋找到n個新的特征點。
圖2是根據本發明第二實施例的特征點跟蹤方法的流程圖。該實施例可以作為上述第一實施例的優選實施方式,如圖2所示,該方法包括以下步驟:
步驟S201,初始化,檢測一定數量FAST特征點。在初始幀圖像中采用FAST算法提取所有特征點,保存一定數量質量較好的特征點用于之后的跟蹤。
在得到新的一幀圖像之后,執行步驟S202,對新的一幀圖像執行稀疏光流跟蹤,得到新的一幀圖像的特征點,新的一幀圖像的特征點較上一幀圖像丟失的特征點數量為n個。稀疏光流跟蹤是一種跟蹤算法,用于在新的一幀圖像中找到上一幀圖像中的特征點在新的一幀圖像中相對應的特征點。在跟蹤得到新的一幀圖像的特征點之后,統計得到跟蹤失敗的特征點的個數確定為n。
步驟S203,判斷n是否小于閾值。如果是,執行步驟S204,如果否,執行步驟S205。
對得到的新的一幀圖像執行步驟S204,步驟S204為隨機取點檢測。如果丟失的特征點少于閾值,則使用隨機取點檢驗的方法在當前幀圖像中提取到足夠數量且質量合格的特征點,其中,隨機取點并檢驗可以是隨機選取一個點并對該點檢測,然后再隨機選取一個點并對該點進行檢測的逐點檢測方法,也可以是先隨機選取多個點,再逐一對選取出的多個點檢測是否為特征點,且該特征點的質量是否合格,將確定合格的特征點加入到特征點序列,以保持每幀圖像中所有特征點的數量保持穩定。在執行步驟S204之后,執行步驟S206。
步驟S205,如果丟失的特征點多于閾值,直接利用FAST算法遍歷當前幀圖像中所有的像素點,提取該幀圖像中所有的特征點。在提取該幀圖像中所有的特征點之后,可以將提取得到的特征點中未與當前已有特征點重復的點補充到當前特征點序列,使特征點序列中的點保持在一定的數量;或者,在提取該幀圖像中所有的特征點之后,可以對提取得到的特征點進行質量評價,設每幀圖像需要N個特征點,則在提取得到的特征點中選取質量排在前N的特征點。
在執行步驟S204之后,執行步驟S206,步驟S206為補充一定數量的特征點。將當前幀圖像的特征點數量補齊。
在執行步驟S206之后,對得到的更新的一幀圖像執行步驟S202,如此循環。
該實施例提供的特征點跟蹤方法可以明顯的縮短補充FAST特征點時所需要的時間,保證算法的實時性,在有少數FAST特征點從視野中消失時,通過在當前幀圖像中隨機取像素點并檢驗其是否是特征點的方法,將新找到的特征點加入當前幀圖像的特征點序列中,避免了對整幅圖像的數十萬個像素點遍歷檢測。由于消失的特征點較少時通常只需要抽取千點即可完成特征點的補充,因此,該方法較明顯的降低了時間開支。
圖3是根據本發明第三實施例的特征點跟蹤方法的流程圖。該實施例可以作為上述第一實施例的優選實施方式,如圖3所示,該方法包括以下步驟:
步驟S301,初始化,檢測一定數量FAST特征點。在初始幀圖像中采用FAST算法提取所有特征點,保存一定數量質量較好的特征點用于之后的跟蹤。
在得到新的一幀圖像之后,執行步驟S302,對新的一幀圖像執行稀疏光流跟蹤,得到新的一幀圖像的特征點,新的一幀圖像的特征點較上一幀圖像丟失的特征點數量為n個。稀疏光流跟蹤是一種跟蹤算法,用于在新的一幀圖像中找到上一幀圖像中的特征點在新的一幀圖像中相對應的特征點。在跟蹤得到新的一幀圖像的特征點之后,統計得到跟蹤失敗的特征點的個數確定為n。
步驟S303,判斷n是否小于閾值。如果是,執行步驟S304,如果否,執行步驟S305。
對得到的新的一幀圖像執行步驟S304,步驟S304為在X區域隨機取點檢測。
其中,在對得到的新的一幀圖像執行步驟S304之前,先執行步驟S307以確定X區域。
步驟S307為確定相機運動信息。相機是電子設備配置的相機,用于拍攝圖像。具體地,在計算相機運動信息時,可以采用VIO(Visual Inertial Odometry視覺慣導測距)算法,VIO算法是一種通過分析機器人攝像頭和內部慣性傳感器來決定機器人位置以及方向的算法。
在確定前后兩幀圖像之間相機的運動信息之后,根據相機的相對運動信息判定相機拍攝范圍中新出現的區域在當前幀圖像中的區域。例如,如果在兩幀圖像之間,相機左轉,則原有的在視野右側邊緣的特征點會從視野中消失,視野左側會出現新的區域,令新出現的區域為X區域,在X區域隨機取點檢測。
如果丟失的特征點少于閾值,則在X區域使用隨機取點檢驗的方法在當前幀圖像中提取到足夠數量且質量合格的特征點。在執行步驟S304之后,執行步驟S306。
步驟S305,如果丟失的特征點多于閾值,直接利用FAST算法遍歷當前幀圖像中所有的像素點,提取該幀圖像中所有的特征點。在提取該幀圖像中所有的特征點之后,可以將提取得到的特征點中未與當前已有特征點重復的點補充到當前特征點序列,使特征點序列中的點保持在一定的數量;或者,在提取該幀圖像中所有的特征點之后,可以對提取得到的特征點進行質量評價,設每幀圖像需要N個特征點,則在提取得到的特征點中選取質量排在前N的特征點。
在執行步驟S304之后,執行步驟S306,步驟S306為補充一定數量的特征點。將當前幀圖像的特征點數量補齊。
在執行步驟S306之后,對得到的更新的一幀圖像執行步驟S302,如此循環。
該實施例提供的方法根據在稀疏光流跟蹤過程中丟失的特征點的數量是否超過閾值的判斷結果的不同執行不同的處理方式,當丟失的特征點較少時,通過隨機取點并檢驗的方法補充特征點,由于丟失的點很少,該過程可以很快完成;當丟失的特征點很多時,則可以保持原算法中直接檢測所有特征點的方法。
在已知機器人的運動信息時,可以預測出視野中新出現的部分是在當前幀的哪個區域,則在之后的隨機取點過程就可以在新出現的區域中較多的取點,根據攝像頭的轉動方向和角度,預判圖像中的新出現的區域并在新出現的區域內取點檢測,這樣有更大的概率取到合適的特征點,同時也可以使特征點較均勻的分布在整個視野中。
機器人運動過程中視野的變化是比較平緩的,大部分時候,丟失的特征點數量都比較少,則該方法中隨機取點檢測的補充方法可以很快完成。由于將原始方法中遍歷圖像尋找所有特征點的過程幾乎完全避免,該方法明顯降低了時間耗費,保證了系統的實時性。
需要說明的是,上述的特征點跟蹤方法中采用的特征點提取方法不局限于上述實施例所述的FAST特征點提取方法,上述的特征點跟蹤方法中采用的跟蹤算法不局限于上述實施例所述稀疏光流跟蹤算法。
需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機可執行指令的計算機系統中執行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執行所示出或描述的步驟。
本發明的實施例還提供了一種特征點跟蹤裝置。需要說明的是,本發明實施例的特征點跟蹤裝置可以用于執行本發明的特征點跟蹤方法。
圖4是根據本發明實施例的特征點跟蹤裝置的示意圖。該裝置可以應用于具有圖像跟蹤單元的電子設備,電子設備用于基于圖像跟蹤單元執行對目標對象的跟蹤。
如圖4所示,該裝置包括第一確定單元10,用于確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n,其中,n為大于1的整數,第二幀圖像為第一幀圖像在時間維度上的前一幀圖像;第一執行單元20,用于對第一幀圖像執行第一處理直至找到n個新的特征點,其中,第一處理為在圖像中隨機選取像素點并檢測選取的像素點是否為特征點,新的特征點不同于第一幀圖像中未丟失的特征點;組合單元30,用于將第一幀圖像中未丟失的特征點和n個新的特征點組合得到第一幀圖像的全部特征點。
優選地,該裝置還可以包括:判斷單元,用于在確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n之后,判斷數量n是否超過預設閾值,第二執行單元,用于在判斷數量n是否超過預設閾值之后,如果判斷出數量n超過預設閾值,對第一幀圖像執行第二處理以獲取第一幀圖像的所有的特征點,其中,第二處理為檢測圖像中所有的像素點是否為特征點;在獲取到的第一幀圖像的所有的特征點中確定符合預設條件的特征點,其中,第一執行單元還用于如果判斷出數量n未超過預設閾值,對第一幀圖像執行第一處理。
優選地,第二執行單元還可以用于在確定第一幀圖像的特征點相較于第二幀圖像的特征點丟失數量n之前,對初始幀圖像執行第二處理以獲取初始幀圖像的所有的特征點,該裝置還可以包括:第二確定單元,用于在獲取到的初始幀圖像的所有的特征點中確定符合預設條件的特征點。
優選地,第一確定單元可以包括:跟蹤模塊,用于通過預設跟蹤算法在第一幀圖像中跟蹤第二幀圖像的特征點,其中,第二幀圖像的特征點在第一幀圖像中未跟蹤成功的特征點的數量為n,未跟蹤成功的特征點為在第二幀圖像中存在但在第一幀圖像中丟失的特征點。
優選地,第一幀圖像和第二幀圖像為通過圖像跟蹤單元獲取的圖像,該裝置還可以包括:獲取單元,用于在對第一幀圖像執行第一處理直至找到n個新的特征點之前,獲取圖像跟蹤單元的運動信息;估算單元,用于根據圖像跟蹤單元的運動信息估算第一幀圖像相較于第二幀圖像丟失的n個特征點在第一幀圖像中所在的區域X;其中,第一執行單元還用于對第一幀圖像中的區域X執行第一處理直至找到n個新的特征點。
顯然,本領域的技術人員應該明白,上述的本發明的各模塊或各步驟可以用通用的計算裝置來實現,它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網絡上,可選地,它們可以用計算裝置可執行的程序代碼來實現,從而,可以將它們存儲在存儲裝置中由計算裝置來執行,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現。這樣,本發明不限制于任何特定的硬件和軟件結合。
以上所述僅為本發明的優選實施例而已,并不用于限制本發明,對于本領域的技術人員來說,本發明可以有各種更改和變化。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。