本發(fā)明涉及視頻數(shù)據(jù)處理領(lǐng)域,特別涉及一種基于人工智能視頻的異常行為檢測方法、系統(tǒng)及裝置。
背景技術(shù):
日常生活中我們所接觸到的監(jiān)控系統(tǒng),基本都是模擬、數(shù)字或模數(shù)混合模式。隨著當(dāng)今社會經(jīng)濟(jì)及科技的不斷發(fā)展,視頻監(jiān)控系統(tǒng)越來越普及,對他要求也越來越高,如交通、軍事、公安、家庭等各個(gè)領(lǐng)域已經(jīng)普遍安裝了視頻監(jiān)控系統(tǒng)來協(xié)助安防工作,然而面對數(shù)不盡的視頻錄像,想要提取些有價(jià)值的錄像非常困難,而且人工檢查還會出現(xiàn)誤檢和漏檢的情況。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供了一種基于人工智能視頻的異常行為檢測方法、系統(tǒng)及裝置,解決了現(xiàn)有技術(shù)視頻錄像中有價(jià)值的信息人工提取困難且易出現(xiàn)誤檢和漏檢情況的技術(shù)問題。
本發(fā)明解決上述技術(shù)問題的技術(shù)方案如下:一種基于人工智能視頻的異常行為檢測方法,包括:
s1、采集視頻數(shù)據(jù);
s2、對采集到的所述視頻數(shù)據(jù)中的人進(jìn)行檢測和跟蹤,當(dāng)檢測到人的異常行為時(shí)向報(bào)警設(shè)備發(fā)送報(bào)警指令。
本發(fā)明的有益效果是:與傳統(tǒng)的人工監(jiān)控相比,本技術(shù)方案可有效地降低誤檢和漏檢概率,減少大量的人力成本,實(shí)現(xiàn)對可疑目標(biāo)的實(shí)時(shí)監(jiān)控并及時(shí)報(bào)警,保障了社會秩序的穩(wěn)定。
在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進(jìn)。
優(yōu)選地,步驟s2包括:
通過背景差分法對所述視頻數(shù)據(jù)的人進(jìn)行檢測,建立并實(shí)時(shí)更新背景模型;
通過顏色直方圖的跟蹤算法對檢測到的所述視頻數(shù)據(jù)中的人進(jìn)行跟蹤,獲取人的運(yùn)動(dòng)軌跡;
根據(jù)所述運(yùn)動(dòng)軌跡判斷人的行為是否為異常行為,如是則向報(bào)警設(shè)備發(fā)送報(bào)警指令。
優(yōu)選地,所述異常行為包括:跑行為、跳行為、蹲行為、爬行為以及徘徊行為。
一種基于人工智能視頻的異常行為檢測系統(tǒng),包括:
采集模塊,用于采集視頻數(shù)據(jù);
檢測模塊,用于對采集到的所述視頻數(shù)據(jù)中的人進(jìn)行檢測和跟蹤,當(dāng)檢測到人的異常行為時(shí)向報(bào)警設(shè)備發(fā)送報(bào)警指令。
優(yōu)選地,檢測模塊具體用于:
通過背景差分法對所述視頻數(shù)據(jù)的人進(jìn)行檢測,建立并實(shí)時(shí)更新背景模型;
通過顏色直方圖的跟蹤算法對檢測到的所述視頻數(shù)據(jù)中的人進(jìn)行跟蹤,獲取人的運(yùn)動(dòng)軌跡;
根據(jù)所述運(yùn)動(dòng)軌跡判斷人的行為是否為異常行為,如是則向報(bào)警設(shè)備發(fā)送報(bào)警指令。
優(yōu)選地,所述異常行為包括:跑行為、跳行為、蹲行為、爬行為以及徘徊行為。
一種基于人工智能視頻的異常行為檢測裝置,包括:網(wǎng)絡(luò)攝像頭、網(wǎng)絡(luò)芯片、處理器和報(bào)警設(shè)備,
所述網(wǎng)絡(luò)攝像頭用于采集視頻數(shù)據(jù);
所述網(wǎng)絡(luò)芯片用于將所述網(wǎng)絡(luò)攝像頭采集到的所述視頻數(shù)據(jù)傳輸給所述處理器;
所述處理器用于對接收到的所述視頻數(shù)據(jù)中的人進(jìn)行檢測和跟蹤,當(dāng)檢測到人的異常行為時(shí)通過所述網(wǎng)絡(luò)芯片向報(bào)警設(shè)備發(fā)送報(bào)警指令。
優(yōu)選地,所述處理器為arm處理器。
附圖說明
圖1為本發(fā)明實(shí)施例提供的一種基于人工智能視頻的異常行為檢測方法的流程示意圖;
圖2為本發(fā)明另一實(shí)施例提供的一種基于人工智能視頻的異常行為檢測系統(tǒng)的結(jié)構(gòu)示意圖;
圖3為本發(fā)明另一實(shí)施例提供的一種基于人工智能視頻的異常行為檢測裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
以下結(jié)合附圖對本發(fā)明的原理和特征進(jìn)行描述,所舉實(shí)例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。
如圖1所示,在一實(shí)施例中,提供一種基于人工智能視頻的異常行為檢測方法,包括:
s1、采集視頻數(shù)據(jù);
s2、對采集到的視頻數(shù)據(jù)中的人進(jìn)行檢測和跟蹤,當(dāng)檢測到人的異常行為時(shí)向報(bào)警設(shè)備發(fā)送報(bào)警指令。
應(yīng)理解,本實(shí)施例的技術(shù)方案可有效地降低誤檢和漏檢概率,減少大量的人力成本,實(shí)現(xiàn)對可疑目標(biāo)的實(shí)時(shí)監(jiān)控并及時(shí)報(bào)警,保障了社會秩序的穩(wěn)定。
具體地,步驟s2包括:
通過背景差分法對視頻數(shù)據(jù)的人進(jìn)行檢測,建立并實(shí)時(shí)更新背景模型;
通過顏色直方圖的跟蹤算法對檢測到的視頻數(shù)據(jù)中的人進(jìn)行跟蹤,獲取人的運(yùn)動(dòng)軌跡;
根據(jù)運(yùn)動(dòng)軌跡判斷人的行為是否為異常行為,如是則向報(bào)警設(shè)備發(fā)送報(bào)警指令。
具體地,該實(shí)施例中,利用分塊更新的背景差分法實(shí)現(xiàn)目標(biāo)檢測,并實(shí)時(shí)更新背景;其次,提出一種基于區(qū)域關(guān)聯(lián)與顏色直方圖的跟蹤方法,實(shí)現(xiàn)人體目標(biāo)跟蹤;最后,依據(jù)人體的運(yùn)動(dòng)特征信息識別出異常行為,并進(jìn)行報(bào)警提示。
應(yīng)理解,該實(shí)施例中,分塊更新的背景差運(yùn)動(dòng)目標(biāo)檢測方法運(yùn)算量小,對外界環(huán)境變化不敏感,能夠準(zhǔn)確地檢測出運(yùn)動(dòng)目標(biāo);基于區(qū)域關(guān)聯(lián)的結(jié)合顏色直方圖的跟蹤方法穩(wěn)定性好,能較好地解決漏跟蹤、誤跟蹤等現(xiàn)象;利用運(yùn)行目標(biāo)檢測與跟蹤結(jié)合的檢測算法(即基于運(yùn)動(dòng)特征的檢測方法),針對不同的異常行為提出不同的判斷標(biāo)準(zhǔn),能夠簡單快速、準(zhǔn)確有效地檢測到人體異常行為,并進(jìn)行報(bào)警提示。
上述實(shí)施例中,通過背景差分法對視頻數(shù)據(jù)的人進(jìn)行檢測之前,對視頻數(shù)據(jù)的每幀圖像進(jìn)行高斯濾波、開運(yùn)算、閾值化,然后加權(quán),建立初始背景模型,具體地,采用高斯濾波器進(jìn)行高斯濾波,開運(yùn)算即先腐蝕后膨脹,閾值化采用二進(jìn)制閾值化。
具體地,高斯濾波器是一類根據(jù)高斯函數(shù)的形狀來選擇權(quán)值的線性平滑濾波器。高斯平滑濾波器對于抑制服從正態(tài)分布的噪聲非常有效。一維零均值高斯函數(shù)為:即g(x)=exp(-x2/(2sigma2),其中,高斯分布參數(shù)sigma決定了高斯函數(shù)的寬度。對于圖像處理來說,常用二維零均值離散高斯函數(shù)作平滑濾波器。
二維高斯函數(shù)為:
其中高斯內(nèi)核大小為:size(3,3),σx=0,σy=0。
開運(yùn)算(openingoperation),其實(shí)就是先腐蝕后膨脹的過程。其數(shù)學(xué)表達(dá)式如下:
dst=open(src,element)=dilate(erode(src,element)),
核是選的morph_rect,內(nèi)核大小為:size(15,15)。
閾值化采用cv_thresh_binary(二進(jìn)制閾值化)。該閾值化類型例如以下式所看到的:
在運(yùn)用該閾值類型的時(shí)候,先要選定一個(gè)特定的閾值量,比如125,這樣,新的閾值產(chǎn)生規(guī)則能夠解釋為大于125的像素點(diǎn)的灰度值設(shè)定為最大值(如8位灰度值最大為255),灰度值小于125的像素點(diǎn)的灰度值設(shè)定為0。
opencv的videomodule中包含了幾種較為常用的背景減除方法,其中混合高斯模型(gaussianofmixturemodels,gmm)方法效果較好,常用的目標(biāo)檢測方法包括:幀間差分法和背景減除法,其中背景減除法的關(guān)鍵在于建立一個(gè)魯棒的背景模型(背景圖像),常用的建立背景模型的方法包括:均值法、中值法、滑動(dòng)平均法、單高斯、混合高斯模型以及codebook等,本實(shí)施例采用混合高斯模型,每個(gè)像素的r、g、b三個(gè)通道像素值的變化分別由一個(gè)混合高斯模型分布來刻畫。這樣的好處在于,同一個(gè)像素位置處可以呈現(xiàn)多個(gè)模態(tài)的像素值變化。
gmm是用多個(gè)高斯模型的加權(quán)和來表示,這樣做的好處是在較簡單的場景下,將只選出一個(gè)較重要的高斯分量,節(jié)省了后期更新背景時(shí)選屬于哪一分量的時(shí)間,提高了速度。對于整個(gè)圖像的每個(gè)像素點(diǎn)都建立了一個(gè)gmm模型,建模過程中運(yùn)用em算法來求解參數(shù)組,一旦模型建立,后面每新來一幀都可以根據(jù)是否符合已建立的背景模型判斷fg/bg,并更新gmm的所有參數(shù)。
每個(gè)gmm由k個(gè)gaussian分布組成,每個(gè)gaussian稱為一個(gè)“component”,這些component線性加成在一起就組成了gmm的概率密度函數(shù):
gmm的log-likelihoodfunction:
第一步:估計(jì)數(shù)據(jù)由每個(gè)component生成的概率(并不是每個(gè)component被選中的概率):對于每個(gè)數(shù)據(jù)xi來說,它由第k個(gè)component生成的概率為
由于式子里的μk和∑k也是需要我們估計(jì)的值,我們采用迭代法,在計(jì)算γ(i,k)的時(shí)候我們假定μk和∑k均已知,我們將取上一次迭代所得的值(或者初始值)。
第二步:估計(jì)每個(gè)component的參數(shù):現(xiàn)在我們假設(shè)上一步中得到的γ(i,k)就是正確的“數(shù)據(jù)xi由componentk生成的概率”,亦可以當(dāng)做該component在生成這個(gè)數(shù)據(jù)上所做的貢獻(xiàn),或者說,我們可以看作xi這個(gè)值其中有γ(i,k)xi這部分是由componentk所生成的。集中考慮所有的數(shù)據(jù)點(diǎn),現(xiàn)在實(shí)際上可以看作component生成了γ(1,k)x1,...,γ(n,k)xn這些點(diǎn)。由于每個(gè)component都是一個(gè)標(biāo)準(zhǔn)的gaussian分布,可以很容易分布求出最大似然所對應(yīng)的參數(shù)值:
其中
第三步:重復(fù)迭代前面兩步,直到似然函數(shù)的值收斂為止。
gmm算法不同于其他的背景相減方法,因?yàn)橛袝r(shí)背景也存在部分區(qū)域的震蕩變化,那如果按照一般的前景檢測方法,則會頻繁的檢測到錯(cuò)誤的前景,gmm算法則有效的克服了這一點(diǎn),那是因?yàn)間mm算法有效的做到了以下幾點(diǎn):
(1)對每個(gè)像素建立多個(gè)高斯模型(即存在多個(gè)滑動(dòng)平均值),那么背景像素就可以在多個(gè)均值之間波動(dòng),而不會被誤判,如果有新的像素值不屬于其中的一個(gè)高斯模型,則認(rèn)為是前景。
(2)不僅僅保存滑動(dòng)平均值,還保存了滑動(dòng)方差,由方差和均值產(chǎn)生了一個(gè)高斯模型,于是我們可以獲知某個(gè)像素值屬于哪個(gè)高斯模型的概率,如果新像素不屬于其中的一個(gè)高斯模型,則認(rèn)為是前景。
(3)增加了學(xué)習(xí)因子,如果某個(gè)模型被擊中的頻率不夠頻繁,那么權(quán)值就會減少,減少到最后把該模型移除,如果一個(gè)像素是前景,那么新的高斯模型會被建立,剛開始權(quán)值較小,但是如果該前景一直不動(dòng),不離開,則權(quán)重加大,慢慢的和背景融為一體,成為了新的背景。
經(jīng)過測試,learningrate(更新速度)為0.1是最優(yōu)。
上述實(shí)施例中,通過顏色直方圖跟蹤方法對檢測到的視頻數(shù)據(jù)中的人進(jìn)行跟蹤,在沒有誤檢的情況下,通過面積匹配率來匹配目標(biāo)是精確的。但如果由于噪聲在目標(biāo)區(qū)域相鄰地方也產(chǎn)生一塊誤檢區(qū)域與目標(biāo)區(qū)域重疊,就會產(chǎn)生誤判。針對該情況,本文提出以顏色直方圖匹配率來輔助檢測。由面積匹配率與顏色直方圖匹配率可得兩個(gè)目標(biāo)的匹配率:rn=avg(au,hij)式中,au為相鄰兩幀目標(biāo)的面積匹配率,hij為兩個(gè)目標(biāo)的顏色直方圖匹配率。大于給定閾值t(一般設(shè)置為0.7)時(shí),認(rèn)為該兩目標(biāo)匹配成功,否則認(rèn)為匹配不成功。當(dāng)場景中的目標(biāo)速度較快、噪聲較多時(shí),可適當(dāng)降低閾值。
具體地,異常行為包括:跑行為、跳行為、蹲行為、爬行為以及徘徊行為。
應(yīng)理解,該實(shí)施例中,正常行為通常是指具有一定周期性、重復(fù)性的狀態(tài),比如日常生活中的走、跑等。而對于異常行為的定義在不同的環(huán)境有不同的標(biāo)準(zhǔn),本實(shí)施例針對室內(nèi)走廊,將與人體正常坐著行為不同的跑行為、跳行為、蹲行為、爬行為和徘徊行為定義為異常行為。
上述實(shí)施例中,采用逼近多變曲線的方法去檢測人物運(yùn)動(dòng)情況。經(jīng)過測試精度(即是原始曲線與近似曲線之間的最大距離)等于3時(shí),針對本文是最優(yōu)算法。經(jīng)典的douglas-peucker算法步驟如下:(1)在曲線首尾兩點(diǎn)a,b之間連接一條直線ab,該直線為曲線的弦;(2)得到曲線上離該直線段距離最大的點(diǎn)c,計(jì)算其與ab的距離d;(3)比較該距離與預(yù)先給定的閾值threshold的大小,如果小于threshold,則該直線段作為曲線的近似,該段曲線處理完畢;(4)如果距離大于閾值,則用c將曲線分為兩段ac和bc,并分別對兩段取信進(jìn)行1~3的處理;(5)當(dāng)所有曲線都處理完畢時(shí),依次連接各個(gè)分割點(diǎn)形成的折線,即可以作為曲線的近似。
如圖2所示,在另一實(shí)施例中,提供一種基于人工智能視頻的異常行為檢測系統(tǒng),包括:
采集模塊1,用于采集視頻數(shù)據(jù);
檢測模塊2,用于對采集到的視頻數(shù)據(jù)中的人進(jìn)行檢測和跟蹤,當(dāng)檢測到人的異常行為時(shí)向報(bào)警設(shè)備發(fā)送報(bào)警指令。
具體地,檢測模塊具體用于:
通過背景差分法對視頻數(shù)據(jù)的人進(jìn)行檢測,建立并實(shí)時(shí)更新背景模型;
通過顏色直方圖的跟蹤算法對檢測到的視頻數(shù)據(jù)中的人進(jìn)行跟蹤,獲取人的運(yùn)動(dòng)軌跡;
根據(jù)運(yùn)動(dòng)軌跡判斷人的行為是否為異常行為,如是則向報(bào)警設(shè)備發(fā)送報(bào)警指令。
具體地,異常行為包括:跑行為、跳行為、蹲行為、爬行為以及徘徊行為。
如圖3所示,在另一實(shí)施例中,提供一種基于人工智能視頻的異常行為檢測裝置,包括:網(wǎng)絡(luò)攝像頭101、網(wǎng)絡(luò)芯片102、處理器103和報(bào)警設(shè)備104,
網(wǎng)絡(luò)攝像頭101用于采集視頻數(shù)據(jù);
網(wǎng)絡(luò)芯片102用于將網(wǎng)絡(luò)攝像頭101采集到的視頻數(shù)據(jù)傳輸給處理器103;
處理器103用于對接收到的視頻數(shù)據(jù)中的人進(jìn)行檢測和跟蹤,當(dāng)檢測到人的異常行為時(shí)通過網(wǎng)絡(luò)芯片102向報(bào)警設(shè)備104發(fā)送報(bào)警指令。
上述實(shí)施例中,處理器103為arm處理器。arm處理器基于linux系統(tǒng)嵌入式開發(fā),采用qt5.4.1結(jié)合opencv和ffmpeg實(shí)現(xiàn)對視頻流的采集、解碼、識別和報(bào)警功能。arm處理器體積小、低功耗、低成本、高性能,大量使用寄存器,指令執(zhí)行速度更快,大多數(shù)數(shù)據(jù)操作都在寄存器中完成,尋址方式靈活簡單,執(zhí)行效率高,指令長度固定。網(wǎng)絡(luò)芯片102是一個(gè)在通信網(wǎng)絡(luò)中提供發(fā)送和接收數(shù)據(jù)邏輯(包括聲音和視頻)的微處理器。網(wǎng)絡(luò)芯片102可為rtl8306s,處理器103可為arms5p4481。網(wǎng)絡(luò)芯片rtl8306s負(fù)責(zé)將網(wǎng)絡(luò)攝像頭101的數(shù)據(jù),通過網(wǎng)絡(luò)芯片rtl8306s傳遞給arms5p4481,同時(shí)將arms5p4481傳出的信息發(fā)送到報(bào)警設(shè)備104。
具體地,該檢測裝置還包括:供電模塊、網(wǎng)絡(luò)變壓器11fb-05nlsop16以及rj45。將鏈接網(wǎng)絡(luò)攝像頭101的網(wǎng)線,插入到模塊的rj45口上,并在數(shù)據(jù)庫填寫網(wǎng)絡(luò)攝像頭101的ip地址、別名、攝像頭登錄用戶名、攝像頭登錄密碼信息。添加時(shí)系統(tǒng)會和網(wǎng)絡(luò)攝像頭進(jìn)行連接測試,如并無法連接到攝像頭,報(bào)警設(shè)備104會有報(bào)警信息提示。初始化系統(tǒng)設(shè)置后,系統(tǒng)開始工作(包括采集和處理數(shù)據(jù)),并將實(shí)時(shí)報(bào)警信,系統(tǒng)運(yùn)行正常。
以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。