• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于雙向循環(huán)神經(jīng)網(wǎng)絡(luò)的跌倒行為識(shí)別

    2020-07-20 06:16:10佃松宜雒瑞森
    關(guān)鍵詞:關(guān)鍵點(diǎn)雙向人體

    佃松宜,程 鵬,王 凱,雒瑞森

    (四川大學(xué) 電氣工程學(xué)院,四川 成都 610065)

    0 引 言

    跌倒行為識(shí)別的方法通?;谟蓚鞲衅骰蛳鄼C(jī)捕獲的信息,可以分為基本兩類(lèi):基于可穿戴傳感器和基于視覺(jué)[1]?;诳纱┐鱾鞲衅鞯姆椒ㄖ饕诟鞣N力、位置、速度和加速度傳感器,可穿戴傳感器可以精確和實(shí)時(shí)地測(cè)量人體的物理屬性,然而,該類(lèi)傳感器必須與人進(jìn)行物理連接,對(duì)他們的日常生活活動(dòng)造成了阻礙性干預(yù)。

    計(jì)算機(jī)視覺(jué)技術(shù)實(shí)現(xiàn)了對(duì)人體運(yùn)動(dòng)的非阻礙測(cè)量,最常見(jiàn)的基于視覺(jué)識(shí)別跌倒行為的方法是提取人體動(dòng)作的特征點(diǎn),該方法提供了更豐富的幾何信息,簡(jiǎn)化了背景干擾的預(yù)處理[2]。文獻(xiàn)[3]基于特征點(diǎn)的正則化馬氏距離度量,使用隱馬爾可夫模型對(duì)姿態(tài)序列動(dòng)作進(jìn)行分類(lèi)。文獻(xiàn)[4]定義了一個(gè)包含雙腳及之間面積的動(dòng)態(tài)支撐區(qū)域,提出了一種基于修正的零力矩點(diǎn)準(zhǔn)則的跌倒行為識(shí)別算法。然而,上述算法均針對(duì)于RGB-D深度相機(jī)Kinects采集的三維人體特征點(diǎn),并不能直接應(yīng)用在大多數(shù)的視頻設(shè)備(普通RGB相機(jī))上面,實(shí)際使用時(shí)需要安裝新的視頻設(shè)備Kinects。

    針對(duì)以上的問(wèn)題,本文提出了一種基于神經(jīng)網(wǎng)絡(luò)的跌倒行為識(shí)別算法。首先,使用開(kāi)源的計(jì)算機(jī)視覺(jué)庫(kù)對(duì)普通RGB相機(jī)采集的動(dòng)作視頻進(jìn)行二維人體特征點(diǎn)的提取,然后利用雙向循環(huán)神經(jīng)網(wǎng)絡(luò)對(duì)特征序列進(jìn)行識(shí)別。在新的跌倒識(shí)別數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明了該算法的有效性,優(yōu)于其基準(zhǔn)算法。

    1 模型與方法

    本文提出的整個(gè)算法流程如圖1所示。首先,一段人體動(dòng)作視頻按照幀頻抽幀得到輸入圖像(圖1(a))。其次,通過(guò)開(kāi)源的人體關(guān)鍵點(diǎn)識(shí)別庫(kù)識(shí)別并提取人體關(guān)鍵點(diǎn)(圖1(b)、圖1(c))。最后,將多幀圖像處理得到的關(guān)鍵點(diǎn)作為特征序列輸入到雙向循環(huán)神經(jīng)網(wǎng)絡(luò)中進(jìn)行訓(xùn)練和測(cè)試(圖1(d))。

    圖1 算法流程

    1.1 人體關(guān)鍵點(diǎn)的識(shí)別和提取

    OpenPose[5]是第一個(gè)在單張圖像上聯(lián)合檢測(cè)人體軀干、手部和面部關(guān)鍵點(diǎn)(總共135個(gè)關(guān)鍵點(diǎn))的實(shí)時(shí)系統(tǒng)。圖2是一個(gè)OpenPose檢測(cè)人體關(guān)鍵點(diǎn)的例子。常見(jiàn)的二維人體關(guān)鍵點(diǎn)檢測(cè)庫(kù),例如Mask R-CNN[6]和Alpha-Pose[7]需要使用者自己完成大量工作——如何讀取幀(視頻、圖像或者相機(jī)流)、可視化檢測(cè)結(jié)果、結(jié)果輸出文件的生成(JSON或者XML文件)等等。此外,上述庫(kù)并沒(méi)有包含面部和手部的關(guān)鍵點(diǎn)檢測(cè)功能。OpenPose解決了上述存在的這些問(wèn)題,它可以運(yùn)行在不同的平臺(tái)上,包括Ubuntu,Windows,Mac OSX,以及嵌入式系統(tǒng)(比如Nvidia Tegra TX2)。它也提供對(duì)例如CUDA GPUs,OpenCL GPUs和CPU設(shè)備等不同種類(lèi)硬件的支持。使用者可以選擇圖像,視頻,網(wǎng)絡(luò)攝像機(jī)和IP相機(jī)流等輸入,也可以選擇是否顯示結(jié)果或者將結(jié)果保存在硬盤(pán)上,甚至是選擇只檢測(cè)人體的某一個(gè)或者多個(gè)部位(軀干,面部和手部)。OpenPose由3部分組成:軀干關(guān)鍵點(diǎn)檢測(cè)、手部關(guān)鍵點(diǎn)檢測(cè)、面部關(guān)鍵點(diǎn)檢測(cè)。軀干的關(guān)鍵點(diǎn)檢測(cè)是部分的核心,基于軀干關(guān)鍵點(diǎn)的檢測(cè),可以從一些軀干部位,特別是耳朵、眼睛、鼻子和頸部粗略估計(jì)面部邊界框。同樣地,手部邊界框由軀干的手臂關(guān)鍵點(diǎn)估計(jì)生成。

    圖2 OpenPose檢測(cè)人體關(guān)鍵點(diǎn)

    OpenPose的運(yùn)行時(shí)間優(yōu)于當(dāng)前的其它二維關(guān)鍵點(diǎn)檢測(cè)方法,同時(shí)保持著高質(zhì)的性能。在一臺(tái)裝有Nvidia GTX 1080Ti的計(jì)算機(jī)上,幀頻達(dá)到22FPS。

    基于以上OpenPose的優(yōu)勢(shì),本文選用該開(kāi)源的計(jì)算機(jī)視覺(jué)庫(kù)來(lái)識(shí)別并提取二維關(guān)鍵點(diǎn)。在人體跌倒過(guò)程中,主要是軀干的形體變化,面部和手部的形體變化較小,因此本文只使用了軀干關(guān)鍵點(diǎn),一共25個(gè),如圖3所示。

    圖3 人體軀干關(guān)鍵點(diǎn)

    1.2 雙向循環(huán)神經(jīng)網(wǎng)絡(luò)對(duì)特征序列的識(shí)別

    1.2.1 雙向循環(huán)神經(jīng)網(wǎng)絡(luò)

    人體動(dòng)作可以看成一段連貫序列,其中時(shí)序起著重要的作用。循環(huán)神經(jīng)網(wǎng)絡(luò)[8,9]是一種處理時(shí)序相關(guān)問(wèn)題能力很強(qiáng)的網(wǎng)絡(luò)。為了強(qiáng)化循環(huán)神經(jīng)網(wǎng)絡(luò)模型對(duì)特征序列的學(xué)習(xí)能力,我們使用雙向循環(huán)神經(jīng)網(wǎng)絡(luò)[10]對(duì)人體動(dòng)作特征序列進(jìn)行識(shí)別。雙向循環(huán)神經(jīng)網(wǎng)絡(luò)是將兩個(gè)獨(dú)立的循環(huán)神經(jīng)網(wǎng)絡(luò)放在一起,序列以正方向輸入給一個(gè)循環(huán)神經(jīng)網(wǎng)絡(luò),而以反方向輸入給另一個(gè)循環(huán)神經(jīng)網(wǎng)絡(luò),兩個(gè)循環(huán)神經(jīng)網(wǎng)絡(luò)的輸出以串聯(lián)的形式連接。這種雙向的結(jié)構(gòu)使得網(wǎng)絡(luò)能夠同時(shí)具有序列的正向和反向信息,增強(qiáng)了網(wǎng)絡(luò)對(duì)順序起重要作用的序列的學(xué)習(xí)能力。圖4是普通循環(huán)神經(jīng)網(wǎng)絡(luò)(圖4(a))和雙向循環(huán)神經(jīng)網(wǎng)絡(luò)(圖4(b))的結(jié)構(gòu)圖。

    圖4 兩種循環(huán)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)

    本文的網(wǎng)絡(luò)架構(gòu)如圖4(b)所示。給定一個(gè)長(zhǎng)度為T(mén)的輸入序列X1∶T=(X1,X2,…,Xt,…,XT), 輸出為一個(gè)類(lèi)別y∈{1,…,C}。 將時(shí)刻t時(shí)網(wǎng)絡(luò)的輸入表示為Xt, 隱藏層狀態(tài)表示為ht, 則時(shí)刻t時(shí)第l層的隱藏狀態(tài)可以表示為

    (1)

    (2)

    1.2.2 循環(huán)單元結(jié)構(gòu)的選擇

    循環(huán)神經(jīng)網(wǎng)絡(luò)的參數(shù)可以通過(guò)隨時(shí)間反向傳播算法[11]進(jìn)行學(xué)習(xí),學(xué)習(xí)過(guò)程中的主要問(wèn)題是長(zhǎng)期依賴(lài)問(wèn)題[12]。一種非常好的解決方案是引入門(mén)控機(jī)制,這一類(lèi)網(wǎng)絡(luò)可以稱(chēng)為基于門(mén)控的循環(huán)神經(jīng)網(wǎng)絡(luò),兩種代表分別是長(zhǎng)短期記憶(LSTM)[9]網(wǎng)絡(luò)和門(mén)控循環(huán)單元(GRU)網(wǎng)絡(luò)。與LSTM相比,GRU性能相當(dāng)?shù)歉菀子?jì)算[13],因此對(duì)于本文雙向循環(huán)神經(jīng)網(wǎng)絡(luò)架構(gòu)中的循環(huán)神經(jīng)單元結(jié)構(gòu)我們選擇門(mén)控循環(huán)單元GRU。圖5給出了門(mén)控循環(huán)單元結(jié)構(gòu)。

    圖5 GRU循環(huán)單元結(jié)構(gòu)

    (3)

    其中,W*,U*,b*為可學(xué)習(xí)的網(wǎng)絡(luò)參數(shù)。

    1.2.3 雙向循環(huán)神經(jīng)網(wǎng)絡(luò)的正則化

    深度學(xué)習(xí)模型的關(guān)鍵是泛化問(wèn)題。由于神經(jīng)網(wǎng)絡(luò)的擬合能力非常強(qiáng),在訓(xùn)練集上的錯(cuò)誤率往往可以降到非常低,從而導(dǎo)致過(guò)擬合,在數(shù)據(jù)量不是很大的情況下尤其如此。正則化是一類(lèi)通過(guò)限制模型復(fù)雜度,從而避免過(guò)擬合,提高泛化能力的方法。丟棄法Dropout[14-16]是一種常用于循環(huán)神經(jīng)網(wǎng)絡(luò)的正則化方法。

    如圖6所示,當(dāng)在循環(huán)神經(jīng)網(wǎng)絡(luò)中應(yīng)用丟棄法,不能直接對(duì)每個(gè)時(shí)刻的隱狀態(tài)進(jìn)行隨機(jī)丟棄,這樣會(huì)損害循環(huán)網(wǎng)絡(luò)在時(shí)間維度上的記憶能力,而應(yīng)當(dāng)對(duì)非時(shí)間維度的連接(即非循環(huán)連接)進(jìn)行隨機(jī)丟棄[14,15]。然而根據(jù)貝葉斯學(xué)習(xí)的解釋?zhuān)瑏G棄法是一種對(duì)參數(shù)θ的采樣[17]。每次采樣的參數(shù)需要在每個(gè)時(shí)刻保持不變。因此,在對(duì)循環(huán)神經(jīng)網(wǎng)絡(luò)使用丟棄法時(shí),需要對(duì)參數(shù)矩陣的每個(gè)元素進(jìn)行隨機(jī)丟棄,這種方法稱(chēng)為變分丟棄法[16]。圖7給出了變分丟棄法的示例,虛線(xiàn)表示進(jìn)行隨機(jī)丟棄。

    圖6 GRU原始丟棄法

    圖7 GRU變分丟棄法

    2 數(shù)據(jù)集與實(shí)驗(yàn)結(jié)果

    本文方法基于標(biāo)準(zhǔn)公開(kāi)數(shù)據(jù)集,并與該數(shù)據(jù)集的人體特征點(diǎn)識(shí)別基準(zhǔn)算法進(jìn)行了比較。

    2.1 實(shí)驗(yàn)數(shù)據(jù)集

    CMDFALL[18]跌倒行為數(shù)據(jù)集是專(zhuān)門(mén)針對(duì)跌倒動(dòng)作制作的標(biāo)準(zhǔn)公開(kāi)數(shù)據(jù)集。利用OpenPose提取了人體特征點(diǎn)之后,我們還需要對(duì)數(shù)據(jù)進(jìn)行維度的預(yù)處理。本文網(wǎng)絡(luò)的輸入是特征點(diǎn)幀的連續(xù)序列,在每一幀中,特征點(diǎn)的x,y坐標(biāo)展開(kāi)成一個(gè)50維的向量(25×2),即對(duì)于長(zhǎng)度為T(mén)的輸入序列X1∶T=(X1,X2,…,Xt,…,XT),T為幀數(shù),Xt維度為50。

    2.2 實(shí)驗(yàn)硬件、軟件及參數(shù)配置

    表1、表2分別是實(shí)驗(yàn)環(huán)境的硬件和軟件配置。

    表1 實(shí)驗(yàn)硬件配置

    表2 實(shí)驗(yàn)軟件配置

    表3是實(shí)驗(yàn)環(huán)境的參數(shù)配置。

    表3 實(shí)驗(yàn)參數(shù)配置

    本文算法使用框架采用Tensorflow[19],具體實(shí)現(xiàn)使用框架的Keras部分。雙向循環(huán)神經(jīng)網(wǎng)絡(luò)對(duì)應(yīng)于tf.keras.layers.Bidirectional,門(mén)控循環(huán)單元對(duì)應(yīng)于tf.keras.layers.GRU,網(wǎng)絡(luò)的正則化方法變分丟棄法對(duì)應(yīng)于GRU參數(shù)中的dropout及recurrent_dropout。

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

    圖8、圖9分別是訓(xùn)練過(guò)程中訓(xùn)練集、驗(yàn)證集的損失和精度隨迭代次數(shù)變化的曲線(xiàn)。由變化曲線(xiàn)可知,盡管 CMDFALL 數(shù)據(jù)集數(shù)據(jù)量并不大,但在使用了變分丟棄法來(lái)對(duì)網(wǎng)絡(luò)進(jìn)行正則化之后,模型的過(guò)擬合問(wèn)題得到了較好的解決。

    圖8 loss-epoch曲線(xiàn)

    圖9 accuracy-epoch曲線(xiàn)

    表4是本文方法與CMDFALL數(shù)據(jù)集基準(zhǔn)算法的比較。

    表4 算法比較

    基準(zhǔn)算法與本文算法的對(duì)象均是人體特征點(diǎn),就精度而言,本文算法從數(shù)據(jù)集的基準(zhǔn)算法ResTCN[20]的0.5843提高到了0.7986;同時(shí),ResTCN的數(shù)據(jù)是來(lái)自于RGB-D深度相機(jī)Microsoft Kinects的三維特征點(diǎn),本文算法直接利用開(kāi)源計(jì)算機(jī)視覺(jué)庫(kù)對(duì)普通RGB相機(jī)提取二維特征點(diǎn)進(jìn)行識(shí)別,可以直接在已有的視頻設(shè)備(基本為普通RGB相機(jī))上進(jìn)行開(kāi)發(fā),而不需要專(zhuān)門(mén)進(jìn)行硬件設(shè)備的安裝和更新,節(jié)省了成本。

    3 結(jié)束語(yǔ)

    本文提出了一種基于二維人體特征點(diǎn)視覺(jué)技術(shù)的跌倒行為識(shí)別算法。首先,使用計(jì)算機(jī)視覺(jué)庫(kù)對(duì)RGB視頻幀進(jìn)行人體特征點(diǎn)的識(shí)別和提取。其次,構(gòu)建雙向循環(huán)神經(jīng)網(wǎng)絡(luò)對(duì)特征點(diǎn)構(gòu)成的特征序列進(jìn)行訓(xùn)練和識(shí)別。實(shí)驗(yàn)結(jié)果驗(yàn)證了雙向循環(huán)神經(jīng)網(wǎng)絡(luò)在基于二維人體特征點(diǎn)識(shí)別跌倒行為的有效性。同時(shí),與其它基于三維特征點(diǎn)的視覺(jué)技術(shù)需要專(zhuān)用的RGBD深度相機(jī)不同,本文提出的二維特征點(diǎn)序列識(shí)別算法可以直接應(yīng)用在普通RGB相機(jī)上。

    猜你喜歡
    關(guān)鍵點(diǎn)雙向人體
    雙向度的成長(zhǎng)與自我實(shí)現(xiàn)
    出版人(2022年11期)2022-11-15 04:30:18
    人體“修補(bǔ)匠”
    聚焦金屬關(guān)鍵點(diǎn)
    人體冷知識(shí)(一)
    肉兔育肥抓好七個(gè)關(guān)鍵點(diǎn)
    排便順暢,人體無(wú)毒一身輕
    奇妙的人體止咳點(diǎn)
    特別健康(2018年3期)2018-07-04 00:40:10
    一種軟開(kāi)關(guān)的交錯(cuò)并聯(lián)Buck/Boost雙向DC/DC變換器
    一種工作頻率可變的雙向DC-DC變換器
    醫(yī)聯(lián)體要把握三個(gè)關(guān)鍵點(diǎn)
    区。| 万全县| 株洲市| 平果县| 宜阳县| 和顺县| 大英县| 纳雍县| 中江县| 定兴县| 塘沽区| 甘德县| 潜山县| 苍南县| 安多县| 西安市| 宝兴县| 广灵县| 乌海市| 锡林郭勒盟| 望谟县| 平阳县| 木里| 武威市| 思茅市| 东阿县| 南京市| 鹰潭市| 金川县| 赫章县| 新龙县| 赞皇县| 沿河| 金塔县| 马公市| 清镇市| 额济纳旗| 星子县| 泗洪县| 昌都县| 陈巴尔虎旗|