火焰識(shí)別算法_第1頁(yè)
火焰識(shí)別算法_第2頁(yè)
火焰識(shí)別算法_第3頁(yè)
火焰識(shí)別算法_第4頁(yè)
火焰識(shí)別算法_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

PAGE學(xué)科分類號(hào)(二級(jí))520.6040本科學(xué)生畢業(yè)論文(設(shè)計(jì))題目基于人臉識(shí)別門禁系統(tǒng)姓名王遠(yuǎn)正學(xué)號(hào)104100137院、系信息學(xué)院專業(yè)計(jì)算機(jī)科學(xué)與技術(shù)指導(dǎo)教師(職稱/學(xué)歷)周屹(實(shí)驗(yàn)師/碩士)PAGE12基于人臉識(shí)別門禁系統(tǒng)摘要:人臉識(shí)別技術(shù)是生物技術(shù)和計(jì)算機(jī)技術(shù)的復(fù)合應(yīng)用,隨著科技和社會(huì)的發(fā)展,現(xiàn)代社會(huì)對(duì)門禁的安全性和可靠性的要求也越來(lái)越高;提出一種基于Android手機(jī)的視頻門禁系統(tǒng),具有靈活性好、功能豐富等優(yōu)點(diǎn)。先從局域網(wǎng)通信方式和手機(jī)門禁終端兩方面提出了系統(tǒng)方案特點(diǎn),接著設(shè)計(jì)系統(tǒng)框架,并從mjpg-streamer視頻服務(wù)器進(jìn)行視頻數(shù)據(jù)采集與發(fā)送,服務(wù)器端采用Apache服務(wù)器以及Android手機(jī)客戶端軟件設(shè)計(jì)三方面對(duì)系統(tǒng)進(jìn)行了詳細(xì)設(shè)計(jì),最后對(duì)Android客戶端軟件進(jìn)行了簡(jiǎn)單測(cè)試。結(jié)果證明該方案可行,且運(yùn)行穩(wěn)定,有廣泛的應(yīng)用價(jià)值。關(guān)鍵詞:人臉識(shí)別;門禁系統(tǒng);ARM11;android系統(tǒng)開發(fā);遠(yuǎn)程監(jiān)控1概述如今隨著計(jì)算機(jī)、網(wǎng)絡(luò)、信息技術(shù)的快速發(fā)展,如今已經(jīng)開始步入了網(wǎng)絡(luò)信息化時(shí)代,針對(duì)公民身份驗(yàn)證的需求也越來(lái)越高。在電子商務(wù)、網(wǎng)上銀行、公安、海關(guān)、金融、醫(yī)保、社保、考勤等領(lǐng)域,快速準(zhǔn)確的身份識(shí)別和驗(yàn)證技術(shù)有著廣泛的需求和應(yīng)用前景。傳統(tǒng)的個(gè)人身份識(shí)別與認(rèn)證主要依賴身份證、戶口本、駕照、鑰匙、IC卡、各種口令密碼等技術(shù)來(lái)進(jìn)行。而各種口令密碼存在容易遺忘、容易記錯(cuò)等缺點(diǎn),身份證、駕照容易丟失等缺點(diǎn);鑰匙、IC卡存在著容易復(fù)制被復(fù)制、容易被盜、損壞等缺陷;傳統(tǒng)的身份識(shí)別和認(rèn)證技術(shù)已經(jīng)不能滿足社會(huì)的發(fā)展需求。移動(dòng)設(shè)備的普及和發(fā)展,原來(lái)b/s查看變得越來(lái)越不方便,傳統(tǒng)的視頻監(jiān)控系統(tǒng)大部分采用PC作為監(jiān)控終端,需要在指定的地點(diǎn)以及專用網(wǎng)絡(luò)設(shè)備支持的環(huán)境下才能對(duì)目標(biāo)現(xiàn)場(chǎng)進(jìn)行監(jiān)控,極大地限制了監(jiān)控系統(tǒng)的靈活性和應(yīng)用范圍。而現(xiàn)代3G移動(dòng)網(wǎng)絡(luò)的飛速發(fā)展,使視頻傳輸在智能手機(jī)上得以輕易實(shí)現(xiàn)。為解決傳統(tǒng)監(jiān)控系統(tǒng)不靈活的弊端,讓人們通過(guò)移動(dòng)手機(jī)隨時(shí)對(duì)家人和住房等進(jìn)行視頻安防檢測(cè),本系統(tǒng)采用的是一種基于人臉識(shí)別+android控制設(shè)計(jì)方案。2Android移動(dòng)操作系統(tǒng)2.1移動(dòng)系統(tǒng)概述隨著塞班的沒(méi)落,Android系統(tǒng)強(qiáng)勢(shì)建立,可能近期會(huì)形成了WindowsPhone、Ios、Android三大系統(tǒng)的三足鼎立之勢(shì)。隨著喬布斯的逝世,蘋果已經(jīng)進(jìn)入了后喬布斯時(shí)代,如果蘋果設(shè)備不能再改變世界的話,可能蘋果也會(huì)在什么時(shí)候悄悄離開人們是視線。作為正在發(fā)展的WindowsPhone系統(tǒng),顯得很多地方的還不成熟。Android正在也蓬勃的面孔出現(xiàn)在我們的面前,跟另外兩個(gè)系統(tǒng)相比,開源、免費(fèi)、更新速度快的特征,吸引著大批手機(jī)開發(fā)廠商,三星、HTC、LG、華為、中興等等。2.2Android系統(tǒng)特性全開放智能移動(dòng)電話平臺(tái)支持多硬件平臺(tái)使用眾多的標(biāo)準(zhǔn)化技術(shù)核心技術(shù)完整、統(tǒng)一完善的SDK和文檔完善的輔助開發(fā)工具2.3Android架構(gòu)2.1、LinuxKernelAndroid基于Linux2.6提供核心系統(tǒng)服務(wù),例如:安全、內(nèi)存管理、進(jìn)程管理、網(wǎng)絡(luò)堆棧、驅(qū)動(dòng)模型。LinuxKernel也作為硬件和軟件之間的抽象層,它隱藏具體硬件細(xì)節(jié)而為上層提供統(tǒng)一的服務(wù)。如果你學(xué)過(guò)計(jì)算機(jī)網(wǎng)絡(luò)知道OSI/RM,就會(huì)知道分層的好處就是使用下層提供的服務(wù)而為上層提供統(tǒng)一的服務(wù),屏蔽本層及以下層的差異,當(dāng)本層及以下層發(fā)生了變化不會(huì)影響到上層。也就是說(shuō)各層各司其職,各層提供固定的SAP(ServiceAccessPoint),專業(yè)點(diǎn)可以說(shuō)是高內(nèi)聚、低耦合。如果你只是做應(yīng)用開發(fā),就不需要深入了解LinuxKernel層。2.2、AndroidRuntimeAndroid包含一個(gè)核心庫(kù)的集合,提供大部分在Java編程語(yǔ)言核心類庫(kù)中可用的功能。每一個(gè)Android應(yīng)用程序是Dalvik虛擬機(jī)中的實(shí)例,運(yùn)行在他們自己的進(jìn)程中。Dalvik虛擬機(jī)設(shè)計(jì)成,在一個(gè)設(shè)備可以高效地運(yùn)行多個(gè)虛擬機(jī)。Dalvik虛擬機(jī)可執(zhí)行文件格式是.dex,dex格式是專為Dalvik設(shè)計(jì)的一種壓縮格式,適合內(nèi)存和處理器速度有限的系統(tǒng)。大多數(shù)虛擬機(jī)包括JVM都是基于棧的,而Dalvik虛擬機(jī)則是基于寄存器的。兩種架構(gòu)各有優(yōu)劣,一般而言,基于棧的機(jī)器需要更多指令,而基于寄存器的機(jī)器指令更大。dx是一套工具,可以將Java.class轉(zhuǎn)換成.dex格式。一個(gè)dex文件通常會(huì)有多個(gè).class。由于dex有時(shí)必須進(jìn)行最佳化,會(huì)使文件大小增加1-4倍,以O(shè)DEX結(jié)尾。Dalvik虛擬機(jī)依賴于Linux內(nèi)核提供基本功能,如線程和底層內(nèi)存管理。2.3、LibrariesAndroid包含一個(gè)C/C++庫(kù)的集合,供Android系統(tǒng)的各個(gè)組件使用。這些功能通過(guò)Android的應(yīng)用程序框架(applicationframework)暴露給開發(fā)者。下面列出一些核心庫(kù):系統(tǒng)C庫(kù)——標(biāo)準(zhǔn)C系統(tǒng)庫(kù)(libc)的BSD衍生,調(diào)整為基于嵌入式Linux設(shè)備媒體庫(kù)——基于PacketVideo的OpenCORE。這些庫(kù)支持播放和錄制許多流行的音頻和視頻格式,以及靜態(tài)圖像文件,包括MPEG4、H.264、MP3、AAC、AMR、JPG、PNG界面管理——管理訪問(wèn)顯示子系統(tǒng)和無(wú)縫組合多個(gè)應(yīng)用程序的二維和三維圖形層LibWebCore——新式的Web瀏覽器引擎,驅(qū)動(dòng)Android瀏覽器和內(nèi)嵌的web視圖SGL——基本的2D圖形引擎3D庫(kù)——基于OpenGLES1.0APIs的實(shí)現(xiàn)。庫(kù)使用硬件3D加速或包含高度優(yōu)化的3D軟件光柵FreeType——位圖和矢量字體渲染SQLite——所有應(yīng)用程序都可以使用的強(qiáng)大而輕量級(jí)的關(guān)系數(shù)據(jù)庫(kù)引擎2.4、ApplicationFramework通過(guò)提供開放的開發(fā)平臺(tái),Android使開發(fā)者能夠編制極其豐富和新穎的應(yīng)用程序。開發(fā)者可以自由地利用設(shè)備硬件優(yōu)勢(shì)、訪問(wèn)位置信息、運(yùn)行后臺(tái)服務(wù)、設(shè)置鬧鐘、向狀態(tài)欄添加通知等等,很多很多。開發(fā)者可以完全使用核心應(yīng)用程序所使用的框架APIs。應(yīng)用程序的體系結(jié)構(gòu)旨在簡(jiǎn)化組件的重用,任何應(yīng)用程序都能發(fā)布他的功能且任何其他應(yīng)用程序可以使用這些功能(需要服從框架執(zhí)行的安全限制)。這一機(jī)制允許用戶替換組件。所有的應(yīng)用程序其實(shí)是一組服務(wù)和系統(tǒng),包括:視圖(View)——豐富的、可擴(kuò)展的視圖集合,可用于構(gòu)建一個(gè)應(yīng)用程序。包括包括列表、網(wǎng)格、文本框、按鈕,甚至是內(nèi)嵌的網(wǎng)頁(yè)瀏覽器內(nèi)容提供者(ContentProviders)——使應(yīng)用程序能訪問(wèn)其他應(yīng)用程序(如通訊錄)的數(shù)據(jù),或共享自己的數(shù)據(jù)資源管理器(ResourceManager)——提供訪問(wèn)非代碼資源,如本地化字符串、圖形和布局文件通知管理器(NotificationManager)——使所有的應(yīng)用程序能夠在狀態(tài)欄顯示自定義警告活動(dòng)管理器(ActivityManager)——管理應(yīng)用程序生命周期,提供通用的導(dǎo)航回退功能2.5、ApplicationsAndroid裝配一個(gè)核心應(yīng)用程序集合,包括電子郵件客戶端、SMS程序、日歷、地圖、瀏覽器、聯(lián)系人和其他設(shè)置。所有應(yīng)用程序都是用Java編程語(yǔ)言寫的。更加豐富的應(yīng)用程序有待我們?nèi)ラ_發(fā)!3算法設(shè)計(jì)與實(shí)現(xiàn)本算法分為圖像的預(yù)處理和火焰目標(biāo)判定兩部分。預(yù)處理是指運(yùn)用上述理論對(duì)采集到的圖像進(jìn)行一些處理,為后續(xù)的火焰識(shí)別做好準(zhǔn)備。其主要目標(biāo)是把火焰目標(biāo)從圖像中分割出來(lái),包括幀差法提取前景,閾值法分割目標(biāo),形態(tài)濾波等步驟。通過(guò)預(yù)處理就能把火焰目標(biāo)從圖像中分割出來(lái),最后就是提取火焰的特征進(jìn)行判定是否發(fā)生了火災(zāi)?;馂?zāi)發(fā)生時(shí),其各種物理現(xiàn)象在圖像上的表現(xiàn)也是十分明顯。其主要特征包括顏色值和亮度、面積變化、邊緣變化、形體變化、閃動(dòng)規(guī)律、分層變化等[8]。為了保證算法的實(shí)時(shí)性,必須研究早期火焰的圖像特征,并選取可靠有效的特征做為識(shí)別判據(jù)。本文選取了火焰目標(biāo)的顏色值和亮度、面積、圓心度和火焰尖角數(shù)作為判據(jù),只有當(dāng)所有判據(jù)都滿足,才識(shí)別為火災(zāi),其算法流程如下圖1所示。具體實(shí)現(xiàn)步驟如下所示。開始開始打開攝像頭判斷是否是第一幀采集一幀圖像背景建模(幀差)初始化是否大于15幀背景是否發(fā)生了變化Otsu求閥值閥值化開運(yùn)算(去噪)求出目標(biāo)區(qū)域目標(biāo)區(qū)域的亮度、顏色值是否在范圍內(nèi)求出目標(biāo)區(qū)域面積、周長(zhǎng)、圓心度往后取四幀,求面積周長(zhǎng)、圓心度計(jì)算連續(xù)五幀面積差面積是否增大計(jì)算尖角數(shù)尖角是否大于8識(shí)別出火焰,畫紅框標(biāo)記,并保存成圖像創(chuàng)建LED蜂鳴器報(bào)警線程創(chuàng)建GSM蜂鳴器報(bào)警線程YYNNNYNYNYYN更新移動(dòng)平均更新背景圖1算法流程圖Figure1algorithmflowchart3.1彩色圖像灰度化本文使用OpenCv打開攝像頭,然后從攝像頭中獲取每一幀圖像。攝像頭采集到的是RGB圖像,而RGB圖像的每個(gè)像素有三個(gè)分量分別表示R、G、B。經(jīng)測(cè)試本系統(tǒng)所使用的攝像頭采集到的圖像長(zhǎng)為640像素,寬為480像素。這樣一張彩色圖所占的內(nèi)存為640*480*3/1024=900Kb,對(duì)于arm6410開發(fā)板來(lái)說(shuō)計(jì)算量過(guò)大,而轉(zhuǎn)換為灰度圖像只有300Kb所以首先要將獲取的RGB圖像轉(zhuǎn)換為灰度圖像再進(jìn)行處理。這樣可以有效地提高程序運(yùn)行效率。實(shí)際上RGB并不能反映圖像的形態(tài)特征,只是從光學(xué)的原理上進(jìn)行顏色的調(diào)配,而灰度圖像能反映整幅圖像的色度和亮度等級(jí)分布。3.2幀差法提取前景幀差法是最簡(jiǎn)單的背景減除方法,基本原理就是用一幀減去另一幀(也可能是后幾幀),然后將足夠大的差別標(biāo)為前景,這種方法往往能捕捉運(yùn)動(dòng)目標(biāo)的邊緣。因?yàn)樗谋尘澳P途褪巧弦粠膱D,所以不需要建模,其背景不積累,更新速度快、算法簡(jiǎn)單、計(jì)算量小。綜合考慮開發(fā)板的運(yùn)行效率本文使用幀差法實(shí)現(xiàn)背景減除。簡(jiǎn)而言之,假如pFrame為攝像頭采集到的原始圖像,pBkimg為存儲(chǔ)背景的圖像空間結(jié)構(gòu),pFrimg為存儲(chǔ)幀差結(jié)果的圖像空間結(jié)構(gòu),則實(shí)現(xiàn)幀差的過(guò)程如下:cvCvtColor(pFrame,pFrImg,CV_BGR2GRAY);//將pFrImg轉(zhuǎn)換為灰度前景圖cvCvtColor(pFrame,pBkImg,CV_BGR2GRAY);//將pFrImg轉(zhuǎn)換為灰度背景圖cvConvert(pFrImg,pFrMat);//將背景圖像數(shù)據(jù)轉(zhuǎn)換為矩陣數(shù)據(jù)。cvConvert(pFrImg,pBkMat);//將前景圖像數(shù)據(jù)轉(zhuǎn)換為矩陣數(shù)據(jù)。cvConvert(pFrImg,pFrameMat);//將當(dāng)前幀圖像轉(zhuǎn)換為矩陣數(shù)據(jù)。cvAbsDiff(pFrameMat,pBkMat,pFrMat);//幀差,結(jié)果存在前景矩陣中。cvConvert(pFrMat,pFrImg);//將前景矩陣轉(zhuǎn)換為圖像格式,用以顯示。cvConvert(pBkMat,pBkImg);cvShowImage("frame",pFrame);顯示當(dāng)前幀圖像。cvShowImage("frimg",pFrImg);//幀差顯示結(jié)果。cvShowImage("bkimg",pBkImg);//顯示上一時(shí)刻灰度圖像幀差效果為圖1所示,左邊圖像為當(dāng)前幀RGB圖像pFrame,右邊圖像為上一時(shí)刻灰度圖像pBkImg,中間圖像為幀差結(jié)果。從實(shí)驗(yàn)結(jié)果可以看出,當(dāng)有移動(dòng)物體進(jìn)入時(shí),幀差法能準(zhǔn)確檢測(cè)出運(yùn)動(dòng)目標(biāo)。圖2.背景減除Figure2.BackgroundDeduction3.3二值閾值化在完成了背景減除之后,得到了目標(biāo)前景,這時(shí)希望對(duì)目標(biāo)前景圖像中的像素做出最后的決策,或直接剔除一些低于或高于一定值的像素。本文使用基于閾值的分割方法,在OpenCv中,函數(shù)cvThreshold()可以完成這些任務(wù)。其基本思想是給定一個(gè)數(shù)組和一個(gè)閾值,然后根據(jù)數(shù)組中的每個(gè)元素的值是低于還是高于閾值而進(jìn)行一些處理。閾值的選取本文使用Ostu法,原因在于本系統(tǒng)涉及到網(wǎng)絡(luò)傳輸視頻,而采用了網(wǎng)絡(luò)攝像頭,而普遍的網(wǎng)絡(luò)攝像頭像素過(guò)低,對(duì)光線明暗變化過(guò)于敏感。如果把閾值設(shè)為固定值,則分割效果容易受到天氣變化的影響,比如晴天和陰天分割出的圖像效果不一樣。而相比自適應(yīng)閾值,Ostu法自動(dòng)選取的閾值更準(zhǔn)確,該方法在一定條件下不會(huì)受圖像亮度與對(duì)比度的影響。閾值的類型本文選取CV_THRESH_BINARY,即二值閾值化,對(duì)應(yīng)的操作是:dst=(src>T)?M:0。這樣分割出的圖像的所有像素值只可能是0或者是255,下一步就可通過(guò)掃描圖像中的白點(diǎn)數(shù)來(lái)獲得目標(biāo)的范圍。取得目標(biāo)的范圍后,以后的步驟就只需要在這個(gè)范圍內(nèi)計(jì)算,而不需要每次都掃描完整幅圖像。這對(duì)于6410開發(fā)板來(lái)說(shuō)能節(jié)省不少開銷,提高程序的運(yùn)行效率。具體過(guò)程如下:intThreshold=ostu((char*)pFrImg->imageData,pFrImg->height,pFrImg->widthStep,0,0,pFrImg->widthStep,pFrImg->height,1);//用Ostu法求出閾值。cvThreshold(pFrImg,pFrImg,threshold,255.0,CV_THRESH_BINARY);//二值閾值化幀差得到的前景圖。GetAim(pFrImg);//求出目標(biāo)范圍,即得到top,bottom,left,right四個(gè)點(diǎn)。cvRectangle(pFrImg,cvPoint(left,top),cvPoint(right,bottom),CV_RGB(255,255,255),1,8,0);//用白色矩形畫出目標(biāo)范圍。二值閾值化的效果如圖2所示,左為當(dāng)前幀圖像,右為上一時(shí)刻灰度圖像,中為二值閾值化結(jié)果,在分割出目標(biāo)后,并求出其面積用白色矩形表示。圖3.圖像分割Figure3.ImageSegmentation3.4圖像形態(tài)學(xué)去噪圖像形態(tài)學(xué)經(jīng)常在通過(guò)閾值化獲得的二進(jìn)制圖像中完成,因?yàn)榕蛎浭乔笞畲笾挡僮?,腐蝕是求最小值的操作,所以形態(tài)學(xué)也可以用于灰度圖像,它具有定位效果好、分割精度高、抗噪聲性能好的特點(diǎn)[7]??梢钥吹缴弦徊接瞄撝捣指畛龅膱D像pFrImg,周圍有許多毛刺,它會(huì)干擾后面算圓形度和尖角數(shù),所以有必要對(duì)二值閾值化圖像進(jìn)行去噪,以分割出更精確的火焰目標(biāo)。本文使用的是開運(yùn)算,即首先將其腐蝕然后再膨脹,開運(yùn)算通常可以用來(lái)統(tǒng)計(jì)二值圖像中的區(qū)域數(shù),消除高于其鄰近的孤立點(diǎn)。具體過(guò)程如下:cvErode(pFrImg,pFrImg,0,1);//進(jìn)行腐蝕操作。cvDilate(pFrImg,pFrImg,0,1);//進(jìn)行膨脹操作。去噪之后的效果如下圖3所示,可以看到中間圖像pFrImg周圍已沒(méi)有噪聲,分割精度較之前有所提高。圖4.形態(tài)學(xué)濾波Figure4.Morphologicalfiltering3.5火焰目標(biāo)判定3.5.1計(jì)算顏色值火焰有著與眾不同的特征,它的顏色、溫度、形狀以及跳動(dòng)的形式都可以作為識(shí)別的依據(jù),任何RGB圖像中只要滿足R>=G且G>B的顏色都可以看作是火焰。但是這種模型的誤報(bào)會(huì)很多,可以把RGB圖像模式轉(zhuǎn)換為HSV顏色模式。這個(gè)模型中的顏色參數(shù)分別是:色調(diào)(H),飽和度(S),亮度(V),然后通過(guò)精確計(jì)算出每一幀圖像的亮度和顏色值,篩選出火焰物體。通過(guò)上一步的圖像分割,已經(jīng)得到了目標(biāo)區(qū)域,把攝像頭采集到的RGB圖像轉(zhuǎn)換為HSV顏色模式后就可以計(jì)算該目標(biāo)區(qū)域的亮度和顏色值,通過(guò)多次實(shí)驗(yàn)統(tǒng)計(jì)得出,火焰的亮度值平均大于180,而顏色值則平均小于70,所以選取這兩個(gè)值作為顏色判斷的閾值。但是該判定條件的缺陷在于只能判定常見(jiàn)的火焰,而不能識(shí)別其它顏色的火焰,比如酒精燃燒時(shí)的藍(lán)色火焰。因此,顏色判據(jù)還需要配合后續(xù)的判據(jù)使用。顏色亮度值計(jì)算如下:cvCvtColor(pFrame,HSV,CV_BGR2HSV);//經(jīng)測(cè)試原圖是bgr格式doublebright_value_sum=0.0;doublecolor_value_sum=0.0;intaimNum=0;for(inti=top;i<=bottom;i++)for(intj=left;j<=right;j++){bright_value_sum+=((uchar*)(HSV->imageData+i*HSV->widthStep))[j*HSV->nChannels+2];color_value_sum+=((uchar*)(HSV->imageData+i*HSV->widthStep))[j*HSV->nChannels];aimNum++;}*bright=bright_value_sum/aimNum;*color=color_value_sum/aimNum;3.5.2計(jì)算面積早期火災(zāi)是火災(zāi)發(fā)生后其不斷發(fā)展的過(guò)程。在這個(gè)過(guò)程中,火災(zāi)的物理特征在圖像上的表現(xiàn)是,火焰目標(biāo)區(qū)域的面積不斷發(fā)生變化,其規(guī)律是在連續(xù)幾幀圖像中,分割出的火焰目標(biāo)區(qū)域的面積是呈增長(zhǎng)趨勢(shì)的[9]。系統(tǒng)對(duì)采集到的顏色亮度在范圍內(nèi)的圖像,計(jì)算目標(biāo)區(qū)域面積并連續(xù)往后取4幀,計(jì)算目標(biāo)區(qū)域面積,如果圖像沒(méi)有很大變化,系統(tǒng)將放棄這5幀圖像,更新背景繼續(xù)進(jìn)行檢測(cè)。如果有火災(zāi)發(fā)生,則連續(xù)5幀圖像的目標(biāo)區(qū)域像素會(huì)有一定增長(zhǎng),此時(shí)再進(jìn)入下一步檢測(cè)算法。面積算法實(shí)現(xiàn)如下:inti,j,tmp=0;for(i=top;i<bottom;i++)for(j=left;j<right;j++)//計(jì)算白點(diǎn)數(shù)目if(((uchar*)(pImage->imageData+i*pImage->widthStep))[j]==255)tmp++;3.5.3計(jì)算分散度火災(zāi)發(fā)生時(shí)的火焰在圖像上表現(xiàn)出不規(guī)則形狀,而其它的干擾源比如手電筒、蠟燭、白熾燈則表現(xiàn)出比較規(guī)則形狀,由此可用分散度作為排除常見(jiàn)干擾源的判據(jù)。假設(shè)圖像目標(biāo)區(qū)域的面積為S,周長(zhǎng)為L(zhǎng),則分散度的計(jì)算為:L*L/S*(4*3.14)。目標(biāo)區(qū)域的面積相同,則其形狀越規(guī)則,其周長(zhǎng)越小。周長(zhǎng)越大則說(shuō)明其形狀越不規(guī)則。查閱資料得到常見(jiàn)分散度如下表1,根據(jù)數(shù)據(jù)選擇合適的閾值。表1.常見(jiàn)分散度Table1.Commondispersion幀編號(hào)12345鎢絲燈1.0961.1041.0551.5031.286蠟燭1.7021.8111.7871.6511.768火焰目標(biāo)2.7012.8073.9804.0874.8043.5.4計(jì)算尖角數(shù)尖角的識(shí)別過(guò)程為:尖角的分割、特征提取和識(shí)別[10]。尖角的分割可以采用前面提到的分割方法,特征點(diǎn)的提取主要是幾何形狀特性:目標(biāo)的高度、寬度、體態(tài)比以及面積等。對(duì)于火焰尖角來(lái)說(shuō),特征點(diǎn)首先應(yīng)該是它的頂點(diǎn),頂點(diǎn)是局部的極值點(diǎn),尖角頂點(diǎn)可能是多個(gè)點(diǎn),那就都提取為特征點(diǎn)。圖4為使用尖角檢測(cè)算法識(shí)別出來(lái)的一個(gè)尖角,用圓形標(biāo)記。圖5.火焰尖角Figure5.FlameAngle實(shí)現(xiàn)尖角判據(jù)的另一個(gè)問(wèn)題在于如何確定尖角跳動(dòng)的閾值,即找出早期火災(zāi)火焰與其它發(fā)光物體尖角跳動(dòng)特性的區(qū)別,以便區(qū)分出火災(zāi)和其它干擾現(xiàn)象。對(duì)不同發(fā)光體同一序列的連續(xù)五幀圖像做尖角比較試驗(yàn),得到如下表2數(shù)據(jù)。表2.常見(jiàn)發(fā)光物體尖角數(shù)Table2.Commonlight-emittingAnglenumberobject幀編號(hào)12345火焰尖角數(shù)個(gè)數(shù)6915921白熾燈尖角數(shù)12111移動(dòng)電筒尖角數(shù)11212晃動(dòng)蠟燭尖角數(shù)21112由此可見(jiàn)早期火災(zāi)火焰的尖角數(shù)變化幅度較大。而其它干擾物的的尖角數(shù)則保持較小的波動(dòng)。由實(shí)驗(yàn)結(jié)果可以確定判定火焰目標(biāo)的尖角數(shù)目的閾值為8。3.6最終判定當(dāng)以上判據(jù)都滿足時(shí),就認(rèn)為是發(fā)生了火災(zāi),程序?qū)?dòng)報(bào)警進(jìn)程進(jìn)行報(bào)警。pthread_tth_a,th_b;pthread_create(&th_a,NULL,gsm,NULL);//創(chuàng)建gsm線程pthread_create(&th_b,NULL,buzzer,NULL);//創(chuàng)建蜂鳴器線程4結(jié)束語(yǔ)本文研究了基于視頻特征的火災(zāi)火焰識(shí)別算法,研究了提取前景的方法,圖像分割方法,和圖像形態(tài)學(xué)的濾波作用。從理論上分析了火災(zāi)火焰圖像區(qū)域的顏色值、亮度、面積、圓形度和邊緣抖動(dòng)等特征。解決了本文開頭提出的兩個(gè)問(wèn)題,對(duì)于提取火災(zāi)火焰本文采用背景減除提取出前景,然后采用基于閾值的分割方法,分割出目標(biāo)區(qū)域。對(duì)于第二個(gè)問(wèn)題,本文采用了火焰的顏色特征、面積變化特征、圓形度特征和尖角數(shù)目來(lái)綜合判別火焰目標(biāo)。經(jīng)實(shí)驗(yàn),該算法能正確識(shí)別火災(zāi)火焰,能排除孤立亮點(diǎn)、煙頭、受控火焰和移動(dòng)火焰等干擾,降低誤報(bào)率和漏報(bào)率。存在的缺陷是由于本系統(tǒng)采用網(wǎng)絡(luò)攝像頭,而網(wǎng)絡(luò)攝像頭只有30萬(wàn)像素,所以采集到的圖像有所失真,容易受到光線變化的干擾。參考文獻(xiàn)[1]王殊,竇征.火災(zāi)探測(cè)及其信號(hào)處理[M].武漢:華中理工大學(xué)出版社,1998,33(11):233~236.[2]HealeyG,SlaterD,LinTA.D.Asystemforreal-timefiredetectionComputerVisionandPatternRecognition[J].1993.ProceedingsCVPR93,1993IEEEComputerSocietyConferenceon15-17June1993:605-606.[3]朱虹.?dāng)?shù)字圖像處理基礎(chǔ).北京:科學(xué)出版社,2005.[4]何斌,馬天予,王運(yùn)堅(jiān)等.VisualC++數(shù)字圖像處理.北京:人民郵電出版社,2001.[5]付忠良.圖像閾值選取方法Otsu方法的推廣[J].計(jì)算機(jī)應(yīng)用.2000,20(5):37-39[6]岡薩雷斯.數(shù)字圖像處理(第二版)[M].電子工業(yè)出版.2003,420~453.[7]陳瑩,吳愛(ài)國(guó).基于圖像處理的火災(zāi)監(jiān)測(cè)系統(tǒng)軟件設(shè)計(jì)[J].低壓電器.2006,1:32

溫馨提示

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

評(píng)論

0/150

提交評(píng)論