專利名稱:基于場景驅動的智能手機圖像特征點選取方法
技術領域:
本發明屬于圖像處理技術鄰域,特別涉及圖像特征點的提取方法,具體講的是一種基于場景驅動的智能手機圖像特征點快速選取方法,可應用于特征匹配,目標跟蹤,物體識別,運動目標的檢測和跟蹤,增強現實開發等領域。
背景技術:
圖像的特征點提取是圖像處理的基本問題,精確高效的特征點提取算法為其他問題的解決提供堅實的底層基礎。特征點也被稱為興趣點,角點,顯著點等等,Harris基于Moravec對興趣點的描述,利用亮度函數的自相關矩陣即二階矩矩陣,實現了對特征點的檢測。Mikolajczyk 和Schmid利用Laplace算子檢測Harris角點的尺度,構建了一種具有尺度不變性的 Harris-Laplace算子,并將Harris-Laplace算子擴展為具有仿射不變性的Harris-aff ine 算子。Lindeberg利用Laplacian算子將圖像中的斑點作為興趣點,并通過確定每一個斑點的特征尺度和形狀使興趣點具有尺度不變性和仿射不變性。Lowe利用DoG算子代替Laplacian算子從而提高了興趣點檢測的速度。還有一些算法計算圖像亮度函數的高斯曲率,將曲率較大的點定位為特征點。除基于亮度的特征點算法外,還有一類算法根據 Haralick對特征點的定義,在圖像中度量每一點的顯著性,從中篩選出一些明顯有別于其他點的特殊點作為特征點,這類點也被稱為顯著點。目前,基于特征點的提取的一類方法仍然是圖像處理、計算機視覺領域的研究熱點,而且隨著我國3G網絡的逐步開通和移動通信事業的飛速發展,龐大的智能手機用戶群也在逐年增加,圖像處理與分析在智能手機上的應用也逐漸占有越來越重要的地位。特征提取作為圖像處理中的一個基本且非常關鍵的模塊,應用到目標識別、增強現實等很多領域,在智能手機的開發應用中是必不可少的環節。雖然現在的智能手機硬件配置一直在更新,但處理能力還是很有限,對一些圖形圖像需要進行復雜處理的時候很難達到實時的要求,而且在大部分特征檢測算法中,并沒有針對圖像的背景信息自適應的調整算法所需的特征點數量,往往對于一幅背景較復雜的圖像提取的特征點偏多,為下一步的圖像處理比如特征描述或者圖像匹配造成冗余計算量;而對于背景比較簡單的圖像提取的特征點偏少,不能找到足夠魯棒性的特征點,給下一步圖像進行精確的描述和匹配造成困難。如何能夠有效利用資源,使得算法能以較少的CPU 和內存資源來達到相同的效果,是目前手機平臺的算法開發上急需解決的問題。
發明內容
本發明的目的在于針對上述技術的不足,提出一種基于場景驅動的智能手機圖像特征點選取方法,以提高圖像處理速度,并使提取的特征點總體上更加穩定和魯棒。為實現上述目的,本發明包括如下步驟I、一種基于場景驅動的智能手機圖像特征點選取方法,包括如下步驟
(I)從手機攝像頭獲得移動場景的視頻幀;(2)對視頻幀的第一幀圖像進行灰度化處理并利用快速特征檢測算法FAST進行特征點檢測,得到第一幀圖像所有的特征點位置和總的特征點數目M1 ;(3)計算第一幀圖像的綜合紋理特征值Z,定義視頻幀圖像的復雜度分為“復雜”、 “一般”、“簡單”三個標準,設定復雜度閾值為6.0 ;若綜合紋理特征值Z > 6.0,則將視頻幀圖像的復雜度判為“復雜”,若4. O < Z ^ 6. 0,則將視頻幀圖像的復雜度判為“一般”,若 Z ^ 4. O,則將視頻幀圖像的復雜度判為“簡單”;(4)由步驟(3)得到的復雜度計算出第一幀圖像輸出特征點的數目Ntl :若復雜度為“復雜”時,N。= MfO. 9,若復雜度為“一般”時,N。= MfO. 8,若復雜度為“簡單”時,N。= M15^O. 7 ;(5)從M1個特征點中隨機選取Ntl個特征點,并利用加速的魯棒特征算法SURF對所選的Ntl個特征點進行描述,計算出第一幀中每一個特征點的描述矢量;(6)讀取視頻幀的第二幀圖像,進行灰度化處理并利用快速特征檢測算法FAST, 得到第二幀所有特征點的位置和總的特征點數目M2 ;(7)利用加速的魯棒特征算法SURF對步驟(6)中得到的特征點進行描述,得出第二幀中每一個特征點的描述矢量;(8)利用加速的魯棒特征算法SURF對第一幀和第二幀中的特征點進行匹配,得到特征點匹配成功的個數Ns;(9)根據特征點匹配的個數凡和步驟(4)得到的第一幀特征點個數Ntl的關系得到第二幀輸出的特征點個數如果NsZXS O. 75,則第二幀輸出Ns個特征點;如果 Ns/N0 < O. 75,則第二幀除了輸出Ns個特征點外,還要從(M2-Ns)個特征點中隨機選取 (O. 75*N0-NS)個特征點;(10)重復步驟(2)到步驟(9),直到視頻幀讀取結束。本發明與現有技術相比,具有以下優點I)本發明由于通過分析圖像場景信息來判斷圖像場景的復雜度,自適應調整特征點的輸出,因而不論在復雜或者簡單的場景中,都可以輸出穩定質量和數量的特征點;2)本發明通過利用特征點檢測與特征點匹配的結果來確定每一幀特征點輸出數目,從而降低后端系統中特征點檢測與特征點匹配的運算量,縮短計算時間;3)本發明在特征點跟蹤性能下降時,即特征點匹配成功的個數達不到最低閾值時,通過自適應增加新的特征點使特征點數目達到最低閾值,保證系統的魯棒性。
圖I為本發明的實現流程圖;圖2為用本發明與現有快速特征檢測算法FAST方法進行特征點檢測的結果圖。
具體實施例方式以下參照附圖對本發明進行詳細描述參照圖1,本發明基于場景驅動的智能手機圖像特征點選取方法,包括以下步驟步驟1,初始化系統環境,從手機攝像頭獲得移動場景視頻幀;初始化系統環境包括啟動手機攝像頭,并為視頻巾貞申請內存存儲全間,通過啟動的攝像頭取得移動場景視頻 中貞,并保存在手機內存中。步驟2,從手機內存中讀取視頻幀的第一幀圖像,取視頻幀第一幀圖像上的一點 (x,y),對該點(x,y)進行灰度化,得到將灰度化后的值4(x,y)Gr (x, y) =0.11R (x, y) +0. 59G (x, y) +0. 3B (x, y),其中R(x,y)為點(x, y)的紅色分量值,G(x, y)為點(x, y)的綠色分量值,B(x, y)為點(x,y)的藍色分量值;讓點(x,y)遍歷第一幀圖像上每一點,得到第一幀圖像的灰度化圖像。步驟3,利用快速特征檢測算法FAST對得到的第一幀圖像的灰度化圖像進行特征 點檢測,從而得到第一幀圖像中所有的特征點位置和總的特征點數目A,其中快速特征檢 測算法 FAST 參見(Machine learning for high-speed corner detection,E Rosten and T. Drummond, ECCV 2006)。步驟4,計算第一幀圖像的綜合紋理特征值Z,定義視頻幀圖像的復雜度分為“復 雜”、“一般”、“簡單”三個標準,設定復雜度閾值為6. 0 ;若綜合紋理特征值Z > 6. 0,則將視 頻幀圖像的復雜度判為“復雜”,若4.0 < Z ( 6.0,則將視頻幀圖像的復雜度判為“一般”, 若Z < 4. 0,則將視頻幀圖像的復雜度判為“簡單”,完成對第一幀圖像的場景分析。步驟5,計算第一幀圖像的綜合紋理特征值Z 5a)取第一幀圖像上的一點(X,y),將其灰度值記為gl,取偏離該點的另一點 (計八乂^+八“卜卜^彳^將其灰度值記為g2,并把這兩點的灰度值記為符號[gl,g2];5b)讓點(x, y)遍歷第一巾貞圖像,若第一巾貞圖像的灰度值級數為N,得到N*N個灰 度值符號[gl,g2];5c)統計每一個灰度值符號[gl,g2]出現的次數,排列生成N*N階矩陣P,該矩陣 P的第i行第j列元素值P(i,j)等于[i,j]出現的次數;5d)對矩陣P中的每一個元素進行如下歸一化處理
權利要求
1.一種基于場景驅動的智能手機圖像特征點選取方法,包括如下步驟(1)從手機攝像頭獲得移動場景的視頻幀;(2)對視頻幀的第一幀圖像進行灰度化處理并利用快速特征檢測算法FAST進行特征點檢測,得到第一幀圖像所有的特征點位置和總的特征點數目M1 ;(3)計算第一幀圖像的綜合紋理特征值Z,定義視頻幀圖像的復雜度分為“復雜”、“一般”、“簡單”三個標準,設定復雜度閾值為6. O ;若綜合紋理特征值Z > 6. 0,則將視頻幀圖像的復雜度判為“復雜”,若4. 0<Z^6. 0,則將視頻幀圖像的復雜度判為“一般”,若Z <4. O, 則將視頻幀圖像的復雜度判為“簡單”;(4)由步驟(3)得到的復雜度計算出第一幀圖像輸出特征點的數目Ntl:若復雜度為“復雜,,時,N0 = M1^O. 9,若復雜度為“一般”時,N。= M1^O. 8,若復雜度為“簡單”時,N。= M1^O. 7 ;(5)從M1個特征點中隨機選取Ntl個特征點,并利用加速的魯棒特征算法SURF對所選的Ntl個特征點進行描述,計算出第一幀中每一個特征點的描述矢量;(6)讀取視頻幀的第二幀圖像,進行灰度化處理并利用快速特征檢測算法FAST,得到第二幀所有特征點的位置和總的特征點數目M2 ;(7)利用加速的魯棒特征算法SURF對步驟¢)中得到的特征點進行描述,得出第二幀中每一個特征點的描述矢量;(8)利用加速的魯棒特征算法SURF對第一幀和第二幀中的特征點進行匹配,得到特征點匹配成功的個數Ns;(9)根據特征點匹配的個數Ns和步驟(4)得到的第一幀特征點個數Ntl的關系得到第二幀輸出的特征點個數如果Ns/Nq ^O. 75,則第二幀輸出Ns個特征點;如果Ns/Nq <0. 75, 則第二幀除了輸出Ns個特征點外,還要從(M2-Ns)個特征點中隨機選取(O. 75*N0-NS)個特征點;(10)重復步驟(2)到步驟(9),直到視頻幀讀取結束。
2.根據權利要求I所述的基于場景驅動的智能手機圖像特征點選取方法,其步驟(3) 所述的計算第一幀圖像的綜合紋理特征值Z,按如下步驟進行(3a)取第一巾貞圖像上的一點(χ, y),灰度值記為gl,取偏離該點的另一點(χ+Δχ, y+Δγ) I Λχ = 1,Λ =。,灰度值記為g2,把這兩點的灰度值記為符號[gl,g2];(3b)讓點(x,y)遍歷第一幀圖像,若第一幀圖像的灰度值級數為N,得到N*N個[gl,g2];(3c)統計每一個[gl,g2]出現的次數,排列生成N*N階矩陣P,該矩陣P的第i行第j 列元素值P(i,j)等于[i,j]出現的次數;(3d)對矩陣P中的每一個元素進行如下歸一化處理
3.根據權利要求I所述的基于場景驅動的智能手機圖像特征點選取方法,其步驟(8) 所述的利用加速的魯棒特征算法SURF對第一幀和第二幀中的特征點進行匹配,得到特征點匹配成功的個數Ns,按如下步驟進行(8a)設第一巾貞中特征點描述矢量表不為{nQ, Ii1, n2, ···, n63},第二巾貞中特征點描述矢量表不為In' 0, n' j, n' 2,···,n' 63},取第一巾貞第一個特征點的描述矢量和第二巾貞每一個特征點的描述矢量進行計算,得到第一幀中第一個描述矢量和第二幀中M2個描述矢量之間的距離C0R。,COR1, COR2,…,CORM2-Pgp .63CORk = ^Cni-n;)2,ke [O,M2),其中=M2為第二幀總的特征點個數;(8b)將仏個距離值CORtl,COR1,COR2,…,C0RM2-;l按照從小到大排序,把排序后的第一個值記為C0R_F,排序后的第二個值記為C0R_S ;(8c)根據C0R_F和C0R_S來判斷第一幀第一個特征點在第二幀中是否有匹配的特征點把特征點匹配成功的個數記為K 1;如果C0R_F/C0R_S < O. 65,即在第二幀中有與第一幀第一個特征點匹配的特征點,則Ki = I ;如果C0R_F/C0R_S彡O. 65,即在第二幀中沒有與第一幀第一個特征點匹配的特征點,則N' 1 = 0;(Sd)取第一幀中第二個特征點的描述矢量,重復步驟(8a)到(Sc),直到遍歷完第一幀中所有特征點的描述矢量為止,得到特征點匹配成功的總個數Ns為Ns = Ni + M + + N“。;其中=Ntl為第一幀總的特征點個數。
全文摘要
本發明專利公開了一種基于場景驅動的智能手機圖像特征點選取方法。主要解決現有技術中沒有根據場景復雜度信息來合理輸出特征點數目的問題。其實現步驟是對手機攝像頭采集的視頻幀進行特征點檢測;對每一幀檢測到的特征點生成描述矢量,并利用描述矢量進行特征點匹配;分析特征點匹配結果,在特征能夠進行正常匹配和不能進行正常匹配的兩種情況下,自適應的調整每一幀圖像輸出的特征點數目,從而實現在復雜或簡單場景下都能輸出具有穩定質量和數量的特征點。本發明具有運算量小,可根據場景復雜度自適應的輸出穩定質量和數量的特征點數目的優點,為建立快速的智能手機特征跟蹤系統奠定了重要基礎。
文檔編號G06K9/46GK102592129SQ20121000861
公開日2012年7月18日 申請日期2012年1月2日 優先權日2012年1月2日
發明者劉敏博, 盧朝陽, 孔祥, 李靜 申請人:西安電子科技大學