本發明涉及計算機視覺技術領域,具體地,涉及一種針對圖像序列的運動目標提取方法及裝置。
背景技術:
在計算機視覺領域,對圖像序列中的特定運動目標進行目標提取和目標跟蹤是類似的兩種應用,其區別在于,目標提取是從已有的圖像序列中,提取出目標在每幀中的位置和大小;而目標跟蹤則是在每次新的一幀圖像到來時,根據已有的圖像序列,找到已知目標在新到的圖像中的位置和大小,例如導彈制導。
在技術上,目標提取過程一般假設每一幀圖像都是已知的,可以全部用來做搜尋匹配,常用的搜尋方法有動態規劃算法,但該算法效率較低;目標跟蹤一般對最新的多幀圖像中的已知目標建模,預測目標的位置和大小變化,并盡可能在新到的一幀圖像中找到已知目標,在找到目標后更新模型,并做出新的預測,常用的預測和模型更新方法有粒子濾波算法,該算法的效率也比較低。
另外,對于目標提取和目標跟蹤,現有技術中還有針對多類運動目標的提取和跟蹤方法,比如運用組件分析法進行多類目標匹配,確定出所述各運動目標的屬性,實現對各運動目標的識別,并進行時間上的關聯,以實現對該類運動目標的跟蹤。再比如,從視頻數據中提取每個運動目標的運動軌跡信息,在各個層次上為多運動目標動作行為的運動模式建模,利用分類器實現視頻中多運動目標動作行為的識別。但是,采用這些方法進行圖像序列中特定運動目標的分類提取時,均存在效率較低的缺點。
技術實現要素:
本發明的目的是提供一種針對圖像序列的運動目標提取方法及裝置,用于解決現有圖像序列中特定運動目標的分類提取方案效率較低的問題。
為了實現上述目的,本發明提供一種針對圖像序列的運動目標提取方法,該運動目標提取方法包括:建立各種運動目標的隱馬爾科夫模型;采用隱馬爾科夫模型對待提取運動目標的圖像序列進行檢測,輸出各種運動目標對應的隱馬爾科夫模型在各幀圖像中檢測得到的各個包圍框的屬性信息集合;以及結合前向概率傳播算法與反向回溯算法從所述屬性信息集合中搜尋出待提取的運動目標的集合。
優選地,所述輸出各種運動目標對應的隱馬爾科夫模型在各幀圖像中檢測得到的各個包圍框的屬性信息集合,包括:對于每一幀圖像的任意一個包圍框,若該包圍框的圖像特征為任意種類的運動目標的任意狀態的概率大于第一設定閾值,則輸出該包圍框的屬性信息集合。
優選地,所述屬性信息包括包圍框的橫坐標、縱坐標、寬度、高度以及該包圍框為任意種類的運動目標的任意狀態的概率。
優選地,所述結合前向概率傳播算法與反向回溯算法從所述屬性信息集合中搜尋出待提取的運動目標的集合,包括:對每一種運動目標,結合所述屬性信息集合,采用前向概率傳播算法計算以各幀圖像的每一個包圍框結尾的圖像序列為該種運動目標的最優概率;以及結合所述最優概率,采用反向回溯算法從所述屬性信息集合中搜尋出待提取的運動目標的集合。
優選地,所述采用前向概率傳播算法計算以各幀圖像的每一個包圍框結尾的圖像序列為該種運動目標的最優概率,包括:對于第t幀圖像的第vt個包圍框,計算該包圍框的前一個包圍框vt-1與該第vt個包圍框為同一運動目標,并且第t幀圖像的第vt個包圍框為狀態i的概率e(vt-1,i);從計算出的所有概率e(vt-1,i)中選取最大值e',且將e'對應的vt-1和i分別設為v't-1和i';若(w(k,t,vt)+e')/(l(k,t,vt)+1)>z',其中w(k,t,vt)表示對于第k種運動目標,以第t幀的第vt個包圍框結尾的圖像序列是該第k種運動目標的概率,l(k,t,vt)表示以第t幀的第vt個包圍框結尾的圖像序列的幀數,z'為第二設定閾值,則按以下公式進行遞歸運算:q(k,t,vt)=v't-1,l(k,t,vt)=l(k,t,v't-1)+1,w(k,t,vt)=w(k,t,vt)+e';其中,q(k,t,vt)表示與第t幀的第vt個包圍框連接的第t-1幀的包圍框序號;以及最終計算出的w(k,t,vt)作為對于第k種運動目標,以第t幀的第vt個包圍框結尾的圖像序列是該第k種運動目標的最優概率。
優選地,采用以下公式計算概率e(vt-1,i):e(vt-1,i)=pk(a(t,vt)|i)+αt(s(k,t,vt-1),i)+βc(t,vt,t-1,vt-1);其中,i表示第i個狀態,且i=1,…,n,n為狀態種類的總數;c(t,vt,t-1,vt-1)是第t幀的第vt個包圍框和第t-1幀的第vt-1個包圍框重疊區域的大小占第t幀第vt個包圍框大小的比例,其通過所述屬性信息集合中t和vt所對應的屬性信息計算得到;t(s(k,t,vt-1),i)為第s(k,t,vt-1)個狀態跳轉到第i個狀態的狀態轉移概率,s(k,t,vt-1)表示第t幀的第vt-1個包圍框對應的狀態的序號;α和β分別為狀態轉移概率和重疊區域比例的權值。
優選地,所述采用反向回溯算法從所述屬性信息集合中搜尋出待提取的運動目標的集合,包括:根據所述前向概率傳播算法的計算結果,獲得以第t幀的第vt個包圍框結尾的圖像序列是第k種運動目標的最大概率w',并設w'對應的k為k';設r為需要尋找的以第t幀的第vt個包圍框結尾的圖像序列,將所述屬性信息集合中k'對應的屬性信息加入r中;找出與第t幀的第vt個包圍框連接的第t-1幀的包圍框序號,記為v~t-1,將所述屬性信息集合中k'與v~t-1對應的屬性信息加入r中,重復這一操作,直到與第t幀的第vt個包圍框連接的第t-1幀的包圍框序號為0;以及將最終獲得的r和k'組成待提取的運動目標的集合{r,k'},其中r表征了運動目標所在的位置和大小,k'表征了運動目標的類型。
本發明的技術方案還提供了一種針對圖像序列的運動目標提取裝置,該運動目標提取裝置包括:模型訓練模塊,用于建立各種運動目標的隱馬爾科夫模型;目標檢測模塊,用于采用隱馬爾科夫模型對待提取運動目標的圖像序列進行檢測,輸出各種運動目標對應的隱馬爾科夫模型在各幀圖像中檢測得到的各個包圍框的屬性信息集合;以及目標提取模塊,用于結合前向概率傳播算法與反向回溯算法從所述屬性信息集合中搜尋出待提取的運動目標的集合。
優選地,所述目標檢測模塊包括:序列檢測子模塊,用于采用隱馬爾科夫模型對待提取運動目標的圖像序列進行檢測;以及選擇輸出子模塊,用于對每一幀圖像的任意一個包圍框,若該包圍框的圖像特征為任意種類的運動目標的任意狀態的概率大于第一設定閾值,則輸出該包圍框的屬性信息集合。
優選地,所述目標提取模塊包括:前向計算子模塊,用于對每一種運動目標,結合所述屬性信息集合,采用前向概率傳播算法計算以各幀圖像的每一個包圍框結尾的圖像序列為該種運動目標的最優概率;以及反向計算子模塊,用于結合所述最優概率,采用反向回溯算法從所述屬性信息集合中搜尋出待提取的運動目標的集合。
通過上述技術方案,本發明的有益效果是:本發明采用隱馬爾科夫模型建模運動目標,準確地表征了目標在不同姿態下的表象,能夠處理復雜變化的目標。結合前向概率傳播和反向回溯的方法,在圖像序列中檢測得到的包圍框集合中搜尋最優子序列,實現了運動目標的快速準確提取。通過表象特征和運動特征快速檢測到可能的運動目標之后,再融入序列特征,由粗到精逐步細化,提高了目標提取的效率。
本發明的其它特征和優點將在隨后的具體實施方式部分予以詳細說明。
附圖說明
附圖是用來提供對本發明的進一步理解,并且構成說明書的一部分,與下面的具體實施方式一起用于解釋本發明,但并不構成對本發明的限制。在附圖中:
圖1是本發明的第一實施例中的運動目標提取方法的流程示意圖。
圖2是本發明的第二實施例中的運動目標提取裝置的結構示意圖。
附圖標記說明
1模型訓練模塊2目標檢測模塊
3目標提取模塊21序列檢測子模塊
22選擇輸出子模塊31前向計算子模塊
32反向計算子模塊
具體實施方式
以下結合附圖對本發明的具體實施方式進行詳細說明。應當理解的是,此處所描述的具體實施方式僅用于說明和解釋本發明,并不用于限制本發明。
本發明針對現有圖像序列中特定運動目標的分類提取方案效率較低的問題,提出了利用隱馬爾科夫模型(hiddenmarkovmodel,hmm)進行目標提取的方案。hmm的經典用法是在對被框出目標的一系列運動建模后用于識別,比如投籃,建模時需要事先框出訓練數據中每一幀的投手的位置,識別時也是需要事先知道測試數據每一幀的投手的位置,然后hmm能給出這是一段投籃序列的概率。相對于該經典用法,本發明則主要強調的目標序列的提取,將hmm拆解,借助了hmm在每一幀每一個框的概率和回溯等方法,細節將在下文介紹。
本發明所要實現的運動目標提取是指從多段有特定運動目標,并且用矩形包圍框在每幀圖像中選取出運動目標的圖像序列。對此,本發明的第一實施例提供了一種運動目標提取方法,如圖1所示,該運動目標提取方法包括:
步驟s1,建立各種運動目標的隱馬爾科夫模型;
步驟s2,采用隱馬爾科夫模型對待提取運動目標的圖像序列進行檢測,輸出各種運動目標對應的隱馬爾科夫模型在各幀圖像中檢測得到的各個包圍框的屬性信息集合;以及
步驟s3,結合前向概率傳播算法與反向回溯算法從所述屬性信息集合中搜尋出待提取的運動目標的集合。
上述步驟s1-s3分別實現模型建立、目標檢測和目標提取,下面詳細介紹這三個部分的具體實施過程。
一、模型建立
首先,提取每幀圖像中包圍框內的圖像特征,本實施例優選提取計算機視覺應用中常用的hog+hof組合特征。hog+hof是hog特征向量和hof特征向量的直接連接,hog(histogramsofgradients)為梯度直方圖,表征圖像中局部區域的梯度分布;hof(histogramsofopticalflow)為光流直方圖,表征圖像中局部區域的光流分布。
然后,對于每一種運動目標,利用訓練數據中該運動目標對應的各段圖像序列(下文中也稱圖像序列簡稱為序列)的圖像特征,訓練一個ns(k)種狀態的hmm(hiddenmarkovmodel,即隱馬爾科夫模型),得到狀態轉移概率和發射概率。將第k種運動目標對應的狀態轉移概率記為tk,發射概率記為pk。設運動目標的種類數為na,則k=1,…,na。狀態數ns(k)由運動目標變化的復雜程度而定,每種狀態對應于運動目標的一個姿態。狀態轉移概率tk(i,j)表示第k種運動目標從第i個狀態跳轉到第j個狀態的概率,發射概率pk(q|i)表示第k種運動目標第i個狀態呈現的圖像特征為q的概率。
二、目標檢測
首先,使用滑動窗口方法,在每一幀圖像中產生不同位置和大小的包圍框,提取每個包圍框內的圖像特征。對于任意的一個包圍框,設其圖像特征為a,通過隱馬爾科夫模型訓練模塊中的發射概率,計算得到該圖像特征相對于每種運動的每種狀態的概率pk(a|i),k=1,…,na,i=1…ns(k)。設屬性信息集合b包含各種運動目標對應的隱馬爾科夫模型在各幀圖像中檢測得到的各個包圍框的位置、大小和概率等屬性信息,則本實施例在采用隱馬爾科夫模型對待提取運動目標的圖像序列進行檢測后,優選為將圖像特征a為某種運動k的某種狀態i的概率pk(a|i)大于第一設定閾值z的包圍框的屬性保存于集合b中,其中第t幀第vt個包圍框的屬性記為:
b(k,t,vt)=(x(k,t,vt),y(k,t,vt),w(k,t,vt),h(k,t,vt),p1(a(t,vt)|1),…,pna(a(t,vt)|ns(na))(1)
其中,t=1,…,nf,v=1,…,nb(t),a(t,vt)是第t幀第vt個包圍框內的圖像特征,式(1)右邊的x、y、w、h、p等各項分別表示通過第k個運動目標的隱馬爾科夫模型在第t幀檢測到的第vt個包圍框的橫坐標、縱坐標、寬度、高度、該包圍框為第1種運動第1個狀態的概率……該包圍框為第na種運動第ns(na)個狀態的概率,nb(t)表示第t幀中為某種運動的某種狀態的概率大于第一設定閾值z的包圍框個數。其中,vt的順序可任意指定,z為單個包圍框可被認為是運動目標的概率的最小值,z的取值是經驗值,可優選為收集的多個p值的平均值。
三、目標提取
對于第k種運動目標,設w(k,t,vt)表示以第t幀的第vt個包圍框結尾的序列是該第k種運動目標的概率,l(k,t,vt)表示以第t幀的第vt個包圍框結尾的序列幀數,q(k,t,vt)表示與第t幀的第vt個包圍框連接的第t-1幀的包圍框序號,s(k,t,vt)表示第t幀的第vt個包圍框對應的狀態序號,第二設定閾值z'表示一個包圍框序列可被認為是運動目標的每幀平均概率的最小值,優選為第一設定閾值z的1.5倍,r表示最終提取的運動目標集合。
步驟1,對每一種運動目標,結合所述屬性信息集合,采用前向概率傳播算法計算以各幀圖像的每一個包圍框結尾的圖像序列為該種運動目標的最優概率。
對于t=1…nf,vt=1…nb(t),k=1…na,執行步驟1.1-1.4
步驟1.1、如果t=1,跳過步驟1.1-1.3,執行步驟1.4;否則,對于vt-1=1…nb(t-1),計算該包圍框與第t幀第vt個包圍框為同一運動目標,并且采用下式計算第t幀第vt個包圍框為狀態i的概率e(vt-1,i)。
e(vt-1,i)=pk(a(t,vt)|i)+αt(s(k,t,vt-1),i)+βc(t,vt,t-1,vt-1)(2)
其中,i表示第i個狀態,且i=1,…,ns(k),ns(k)為第k種運動對應的狀態數;c(t,vt,t-1,vt-1)是第t幀的第vt個包圍框和第t-1幀的第vt-1個包圍框重疊區域的大小占第t幀第vt個包圍框大小的比例,其通過所述屬性信息集合中t和vt所對應的屬性信息計算得到;t(s(k,t,vt-1),i)為第s(k,t,vt-1)個狀態跳轉到第i個狀態的狀態轉移概率,s(k,t,vt-1)表示第t幀的第vt-1個包圍框對應的狀態的序號;α和β分別為狀態轉移概率和重疊區域比例的權值。
步驟1.2、賦值e'=maxvt-1,ie(vt-1,i),即從計算出的所有概率e(vt-1,i)中選取最大值e',并設式中取最大值的vt-1和i分別為vt-1'和i'。
步驟1.3、如果(w(k,t,vt)+e')/(l(k,t,vt)+1)>z',則按以下規則賦值:
q(k,t,vt)=v't-1(3)
l(k,t,vt)=l(k,t,vt-1')+1(4)
w(k,t,vt)=w(k,t,vt)+e'(5)
并且,按式(3)-式(5)賦值后,跳過步驟1.4;
如果(w(k,t,vt)+e')/(l(k,t,vt)+1)>z'不成立,則繼續執行步驟1.4。
步驟1.4、按以下公式進行遞歸運算:
q(k,t,vt)=0,(6)
l(k,t,vt)=1(7)
e'=maxipk(a(t,vt)|i)(8)
w(k,t,vt)=w(k,t,vt)+e'(9)
通過上述步驟1.1-1.4執行最優搜索,將最終計算出的w(k,t,vt)作為對于第k種運動目標,以第t幀的第vt個包圍框結尾的圖像序列是該第k種運動目標的最優概率。
步驟2、結合所述最優概率,采用反向回溯算法從所述屬性信息集合中搜尋出待提取的運動目標的集合。
對于t=nf…1,vt=nb(t)…1,執行步驟2.1-2.2,
步驟2.1、找出以第t幀的第vt個包圍框結尾的序列是某種運動目標的最大概率,即
w'=maxkw(k,t,vt)(10)
設式(10)中取最大值的k為k'。
步驟2.2、設r為需要尋找的以第t幀的第vt個包圍框結尾的序列,初始為空。將屬性信息集合b(k',t,vt)中的{x(k',t,vt),y(k',t,vt),w(k',t,vt),h(k',t,vt)}加入序列r。用q(k',t,vt)找出與第t幀的第vt個包圍框連接的第t-1幀的包圍框序號,記為v~t-1,將b(k',t-1,v~t-1)中的{x(k',t-1,v~t-1),y(k',t-1,v~t-1),w(k',t-1,v~t-1),h(k',t-1,v~t-1)}加入序列r。
如此循環l(k',t,vt)-1次,即直到q(k',t-l(k',t,vt)-1,vt-l(k,t,vt)-1)的值為0為止。此時,r中的內容應為
{{x(k',t,vt),y(k',t,vt),w(k',t,vt),h(k',t,vt)},
{x(k',t-1,v~t-1),y(k',t-1,v~t-1),w(k',t-1,v~t-1),h(k',t-1,v~t-1),
……}。(11)
將{r,k'}組加入集合r,其中r表征了運動目標所在的位置和大小,k'表征了運動目標的類型,
為避免獲取到的多個序列間發生包圍框重復,在每次獲取包圍框后,在已經找到的序列集合r中查看是否在該幀已有包圍框與其重疊程度大于某一閾值,閾值優選50%,如有,則認為該幀之前的包圍框是其他運動目標,不再繼續尋找,將該幀作為當前序列的起點。
基于與上述第一實施例中的運動目標提取方法相同的發明思路,本發明的第二實施例提出了一種運動目標提取裝置,如圖2所示,該運動目標提取裝置包括:模型訓練模塊1,用于建立各種運動目標的隱馬爾科夫模型;目標檢測模塊2,用于采用隱馬爾科夫模型對待提取運動目標的圖像序列進行檢測,輸出各種運動目標對應的隱馬爾科夫模型在各幀圖像中檢測得到的各個包圍框的屬性信息集合;以及目標提取模塊3,用于結合前向概率傳播算法與反向回溯算法從所述屬性信息集合中搜尋出待提取的運動目標的集合。
進一步地,所述目標檢測模塊2包括:序列檢測子模塊21,用于采用隱馬爾科夫模型對待提取運動目標的圖像序列進行檢測;以及選擇輸出子模塊22,用于對每一幀圖像的任意一個包圍框,若該包圍框的圖像特征為任意種類的運動目標的任意狀態的概率大于第一設定閾值,則輸出該包圍框的屬性信息集合。
進一步地,所述目標提取模塊3包括:前向計算子模塊31,用于對每一種運動目標,結合所述屬性信息集合,采用前向概率傳播算法計算以各幀圖像的每一個包圍框結尾的圖像序列為該種運動目標的最優概率;以及反向計算子模塊32,用于結合所述最優概率,采用反向回溯算法從所述屬性信息集合中搜尋出待提取的運動目標的集合。
需說明的是,本實施例的運動目標提取裝置的各功能模塊與第一實施例的運動目標提取方法的相關步驟相對應,因此各功能模塊的具體實施過程及工作原理與第一實施例相同或相近,在此不再贅述。
綜上所述,本發明實施例中的運動目標提取方法及裝置具有以下優點:
1、采用隱馬爾科夫模型建模運動目標,準確地表征了目標在不同姿態下的表象,能夠處理復雜變化的目標。
2、結合前向概率傳播算法和反向回溯算法的方法,在圖像序列中檢測得到的包圍框集合中搜尋最優子序列,實現了運動目標的快速準確提取。
3、通過表象特征和運動特征快速檢測到可能的運動目標之后,再融入序列特征,由粗到精逐步細化,提高了目標提取的效率。
這里,應當理解,流程圖和/或框圖的每個方框以及流程圖和/或框圖中各方框的組合,都可以由計算機可讀程序指令實現。這些計算機可讀程序指令可以提供給通用計算機、專用計算機或其它可編程數據處理裝置的處理器,從而生產出一種機器,使得這些指令在通過計算機或其它可編程數據處理裝置的處理器執行時,產生了實現流程圖和/或框圖中的一個或多個方框中規定的功能/動作的裝置。也可以把這些計算機可讀程序指令存儲在計算機可讀存儲介質中,這些指令使得計算機、可編程數據處理裝置和/或其他設備以特定方式工作,從而,存儲有指令的計算機可讀介質則包括一個制造品,其包括實現流程圖和/或框圖中的一個或多個方框中規定的功能/動作的各個方面的指令。也可以把計算機可讀程序指令加載到計算機、其它可編程數據處理裝置、或其它設備上,使得在計算機、其它可編程數據處理裝置或其它設備上執行一系列操作步驟,以產生計算機實現的過程,從而使得在計算機、其它可編程數據處理裝置、或其它設備上執行的指令實現流程圖和/或框圖中的一個或多個方框中規定的功能/動作。
以上結合附圖詳細描述了本發明的優選實施方式,但是,本發明并不限于上述實施方式中的具體細節,在本發明的技術構思范圍內,可以對本發明的技術方案進行多種簡單變型,這些簡單變型均屬于本發明的保護范圍。
另外需要說明的是,在上述具體實施方式中所描述的各個具體技術特征,在不矛盾的情況下,可以通過任何合適的方式進行組合。為了避免不必要的重復,本發明對各種可能的組合方式不再另行說明。
此外,本發明的各種不同的實施方式之間也可以進行任意組合,只要其不違背本發明的思想,其同樣應當視為本發明所公開的內容。