OpenCVVS架構(gòu)-算法與應(yīng)用_第1頁
OpenCVVS架構(gòu)-算法與應(yīng)用_第2頁
OpenCVVS架構(gòu)-算法與應(yīng)用_第3頁
OpenCVVS架構(gòu)-算法與應(yīng)用_第4頁
OpenCVVS架構(gòu)-算法與應(yīng)用_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、tnii學(xué)朮友叢網(wǎng)論文發(fā)表專家一lOpenCV VS架構(gòu)算法及應(yīng)用摘要:in tel ope ncv vs是ope ncv內(nèi)嵌的一個(gè)高效、通用的視頻目標(biāo)檢測、跟蹤和軌跡分析的開源平臺,但由于沒有相關(guān)資料而缺 少研究和應(yīng)用。在深入挖掘 opencv vs源碼的基礎(chǔ)上,剖析了該平 臺的整體架構(gòu)和算法體系,給出了算法描述和相應(yīng)接口。在此基礎(chǔ) 上,開發(fā)了一個(gè)基于opencv vs架構(gòu)的穩(wěn)定、高效的行人統(tǒng)計(jì)系統(tǒng)。關(guān)鍵詞:opencv;視頻監(jiān)控; 視頻跟蹤;軌跡分析; 行人統(tǒng)引言多年來在從事計(jì)算機(jī)視覺研究的過程中,一直需要這樣一個(gè)平 臺,一方面可以提供眾多成熟穩(wěn)定的檢測、跟蹤、軌跡分析算法, 另一方面具備

2、良好的編程接口,這樣就可以將自己的算法很方便地 嫁接進(jìn)這個(gè)系統(tǒng),測試和對比各種算法的優(yōu)劣性能。而intel opencv1 視頻監(jiān)控(video surveillanee)模塊恰恰提供了這樣一個(gè)功能強(qiáng)大的平臺,在下文中簡稱為 vs。從in tel ope ncv 1.0版本開始,其輔助庫cvaux中就增加了 vs模塊,直至opencv 2.2版本, 該模塊都相對穩(wěn)定的存在。然而 opencv提供的vs的相關(guān)資料相當(dāng) 少,在官方的幫助文檔中甚至只字未提,國內(nèi)外也少有相關(guān)的研究 和介紹,這也是vs長期未被研發(fā)人員廣泛關(guān)注的原因之一。值得 慶幸的,也是opencv最大的優(yōu)勢就在于其開源性。通過深入剖

3、析 vs的源代碼,可以理清整個(gè)vs框架的脈絡(luò),探索其中的算法原理tnii學(xué)朮友叢網(wǎng)論文發(fā)表專家一l和實(shí)現(xiàn)方法。本文對vs的架構(gòu)和算法體系進(jìn)行了剖析和梳理,在 此基礎(chǔ)上給出一個(gè)該架構(gòu)應(yīng)用于行人統(tǒng)計(jì)的實(shí)例。lope ncv video surveilla nee的架構(gòu)opencv是intel公司開發(fā)的廣受關(guān)注的計(jì)算機(jī)視覺開源庫,其算 法覆蓋面廣、實(shí)時(shí)性好。cvaux是openev的輔助類庫,vs則是其 中一個(gè)重要組成部分。用 vc+6.0打開openev 1.0工程源碼,可 以在cvaux下看到vs結(jié)構(gòu)和類定義,vs類多數(shù)以cvblob開頭。通 過梳理vs的各個(gè)類和結(jié)構(gòu)間的關(guān)系,可以歸納得到 vs

4、的uml關(guān)系 圖,從整體上把握vs的架構(gòu),如圖1所示。類似于ms mfc中的 cobject ,vs中的所有的類都有一個(gè)共同的父類 cvvsmodule,主要 提供各個(gè)模塊通用的參數(shù)的讀寫、拷貝等功能。vs提供了目標(biāo)檢測、 跟蹤和軌跡分析的算法接口:cvfgdetector ,cvblobdetector ,cvblobtracker ,cvblobtrackgen , cvblobtrackpostproc , cvblobtracka nalysis,分別是前景檢測、新目標(biāo)檢測、目標(biāo)跟蹤、軌跡生成、跟蹤后處理、軌跡分析等6組算法接口,這些接口類是大多數(shù)vs類的父類。另外還有一個(gè) cvblo

5、btrackerauto 接口,其 功能是對以上算法進(jìn)行鏈接、調(diào)度,用于對整個(gè)算法流程和數(shù)據(jù)傳 遞的控制。vs中的很多類并沒有導(dǎo)出用戶接口,不能直接調(diào)用,而是提供了 相應(yīng)的全局函數(shù)作為惟一的用戶接口。這是模式設(shè)計(jì)中類工廠的思 想,有效地屏蔽了構(gòu)建類實(shí)例的細(xì)節(jié),這種設(shè)計(jì)思想被大量應(yīng)用于匸交發(fā)表專家一LB國學(xué)朮發(fā)叢網(wǎng) www,qikanwa ng.nEt com技術(shù)中。圖 lopencv vs uml 圖 2opencv video surveillanee的算法體系opencv vs覆蓋了許多主流的檢測、跟蹤與軌跡分析方法,如前 文中提到的6類算法,分別是:前景檢測、新目標(biāo)檢測、目標(biāo)跟蹤、 軌跡

6、生成、跟蹤后處理、軌跡分析,除了軌跡生成用于軌跡數(shù)據(jù)的 保存以外,其他5個(gè)部分都是標(biāo)準(zhǔn)的視頻監(jiān)控算法體系中不可或缺 的部分。在vs的標(biāo)準(zhǔn)應(yīng)用中,算法的執(zhí)行流程如圖2所示。圖2vs算法流程圖下面對vs算法體系進(jìn)行簡要介紹并給出參考 文獻(xiàn),表1列舉了各組算法和接口,方便讀者查閱。(1) 算法流程控制(cvblobtrackerauto )。整個(gè)算法流程的控制在接口類cvblobtrackerauto的子類中完成。vs中提供了一個(gè)范本,就是cvblobtrackerauto1,通過查看cvblobtrackerauto1:process(),可以洞悉整個(gè)算法的標(biāo)準(zhǔn)流程。當(dāng)然用戶也可以在遵循接口 cv

7、blobtrackerauto的基礎(chǔ)上進(jìn)行擴(kuò)展,重載process(),構(gòu)建自己的視頻監(jiān)控算法流程。(2) 前景檢測(cvfgdetector )。在視頻監(jiān)控中,前景一般是 指相對于背景的運(yùn)動(dòng)區(qū)域,即通常關(guān)注的運(yùn)動(dòng)目標(biāo),如行人、車輛 等。前景檢測的方法大致可以分為 3類:背景差法、幀差法和光流 法。背景差法通過對對背景進(jìn)行建模來檢測運(yùn)動(dòng)的前景,由于其準(zhǔn) 確性、魯棒性和實(shí)時(shí)性的優(yōu)勢受關(guān)注較多。論文發(fā)表專家一m國學(xué)朮發(fā)舌網(wǎng) www,qikanwacvfgdetector 是前景檢測類的接口,在其子類cvfgdetectorbase 中包含了 23兩種背景差方法的實(shí)現(xiàn),后者是被廣泛研究和應(yīng)用的混合高

8、斯模型 4 (mog mixture of gaussians )。opencv中還提供了一種基于碼本的背景差方法5的實(shí)現(xiàn),只 是該算法還沒有整合進(jìn)VS架構(gòu)中,這個(gè)擴(kuò)展工作有待完成。(3) 新目標(biāo)檢測(cvblobdetector )。新目標(biāo)檢測是多目標(biāo)跟 蹤系統(tǒng)中的重要環(huán)節(jié),主要用于判斷檢測到的目標(biāo)是否是新出現(xiàn)的 目標(biāo)。該模塊對每幀中檢測到的目標(biāo)進(jìn)行判斷,如果判定為已經(jīng)存 在的目標(biāo)則參與之前已存在的跟蹤濾波,如果判定為新目標(biāo)則需要 啟動(dòng)新的目標(biāo)跟蹤并進(jìn)行初始化(分配新id等)。cvblobdetector接口在前景掩模中檢測新進(jìn)入場景的 blob (塊), 子類有 2 個(gè),分別是 cvblo

9、bdetectorsimple 禾口 cvblobdetectorcc , 原理可參考文獻(xiàn)6。新目標(biāo)的判斷準(zhǔn)則是:當(dāng)連續(xù)多幀圖像中包含該連通區(qū)域,且具 有一致的合理的速度。cvblobdetectorcc 與 cvblobdetectorsimple 一個(gè)最顯著的不同 在于引入了 cvobjectdetector,可用于檢測分離的目標(biāo)塊。(4) 目標(biāo)跟蹤(cvblobtracker )。目標(biāo)跟蹤模塊覆蓋了眾多熟 悉的算法,如kalman濾波、粒子濾波、meanshift等,在表1中給 出相應(yīng)的接口及對應(yīng)的功能。對meanshift和粒子濾波感興趣的讀論文發(fā)表專家一 m國學(xué)朮發(fā)丟網(wǎng) 者可參考文獻(xiàn)

10、79。(5) 軌跡生成(cvblobtrackgen )。軌跡生成模塊保存目標(biāo)檢 測和跟蹤的特征至數(shù)據(jù)文件,為事后分析提供方便。接口為 cvblobtrackgen ,子類包括 cvblobtrackgen1 禾口 cvblobtrackgenyml,前者在目標(biāo)跟蹤結(jié)束后,以文本格式保存整個(gè)目標(biāo)軌跡的序列參數(shù),后者與幀數(shù)據(jù)同步,以yml格式保存當(dāng)前幀中的目標(biāo)信息參數(shù)。(6) 跟蹤后處理(cvblobtrackpostproc )。跟蹤后處理是一個(gè) 可選模塊,主要用于跟蹤濾波后對目標(biāo)軌跡的平滑濾波,接口為 cvblobtrackpostproc ,表1中列舉了算法的功能和接口。(7) 軌跡分析(

11、cvblobtrackanalysis )。當(dāng)某個(gè)目標(biāo)跟蹤結(jié)束 后,會產(chǎn)生一個(gè)軌跡,cvblobtracka nalysis 的子類用于對軌跡進(jìn) 行數(shù)據(jù)分析。軌跡分析方法比較多,表 1中列舉了分析算法的功能 和接口。3基于vs架構(gòu)的行人統(tǒng)計(jì)vs架構(gòu)可以應(yīng)用到和視頻目標(biāo)檢測和跟蹤相關(guān)的諸多領(lǐng)域,本節(jié)以行人統(tǒng)計(jì)為例進(jìn)行說明。行人統(tǒng)計(jì)是指對通過某個(gè)區(qū)域行人的數(shù) 量和方向進(jìn)行統(tǒng)計(jì),主要應(yīng)用在安防、交通等領(lǐng)域。參考o(jì)pencv vs 架構(gòu),行人統(tǒng)計(jì)可由前景檢測,新目標(biāo)檢測,目標(biāo)跟蹤,跟蹤后處 理和軌跡分析5模塊組成。在系統(tǒng)設(shè)計(jì)中,主要的區(qū)別和改進(jìn)在以 下3個(gè)部分:匸交發(fā)表專家一LB國學(xué)朮發(fā)叢網(wǎng)(1)為了

12、對整個(gè)行人統(tǒng)計(jì)算法流程進(jìn)行控制,在繼承接口cvblobtrackerauto的基礎(chǔ)上設(shè)計(jì)了 cvblobtrackerauto2 ,對行人統(tǒng)計(jì)中各個(gè)算法和數(shù)據(jù)流進(jìn)行調(diào)度。vs的跟蹤是基于目標(biāo)塊,而在 行人統(tǒng)計(jì)中,往往出現(xiàn)單個(gè)目標(biāo)塊中有多個(gè)粘連的行人的情況。為 了能夠?qū)φ尺B的人群進(jìn)行統(tǒng)計(jì),在該模塊中加入了行人頭部檢測算 法。(2) 行人統(tǒng)計(jì)對系統(tǒng)的實(shí)時(shí)性要求比較高,而傳統(tǒng)的mog(混合高斯模型)4方法速度較慢,為此采用了一種自適應(yīng)多??焖?背景差算法10。在繼承接口 cvfgdetector的基礎(chǔ)上設(shè)計(jì)了 cvfgdetectorru naver模塊,并在該模塊中加入了陰影、噪聲、亮光的去除等算

13、法,以增強(qiáng)前景目標(biāo)檢測的魯棒性。(3)行人統(tǒng)計(jì)的重點(diǎn)在于對行人軌跡的序列特征進(jìn)行分析,為此在繼承接口 cvblobtrackanalysis的基礎(chǔ)上設(shè)計(jì)了cvblobtrackanalysisdir行人軌跡分析模塊。該模塊主要完成2個(gè)功能:通過目標(biāo)序列特征,如頭部的數(shù)量、目標(biāo)塊的大小、寬高比、 運(yùn)動(dòng)方向、速度等特征,對目標(biāo)的種類做出判斷,如汽車、單車、 行人等;通過對軌跡點(diǎn)序列的擬合分析,行人的方向、路徑做出判 斷,最后給出統(tǒng)計(jì)結(jié)果。同時(shí),為了去除攝像機(jī)傾斜觀測造成的目 標(biāo)變形(遠(yuǎn)小近大)影響,在對相關(guān)的塊目標(biāo)特征數(shù)據(jù)進(jìn)行了射影 變換的校正?;趘s框架在較短的時(shí)間內(nèi)搭建了一個(gè)靈活高效的行人統(tǒng)

14、計(jì)系論文發(fā)表專家一CD國學(xué)朮發(fā)叢廚統(tǒng),如圖3所示,該系統(tǒng)具備了完善的多目標(biāo)檢測、跟蹤和軌跡分 析的能力,在穩(wěn)定性、準(zhǔn)確性和實(shí)時(shí)性方面都達(dá)到了較高的水準(zhǔn)。圖3行人統(tǒng)計(jì)系統(tǒng)界面圖4結(jié)語opencv vs為視頻目標(biāo)檢測、跟蹤研究提供了一個(gè)通用、高效的 平臺,該平臺覆蓋了許多主流的檢測、跟蹤與軌跡分析算法,具有 廣闊的應(yīng)用領(lǐng)域,但由于缺少相關(guān)資料而不為廣大研究人員所熟 悉。本文在源碼分析的基礎(chǔ)上對VS的架構(gòu)和算法體系進(jìn)行了剖析, 并給出了一個(gè)VS架構(gòu)應(yīng)用實(shí)例:行人統(tǒng)計(jì)。VS內(nèi)容非常豐富,由 于篇幅關(guān)系,文中只能提綱挈領(lǐng),對 vs的算法及應(yīng)用沒有展開討 論,感興趣的讀者可以參考文獻(xiàn)11。參考文獻(xiàn)1 in

15、 tel. i ntel ope n source computer visio n libraryeb/ol. 20090718. http:/www. software.in nus/articles/i nte.2 li l y, huang w m, gu i y h, et al. foreground object detecti on from videos containing complex backgro und c/proceedi ngs of the eleve nth acm intern atio nal conference on multimedia. new

16、 york, ny, usa: acm, 2003: 210.3 kaewtrakulpong p, bowden r. an improved adaptive background mixture model for real time tracking with shadowm國學(xué)朮發(fā)叢廚論文發(fā)表專家一detecti on c proceedi ngs of the 2nd europea n workshopon adva need videobased surveilla nee systems. s.:121.kluwer academic publishers, 2001: 11

17、14 stauffer c, grims on e. learni ng patter ns of activityusing realtime tracking j. ieee transactions onpattern recognition and machine intelligenee, 2000, 22(8):747757.5 kim k, chalidabhongse t h, harwood d, et al. realtime foregro undbackgro und segme ntati on using codebookmodel j. realtime imag

18、i ng, 2005, 11(3): 172185.6 senior a, hampapura, tian ying li, et al. appearaneemodels for occlusi on han dli ng c proceedi ngs of 2ndinternationalworkshop on performanee evaluation of trackingand surveilla nee systems. s.l.: ieee, 2001:3642.7 comaniciu d, ramesh v, meer p. realtime trackingof non rigid objects using

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論