蔡廣偉,蘭 華
(江西省宜春市廣播電視臺,江西宜春,336000)
QT是一個跨平臺的C++圖形用戶界面應用程序框架,它提供給應用程序開發(fā)者建立美觀的圖形用戶界面所需的所用功能[1]。QT完全面向對象,容易擴展,并且允許真正地組件編程,它具有以下特點[1]:
(1)優(yōu)良的跨平臺特性QT支持MS/Windows-95、98、NT 4.0、ME、2000、XP 、Vista 和 Win7;U-nix/X11-Linux、Sun Solaris、HP-UX、Compaq Tru64 UNIX、IBM AIX、SGI IRIX和其它X11平臺;Macintosh-Mac OS X;Embedded-有幀緩沖(framebuffer)支持的Linux平臺,Windows CE。
(2)面向對象。QT的良好封裝機制使得QT的模塊化程度非常高,可重用性較好,對于用戶開發(fā)來說是非常方便的。QT提供了一種稱為Signals/slots的安全類型機制,使得各個元件之間的協(xié)同工作變得十分簡單。
(3)豐富的API。QT包括多達250個以上的C++類,還提供基于模板的Collections,Serialization,File,I/O device,Directory management,Date/time類。
(4)支持2D/3D圖形渲染,支持OpenGL。
(5)大量的開發(fā)文檔。
因此,基于QT編程環(huán)境,本文實現了視頻中運動目標檢測程序。該程序采用QT作為開發(fā)工具,利用背景差分算法和對稱差分算法進行運動目標檢測。實驗結果表明,基于背景更新的背景差分算法對于光照的變化不敏感,在實時的運動目標檢測中取得了較好的效果。而對稱差分法能夠快速對運動物體進行定位,該方法算法簡單、計算量小,檢測效果好,易于實現實時處理。
本文開發(fā)的程序主要由視頻采集、圖像數據處理和圖形界面管理三部分組成。視頻采集部分實現的是視頻采集功能;數據處理部分實現了基于背景差分算法和對稱差分算法的運動目標檢測;圖形界面管理部分負責處理操作、顯示圖像、管理視頻采集、保存及處理。程序的主界面功能框圖如圖1所示。
圖1 程序功能簡介框圖
在圖像采集功能中,[開始]按鍵實現的是啟動采集的功能,當[開始]按鍵被按下后按鍵會顯示[Starting];[抓取]實現的是圖片的抓取功能,當用戶點擊按鍵,按鍵顯示為“snap_on”,說明已經開啟了圖片抓取的功能,當用戶再次點擊按鍵時,將關閉圖片抓取功能,并顯示為“snap_of”。本次設計采用的是Linux下API函數V4L2來實現視頻的采集,采用的攝像頭支持的是YUYV格式,具體的方法如圖2所示。
在運動目標檢測的實現中,本文采用對稱差分、背景差分實現了運動目標的檢測。運動目標檢測時,參數的選擇好壞決定了運動檢測效果的好壞,這些參數包括二值化圖像的閾值T、背景更新閾值T2及背景更新系數;在軟件設計提供了閾值調整按鈕,使用者可以根據其使用的環(huán)境來設置閾值,使用相鄰兩幀差分法對做差分的連續(xù)幀的選擇時機要求較高,如果運動速度較快(選取的時間間隔過大),就會造成兩幀之間無覆蓋區(qū)域,從而無法分割出運動物體;而如果運動速度過慢(選取的時間過?。?,則造成過度覆蓋,導致檢測不到運動物體。本文采用對稱差分法是對連續(xù)3幀圖像中的相鄰兩幀分別做差分二值運算后再進行與運算得到二值圖像,檢測效果得到改進。
本文開發(fā)的圖形界面如圖3所示。
圖3 視頻采集與處理主界面
實驗中應用背景差分算法和對稱差分算法進行運動目標檢測,并增加了一些圖像處理方法。應用背景差分法檢測目標的結果如圖4所示。
圖4中的(a)和(b)是初始背景幀圖像和當前幀圖像;(c)是沒有經過高斯平滑處理得到的查分圖像結果,(d)是經過高斯平滑處理后得到的結果,比較這兩幅圖像可以看出在預處理階段使用高斯平滑處理圖像可以去除圖像中的一些噪聲;圖4中的(e)和(f)可以看出經過腐蝕的處理,二值圖像中的孤立噪聲點能被很好地抑制,有利于下一步的處理。經過膨脹算子的處理,運動目標能被很好地填充。但是經過處理后的運動目標輪廓有所變化,但是在一定精度下是可以容忍的,同時它使得運動目標完整充實地形成一個對象。
采用對稱差分法檢測目標的結果如圖5所示。該方法是對連續(xù)3幀圖像中的相鄰兩幀分別做差分二值運算后再進行與運算得到二值圖像,檢測效果得到改進。該實驗中設置采集的時間為400 ms(較大),運動檢測對象為快速運動的手臂。從實驗檢測結果看,對稱差分法能夠快速對運動物體進行定位,該方法算法簡單、計算量小,檢測效果好,易于實現實時處理。
圖4 背景差分法目標檢測結果
圖5 對稱差分法檢測目標的結果
本文在基于QT編程環(huán)境下開發(fā)一種從視頻中檢測目標的應用程序,該程序主要由視頻采集、圖像數據處理和圖形界面管理三部分組成。實驗結果表明,基于背景更新的背景差分算法對于光照的變化不敏感,在實時的運動目標檢測中取得了較好的效果。而對稱差分法能夠快速對運動物體進行定位,該方法算法簡單、計算量小,檢測效果好,易于實現實時處理。
[1] 布蘭切特(Blanchette,J)(加),薩默菲爾德(Summerfield,M)(英)著;閆鋒欣,曾泉人,張志強等譯C++GUI Qt4編程(第二版)[M].電子工業(yè)出版社,2008.
[2] Wang L,Hu W,Tan T.Recent developments in human motion analysis[J].Pattern Recognition,2003,36(3):585-601.
[3] McKenna S,Jabri S,Duric Z,etal.Tracking groups of people[J].Computer Vision&Image Understanding,2000,80(1):42-56.
[4] Stauffer C,Grimson W.Adaptive background mixture models for realtime tracking[C].Proc of the IEEE CS Conference on Computer Vision and Pattern Recognition,Collins:IEEE Computer Society,1999:246-252.
[5] Liptona,Fujiyoshi H,Patilr.Moving target classification and tracking from real2time video[A].Proc.of the Workshop on Application of Computer Vision[C].IEEE,October,1998.8-14.
[6] 徐曉夏,陳泉林.智能交通監(jiān)控系統(tǒng)中的自適應背景更新算法研究硼[J].上海大學學報(自然科學版),2003,9(5):420-422.
[7] 賈云得.機器視覺[M].北京:北京科學出版社,2000.
[8] 何斌,馬天予,王運堅,等.Visual C++數字圖像處理[M].北京:人民郵電出版社,2001.