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

        ?

        基于SIFT和YOLO的弱目標(biāo)魯棒性實(shí)時(shí)追蹤算法

        2018-11-01 07:10:52姚文明
        計(jì)算機(jī)與現(xiàn)代化 2018年10期
        關(guān)鍵詞:特征

        劉 源,姚文明

        (華北計(jì)算技術(shù)研究所系統(tǒng)七部,北京 100083)

        0 引 言

        目標(biāo)追蹤是一個(gè)非常有前景的,但同時(shí)也是非常有難度的計(jì)算機(jī)視覺問題。目標(biāo)追蹤之所以受到廣泛的關(guān)注,是因?yàn)樗谧詣?dòng)駕駛[1-2]、交通流量監(jiān)測(cè)[3]、監(jiān)視和安全[4]、機(jī)器人技術(shù)[5]、醫(yī)療診斷系統(tǒng)[6]、行為識(shí)別等場(chǎng)景廣泛應(yīng)用[7]。

        目標(biāo)追蹤算法主要分為2大類:第一類是基于相關(guān)性濾波的目標(biāo)追蹤算法,例如,KCF[8]、LCT[9];第二類是基于非相關(guān)性濾波的目標(biāo)追蹤算法,例如,CNT[10]。

        本文目標(biāo)追蹤的研究思路略有不同,主要采用目標(biāo)檢測(cè)與特征提取相結(jié)合的方法。第一步,利用目標(biāo)檢測(cè)算法識(shí)別出當(dāng)前幀中所有的候選目標(biāo);第二步,利用特征提取選出所有候選目標(biāo)中的被追蹤的目標(biāo)。通過對(duì)應(yīng)權(quán)重公式的設(shè)計(jì)以及2類算法有機(jī)結(jié)合實(shí)現(xiàn)對(duì)弱目標(biāo)魯棒性追蹤。弱目標(biāo)主要體現(xiàn)在被追蹤目標(biāo)幾乎被完全遮擋時(shí)仍能穩(wěn)定地作為追蹤目標(biāo);魯棒性主要體現(xiàn)在攝像機(jī)轉(zhuǎn)動(dòng)時(shí)場(chǎng)景變化劇烈的條件下,仍能對(duì)目標(biāo)進(jìn)行穩(wěn)定的跟蹤;當(dāng)追蹤目標(biāo)被完全遮擋后,再次出現(xiàn)在視野中時(shí),算法能繼續(xù)追蹤。本文追蹤算法的思路雖然很簡(jiǎn)單,但是它實(shí)現(xiàn)了傳統(tǒng)圖像算法與機(jī)器學(xué)習(xí)相結(jié)合,并且在多數(shù)測(cè)試集上比更為復(fù)雜的追蹤算法表現(xiàn)更好。

        本文算法步驟:首先,利用YOLO算法識(shí)別出當(dāng)前幀圖像待搜索區(qū)域中的所有目標(biāo)作為候選追蹤目標(biāo)。然后,利用SIFT算法,在所有候選目標(biāo)中找出被追蹤的目標(biāo)。其中,為了滿足實(shí)時(shí)性要求,本文在YOLO算法和SIFT算法的支撐下,以實(shí)時(shí)性為核心設(shè)計(jì)了追蹤算法的整體架構(gòu)。

        1 YOLO和SIFT簡(jiǎn)介

        1.1 YOLO

        YOLO[11](You Only Look Once)是Joseph等人[11]設(shè)計(jì)的一個(gè)最先進(jìn)的實(shí)時(shí)對(duì)象檢測(cè)系統(tǒng),在Titan X上,它以40~90 fps的速度處理圖像,VOC 2007的mAP為78.6%,COCO上的mAP為48.1%。

        YOLO采用卷積網(wǎng)絡(luò)來提取特征,然后使用全連接層來得到預(yù)測(cè)值。網(wǎng)絡(luò)結(jié)構(gòu)參考GooLeNet模型,包含24個(gè)卷積層和2個(gè)全連接層,如圖1所示。對(duì)于卷積層,主要使用1×1卷積來做channel reduction,然后緊跟3×3卷積。對(duì)于卷積層和全連接層,用Leaky ReLU激活函數(shù),最后一層卻采用線性激活函數(shù)。

        圖1 網(wǎng)絡(luò)模型

        圖2 整個(gè)系統(tǒng)

        整體設(shè)計(jì):YOLO算法采用一個(gè)單獨(dú)的CNN模型實(shí)現(xiàn)end-to-end的目標(biāo)檢測(cè),整個(gè)系統(tǒng)如圖2所示:首先將輸入圖片resize到448×448,然后送入CNN網(wǎng)絡(luò),最后處理網(wǎng)絡(luò)預(yù)測(cè)結(jié)果得到檢測(cè)的目標(biāo)。

        1.2 SIFT

        SIFT[12-13](Scale-Invariant Feature Transform)是在空間尺度中尋找極值點(diǎn),并提取出其位置、尺度、旋轉(zhuǎn)不變量作為特征。SIFT是一個(gè)很好的圖像匹配算法,同時(shí)能處理亮度、平移、旋轉(zhuǎn)、尺度的變化,利用特征點(diǎn)來提取特征描述符,最后在特征描述符之間尋找匹配。具體分為4步:

        1)尺度空間極值檢測(cè):搜索所有尺度上的圖像位置。

        2)關(guān)鍵點(diǎn)定位:在每個(gè)候選的位置上,通過一個(gè)擬合精細(xì)的模型來確定位置和尺度。

        3)方向確定:基于圖像局部的梯度方向,分配給每個(gè)關(guān)鍵點(diǎn)位置一個(gè)或多個(gè)方向。

        4)關(guān)鍵點(diǎn)描述:在每個(gè)關(guān)鍵點(diǎn)周圍的鄰域內(nèi),在選定的尺度上測(cè)量圖像局部的梯度。將這些梯度轉(zhuǎn)化為合理的表示。

        2 目標(biāo)追蹤算法設(shè)計(jì)與實(shí)現(xiàn)

        算法的設(shè)計(jì)本著簡(jiǎn)單、精巧、有效的原則,以追求實(shí)用性為第一目標(biāo),這也是本算法能夠成功被工程化的原因。

        2.1 算法整體架構(gòu)

        追蹤算法的流程如圖3:

        1)初始化被追蹤目標(biāo)在第一幀圖像中的大小、位置信息。

        2)根據(jù)初始化信息計(jì)算出被追蹤目標(biāo)的SIFT特征點(diǎn)信息,并把這些特征點(diǎn)信息保存到算法模板庫(kù)中。

        3)開始處理下一幀,如果上一幀追蹤到了目標(biāo),則對(duì)上一幀目標(biāo)出現(xiàn)的附近區(qū)域執(zhí)行YOLO算法,選出所有的候選目標(biāo)。如果上一幀中沒有追蹤到目標(biāo),則對(duì)目標(biāo)最后一次出現(xiàn)的附近區(qū)域執(zhí)行YOLO算法,選出所有的候選目標(biāo)。

        4)對(duì)所有的候選目標(biāo)做第一次篩選,根據(jù)極限速度V計(jì)算出目標(biāo)的最大運(yùn)動(dòng)半徑,然后刪除半徑外的候選目標(biāo)。

        5)當(dāng)候選目標(biāo)大于0個(gè)時(shí),結(jié)合權(quán)重公式選出所有候選目標(biāo)中的被追蹤目標(biāo)。當(dāng)候選目標(biāo)數(shù)量為0時(shí),認(rèn)定目標(biāo)被完全遮擋,輸出相關(guān)信息并且不更新模板,當(dāng)前幀掃描結(jié)束。

        圖3 流程圖

        6)通過權(quán)重公式來判斷目標(biāo)是否被部分遮擋,如果被部分遮擋,不更新模板庫(kù),否則把特征點(diǎn)信息、大小信息更新到模板庫(kù)中。

        7)如果存在下一幀,繼續(xù)執(zhí)行步驟3,否則算法結(jié)束。

        2.2 定制化追蹤特定種類目標(biāo)算法

        在某些特定的場(chǎng)合下,要求只追蹤某一特定種類目標(biāo)。這時(shí)就可以構(gòu)建自己的YOLO模型。首先,自己構(gòu)建這一特定種類目標(biāo)的VOC數(shù)據(jù)集。然后,利用標(biāo)記工具標(biāo)記原始圖像的目標(biāo)區(qū)域。最后,訓(xùn)練這些被標(biāo)記的樣本。這時(shí),目標(biāo)追蹤算法就可以支持追蹤特定種類的目標(biāo)了。

        2.3 尋找被追蹤目標(biāo)的方法

        追蹤算法需要在YOLO算法選出候選目標(biāo)后,通過權(quán)重公式以很大的概率選擇出被追蹤的目標(biāo)。權(quán)重公式如式(1)所示:

        (1)

        式中,w為求得的權(quán)重值,其值越小,此候選目標(biāo)為被追蹤目標(biāo)的概率越大。i為第i個(gè)“特征點(diǎn)對(duì)”,di為第i個(gè)“SIFT特征點(diǎn)對(duì)”的相似程度值。權(quán)重公式之所以被設(shè)計(jì)得如此簡(jiǎn)單,主要考慮以下2個(gè)方面:1)本著簡(jiǎn)單、有效、實(shí)用、易于工程化的原則來設(shè)計(jì)權(quán)重函數(shù);2)YOLO搜索出的汽車邊框是非常緊致的,在利用SIFT算法提取追蹤目標(biāo)的特征點(diǎn)時(shí),干擾區(qū)域的特征點(diǎn)幾乎是提取不到的,這樣被提取的特征點(diǎn)都是被追蹤目標(biāo)本身的特征點(diǎn)。因此,這種簡(jiǎn)單的權(quán)重公式就變得非常有效。

        2.4 追蹤目標(biāo)是否部分遮擋的判斷方法

        u1=sizep/sizec

        (2)

        u2=sizec/sizep

        (3)

        其中,公式(2)的u1為第一個(gè)權(quán)重值,公式(3)的u2為第二個(gè)權(quán)重值。假設(shè)當(dāng)前幀為第0幀。sizep為第-5幀中被追蹤目標(biāo)的大小,sizec為第0幀中被追蹤目標(biāo)的大小。當(dāng)u1<0.5或u2<0.5時(shí),算法認(rèn)為被追蹤目標(biāo)存在部分遮擋,模板不更新。權(quán)重公式之所以這樣設(shè)計(jì)主要考慮以下3個(gè)方面:1)算法以25 fps及以上速度處理圖像時(shí),追蹤目標(biāo)的遮擋是一個(gè)逐漸的過程,連續(xù)的2幀追蹤目標(biāo)的大小相差不大,所以第0幀和第-5幀比較才有意義;2)理論上,追蹤目標(biāo)在間隔4幀的圖像上,追蹤目標(biāo)的大小不會(huì)發(fā)生較大變化,如果發(fā)生較大變化,說明被追蹤目標(biāo)存在遮擋;3)追蹤目標(biāo)可能越來越遠(yuǎn),也可能越來越近,故u1<0.5和u2<0.5滿足任意一個(gè)條件就可以認(rèn)為目標(biāo)存在遮擋。

        2.5 模板更新算法

        在實(shí)現(xiàn)模板更新算法時(shí),系統(tǒng)中只保留一個(gè)被追蹤目標(biāo)模板,通過合理的設(shè)計(jì),算法不需要保存n個(gè)模板,然后投票選出被追蹤目標(biāo)的傳統(tǒng)方式實(shí)現(xiàn),從而大大降低了追蹤算法的時(shí)間復(fù)雜度。模板更新具體策略為:如果被追蹤目標(biāo)被部分遮擋或完全遮擋,模板不更新,否則更新模板。由于以合理地判斷追蹤目標(biāo)是否被遮擋的權(quán)重公式為基礎(chǔ),這樣的模板更新策略經(jīng)過實(shí)驗(yàn)驗(yàn)證非常有效。

        2.6 識(shí)別被局部遮擋的追蹤目標(biāo)

        首先,通過調(diào)整YOLO的thresh(當(dāng)該參數(shù)值設(shè)置得較小時(shí),概率很小的目標(biāo)也會(huì)被識(shí)別出來)參數(shù),使得被遮擋的追蹤目標(biāo)也能被識(shí)別到候選目標(biāo)中,SIFT算法就能在這些候選目標(biāo)中找到被追蹤目標(biāo),從而解決追蹤目標(biāo)被局部遮擋的問題。

        2.7 判斷追蹤目標(biāo)被完全遮擋

        2種情況下,算法認(rèn)為被追蹤目標(biāo)被完全遮擋,第一種,YOLO算法在搜索區(qū)域沒有找出候選目標(biāo)時(shí),追蹤算法認(rèn)為追蹤目標(biāo)被完全遮擋;第二種,在從候選目標(biāo)選擇出追蹤目標(biāo)的過程中,計(jì)算的選擇權(quán)重值過大,認(rèn)為追蹤目標(biāo)被完全遮擋。

        2.8 追蹤目標(biāo)被完全遮擋之后的處理方法

        本文作這樣一個(gè)假設(shè),被追蹤目標(biāo)被橋梁等完全遮擋后,目標(biāo)有很大的概率從它消失的附近區(qū)域再次出現(xiàn)。所以,追蹤目標(biāo)被完全遮擋后,本文的處理方法是:追蹤算法會(huì)使用YOLO一直掃描被追蹤目標(biāo)最后一次出現(xiàn)的附近區(qū)域,一旦附近區(qū)域出現(xiàn)候選目標(biāo),并且與算法內(nèi)的模板庫(kù)成功匹配,即認(rèn)為找到了追蹤目標(biāo)。之后,算法按流程圖繼續(xù)追蹤。

        3 硬件配置及實(shí)驗(yàn)結(jié)果

        3.1 硬件配置

        核心硬件要求為Titan X GPU。在該硬件的配合下,能夠達(dá)到實(shí)時(shí)以至少25 fps的速度處理圖像。

        3.2 實(shí)驗(yàn)結(jié)果

        3.2.1 實(shí)時(shí)性比較

        在同一測(cè)試集下,本文算法與CamShift(Continuously Adaptive MeanSHIFT)和KCF(Kernel Correlation Filter)時(shí)間性能比較如圖4所示,縱坐標(biāo)為時(shí)間,單位為ms,橫坐標(biāo)為第幾幀圖像。其中較粗的實(shí)線為本文算法,虛線為CamShift算法,較細(xì)的實(shí)線為KCF算法。

        由圖4可以看出,本文算法每幀的執(zhí)行時(shí)間在20~30 ms,平均執(zhí)行時(shí)間24 ms左右。部分幀執(zhí)行時(shí)間較長(zhǎng),可能是候選目標(biāo)比較多、進(jìn)行SIFT特征點(diǎn)提取和匹配的時(shí)候時(shí)間復(fù)雜度增加。盡管如此,本文追蹤算法在以Titan X GPU為核心硬件的基礎(chǔ)上,能夠達(dá)到至少25 fps的速度處理圖像。KCF的時(shí)間性能基本與本文算法一致,而CamShift的耗時(shí)明顯是最低的。

        3.2.2 精度比較

        把本文的追蹤算法與KCF和CamShift進(jìn)行精度比較。

        KCF和CamShift都是已經(jīng)被OpenCV實(shí)現(xiàn)的、被業(yè)界認(rèn)可的成熟算法。KCF是判別式跟蹤方法,主要是使用給出的樣本去訓(xùn)練一個(gè)判別分類器,判斷跟蹤到的是目標(biāo)還是周圍的背景信息。使用輪轉(zhuǎn)矩陣對(duì)樣本進(jìn)行采集,使用快速傅里葉變換對(duì)算法進(jìn)行加速計(jì)算。CamShift基本思想是對(duì)視頻序列的所有圖像幀都作MeanShift運(yùn)算,并將上一幀的結(jié)果作為下一幀MeanShift算法的搜索窗口的初始值,如此迭代下去。

        由圖5可以看出,在攝像頭不旋轉(zhuǎn)且追蹤目標(biāo)無遮擋的情況下,本文的算法、KCF和CamShift均能持續(xù)穩(wěn)定地跟蹤到目標(biāo),其中,白色方框?yàn)楸疚牡淖粉櫵惴?,黑色方框?yàn)镵CF追蹤算法,橢圓形框?yàn)镃amShift追蹤算法。但是從圖5中可以看出,本文的追蹤算法在大多數(shù)情況下的框是最緊致的。

        圖5 本文算法和KCF、CamShift在攝像頭無旋轉(zhuǎn)且目標(biāo)無遮擋情況下實(shí)驗(yàn)結(jié)果

        由圖6可以看出,當(dāng)被追蹤目標(biāo)存在遮擋時(shí),在目標(biāo)被遮擋之前本文算法、KCF和CamShift都能正常追蹤。一旦追蹤目標(biāo)絕大部分被遮擋,只有本文算法能夠精確地找到被追蹤目標(biāo)暴露出來的部分。完全遮擋后,當(dāng)目標(biāo)再次出現(xiàn)在視野中時(shí),KCF和CamShift均無法繼續(xù)正確追蹤。而本文提出的算法仍能繼續(xù)正確追蹤。

        由圖7可以看出,當(dāng)攝像頭存在劇烈旋轉(zhuǎn)、場(chǎng)景變化較快時(shí),CamShift已經(jīng)不能準(zhǔn)確追蹤目標(biāo)。本文算法和KCF均能比較穩(wěn)定地追蹤到目標(biāo)。但是,從圖7中可以看出,本文算法的效果還是優(yōu)于KCF的,框選出的被追蹤目標(biāo)更加緊致完整。

        圖6 本文算法和KCF、CamShift在目標(biāo)存在遮擋情況下實(shí)驗(yàn)結(jié)果

        圖7 本文算法和KCF、CamShift在攝像頭旋轉(zhuǎn)情況下實(shí)驗(yàn)結(jié)果

        4 結(jié)束語

        從實(shí)驗(yàn)結(jié)果可以看出,本文設(shè)計(jì)了一個(gè)合理的算法架構(gòu)之后,目標(biāo)檢測(cè)與特征提取相結(jié)合的目標(biāo)追蹤算法取得了良好的效果。雖然本文算法在3個(gè)算法中時(shí)間性能不是最優(yōu)的,但算法能滿足實(shí)時(shí)性的要求。在追蹤目標(biāo)被遮擋、攝像頭旋轉(zhuǎn)等問題上,本文算法的精度均優(yōu)于KCF和CamShift。除此之外,本文算法還是優(yōu)秀的傳統(tǒng)圖像處理算法與機(jī)器學(xué)習(xí)算法相結(jié)合的典型。

        目標(biāo)追蹤是一個(gè)非常有前景的,但同時(shí)也是非常有難度的計(jì)算機(jī)視覺問題。目標(biāo)追蹤仍存在很多需要探索的潛在的東西,還面臨著無數(shù)困難的挑戰(zhàn),像復(fù)雜的光照變化、低分辨率目標(biāo)、目標(biāo)變形、目標(biāo)再識(shí)別、快速運(yùn)動(dòng)的目標(biāo)、模糊的目標(biāo)、噪聲干擾等等。面對(duì)諸多的挑戰(zhàn),還需要我們每一個(gè)從業(yè)者繼續(xù)努力。

        猜你喜歡
        特征
        抓住特征巧觀察
        離散型隨機(jī)變量的分布列與數(shù)字特征
        具有兩個(gè)P’維非線性不可約特征標(biāo)的非可解群
        月震特征及與地震的對(duì)比
        如何表達(dá)“特征”
        被k(2≤k≤16)整除的正整數(shù)的特征
        不忠誠(chéng)的四個(gè)特征
        詈語的文化蘊(yùn)含與現(xiàn)代特征
        新聞傳播(2018年11期)2018-08-29 08:15:24
        抓住特征巧觀察
        基于特征篩選的模型選擇
        日本三级香港三级人妇99| 欧美日韩中文制服有码| 九九热在线视频观看这里只有精品| 亚洲成人一区二区三区不卡| 偷拍色图一区二区三区| av网站免费线看精品| 无码孕妇孕交在线观看| 亚洲av精品一区二区三区| 少妇性荡欲视频| 日韩无套内射视频6| 男人无码视频在线观看| 妇女性内射冈站hdwwwooo| 国产精品亚洲А∨天堂免下载| 精品五月天| 亚洲二区三区四区太九| 亚洲精品久久麻豆蜜桃| 黄页免费人成网址大全| 亚洲乱码av乱码国产精品| 蜜臀av在线播放一区二区三区| 亚洲午夜福利在线视频| 97人人超碰国产精品最新o| 欧美高大丰满freesex| 在线a亚洲视频播放在线观看| 人妻中文字幕不卡精品| 日本一道高清在线一区二区| 国产偷拍自拍在线观看| 久久亚洲中文字幕精品熟| 女人高潮久久久叫人喷水| 国产成人无码精品久久久免费| 国产成+人+综合+亚洲欧美丁香花| 少妇被粗大的猛烈进出免费视频 | 亚洲性av少妇中文字幕| 水野优香中文字幕av网站| 男女猛烈xx00免费视频试看| 成人小说亚洲一区二区三区| 无码中文日韩Av| 韩国黄色三级一区二区| 无色码中文字幕一本久道久| 永久免费毛片在线播放| 国产av丝袜旗袍无码网站| 无码国产午夜福利片在线观看|