• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于輕量級神經(jīng)網(wǎng)絡(luò)的RGB-D人體目標檢測

      2022-03-01 08:36:06馮曉毅馬玉鵬
      微處理機 2022年1期
      關(guān)鍵詞:深度圖損失人體

      譚 方,馮曉毅,馬玉鵬

      (西北工業(yè)大學電子信息學院,西安710072)

      1 引言

      RGB-D圖像數(shù)據(jù)包含更豐富的信息,目前已大量應(yīng)用于機器人、安防、AR/VR等領(lǐng)域。人體目標檢測是人機交互的前提,也是機器視覺的重要任務(wù),特別在智能機器人應(yīng)用中意義重大。近年來,基于RGB-D的檢測方案[1-2]受到重視,因為深度圖(Depth)可以克服彩色圖(RGB)在黑暗、模糊環(huán)境下圖像質(zhì)量差的問題,而彩色圖可以彌補深度圖噪聲大和遠距離精度差的短板,隨著CNN(卷積神經(jīng)網(wǎng)絡(luò))的快速發(fā)展,基于卷積神經(jīng)網(wǎng)絡(luò)的目標檢測精度已經(jīng)遠超傳統(tǒng)方法,然而這些方法運算量巨大,需要一種輕量級的CNN檢測網(wǎng)絡(luò),能在滿足檢測精度的同時,減小計算量,降低消耗。

      2 相關(guān)工作

      現(xiàn)有的CNN目標檢測算法可以分為基于錨框(anchor)和無錨框(anchor-free)的方法。基于錨框的方法如Faster-RCNN[3]、YOLOV3[4]等需要預(yù)設(shè)大量的錨框,錨框數(shù)量甚至可能達幾千到數(shù)十萬以上,無疑增加了整個算法的復(fù)雜度。文獻[5]是較早提出無錨框檢測算法的,隨后文獻[6]借鑒了該思想并應(yīng)用在行人檢測上,文獻[7]將其應(yīng)用在了人臉檢測任務(wù)中,這些方法都取得了業(yè)界領(lǐng)先的檢測準確率,而且該方法推理速度快,是很多嵌入式平臺下人臉檢測任務(wù)的首選。

      除了檢測框架,學者們還提出了基于單深度圖的人體檢測算法[8-9]。這些方法一般分兩步,首先通過深度圖特征獲取候選的人體目標框,然后訓練分類器進一步篩選,最后保留真正的人體目標。單深度圖的檢測算法速度快、效率高,但由于現(xiàn)有商業(yè)深度相機的分辨率和精度較低,因此此類算法只適于簡單場景和近距離檢測。相比之下,基于RGB-D的檢測算法[10-11]更普遍。

      為提高CNN網(wǎng)絡(luò)的運行效率,輕量級網(wǎng)絡(luò)框架受到人們的重視。研究人員提出了如MobileNetV3[12]的輕量級網(wǎng)絡(luò)框架,這些框架的設(shè)計主要是為了將深度學習應(yīng)用于移動端和嵌入式設(shè)備,如小型機器人、家用安防機等。MobileNetV3作為最新的輕量級框架,網(wǎng)絡(luò)設(shè)計借助了神經(jīng)網(wǎng)絡(luò)搜索(NAS),在效率上達到了領(lǐng)先水平。因此,本次改進也選擇在以MobilenetV3作為主干網(wǎng)絡(luò)的基礎(chǔ)上進行。

      3 算法概述

      3.1 網(wǎng)絡(luò)結(jié)構(gòu)

      所設(shè)計檢測網(wǎng)絡(luò)的結(jié)構(gòu)如圖1所示。網(wǎng)絡(luò)的輸入可以分別為彩色圖,深度圖或RGB-D,首先對輸入的圖像使用3×3的卷積網(wǎng)絡(luò)提取特征并相加(當輸入為RGB-D時),之后送入金字塔結(jié)構(gòu)的網(wǎng)絡(luò)進行處理,最后輸出H/R×W/R×5的特征圖,其中H、W是輸入圖片的長和寬,此處統(tǒng)一將RGB-D縮放到長416寬320,R是縮放步長,取值為8。

      圖1 改進的網(wǎng)絡(luò)結(jié)構(gòu)

      輸出的5個特征圖中的第一個是目標置信度,使用了sigmoid函數(shù)將結(jié)果歸一化到0到1之間,取值越接近1表示該點是人體目標的概率越大,越接近0表示是背景的概率越大,在實際應(yīng)用中大于

      0.25就認為該點是目標。第二和第三個特征圖是中心點偏移量,在圖像縮小時精度會有損失,偏移量是對該損失的補償。第四和第五個特征圖輸出目標框的長寬,這里由于目標長寬的值較大,為了防止網(wǎng)絡(luò)輸出跨度過大造成巨大誤差,對網(wǎng)絡(luò)輸出的長寬做了轉(zhuǎn)換,使用了log函數(shù),即網(wǎng)絡(luò)輸出的長寬是目標原始長寬的對數(shù)。最終目標框的計算過程如下式:

      式中,bx、by、bw、bh為最終的目標檢測框的中心點x、y坐標和長寬值,cx、cy為網(wǎng)絡(luò)輸出的目標置信度中值大于0.25的坐標值,px、py、pw、ph則是與該坐標對應(yīng)的網(wǎng)絡(luò)偏移輸出和長寬輸出。

      圖1中的block網(wǎng)絡(luò)模塊使用了逆殘差結(jié)構(gòu)的線性瓶頸網(wǎng)絡(luò)(Inverted Residual and Linear Bottleneck,簡稱Bneck)和壓縮激勵激活函數(shù)(Squeeze and Excitation,簡稱SE)。圖中的1×1表示1×1卷積,上采樣統(tǒng)一使用最近鄰法將特征圖擴大2倍;C1到C7表示2維CNN卷積網(wǎng)絡(luò),詳細的網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)情況如表1所示。

      表1 改進檢測網(wǎng)絡(luò)詳細結(jié)構(gòu)

      表1中名稱列的內(nèi)容與圖1相對應(yīng),內(nèi)容一列中的Conv2表示2D卷積,Bneck表示瓶頸網(wǎng)絡(luò),逗號后的數(shù)字1、3和5表示卷積核大小。NL表示激活函數(shù),其中RE為ReLU線性激活函數(shù)式,HS表示hswish激活函數(shù)式,具體公式為:本網(wǎng)絡(luò)沒有使用池化層進行降采樣,而是直接使用步長代替。

      3.2 損失函數(shù)

      該算法中使用的損失函數(shù)有3個部分,第一是置信度損失Lc,使用焦點損失函數(shù)(Focal Loss),如下式:式中,yij表示目標的類別值,如果該點是人體目標的中心點則值為1,如果是其他則為0;pij表示網(wǎng)絡(luò)輸出的置信度值,通過sigmoid函數(shù)將值激活到0到1之間。γ是焦點損失的參數(shù),取值2。焦點損失函數(shù)更適合樣本不均衡的分類問題,它降低了簡單樣本在損失中所占的比重,轉(zhuǎn)而更多關(guān)注困難的、錯誤分類的樣本。

      另外兩個部分為長寬損失Lwh和中心點補償損失Lcen,都用平滑絕對誤差損失函數(shù)(Smooth L1 Loss)計算網(wǎng)絡(luò)預(yù)測值與真實值的誤差,具體公式為:

      最終的損失是這三項的累加,如式(10)所示,其中的λ用來調(diào)節(jié)各個損失所占的比重,最終設(shè)置:λc=1,λoff=10,λwh=10。

      3.3 訓練細節(jié)

      輕量級檢測網(wǎng)絡(luò)在訓練時,優(yōu)化器采用隨機梯度優(yōu)化算法(Adaptivemomentestimation,簡稱Adam),網(wǎng)絡(luò)訓練150個周期(epoch),初始學習率為0.0025,在第100和130周期時學習率分別衰減0.1倍,批大小(Batch Size)設(shè)置為64。

      為了提高網(wǎng)絡(luò)的泛化能力,采用不同方法對數(shù)據(jù)進行擴充。主要為仿射變換法:對圖像隨機旋轉(zhuǎn)-5°到5°,隨機0.9到1.1的縮放變換,隨機-10%到10%的平移變換和隨機-3°到3°的剪切變換,此外還包括水平鏡像,對RGB圖隨機加減亮度和對比度。對深度圖,在圖像的任意區(qū)域隨機將5%的深度值設(shè)為0,以照顧到實際應(yīng)用中深度圖對距離、材質(zhì)、光照等較為敏感,往往會有缺失和空洞的存在,從而在訓練時隨機生成一些缺失和空洞。

      在多尺度訓練中,網(wǎng)絡(luò)的輸入為416×320,為了提高網(wǎng)絡(luò)的魯棒性,每個周期隨機在多個尺度中選擇一個進行訓練,如(448×352),(416×352),(384×320)等。

      此外還考慮到深度圖和彩色圖的對齊問題。各個深度相機廠家都會提供RGB與深度圖的對齊接口,但由于RGB和深度圖所使用的鏡頭區(qū)別很大,因此很難做到絕對對齊。訓練時,在RGB和深度圖之間加入一些隨機的差別有利于實際使用中的穩(wěn)定性。例如深度圖不變對RGB進行10個像素的平移,或者對RGB進行3°的旋轉(zhuǎn)等手段。

      3.4 深度圖輸入格式

      深度圖不同于RGB圖像,它只有一個通道,圖像上的每個像素代表目標到鏡頭的距離,一般以毫米表示?,F(xiàn)有的大部分商用深度相機都有適用范圍,此處使用的奧比中光Astra Pro設(shè)備的深度范圍為500~8000mm。在實際應(yīng)用中大部分文獻都將深度圖轉(zhuǎn)為灰度圖然后輸入到網(wǎng)絡(luò)中??紤]到深度圖像含有大量的噪聲,需要對深度圖做去噪處理。首先進行窗口半徑值為5的中值濾波,將深度值小于500和大于8000(取決于深度相機的最近和最遠有效距離)的像素值設(shè)為0,如下式:

      式中Dt表示經(jīng)過閾值篩選后的深度圖。最后,將深度圖轉(zhuǎn)為灰度圖,如下式:

      4 實驗測試

      4.1 數(shù)據(jù)集與評價指標

      為了驗證網(wǎng)絡(luò)的檢測效果,選擇2組網(wǎng)上公開的RGB-D數(shù)據(jù)集IODoor和EPFL[13],并使用Astra Pro設(shè)備自采集了194張包含人體目標的圖片,共包含588個人體目標;每張圖最多包含7個人。該數(shù)據(jù)集采集的是室內(nèi)門口區(qū)域的畫面。

      為客觀評價所提出的改進檢測方法的效果,選擇查準率P(Precision)、查全率R(Recall)、平均精度Pave(Average precision)和平衡F1得分(F1 score)這4個指標作為檢測精度的評判標準,具體公式為:

      式中,TP、FN、FP和TN分別表示真正例(True Positive)、假反例(False Negative)、假正例(False Positive)和真反例(True Negative)。

      網(wǎng)絡(luò)效率評估選用每秒浮點運算次數(shù)(Floatingpoint operations per second,簡稱FLOPS)和CPU下的運行時間作為評價標準。

      4.2 檢測結(jié)果

      首先在IODoor數(shù)據(jù)集上進行測試,該數(shù)據(jù)是將Kinect V2搭載到機器人設(shè)備上,采集室內(nèi)和室外多個場景下的RGB-D數(shù)據(jù),并提供訓練集和測試集。

      實驗過程與文獻[10]保持一致,設(shè)置IOU閾值為0.6,訓練時不加入額外數(shù)據(jù),但會進行數(shù)據(jù)增強。表2列出了改進方法與參考方法的對比結(jié)果。

      表2 IODoor數(shù)據(jù)集下檢測結(jié)果對比單位:%

      由表2可以看出,在輸入為RGB的檢測結(jié)果中,文獻[11]的效果最好,原因是它使用了兩步檢測法Faster-RCNN,其檢測精度高,但速度非常慢,網(wǎng)絡(luò)模型龐大。所提改進方法的檢測效果排第二。此處還在實驗中加入YOLOV3-tiny的檢測結(jié)果,它是YOLOV3的輕量級版本,結(jié)果表明改進方法的檢測效果優(yōu)于YOLOV3-tiny。

      其次,在EPFL數(shù)據(jù)集下進行測試。同樣由Kinect V2采集,包含兩個室內(nèi)場景下的RGB-D數(shù)據(jù):

      場景1:實驗室(EPFL-LAB),包括950幀RGB-D數(shù)據(jù)和最多4個人;

      場景2:走廊(EPFL-CORRIDOR),包括超過3000幀的數(shù)據(jù)和最多8個人。

      文獻[14]對該數(shù)據(jù)集重新標注,以解決嚴重遮擋的目標被漏掉的問題,在此也使用該標注信息計算結(jié)果。檢測結(jié)果如表3所示,可見本方法的檢測效果為三種方法當中最優(yōu)。

      表3 EPFL數(shù)據(jù)集下的檢測結(jié)果單位:%

      不同方法在各個驗證數(shù)據(jù)集下的實際檢測效果如圖2所示。

      圖2 檢測結(jié)果

      從圖2可以看出,只使用RGB進行檢測時,對遮擋和重疊度比較高的人體檢測效果差(圖2(a)、圖2(d)、圖2(g)),加入深度信息后遮擋情況下的檢測有了很大的改善(其余各圖)。

      4.3 運行時間

      在CPU平臺下驗證網(wǎng)絡(luò)運行時間。實驗使用的CPU配置為Core i5-7200,主頻2.5GHz。最終的檢測網(wǎng)絡(luò),使用EPFL和IODoor數(shù)據(jù)集進行訓練,使用Astra數(shù)據(jù)集進行測試。該網(wǎng)絡(luò)在Pytorch框架下實現(xiàn),推斷時將其轉(zhuǎn)換為ONNX格式,然后在Win10操作系統(tǒng)下使用C++運行推斷部分并統(tǒng)計時間。CPU測試結(jié)果如表4所示。

      表4 各方法在CPU下的運行效率

      表中列出了各方法的運行時間,包括預(yù)處理、網(wǎng)絡(luò)推斷和后處理總共的用時。其中,文獻[8-9]使用傳統(tǒng)方法進行檢測,因此沒有FLOPs指標,其FPS結(jié)果摘自原文。由表中數(shù)據(jù)可見所提改進網(wǎng)絡(luò)的FLOPS遠低于其他方法,運行時間也高于其它方法,不同輸入下的幀率都超過了30f/s,輸入為Depth的檢測速度僅需18.1ms,這是因為深度圖中包含很多零值,因此計算速度更快。

      5 結(jié)束語

      所提出的基于輕量級CNN網(wǎng)絡(luò)的RGB-D人體目標檢測算法,在兼顧檢測效果的同時保證了檢測速度,因此在眾多實際應(yīng)用場景中都有極高的適用性。但由于RGB-D數(shù)據(jù)采集和標注困難,研究使用的數(shù)據(jù)集多樣性仍然不夠豐富,更多的是針對站立的人體目標,而像醫(yī)院、室內(nèi)等環(huán)境下,人體姿態(tài)多種多樣,包括坐姿,躺姿等。在后續(xù)研究中,將面向更多的場景進行數(shù)據(jù)采集和網(wǎng)絡(luò)測試,以擴展改方法對人體目標檢測的適應(yīng)范圍。

      猜你喜歡
      深度圖損失人體
      少問一句,損失千金
      人體“修補匠”
      人體冷知識(一)
      排便順暢,人體無毒一身輕
      胖胖損失了多少元
      基于深度圖的3D-HEVC魯棒視頻水印算法
      玉米抽穗前倒伏怎么辦?怎么減少損失?
      奇妙的人體止咳點
      特別健康(2018年3期)2018-07-04 00:40:10
      一種基于局部直方圖匹配的深度編碼濾波算法
      疊加速度譜在鉆孔稀少地區(qū)資料解釋中的應(yīng)用
      科技視界(2016年2期)2016-03-30 11:17:03
      潼关县| 明光市| 镇原县| 克拉玛依市| 枣庄市| 常熟市| 攀枝花市| 津南区| 邳州市| 沈丘县| 宁乡县| 理塘县| 晋宁县| 探索| 手游| 浑源县| 运城市| 巴彦县| 全椒县| 侯马市| 甘孜| 察隅县| 旬邑县| 六枝特区| 绵竹市| 连城县| 交城县| 桂东县| 贵溪市| 漳平市| 油尖旺区| 吉隆县| 庆元县| 阿拉善右旗| 克拉玛依市| 新巴尔虎左旗| 宁夏| 泰顺县| 策勒县| 内乡县| 白城市|