本發(fā)明涉及人體識別智能監(jiān)控系統(tǒng)設計,具體說來先建立人體步態(tài)數(shù)據(jù)庫,再開發(fā)分類識別系統(tǒng),進而查詢到目標行人對其進行軌跡跟蹤。
背景技術:
通過對目標行人進行軌跡跟蹤不但可以幫助安保部門從大量的監(jiān)控視頻當中識別出已經出現(xiàn)過的可疑人員,而且可以確定該人員的行動范圍,為安保部門偵破案件提供線索。
然而現(xiàn)如今對于目標行人的軌跡跟蹤大多是采用傳統(tǒng)的直接對于視頻的跟蹤處理算法,大大增加了視頻處理的復雜度,在實際應用當中往往不能及時地對目標行人進行軌跡跟蹤。
技術實現(xiàn)要素:
本發(fā)明的目的是開發(fā)一種步態(tài)識別分類系統(tǒng),旨在幫助安保部門從大量的監(jiān)控視頻當中識別出已經出現(xiàn)過的可疑人員,對目標行人進行實時地軌跡跟蹤,進而確定該人員的行動范圍,為安保部門偵破案件提供線索。
本發(fā)明的目的是按以下方式實現(xiàn)的,首先建立步態(tài)數(shù)據(jù)庫;然后開發(fā)步態(tài)識別分類系統(tǒng);最后對目標行人進行軌跡跟蹤。具體算法如下:
首先,建立步態(tài)數(shù)據(jù)庫:開啟sdk的骨骼跟蹤功能,編寫獲取步態(tài)特征的wpf程序,獲得步態(tài)特征的特征向量數(shù)據(jù),輸出這些數(shù)據(jù)到txt文本文檔中,并且輸出同一時間經過骨骼跟蹤標定的彩色圖像,以及同一時間的彩色視頻流。
然后,開發(fā)步態(tài)識別分類系統(tǒng):通過c++來開發(fā)分類識別系統(tǒng),利用改進的最近臨分類算法實現(xiàn)系統(tǒng)分類。
最后,對目標行人進行軌跡跟蹤:根據(jù)識別出的同一時間的目標步態(tài)數(shù)據(jù)找到同一時間目標行人所在的視頻段來實現(xiàn)。
本發(fā)明的優(yōu)異效果如下:使用kinect進行步態(tài)識別可以利用其骨骼跟蹤功能實時獲得20個骨骼點的三維坐標,獲得人體的步態(tài)特征向量進而建立步態(tài)數(shù)據(jù)庫,避免了傳統(tǒng)圖像處理的繁瑣,降低了特征提取的難度,而且提取的步態(tài)特征向量數(shù)據(jù)非常精確;采用最近鄰分類算法的步態(tài)識別系統(tǒng)不但具有非常高的識別率,而且計算簡單,計算效率比較高;根據(jù)識別出的同一時間的目標步態(tài)數(shù)據(jù)找到同一時間目標行人所在的視頻段來實現(xiàn)目標行人軌跡跟蹤,與傳統(tǒng)的直接對于視頻的跟蹤處理算法相比,大大降低了計算量和實現(xiàn)的復雜度。
附圖說明
圖1目標行人軌跡跟蹤流程圖
圖2kinect硬件結構分布圖
圖3獲取步態(tài)數(shù)據(jù)庫wpf程序運行界面
圖4骨骼節(jié)點標定的目標行人的彩色圖片
圖5目標行人的標記過程
具體實施方式
參照說明書附圖對本發(fā)明作以下詳細地說明。
首先,建立步態(tài)數(shù)據(jù)庫:開啟sdk的骨骼跟蹤功能,并且編寫獲取步態(tài)特征的wpf程序,獲得步態(tài)特征的特征向量數(shù)據(jù),輸出這些數(shù)據(jù)到txt文本文檔中,并且輸出同一時間經過骨骼跟蹤標定的彩色圖像,以及同一時間的彩色視頻流。
1)編寫wpf程序獲得步態(tài)特征向量數(shù)據(jù)
步態(tài)特征向量包括胳膊的長度、腿的長度、身高、步長、大臂和脊柱之間夾角、小臂和脊柱之間夾角、大臂和小臂之間的夾角、大腿和小腿之間的夾角、上身部位質心分別到左右胳膊質心的距離、上身部位質心分別到左右腿部質心的距離。利用空間向量法計算步態(tài)特征向量的具體方法如下:
利用空間向量法來計算關節(jié)之間的角度以及關節(jié)部位長度的步驟分為三步,第一步是先求得kinect坐標系中各個關節(jié)點的三維坐標點,第二步利用兩個相鄰骨骼關節(jié)點坐標用向量來表示骨骼關節(jié)部位,第三步是通過余弦公式來計算兩個關節(jié)部位之間的夾角,利用向量模值求得關節(jié)部位的長度。
利用空間向量法來計算身體某個部位的質心與質心之間的距離的步驟為:第一步是先求得kinect坐標系中各個關節(jié)點的三維坐標點,第二步求得質心在kinect坐標系中的坐標值,第三步用向量來連接兩個質心,利用向量模值求得兩個質心之間的距離。
獲得步態(tài)特征向量數(shù)據(jù)步驟分為四步:第一步在mainwindows窗體上增加一系列l(wèi)abel控件,命名為相應的數(shù)據(jù)變量表示名稱,例如lspine0、lspine1、lspine2分別表示脊柱部位關節(jié)點的x,y,z空間坐標值;第二步注冊骨骼跟蹤事件,按照上述計算步態(tài)特征值的方法獲得相應的步態(tài)特征向量,第三步在mainwindows窗體上增加一個button控件按鈕;第四步注冊button_click事件,使用streamwriter類將通過數(shù)據(jù)處理部分計算得到的最近的60幀內的步態(tài)特征向量值以double類型的形式保存到文本文檔中,并且通過datetime類以計算機的當前時間格式命名文檔名,進而將不同時刻采集到的數(shù)據(jù)保存在不同的文檔中,以此來區(qū)分不同序列的數(shù)據(jù)。
2)編寫wpf程序獲得彩色視頻流
第一步在mainwindows窗體上增加一個image控件,命名為imagecamera;第二步注冊彩色視頻流事件,一般通過writeablebitmap方法將將彩色視頻流圖像讀取出來,并且將圖片數(shù)據(jù)與imagecamera控件綁定,同時利用opencv計算機視覺庫進行視頻的錄制,同樣也通過datetime類以計算機的當前時間格式命名視頻文件,進而將不同時刻采集到的視頻流數(shù)據(jù)保存在不同的avi文件中,以此來區(qū)分不同序列的視頻流數(shù)據(jù)。
3)編寫wpf程序獲得經過骨骼跟蹤標定的彩色圖像
獲得經過骨骼跟蹤標定的彩色圖像步驟分為三步:第一步在mainwindows窗體上增加一個畫布canvas控件,命名為canas;第二步注冊骨骼跟蹤事件,對骨骼跟蹤事件進行處理、將骨骼關節(jié)點坐標映射到彩色圖像坐標中去,將canvas控件疊加到image控件中去進而在彩色視頻流圖像中顯示出骨骼跟蹤信息,視頻中用紅色圓點標定kinect跟蹤到的骨骼關節(jié)點,總共用20個紅色圓點標定的位置來代表20個人體骨骼關節(jié)點的位置。第三步在前面獲得步態(tài)特征向量數(shù)據(jù)部分注冊的button_click事件的基礎上繼續(xù)編寫觸發(fā)事件,利用filestream類將視頻流數(shù)據(jù)以“.png”格式保存到圖片中,并且也通過datetime類以計算機的當前時間格式命名圖片名,進而將不同時刻采集到的視頻流數(shù)據(jù)保存在不同的png圖片中,以此來區(qū)分不同序列的圖片數(shù)據(jù)。
然后,開發(fā)步態(tài)識別分類系統(tǒng):通過c++來開發(fā)分類識別系統(tǒng),利用改進的最近臨分類算法實現(xiàn)系統(tǒng)分類。
考慮到待分類數(shù)據(jù)的特點:步態(tài)特征向量數(shù)據(jù)庫中總共有n個特征類別,每個類別包含m個樣本,每一個樣本向量的維數(shù)為10,每個特征分量值的大小的取值范圍均為(0,2)?,F(xiàn)在定義以下改進的最近鄰公式用于計算待檢測樣本與數(shù)據(jù)庫中數(shù)據(jù)之間的距離。
其中xi表示待檢測樣本數(shù)據(jù)的第i維特征值,μki表示數(shù)據(jù)庫中的第k(k=1,2,…,n)類數(shù)據(jù)的m個樣本的第i維特征值的平均值。
分類步驟:
第一步,通過公式(2)逐一求出數(shù)據(jù)庫中第k類數(shù)據(jù)的5個樣本的第i維特征值的平均值μki。
第二步,通過公式(1)逐一求出待檢測樣本數(shù)據(jù)的第i維特征值xi與μki之間的差的平方,再對其求和開平方,進而逐一得到待檢測樣本與數(shù)據(jù)庫中數(shù)據(jù)之間的n個距離l(k)。
第三步,對n個距離l(k)進行排序處理,找出最小的距離值,則將待檢測樣本數(shù)據(jù)歸類到該最小距離值所屬的類別中。
最后,對目標行人進行軌跡跟蹤:根據(jù)識別出的同一時間的目標步態(tài)數(shù)據(jù)找到同一時間目標行人所在的視頻段來實現(xiàn)。
研究表明:雖然kinect傳感器可以精確捕獲到人體骨骼流數(shù)據(jù)的視場范圍是有限的,但是足以利用有效的分類數(shù)據(jù)通過步態(tài)識別系統(tǒng)找到目標向量數(shù)據(jù)。此外通過kinect可以采集到彩色視頻流的范圍是很廣的。因此可以利用kinect傳感器的這一優(yōu)勢來實現(xiàn)目標行人的軌跡跟蹤。
行人面向kinect走來,當行人未走到骨骼追蹤的范圍內時,行人不會被標記,但是可以采集到彩色視頻圖像。
因此目標行人軌跡跟蹤的步驟:
第一步,在小范圍內通過分類識別系統(tǒng)找出待檢測行人的目標步態(tài)數(shù)據(jù);
第二步,根據(jù)該步態(tài)數(shù)據(jù)采集的時刻t找到t時刻的目標彩色圖片;
第三步,根據(jù)目標彩色圖片存儲的時刻t找到t時刻的目標彩色視頻流;
第四步,在包含有目標行人的整個彩色視頻流中查詢到大范圍內的目標行人,進而確定目標行人的行動范圍。
最后說明的是,以上所述僅為本發(fā)明的較佳實例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內所作的任何修改,等同替換和改進等,均應包含在本發(fā)明的保護范圍之內。