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

        ?

        基于YOLOv2的雙足機(jī)器人目標(biāo)檢測(cè)與拾取

        2019-09-10 04:52:17劉超強(qiáng)葉坤李鶴喜
        現(xiàn)代信息科技 2019年18期

        劉超強(qiáng) 葉坤 李鶴喜

        摘 ?要:本文采用YOLOv2深度學(xué)習(xí)模型對(duì)雙足機(jī)器人拍攝到的第一幀圖像進(jìn)行目標(biāo)定位檢測(cè),接著通過(guò)傳統(tǒng)的Camshift算法對(duì)后續(xù)圖像中的目標(biāo)進(jìn)行跟蹤,直到逼近目標(biāo)后利用機(jī)器人關(guān)節(jié)運(yùn)動(dòng)控制程序拾起目標(biāo)。該方法的優(yōu)點(diǎn)是:將深度學(xué)習(xí)算法與傳統(tǒng)圖像跟蹤技術(shù)相結(jié)合,增強(qiáng)了系統(tǒng)的魯棒性和實(shí)時(shí)性。

        關(guān)鍵詞:YOLOv2;Camshift;目標(biāo)檢測(cè)

        中圖分類號(hào):TP391.41;TP242 ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2096-4706(2019)18-0137-04

        Abstract:In this paper,we use YOLOv2 deep learning model to detect a target location through the first frame image captured by biped robot. Then we use traditional Camshift algorithm to track the target in the follow-up image until the target is approached and the robot joint motion control program is used to pick up the target. The advantage of this method is that the combination of deep learning algorithm and traditional image tracking technology enhances the robustness and real-time performance of the system.

        Keywords:YOLOv2;Camsift;target detection

        0 ?引 ?言

        視覺(jué)感知是智能機(jī)器人的核心技術(shù),特別是雙足行走的機(jī)器人,更需要靠視覺(jué)來(lái)感知環(huán)境、發(fā)現(xiàn)目標(biāo)與規(guī)劃行走路線,從而實(shí)現(xiàn)自主導(dǎo)航。雙足機(jī)器人視覺(jué)任務(wù)中主要涉及到目標(biāo)檢測(cè)和目標(biāo)跟蹤。目標(biāo)檢測(cè)與識(shí)別是當(dāng)前計(jì)算機(jī)視覺(jué)領(lǐng)域中一個(gè)重要的研究方向,早期的目標(biāo)檢測(cè)系統(tǒng)主要采用尺度不變特征變換(SIFT)和方向梯度直方圖(HOG)等傳統(tǒng)的特征提取方法[1],將提取到的特征輸入至分類器中進(jìn)行分類識(shí)別。這一時(shí)期的系統(tǒng)一般都是針對(duì)某個(gè)特定的目標(biāo)并且數(shù)據(jù)規(guī)模不大的任務(wù),對(duì)于復(fù)雜環(huán)境下目標(biāo)識(shí)別能力的泛化性較差。本文將采用深度學(xué)習(xí)的方法解決雙足機(jī)器人運(yùn)動(dòng)過(guò)程中的目標(biāo)檢測(cè)與定位問(wèn)題,其中,YOLOv2是深度學(xué)習(xí)中目標(biāo)檢測(cè)的有效方法之一[2]。運(yùn)動(dòng)目標(biāo)跟蹤也一直是計(jì)算機(jī)視覺(jué)研究領(lǐng)域的熱門(mén)課題之一,在進(jìn)行目標(biāo)跟蹤時(shí),利用簡(jiǎn)單的模板匹配方法難以達(dá)到理想的效果,且容易出現(xiàn)誤匹配和目標(biāo)跟蹤丟失等情況,Camshift算法可以較好地解決上述問(wèn)題,故本文將YOLOv2與Camshift兩種方法結(jié)合起來(lái)實(shí)現(xiàn)雙足機(jī)器人對(duì)目標(biāo)的自動(dòng)檢測(cè)、跟蹤和拾取。

        1 ?目標(biāo)檢測(cè)與拾取系統(tǒng)的設(shè)計(jì)

        系統(tǒng)可分為三大模塊:目標(biāo)檢測(cè)模塊、目標(biāo)跟蹤模塊、雙足機(jī)器人的運(yùn)動(dòng)控制模塊。目標(biāo)檢測(cè)模塊的核心是YOLOv2,目標(biāo)跟蹤模塊的核心是Camshift算法。具體流程如圖1所示。

        1.1 ?目標(biāo)檢測(cè)模塊

        目標(biāo)檢測(cè)模塊是整個(gè)系統(tǒng)中第一個(gè)起作用的模塊,該模塊的核心是YOLOv2。所以,訓(xùn)練出一個(gè)適用于本文的YOLOv2神經(jīng)網(wǎng)絡(luò)是關(guān)鍵的一步。在這一步中,面臨的問(wèn)題有兩個(gè)。其一是用于訓(xùn)練的樣本數(shù)據(jù)量的不足,要增加訓(xùn)練樣本,可以采用數(shù)據(jù)增強(qiáng)的方法;第二個(gè)問(wèn)題是,因YOLOv2的結(jié)構(gòu)較深,有20多層,整個(gè)網(wǎng)絡(luò)的訓(xùn)練耗時(shí)較長(zhǎng)。要縮短訓(xùn)練時(shí)間,本文采用遷移學(xué)習(xí)的方法。

        1.1.1 ?數(shù)據(jù)增強(qiáng)

        數(shù)據(jù)增強(qiáng)是常見(jiàn)的增加樣本量的手段。具體的方法有空間幾何變換、像素顏色變換、隨機(jī)裁剪等。聯(lián)系到數(shù)據(jù)增強(qiáng)的要求:增加的樣本(圖像)應(yīng)是有可能出現(xiàn)在場(chǎng)景中的樣本,故應(yīng)選擇合適的增強(qiáng)方法。因?yàn)楸疚臋C(jī)器人操作的目標(biāo)是小物件,如抓起的球或端起的杯子,在通常情況下,鎖定目標(biāo)的整體都在雙足機(jī)器人的攝像頭視野里,故我們可采用鏡像翻轉(zhuǎn)來(lái)進(jìn)行數(shù)據(jù)增強(qiáng)。設(shè)圖像高度、寬度分別為height和width,則圖像水平與垂直翻轉(zhuǎn)按式(1)計(jì)算:

        對(duì)機(jī)器人攝像機(jī)拍攝的目標(biāo)杯子的原圖像如圖2(a)所示,下面是幾種典型的圖像數(shù)據(jù)增強(qiáng)實(shí)例,垂直翻轉(zhuǎn)后的圖像如圖2(b)所示,采用小半徑模糊的原圖像變換后如圖2(c)所示,采用大半徑高斯模糊處理的圖像如圖2(d)所示。

        1.1.2 ?遷移學(xué)習(xí)

        遷移學(xué)習(xí)是深度學(xué)習(xí)中被廣泛使用的學(xué)習(xí)策略,其重要性在于當(dāng)數(shù)據(jù)樣本數(shù)量較小時(shí)可明顯改進(jìn)學(xué)習(xí)效果。遷移學(xué)習(xí)的另一個(gè)更重要的作用是可以利用別人的學(xué)習(xí)成果來(lái)縮短自己的訓(xùn)練時(shí)間。其基本思想是:遷移一個(gè)已有分類問(wèn)題的信息源頭到另一個(gè)目標(biāo)任務(wù)上去,從而增加網(wǎng)絡(luò)見(jiàn)過(guò)的數(shù)據(jù)量[3],圖3給出了一個(gè)遷移學(xué)習(xí)的實(shí)例。

        一般被遷移的是一些低級(jí)的特征信息,比如點(diǎn)、直線、曲線等。這些低級(jí)特征在不同的場(chǎng)景下,都能夠正常使用。因?yàn)榧词故遣煌膱?chǎng)景,其低級(jí)特征也都是點(diǎn)、線。而這些低級(jí)特征通常保留在一個(gè)網(wǎng)絡(luò)的前面幾層甚至十余層。而高級(jí)特征,比如具體的顏色,以及低級(jí)特征的多種組合及其構(gòu)成的不同的形狀,則因具體的場(chǎng)景而異,遷移高級(jí)特征意義不大,高級(jí)特征的信息,要通過(guò)對(duì)具體的數(shù)據(jù)進(jìn)行學(xué)習(xí),才能獲得。除非數(shù)據(jù)源相似,任務(wù)相似,否則不應(yīng)該遷移高級(jí)特征。所以通常的具體做法是凍結(jié)網(wǎng)絡(luò)前面某些層,只訓(xùn)練最后面的數(shù)層。在本項(xiàng)目中,訓(xùn)練的是最后數(shù)層,其余的層均被凍結(jié)(參數(shù)不變)。由于只需訓(xùn)練數(shù)層,故能有效縮短訓(xùn)練時(shí)間。遷移的權(quán)重來(lái)源于YOLOv2在VOC數(shù)據(jù)集上的訓(xùn)練(VOC數(shù)據(jù)集較為龐大,通過(guò)基于它的訓(xùn)練能得到足夠多的低級(jí)特征)。

        1.2 ?目標(biāo)跟蹤模塊

        目標(biāo)跟蹤依賴于檢測(cè)模塊的輸出和Camshift算法。Camshift算法是對(duì)Mean-shift算法的改進(jìn)。Camshift算法能夠根據(jù)目標(biāo)的形變大小自動(dòng)調(diào)節(jié)搜索窗口大小來(lái)適應(yīng)目標(biāo)尺寸的變化,從而在一定程度上有效地避免物體形變導(dǎo)致的目標(biāo)丟失情況,Camshift算法主要包括反向投影、Mean-shift算法、自適應(yīng)迭代過(guò)程。

        1.2.1 ?反向投影

        反向投影(Back Projection)是一種通過(guò)給定目標(biāo)的像素分布直方圖模型計(jì)算圖像中目標(biāo)概率的方式,即在圖像中利用目標(biāo)顏色直方圖模型查找目標(biāo)。RGB顏色空間對(duì)光照亮度變化敏感,在目標(biāo)跟蹤任務(wù)中,為了減少光照強(qiáng)度變化對(duì)目標(biāo)跟蹤的影響,將目標(biāo)對(duì)象由RGB顏色空間映射到HSV顏色空間進(jìn)行處理。H表示色調(diào)(Hue),S表示飽和度(Saturation),V代表亮度(Value)。我們利用Hue的值,建立關(guān)于Hue的顏色直方圖模型。Hue值的求取與RGB空間的顏色分量R,G和B的關(guān)系如下[4]:

        得到目標(biāo)對(duì)象的Hue之后,將[0,255]區(qū)間劃分成多個(gè)等長(zhǎng)子區(qū)間,統(tǒng)計(jì)落在各個(gè)子區(qū)間的像素的個(gè)數(shù)Mk,將其與目標(biāo)對(duì)象的總的像素個(gè)數(shù)TOTAL的比值(Mk/TOTAL)作為概率(以頻率代替概率),建立直方圖。接著以整幅圖像的Hue通道中的各個(gè)像素值所在區(qū)間對(duì)應(yīng)的概率值代替像素值,得顏色概率分布圖,將其歸一化到[0,255],得到新的圖像,稱該圖像為Back。

        1.2.2 ?Mean-shift算法

        Mean-shift算法是一種非參數(shù)密度梯度估計(jì)算法,它根據(jù)搜索框的樣本點(diǎn)反復(fù)迭代搜索目標(biāo)圖像特征空間中樣本點(diǎn)最密集的區(qū)域,搜索點(diǎn)沿著樣本點(diǎn)密度增加最快的方向“漂移”到局部密度極大值點(diǎn)處,Mean-shift算法設(shè)立1個(gè)“漂移”閾值和最大迭代次數(shù),設(shè)I(x,y)是Back的搜索窗中位于(x,y)處的像素值,其實(shí)現(xiàn)過(guò)程如下。

        步驟1:在Back中設(shè)置搜索窗的初始大小和位置。

        步驟2:按式(5)—(8)計(jì)算搜索窗的質(zhì)心。

        步驟4:移動(dòng)搜索窗的中心到質(zhì)心,如搜索窗的中心與質(zhì)心間的移動(dòng)距離小于預(yù)設(shè)的固定閾值,或者循環(huán)運(yùn)算的次數(shù)達(dá)到某一最大值,停止計(jì)算;否則重復(fù)步驟2、3、4。

        在本項(xiàng)目中,第一幀的搜索窗(主要包含目標(biāo)物)由YOLOv2經(jīng)過(guò)前向傳導(dǎo)輸出。YOLOv2的輸出為(x,y,w,h),其中(x,y)表示搜索窗的中心坐標(biāo),而w表示搜索窗的寬度,h表示搜索窗的高度。根據(jù)這個(gè)區(qū)域建立直方圖,對(duì)后續(xù)的每一幀進(jìn)行反向投影。

        1.2.3 ?自適應(yīng)迭代過(guò)程

        Camshift算法是對(duì)視頻序列中每幀圖像分別作Mean-shift運(yùn)算,將位置結(jié)果和目標(biāo)大小作為下一幀Mean-shift算法搜索窗位置的中心和搜索框大小的初始化值[5]。

        Camshift算法在實(shí)際應(yīng)用中要求幀率較高,實(shí)際上是希望前后兩幀中的同一目標(biāo)物有重疊。而在本文中,目標(biāo)物不動(dòng),雙足機(jī)器人移動(dòng),接著拍攝,如此反復(fù)。此時(shí),通過(guò)設(shè)置比較慢的步速和較小的位移,可使相鄰兩幀中的同一目標(biāo)物在位置上有一定的重疊。這是本文能夠使用Camshift的原因。

        1.3 ?運(yùn)動(dòng)控制模塊

        1.3.1 ?拾取動(dòng)作

        構(gòu)建運(yùn)動(dòng)模塊的第一步是設(shè)計(jì)機(jī)器人可靠的操作目標(biāo)物的動(dòng)作。比如取杯子、撿球,要參考廠家給出的機(jī)器人各個(gè)關(guān)節(jié)的運(yùn)動(dòng)API參數(shù)的范圍,大致確定關(guān)節(jié)的運(yùn)動(dòng)幅度,確定運(yùn)動(dòng)順序,根據(jù)視覺(jué)反饋,按機(jī)器人關(guān)節(jié)運(yùn)動(dòng)的正向解,控制雙足機(jī)器人做出移動(dòng)、端杯或撿球的動(dòng)作。

        1.3.2 ?目標(biāo)物的中心區(qū)域

        這里以撿球?yàn)槔?,?dāng)球落在圖像上的某個(gè)區(qū)域,機(jī)器人就執(zhí)行撿球動(dòng)作。故這個(gè)區(qū)域的確定,也是不可或缺的一個(gè)環(huán)節(jié)。確定該區(qū)域的方法較為簡(jiǎn)單,將球置于不同的位置,并先調(diào)用攝像頭API拍照,并保存。然后撿球。如果能撿起來(lái),則保留該位置對(duì)應(yīng)的圖片,否則去掉。當(dāng)保留足夠的照片,用標(biāo)注工具Labeling對(duì)圖片中的小球做標(biāo)注,然后從對(duì)應(yīng)的位置數(shù)據(jù)中,得到一系列的中心點(diǎn)。這個(gè)中心點(diǎn)區(qū)域用一個(gè)矩形來(lái)描述。這個(gè)矩形用左上角頂點(diǎn)(Node1)和右下角頂點(diǎn)(Node2)來(lái)表示:Node1(x1,y1),Node2(x2,y2)。

        1.3.3 ?機(jī)器人運(yùn)動(dòng)控制算法

        結(jié)合一套設(shè)計(jì)好的撿球動(dòng)作,和預(yù)先確定的一個(gè)關(guān)于球的中心的區(qū)域,判斷每一幀中的由Mean-shift得到的最終的移動(dòng)搜索窗的中心點(diǎn)是否落在區(qū)域內(nèi),是則停止;否則,進(jìn)行相應(yīng)的移動(dòng)。具體的步驟用偽代碼描述如下:

        (1)得到搜索窗的中心(xc,yc)。

        (2)如果xcx2,向右移動(dòng),重復(fù)(1)和(2),否則,跳轉(zhuǎn)至(3)。

        (3)得到搜索窗的中心(xc,yc)。

        (4)如果ycy2,向后移動(dòng),重復(fù)(3)和(4),否則跳轉(zhuǎn)至(5)。

        (5)執(zhí)行撿球操作。

        2 ?實(shí)驗(yàn)結(jié)果與分析

        本文設(shè)計(jì)的系統(tǒng)圖像處理采用了OpenCV,深度學(xué)習(xí)采用了TensorFlow框架,雙足機(jī)器人運(yùn)動(dòng)控制采用自帶的SDK,下面以撿起地面上小球?yàn)槟繕?biāo)考查系統(tǒng)軟件的有效性。雙足機(jī)器人的攝像頭的分辨率為640*480,拍到第一張圖片后,傳輸?shù)絇C機(jī),將尺寸修改為416*416,經(jīng)過(guò)YOLOv2的前向傳播,得到關(guān)于目標(biāo)物的位置信息和大小信息,通過(guò)判斷由Mean-shift算法得到的搜索窗中心與區(qū)域的關(guān)系來(lái)決定移動(dòng)與否。若移動(dòng),則PC機(jī)通過(guò)SDK的接口,發(fā)送移動(dòng)相關(guān)的信息,否則發(fā)送撿球的信息。

        2.1 ?目標(biāo)檢測(cè)的結(jié)果

        機(jī)器人攝像機(jī)拍攝獲取當(dāng)前場(chǎng)景信息,輸入YOLOv2前向傳播后,獲取當(dāng)前目標(biāo)小球的結(jié)果如圖4所示。

        2.2 ?目標(biāo)跟蹤的結(jié)果

        以YOLOv2輸出的(x,y,w,h),作為Camshift算法需要的第一個(gè)搜索窗,得到的下一幀的跟蹤結(jié)果如圖5所示。

        2.3 ?運(yùn)動(dòng)模塊的結(jié)果

        雙足機(jī)器人鎖定目標(biāo)后,利用Camshift跟蹤算法和機(jī)器人運(yùn)動(dòng)控制,進(jìn)行對(duì)目標(biāo)的逼近,整個(gè)小球目標(biāo)檢測(cè)與拾取過(guò)程如圖6所示。

        3 ?結(jié) ?論

        本文將流行的YOLOv2目標(biāo)檢測(cè)算法和經(jīng)典的目標(biāo)跟蹤算法結(jié)合起來(lái)應(yīng)用到雙足機(jī)器人的目標(biāo)視覺(jué)檢測(cè)與跟蹤系統(tǒng)中,實(shí)現(xiàn)了對(duì)預(yù)定目標(biāo)的定位與拾取。其中,針對(duì)YOLOv2的訓(xùn)練集數(shù)據(jù)不足的問(wèn)題,采用數(shù)據(jù)增強(qiáng)的方法來(lái)獲得更多的數(shù)據(jù);針對(duì)訓(xùn)練完整的網(wǎng)絡(luò)耗時(shí)長(zhǎng)的問(wèn)題,采用遷移學(xué)習(xí)的手段來(lái)縮短訓(xùn)練時(shí)間。

        參考文獻(xiàn):

        [1] 李英豪,王華軍,汪緒彪,等.SIFT算法研究及在目標(biāo)識(shí)別中的應(yīng)用 [J].艦船科學(xué)技術(shù),2016,38(10):172-174.

        [2] 雷維卓.基于YOLOv2的實(shí)時(shí)目標(biāo)檢測(cè)研究 [D].重慶:重慶大學(xué),2018.

        [3] 莊福振,羅平,何清,等.遷移學(xué)習(xí)研究進(jìn)展 [J].軟件學(xué)報(bào),2015,26(1):26-39.

        [4] Gonzalez R. C. 數(shù)字圖像處理 [M].阮秋琦,等譯.北京:電子工業(yè)出版社,2009.

        [5] 師慶敏.基于Camshift算法的目標(biāo)跟蹤問(wèn)題研究 [D].合肥:安徽大學(xué),2013.

        作者簡(jiǎn)介:劉超強(qiáng)(1994.10-),男,漢族,廣東恩平人,本

        科,學(xué)士學(xué)位,研究方向:圖像分析與機(jī)器學(xué)習(xí);葉坤(1997.03-),男,漢族,廣東江門(mén)人,本科,學(xué)士學(xué)位,研究方向:圖像分析與機(jī)器學(xué)習(xí);通訊作者:李鶴喜(1961.11-),男,漢族,遼寧昌圖人,教授,博士,研究方向:人工智能與機(jī)器視覺(jué)。

        国产又大又黑又粗免费视频| 精品少妇白浆一二三区| 麻豆国产精品久久天堂| 午夜影视免费| 国产sm调教视频在线观看| 国产综合自拍| 亚洲成人黄色av在线观看| 久久久精品国产性黑人| 亚洲人精品亚洲人成在线| 国产又爽又黄的激情精品视频| 亚洲一区二区三区在线中文| 国产精品一区二区韩国av| 国产美女爽到喷出水来视频| 日日噜噜夜夜狠狠久久无码区| 天天射色综合| 手机在线免费观看的av| 亚洲女同一区二区| 内射后入在线观看一区| 东京热无码人妻中文字幕| 在线观看在线观看一区二区三区| 放荡的少妇2欧美版| 四虎影视一区二区精品| 视频二区 无码中出| 在线国产激情视频观看| 欧美性色黄大片手机版| 国产精品一区二区在线观看99| 日本一区二区在线播放观看| 亚洲va视频一区二区三区| 超级碰碰色偷偷免费视频| 亚洲国产夜色在线观看| av高清视频在线麻豆免费观看| 国产精品情侣呻吟对白视频| 性高朝久久久久久久| 亚洲精品国产不卡在线观看| 日韩少妇人妻精品中文字幕| 狼人青草久久网伊人| 国产亚洲欧美日韩综合综合二区 | 亚无码乱人伦一区二区| 亚洲∧v久久久无码精品| 级毛片无码av| 在线观看亚洲av每日更新影片|