亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        應(yīng)用Camshift跟蹤算法提高視頻中人臉檢測速度①

        2020-09-22 07:45:40孫凱旋
        關(guān)鍵詞:檢測

        孫凱旋

        (西南交通大學(xué) 電氣工程學(xué)院,成都 610031)

        人工智能正在影響著人類的生產(chǎn)和生活,對(duì)視頻的處理隨處可見.其中,人臉檢測是數(shù)字圖像處理領(lǐng)域的重要研究領(lǐng)域[1],是很多涉及人臉的應(yīng)用程序的基礎(chǔ)[2],研究和處理人臉在視頻監(jiān)控中的情況是一項(xiàng)非常有前景的方向[3].但在實(shí)踐中人臉識(shí)別技術(shù)還存在一些不足,如人臉檢測速度較慢[4],因此研究提高人臉檢測的快速性和準(zhǔn)確性是非常有意義的[5].

        OpenCV 是常見的人臉檢測工具,OpenCV 被廣泛應(yīng)用于人機(jī)互動(dòng)、物體識(shí)別、圖像分割、運(yùn)動(dòng)跟蹤、機(jī)器人、機(jī)器視覺、汽車安全駕駛等領(lǐng)域[6].AdaBoost(Adaptive Boosting) 方法是基于學(xué)習(xí),借助Haar 特征,把一組弱分類器提升為強(qiáng)分類器,級(jí)聯(lián)檢測效率較高[7],相對(duì)于其他的檢測方法效果較好,但是還存在著檢測率和檢測效率不足的問題[8].OpenCV 自帶工具中,其用于篩選大量Haar 特征和生成級(jí)聯(lián)分類器的訓(xùn)練階段非常繁瑣且需要大量計(jì)算[1].傳統(tǒng)人臉檢測方法速度較慢,很難滿足對(duì)實(shí)時(shí)性要求較高的場合.基于檢測速度的提高,本文提出在人臉檢測中應(yīng)用跟蹤算法,實(shí)用的目標(biāo)跟蹤算法不僅要求能夠準(zhǔn)確實(shí)時(shí)地跟蹤目標(biāo),而且要求在光照變化、目標(biāo)相似等復(fù)雜的背景下也能有較強(qiáng)的抗干擾能力[9].目標(biāo)跟蹤是計(jì)算機(jī)視覺領(lǐng)域發(fā)展較快的一個(gè)方向.近些年,Meanshift 算法在目標(biāo)跟蹤方面應(yīng)用廣泛,但也有不足之處,它無法對(duì)目標(biāo)模型進(jìn)行更新.為解決該算法無自適應(yīng)問題,Bradski在 Meanshift 算法的基礎(chǔ)上提出基于顏色概率信息的Camshift 算法[10].

        本文將人臉檢測算法檢測出來的人臉區(qū)域作為Camshift 算法的初始窗口[11],實(shí)現(xiàn)由每一幀的人臉檢測轉(zhuǎn)變?yōu)槿四槄^(qū)域跟蹤以提高檢測效率和跟蹤實(shí)時(shí)性[11].此外,針對(duì)光照影響也做出了相應(yīng)處理,并在VS 2017+OpenCV 3.4.1 實(shí)驗(yàn)環(huán)境下實(shí)驗(yàn)驗(yàn)證,結(jié)果達(dá)到預(yù)期效果.

        1 整體設(shè)計(jì)

        在OpenCV 視覺庫中,圖片是以Mat 數(shù)據(jù)類型存儲(chǔ)的,Mat 類可以被看作是OpenCV 中C++版本的矩陣類,對(duì)圖片的操作就是對(duì)Mat 對(duì)象的操作.視頻是由一幀一幀的圖片組成,所以處理視頻也就是處理視頻中的每一幀圖片.傳統(tǒng)的人臉檢測方法是對(duì)每一幀圖像用級(jí)聯(lián)檢測器進(jìn)行人臉檢測,然而對(duì)于采用Haar 特征的檢測方法,由于大都是浮點(diǎn)數(shù)運(yùn)算,雖然相對(duì)于LBP 特征檢測的精度較高,但是檢測的速度很慢.由于視頻對(duì)實(shí)時(shí)性的要求很高,傳統(tǒng)的人臉檢測方法并不能滿足實(shí)際需求.而目標(biāo)跟蹤算法可以實(shí)現(xiàn)準(zhǔn)確的跟蹤目標(biāo)并且速度很快,可以滿足視頻對(duì)實(shí)時(shí)性的需求.因此將目標(biāo)跟蹤結(jié)合到人臉檢測中以改進(jìn)傳統(tǒng)算法.

        本文提出的算法利用了直方圖均衡化消除光照影響并對(duì)檢測到的人臉區(qū)域設(shè)為ROI 區(qū)域然后進(jìn)行跟蹤,同時(shí)要設(shè)定一個(gè)閾值,每隔固定幀數(shù)進(jìn)行一次人臉檢測,用來更新數(shù)據(jù).

        整體流程如圖1所示.

        圖1 系統(tǒng)整體流程圖

        2 人臉檢測

        在OpenCV 中CascadeClassifier 是包含級(jí)聯(lián)分類器的一個(gè)類,用于人臉檢測,該分類器可以使用Haar 和LBP 兩種特征.Haar 特征和LBP 特征有以下區(qū)別:

        (1) Haar 中數(shù)據(jù)是浮點(diǎn)數(shù),但LBP 中數(shù)據(jù)是整數(shù).

        (2) LBP 訓(xùn)練需要的樣本數(shù)量要比Haar 大.

        (3)同樣的樣本空間,Haar 訓(xùn)練出來的數(shù)據(jù)檢測結(jié)果要比LBP 準(zhǔn)確.

        (4) LBP 的速度一般可以比Haar 快幾倍.

        2.1 AdaBoost 算法

        Haar 特征是一種矩形特征由Papageorgiou 等提出,并被Viola 等應(yīng)用到人臉識(shí)別系統(tǒng)中.它的定義是圖像中相鄰區(qū)域內(nèi)灰度值差的總和,也就是相鄰區(qū)域內(nèi)白色像素減去黑色像素之差的和,反應(yīng)了相鄰區(qū)域內(nèi)白色區(qū)域到黑色區(qū)域的梯度變化趨勢.Haar 矩形特征經(jīng)過不斷的擴(kuò)展其特征數(shù)量不斷的增加,經(jīng)過Lienhart等的不斷努力,現(xiàn)在Haar 矩形特征集已經(jīng)擴(kuò)展到16種[12]如圖2所示.

        一種Haar 特征就是一個(gè)弱分類器,定義如下:

        其中,f(x)為Haar 矩形特征值,λ 是調(diào)節(jié)符號(hào),ω定義為:

        圖2 Haar 據(jù)性特征集合

        N1為正樣本數(shù),N2為負(fù)樣本數(shù),M1為正樣本平均特征值,M2為負(fù)樣本平均特征值,如M1> ω,λ=1,否則λ=-1.當(dāng)η 為1 時(shí),判定為目標(biāo),即檢測到人臉目標(biāo),否則,未檢測到目標(biāo)[7].

        弱分類器的檢測能力很弱,將若干個(gè)弱分類器以線性方式組合可以形成強(qiáng)分類器.Adaboost 算法就實(shí)現(xiàn)了該過程,其算法核心是對(duì)同一訓(xùn)練集來訓(xùn)練多個(gè)弱分類器,最終對(duì)這些弱分類器進(jìn)行結(jié)合組成分類能力更強(qiáng)的強(qiáng)分類器.

        AdaBoost 算法的流程:(1)增加其中被上輪弱分類器錯(cuò)誤分類的樣本的權(quán)重,對(duì)于正確分類的樣本要降低它們的權(quán)重.(2)利用加權(quán)多數(shù)表決法.具體做法是:提升誤差率較小的弱分類器的權(quán)重,讓它增加在表決時(shí)的影響,降低誤差較大的弱分類器的權(quán)重,減小在表決時(shí)的影響.

        2.2 CascadeClassifier 級(jí)聯(lián)分類器

        級(jí)聯(lián)分類器是多個(gè)強(qiáng)分類器的組合,對(duì)目標(biāo)圖像采用多個(gè)強(qiáng)分類器檢測得到檢測結(jié)果.CascadeClassifier是OpenCV 下objdetect 模塊中一個(gè)類,可以實(shí)現(xiàn)對(duì)目標(biāo)的檢測.實(shí)現(xiàn)方式是對(duì)級(jí)聯(lián)分類器與滑動(dòng)窗口機(jī)制進(jìn)行結(jié)合,支持利用OpenCV 中的多種特征進(jìn)行目標(biāo)檢測.

        CascadeClassifier 實(shí)現(xiàn)了幾個(gè)重要的方法,其中包括load()和detectMultiScale().load()用來加載已經(jīng)訓(xùn)練好的模型,detectMultiScale()則實(shí)現(xiàn)了多尺度的檢測過程,利用CascadeClassifier 實(shí)現(xiàn)人臉檢測的流程如圖3所示.

        圖3 人臉檢測流程圖

        3 Camshift 目標(biāo)跟蹤

        Camshift 是Meanshift 跟蹤算法的改進(jìn)算法,可以做到連續(xù)自適應(yīng),能夠?qū)崿F(xiàn)自動(dòng)調(diào)整窗口大小,可以檢測尺寸發(fā)生變化的目標(biāo).該算法核心是對(duì)每幀圖像均作Meanshift 運(yùn)算,然后把上一幀的結(jié)果(窗口中心位置與大小)設(shè)為下一幀Meanshift 算法的窗口的初始值,按照此方法一直迭代下去.Camshift 算法最重要的一點(diǎn)是當(dāng)目標(biāo)發(fā)生形變的時(shí)候,能夠做到自適應(yīng)的改變區(qū)域達(dá)到繼續(xù)跟蹤的目的.

        3.1 反向投影(BackProiect)

        反向投影是一種方式:就是記錄指定圖像中每個(gè)像素是怎樣適應(yīng)直方圖模板中像素布局的.

        RGB 顏色空間對(duì)光照亮度變化敏感,在目標(biāo)跟蹤中為了減少光照強(qiáng)度變化對(duì)目標(biāo)跟蹤的影響,將目標(biāo)圖像由RGB 顏色空間映射到HSV 顏色空間進(jìn)行處理.HSV 顏色空間中的H 表示物體顏色色調(diào),它直觀地反映了物體的顏色信息,根據(jù)圖像中H 通道的顏色色調(diào)目標(biāo)直方圖,計(jì)算得到目標(biāo)圖像的顏色概率查找表[13].

        利用Hue 直方圖實(shí)現(xiàn)反向投影步驟如下:

        (1)讀取被測試對(duì)象中的每個(gè)像素點(diǎn)的Hue 數(shù)值,同時(shí)在直方圖找到數(shù)值的bin 位置.

        (2)查詢Hue 直方圖中對(duì)應(yīng)bin 的數(shù)值.

        (3)然后把這個(gè)值放在新的圖像中存儲(chǔ),同時(shí)可以把Hue 直方圖中的數(shù)據(jù)進(jìn)行歸一化處理(0-255),從而實(shí)現(xiàn)對(duì)BackProiect 單通道圖像直接顯示.

        (4)通過對(duì)測試圖像每個(gè)像素采取以上步驟,可以得到最終的BackProiect 圖像.

        3.2 Meanshift 算法

        Meanshift 算法的核心是mean(均值)+shift(偏移).假如空間上一點(diǎn)x,在其周圍分布著很多個(gè)點(diǎn)xi通過算出點(diǎn)x偏移到各個(gè)點(diǎn)的偏移量的總和,并求出平均值,該值就是平均偏移量,該偏移量中包含大小和周圍分布較密集的方向.之后點(diǎn)x就會(huì)向著平均偏移量的方向進(jìn)行移動(dòng),然后以該點(diǎn)當(dāng)做新的起點(diǎn)一直迭代到滿足一定的條件為止.

        如圖4所示為均值+偏移的過程,并最終找到中心點(diǎn).

        圖4 均值+偏移示意圖

        3.3 Camshift 算法

        Camshift 算法就是對(duì)視頻里的每一幀圖像全部做Meanshift 運(yùn)算,并且把計(jì)算出來的目標(biāo)的大小及位置當(dāng)做下一幀Meanshift 算法中搜索框的大小起始值及它的中心位置.利用迭代運(yùn)算的形式實(shí)現(xiàn)對(duì)視頻里的目標(biāo)進(jìn)行跟蹤.Camshift 算法流程如圖5所示.

        圖5 Camshift 算法流程圖

        4 圖片預(yù)處理

        在人臉檢測之前非常重要的步驟就是對(duì)視頻圖片做預(yù)處理,去燥[14]是圖片預(yù)處理很重要的一步.去燥主要是去掉圖像中會(huì)對(duì)檢測結(jié)果有影響的噪點(diǎn),在光照不足的情況下會(huì)更容易產(chǎn)生這種噪點(diǎn),同時(shí)光照太強(qiáng)也會(huì)影響檢測結(jié)果.本文將采用高斯平滑進(jìn)行去燥,利用直方圖均衡化來保持光照不變性,同時(shí)為了保證檢測的準(zhǔn)確性還要在人臉檢測之前對(duì)圖像進(jìn)行灰度處理.

        4.1 高斯平滑

        高斯平滑也叫高斯模糊,是圖像預(yù)處理的重要手段,以數(shù)學(xué)角度看,高斯平滑的過程就是圖像與正態(tài)分布做卷積的過程,對(duì)于圖像來說高斯模糊就起到一個(gè)低通濾波器的作用.

        高斯模糊是利用正態(tài)分布來計(jì)算出圖像里每個(gè)像素點(diǎn)的變換.空間為N維時(shí)的正態(tài)分布方程如下:

        在二維空間定義為:

        上述表達(dá)式中r是模糊的半徑,u、v是圖像的像素坐標(biāo),σ為正態(tài)分布的標(biāo)準(zhǔn)偏差.通常σ的數(shù)值越大說明平滑度越好[15].

        4.2 直方圖均衡化

        直方圖均衡化就是把圖像的直方圖平坦化,其作用是減少由于光照變化引起的影響.均衡化就是利用變換函數(shù)將輸入圖像的灰度圖像經(jīng)過非線性轉(zhuǎn)換后,使其直方圖的分布變得更加均勻,從而使圖像中某些局部偏亮或偏暗的部分變得均勻化[16].直方圖均衡化能夠提高圖像對(duì)比度,在光照較強(qiáng)和光照較暗的環(huán)境下可以有效的進(jìn)行補(bǔ)償,該方法主要減弱圖像微小的細(xì)節(jié).

        (1)首先給出原始圖像灰度級(jí)Sk:k=0,1,···,L-1.

        (2)統(tǒng)計(jì)出圖像中的各灰度級(jí)像素個(gè)數(shù)nk.

        (3)根據(jù)下面公式算出各個(gè)灰度級(jí)的頻率:

        其中,n是像素的總個(gè)數(shù),nk是灰度級(jí)Sk像素個(gè)數(shù).

        (4)計(jì)算圖像的累計(jì)直方圖函數(shù):

        (5)對(duì)結(jié)果進(jìn)行取整運(yùn)算:

        (6)得出原直方圖灰度級(jí)到新直方圖灰度級(jí)的映射:

        (7)算出Uk中總的像素個(gè)數(shù)nk.

        (8)運(yùn)算得出原始直方圖對(duì)應(yīng)的新直方圖:

        4.3 灰度處理

        RGB 是彩色圖片,將RGB 轉(zhuǎn)為灰度圖片可以大大降低檢測的難度,灰度變換是通過加權(quán)平均法的方式實(shí)現(xiàn)RGB 到GRAY 的格式轉(zhuǎn)換,公式為:Gray=0.587×green+0.114×blue+0.299×red.

        5 測試和分析

        經(jīng)過測試,傳統(tǒng)算法進(jìn)行人臉檢測時(shí),不僅檢測時(shí)間長而且視頻會(huì)出現(xiàn)卡頓現(xiàn)象.而利用改進(jìn)之后的算法有效的縮減了人臉檢測的時(shí)間,滿足視頻對(duì)實(shí)時(shí)性的需求.

        如圖6所示,每達(dá)到預(yù)設(shè)值就會(huì)進(jìn)行一次人臉檢測用來更新數(shù)據(jù)即ROI 區(qū)域.通過對(duì)大量的人臉檢測運(yùn)行時(shí)間(face detect run_time)和利用Camshift 算法改進(jìn)之后的人臉檢測運(yùn)行時(shí)間(Camshift run_time)進(jìn)行對(duì)比分析,可以得到,用Camshift 目標(biāo)跟蹤算法改進(jìn)的人臉檢測速度提升40%左右,不會(huì)出現(xiàn)視頻播放不流暢的情況,且跟蹤效果比較好.

        圖6 實(shí)驗(yàn)對(duì)比數(shù)據(jù)

        此中的設(shè)定值不是固定不變的,應(yīng)根據(jù)實(shí)際工作場合進(jìn)行調(diào)整,設(shè)定值的大小會(huì)影響檢測的準(zhǔn)確性.

        如圖7所示,為人臉區(qū)域H 通道的直方圖,用于Camshift 算法中直方圖反射投影,從而對(duì)人臉跟蹤.

        圖7 ROI 區(qū)域數(shù)據(jù)直方圖

        如圖8、圖9所示,利用改進(jìn)的算法之后,圖中的人臉矩形區(qū)域就是Camshift 的ROI 區(qū)域,通過圖8和圖9對(duì)比可知,基本消除了光照對(duì)檢測的影響.

        圖8 檢測到的人臉區(qū)域

        圖9 光照對(duì)比檢測

        6 結(jié)論與展望

        本文提出了一種新的人臉檢測算法,在傳統(tǒng)人臉檢測算法中融合Camshift 目標(biāo)跟蹤,該算法可以很好的彌補(bǔ)傳統(tǒng)人臉檢測算法中無法滿足實(shí)時(shí)性需求的缺點(diǎn),并通過圖像處理手段消除噪聲和光照的影響,最后通過測試證實(shí)該方法的可行性.該算法有效的改善了檢測速度和準(zhǔn)確性,適用一定的工作場合,今后的工作會(huì)在此基礎(chǔ)上完善算法使其更適合當(dāng)今的圖像處理問題.

        猜你喜歡
        檢測
        QC 檢測
        “不等式”檢測題
        “一元一次不等式”檢測題
        “一元一次不等式組”檢測題
        “幾何圖形”檢測題
        “角”檢測題
        “有理數(shù)的乘除法”檢測題
        “有理數(shù)”檢測題
        “角”檢測題
        “幾何圖形”檢測題
        日本午夜剧场日本东京热| 99精品成人片免费毛片无码| 男同gay毛片免费可播放| 91视频88av| 亚洲av第一区综合激情久久久| 精品人妻日韩中文字幕| 色欲色香天天天综合网www| 国产高清在线精品一区二区三区 | 久久天天躁狠狠躁夜夜爽| 无码丰满熟妇浪潮一区二区av| 加勒比一本大道大香蕉| 精品极品视频在线观看| 天堂中文а√在线| 中文字幕亚洲乱码熟女在线萌芽| 日韩毛片久久91| 激情都市亚洲一区二区| 亚洲成在人线视av| 999久久久国产精品| 久久国产欧美日韩高清专区| 中文字幕专区一区二区| 国产精品美女一区二区视频 | 少妇性荡欲视频| 久久久久亚洲精品天堂| 女同重口味一区二区在线| 欲求不満の人妻松下纱荣子| 99久久国产露脸精品竹菊传媒| 国产在线成人精品| 国产成版人性视频免费版| 久久777国产线看观看精品 | 日韩三级一区二区三区| 国产精品一区二区久久乐下载| jlzzjlzz全部女高潮| 人妻av午夜综合福利视频| 亚洲精品中文字幕熟女| 精品无码av无码专区| 丰满人妻被中出中文字幕 | 邻居少妇张开腿让我爽视频| 在线精品首页中文字幕亚洲| 日本免费a级毛一片| 亚洲AV永久天堂在线观看| 免费看草逼操爽视频网站|