本發(fā)明涉及一種人體目標識別方法,特別是一種基于立體視覺技術的人體目標識別方法。
背景技術:
隨著計算機存儲、運算等方面性能的快速提高,人們逐步將計算機運用到實現(xiàn)場景重構、目標識別、人機互動等復雜功能,這不僅開拓了計算機應用領域的規(guī)模和研究方向,而且促進了相關學科的快速發(fā)展。作為當今活躍的研究領域,計算機視覺的實質(zhì)就是利用攝像機代替人眼,利用電腦代替大腦,對目標進行識別跟蹤,并做出相應的圖形分析處理,生成適合儀器檢測或者人眼觀察的圖像。視頻技術能在一段時間內(nèi)連續(xù)傳輸圖像,包含更多細節(jié)信息,同時它具有直觀、具體、易處理等優(yōu)點。對視頻目標的識別已成為圖像處理、模式識別、人機互動等領域中的重要課題,被廣泛應用于制造業(yè)、醫(yī)療診斷、軍事等領域中的各種智能系統(tǒng)中。
傳統(tǒng)的APC系統(tǒng)主要有壓力傳感系統(tǒng)和紅外遮擋系統(tǒng),隨著激光紅外技術的迅速發(fā)展,采用合適的熱釋紅外線探頭檢測人體發(fā)出的信號,進行識別計數(shù)。當目標走動時,紅外傳感器探測人體紅外光譜所造成的變化即得到人體目標運動的過程,通過信號處理可以辨別目標,它們成本低,操作簡單,但是具有識別統(tǒng)計結果不精確,應用場所受限等諸多問題。
同時圖像處理方法也可用于解決人體識別問題。但大多數(shù)方法僅使用二維圖像的一些識別算法,比如選取人體的某些部分作為特征,試圖在圖像中獲得匹配,從而達到識別的目的。目前,人體識別常用的方法還有很多:基于人體模型、結構元素的方法,該種方法對提取整個人的圖像信息有較高的要求,對運動變形的物體很難處理,并且對圖像采集的實時性要求高;基于小波變換和支持向量機的方法,該方法主要是基于小波模板的原理,需要根據(jù)不同的尺度大小來搜索整張圖像,計算量大。
技術實現(xiàn)要素:
本發(fā)明的目的在于提供一種基于立體視覺技術的人體目標識別方法。
實現(xiàn)本發(fā)明目的的技術解決方案為:一種基于立體視覺技術的人體目標識別方法,包括以下步驟:
步驟1、由兩個攝像頭從兩個不同角度同時獲取同一個場景的圖片,形成立體圖像 對;
步驟2、通過攝像機標定確定攝像機內(nèi)部和外部參數(shù),確立成像模型;
步驟3、采用基于窗口的匹配算法,以其中一幅圖像的待匹配點為中心創(chuàng)建窗口,在另一幅圖像上創(chuàng)建相同的滑動窗口,滑動窗口沿著外極線以像素點為單位依次移動,計算窗口匹配測度,找到最佳匹配點,通過視差原理得到目標的三維幾何信息,生成深度圖像;
步驟4、采用一維最大熵閾值分割法,結合灰度特征區(qū)分頭部與肩部信息,識別人體目標。
本發(fā)明與現(xiàn)有技術相比,其顯著優(yōu)點:
(1)本發(fā)明于立體視覺技術的人體目標識別方法計算量小,能夠運用簡單的圖像快速準確的識別出人體目標;
(2)本發(fā)明在人群擁擠的情況下,能利用圖像的深度信息進行識別,有效排除干擾,分辨運動目標。
附圖說明
圖1為本發(fā)明基于立體視覺技術的人體目標識別方法流程框圖。
圖2為本發(fā)明實施例中原始深度圖。
圖3為本發(fā)明實施例中采用本發(fā)明方法處理后得到的人體目標識別圖。
具體實施方式
結合圖1,本發(fā)明的基于立體視覺技術的人體目標識別方法,包括以下步驟:
步驟1、立體圖像對的獲?。?/p>
兩個MTV-1881EX-3攝像頭平行放置,從兩個不同角度同時獲取同一個場景的圖片,形成立體圖像對;
步驟2、通過攝像機標定確定攝像機內(nèi)部和外部參數(shù),確立成像模型,具體為:
步驟2-1、對攝像機坐標進行標定,定標圖形為棋盤格,標定原理如下:
假設z=0的世界坐標系平面為模板平面,[r1 r2 r3]為攝像機坐標系相對于世界坐標系的旋轉(zhuǎn)矩陣,t為攝像機坐標系相對于世界坐標系的平移向量,[X Y 1]T為模板上點 的齊次坐標,[u υ 1]T為模板平面上的點投影到圖像平面上的齊次坐標,K表示攝像機內(nèi)參矩陣;
步驟2-2、設攝像機坐標系Oxcyczc為固定在攝像機上的直角坐標系,其原點O定義為攝像機的光心,xc,yc軸分別平行于圖像物理坐標系的x,y軸,zc軸與光軸重合,即zc軸垂直于攝像機的成像平面,光心到圖像平面的距離OO1為攝像機的有效焦距f;
步驟2-3、設(xw,yw,zw)為三維世界坐標系中某P點的三維坐標,(xc,yc,zc)為同一點P在攝像機坐標系中的三維坐標,世界坐標系中的點到攝像機坐標系的變換由正交旋轉(zhuǎn)矩陣R和平移變換矩陣T表示為:
其中,R是3×3旋轉(zhuǎn)矩陣,平移矩陣
正交矩陣R是光軸相對于世界坐標系坐標軸的方向余弦組合,包含三個獨立的角度變量(歐拉角):繞x軸旋轉(zhuǎn)ψ角(偏航);繞y軸旋轉(zhuǎn)θ角(俯仰);繞z軸旋轉(zhuǎn)φ角(側傾),加上T的三個變量共六個參數(shù),稱為攝像機外部參數(shù);
步驟2-4、將世界坐標系與攝像機坐標系的剛性變換用齊次坐標與矩陣形式簡化為:
因此,世界坐標系與攝像機坐標系之間可以用一個矩陣M2來表示,只要已知M2就可以在兩個坐標系之間進行坐標的轉(zhuǎn)換;
攝像機坐標系到理想的圖像物理坐標系的變換即針孔模型下的理想透視投影變換, 有下式成立:
x=f·xc/zc y=f·yc/zc
x、y分別為理想的圖像物理坐標系的橫坐標和縱坐標;
同樣用齊次坐標和矩陣表示上式為:
理想圖像坐標系到圖像像素坐標系的轉(zhuǎn)換,用齊次坐標表示有:
其中,u0、v0表示攝像機坐標系的坐標;
其逆關系為:
將上述關系式代入,就可以得到世界坐標系表示的P點坐標與其投影P′的坐標(u,υ)間的關系:
其中,α=f/dx=f sx/dy,β=f/dy;M1為內(nèi)部參數(shù)陣,M2為外部參數(shù)陣,M為3×4的矩陣,稱為投影矩陣,表征二維圖像坐標與三維世界坐標間的基本關系,已知物點的世界坐標利用該矩陣就可以求出相應的理想圖像坐標,反之,如果知道了M矩陣和像點的圖像坐標,就可以求出通過攝像機光心所對應的一條空間射線;
得到二維圖像坐標與三維世界坐標間的基本關系,即完成了攝像機的標定;攝像機獲得的圖像坐標可以通過這個成像模型統(tǒng)一轉(zhuǎn)換為三維世界坐標系上的坐標,即確定了攝像機所得圖像在三維世界坐標系上的成像模型。
步驟3、采用基于窗口的匹配算法,以其中一幅圖像的待匹配點為中心創(chuàng)建窗口,在另一幅圖像上創(chuàng)建相同的滑動窗口,滑動窗口沿著外極線以像素點為單位依次移動,計算窗口匹配測度,找到最佳匹配點,通過視差原理得到目標的三維幾何信息,生成深度圖像;具體包括以下步驟:
步驟3-1、假定以右圖為基準,與背景做差,得到前景圖;
步驟3-2、視差的確定:
第一步,在前景圖中,假定以右圖為基準,計算每個像素在給定視差上同左圖對應點的灰度差值;
第二步,在每個視差上,改為使用垂直于基線方向的窄條形窗口,采用基于窗口的匹配算法計算以每個像素為中心的窗口的灰度差值和,表達式如下:
式中,m*n為模板窗口的大小,γ為模板窗口的單位長度,δ為模板窗口的單位寬度,Iright[xe+γ,ye+δ]為右視圖[xe+γ,ye+δ]坐標處的灰度值,Ileft[xe+γ+d,ye+δ]為左視圖[xe+γ+d,ye+δ]坐標處的灰度值,d為視差;
第三步,在所設定的視差范圍內(nèi),將d從最小視差取到最大視差,依次比較表達式的值,值最小所對應點即為最佳匹配點,所對應的視差值作為該像素點的視差值;
步驟3-3、確定目標的深度信息:
雙目測距主要是利用了目標點在左右兩幅視圖上成像的橫向坐標直接存在的差異(即視差)與目標點到成像平面的距離Z存在著反比例的關系,當攝像機的焦距已知的情況下,任意一點的深度信息,即該點在攝像機坐標系下Z軸的坐標值,設b為兩攝像頭 光學中心距離;目標Q到攝像頭垂直距離為H;相同焦距為f,Q1、Q2為目標Q在攝像機的成像點;d為視差,假設兩個攝像機的光軸相互平行,由相似三角形推導可知:
H=(b×f))/d
得到的目標Q到攝像頭垂直距離即為目標的深度信息;
所以,立體視覺計數(shù)能夠利用兩臺或者兩臺以上有位置偏移的攝像機通過三角計算,獲得所在場景的深度信息,前提是要求場景中的點在左右圖像中都存在像點;在左右視圖中,像點的位置是不同的,也就是視差,場景中的點離攝像機的距離不同,視差也是不同的,視差隨著離攝像頭的遠近而變小變大;雙目立體視覺正是基于這種視差,利用三角運算來確定物體到攝像機的距離。
步驟4、采用一維最大熵閾值分割法,結合灰度特征區(qū)分頭部與肩部信息,識別人體目標,具體為:
步驟4-1、將深度圖像劃分成L*L像素的小格子,L為正整數(shù),并以一個九宮格為單位,移動時以從左到右,從上到下的順序,每比較一次,移動一個L*L像素的小格子,若中間格子的平均灰度比周圍八鄰域平均灰度高,則確立中間格子為頭部目標區(qū)域;
步驟4-2、對頭部目標區(qū)域設定閾值并二值化,分割頭部目標;具體為:
采用一維最大熵閾值分割法分割頭部和非頭部區(qū)域,令pi表示圖像中灰度值為i的像素所占的比例,以灰度級t為閾值分割頭部和肩部區(qū)域,區(qū)域中高于t灰度級的像素點構成頭部區(qū)域,低于灰度級t的像素點構成非頭部區(qū)域,則非頭部區(qū)域和頭部區(qū)域的熵分別定義為:
HO=-Σi[pi/(1-pt)]lg[pi/(1-pt)]
其中:其中i表示像素的灰度值(0≤i≤255),Ht=-Σtpilgpi,HE=-Σipilgpi,當熵函數(shù)值和取得最大時,灰度級t可作為分割圖像的閾值:
t=arg{max{HB+Ho}}
步驟4-3、確定分割后的頭部區(qū)域的平均灰度和灰度方差:
其中M、N分別表示每個區(qū)域的行列數(shù),ε,∈分別表示單位行列數(shù),f(ε,∈)表示(ε,∈)點的灰度值,當灰度方差大于設定的閾值,濾除該像素點;
步驟4-4、根據(jù)人體頭部在不同視場高度下總像元寬度與視場高度的比值是否滿足設定的范圍濾除外形狹長的偽目標。
頭部的幾何特征主要有類橢圓性、頭部面積、長寬度等;通過不斷的仿真測試可知在一定視場高度下頭部總像元寬度的范圍,同時由仿真可獲得w/h的范圍為[0.65,1.5],通過此類閾值判別,可以有效濾除外形狹長的偽目標。
下面結合具體實施例對本發(fā)明作進一步說明。
實施例
結合圖2所示的原始深度圖像,對可見光情況下,人體頭發(fā)較黑且著深色衣服或者人體頭發(fā)顏色較淺則又容易和背景混淆時的人體運動目標使用基于立體視覺算法進行處理。
圖3為采用本發(fā)明方法處理后人體目標頭肩部的分割圖像,可以明顯的看出,對可見光情況下運動目標的處理結果為,當人體頭發(fā)較黑且著深色衣服或者人體頭發(fā)顏色較淺則又容易和背景混淆時,立體視覺技術輸出的深度圖像識別精度高,不易受光線以及背景的影響,明顯的區(qū)分出了目標和背景。