国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

行人檢測(cè)和姿態(tài)估計(jì)系統(tǒng)幀數(shù)優(yōu)化*

2023-05-12 02:25戶慶凱萬(wàn)舒暢朱命冬
關(guān)鍵詞:攝像頭姿態(tài)分辨率

戶慶凱 萬(wàn)舒暢 朱命冬

(河南工學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 新鄉(xiāng) 453000)

1 引言

通過(guò)對(duì)現(xiàn)有行人檢測(cè)[1]和姿態(tài)估計(jì)系統(tǒng)[2]進(jìn)行了研究,現(xiàn)在的基于機(jī)器學(xué)習(xí),視覺(jué)技術(shù)應(yīng)運(yùn)而生的行人檢測(cè)和姿態(tài)估計(jì)系統(tǒng)在運(yùn)行在不同配置的計(jì)算機(jī)上時(shí)會(huì)有較大的效果差異,不同性能的計(jì)算機(jī),可能會(huì)出現(xiàn)幀數(shù)過(guò)剩,精確度不夠,或者精確度足夠,卻幀數(shù)過(guò)低,那以實(shí)現(xiàn)行人檢測(cè)和姿態(tài)估計(jì)的實(shí)時(shí)性。因?yàn)橄到y(tǒng)的默認(rèn)解決方案不能完美地適配在各種不同的計(jì)算機(jī)上,所以在一臺(tái)計(jì)算機(jī)上進(jìn)行了多種不同的配置方案,找到一種幀數(shù)精確度最高的解決方案。

2 相關(guān)工作

對(duì)于行人檢測(cè)與姿態(tài)估計(jì)[3]的應(yīng)用,CVPR 2016 Convolutional Pose Machine (CPM) 和CVPR2017 realtime multi-person pose estimation 算法是其基礎(chǔ),兩種算法的模型效果很好,并且取得了較好的魯棒性,當(dāng)行人被遮擋了一部分后還是能夠估計(jì)出來(lái)。

1)CMP[4](單人姿態(tài)估計(jì))的模型采用的大卷積核來(lái)獲得大的感受野,這對(duì)于推斷被遮擋的關(guān)節(jié)是很有效的。

整個(gè)算法流程:

(1)首先對(duì)圖像中出現(xiàn)的所有人進(jìn)行回歸,回歸各個(gè)人的關(guān)節(jié)的點(diǎn);

(2)然后根據(jù)center map 來(lái)去除掉對(duì)其他人的響應(yīng);

(3)最后通過(guò)重復(fù)地對(duì)預(yù)測(cè)出來(lái)的heatmap 進(jìn)行refine 得到最終的結(jié)果,在進(jìn)行refine 的時(shí)候,需要引入中間層的loss,從而保證較深的網(wǎng)絡(luò)仍然可以訓(xùn)練下去,不至于梯度彌散或者爆炸。

2)realtime multi-person pose estimation(多 人姿態(tài)估計(jì))[5]算法是基于CMP 構(gòu)造的,所以計(jì)算量較大,需要較好計(jì)算性能的顯卡進(jìn)行計(jì)算。該網(wǎng)絡(luò)的結(jié)構(gòu)與CPM 很類似,也是通過(guò)CPM 的方式先將所有人的關(guān)節(jié)點(diǎn)都回歸出來(lái),然后再對(duì)這些關(guān)鍵節(jié)點(diǎn)進(jìn)行劃分,這樣就可以把關(guān)節(jié)分配到每個(gè)人。

以下是幾種常見(jiàn)的人體姿態(tài)識(shí)別算法。

2.1 DensePose

2018 年2 月Facebook 開(kāi)源了人體姿態(tài)識(shí)別系統(tǒng)DensePose[6]。Facebook公布了這一框架的代碼、模型和數(shù)據(jù)集,同時(shí)發(fā)布了DensePose-COCO,這是一個(gè)為了估計(jì)人類姿態(tài)的大型真實(shí)數(shù)據(jù)集,其中包括了對(duì)5萬(wàn)張COCO圖像手動(dòng)標(biāo)注的由圖像到表面的對(duì)應(yīng)。這對(duì)深度學(xué)習(xí)研究者來(lái)說(shuō)是非常詳細(xì)的資源,它對(duì)姿態(tài)估計(jì)、身體部位分割等任務(wù)提供了良好的數(shù)據(jù)源。

DensePose 的論文中提出了DensePose-RCNN,這是Mask-RCNN 的一種變體,可以以每秒多幀的速度在每個(gè)人體區(qū)域內(nèi)密集地回歸特定部位的UV坐標(biāo)。它是基于一種能將圖像像素通過(guò)卷積網(wǎng)絡(luò)映射到密集網(wǎng)格的系統(tǒng)——DenseReg。模型的目標(biāo)是決定每個(gè)像素在表面的位置以及它所在部分相對(duì)應(yīng)的2D參數(shù)。

DensePose 借用了Mask-RCNN[7]的架構(gòu),同時(shí)帶有Feature Pyramid Network(FPN)的特征,以及ROI-Align 池化。除此之外,他們?cè)赗OI 池化的頂層搭建了一個(gè)全卷積網(wǎng)絡(luò)。

2.2 OpenPose

OpenPose[8]是由卡內(nèi)基梅隆大學(xué)認(rèn)知計(jì)算研究室提出的一種對(duì)多人身體、面部和手部形態(tài)進(jìn)行實(shí)時(shí)估計(jì)的框架。

OpenPose 同時(shí)提供2D 和3D 的多人關(guān)鍵點(diǎn)檢測(cè),同時(shí)還有針對(duì)估計(jì)具體區(qū)域參數(shù)的校準(zhǔn)工具箱。OpenPose可接受的輸入格式有很多種,可以是圖片、視頻、網(wǎng)絡(luò)攝像頭等。同樣,它的輸出格式也是多種多樣,可以是PNG、JPG、AVI,也可以是JSON、XML 和YML。輸入和輸出的參數(shù)同樣可以針對(duì)不同需要進(jìn)行調(diào)整。

2.3 Human Body Pose Estimation

該模型利用MPII[9]人類姿勢(shì)數(shù)據(jù)集進(jìn)行訓(xùn)練,這是一個(gè)內(nèi)容十分豐富的數(shù)據(jù)集,專門(mén)針對(duì)人類姿態(tài)估計(jì)。目前只有TensorFlow的實(shí)現(xiàn)。

這項(xiàng)研究將人類姿態(tài)估計(jì)的任務(wù)應(yīng)用到真實(shí)的圖片中,該方法既可以進(jìn)行動(dòng)作識(shí)別,也能進(jìn)行估計(jì),與之前先檢測(cè)人類動(dòng)作再對(duì)此進(jìn)行推測(cè)的技術(shù)有所區(qū)分。在實(shí)施過(guò)程中用到了基于CNN 的探測(cè)器和整數(shù)線性規(guī)劃法。

2.4 UniPose

基于“瀑布”收縮空間池架構(gòu)(WASP),Artacho 等提出了一個(gè)統(tǒng)一的人體姿態(tài)估計(jì)框架(UniPose)[10]。UniPose 不需要單獨(dú)的分支來(lái)進(jìn)行對(duì)邊界框和關(guān)節(jié)檢測(cè),結(jié)合上下文分割和聯(lián)合定位功能,確定了人體檢測(cè)的關(guān)節(jié)點(diǎn)和邊界框的位置。在不依賴統(tǒng)計(jì)后處理方法的情況下以高精度估計(jì)人體姿勢(shì)。

默認(rèn)的openpose[11]參數(shù)和自己電腦的配置不完全匹配,會(huì)導(dǎo)致電腦性能資源的浪費(fèi)或溢出,導(dǎo)致軟件在運(yùn)算處理行人態(tài)勢(shì)時(shí),無(wú)法充分使用電腦性能,無(wú)法跑出最大FPS。甚至有時(shí)因?yàn)閰?shù)設(shè)置不當(dāng)和優(yōu)化不足,會(huì)導(dǎo)致FPS 數(shù)值非常低。針對(duì)openpose 默認(rèn)的參數(shù)進(jìn)行優(yōu)化,使程序跑的過(guò)程中,將電腦性能發(fā)揮到極致,將沒(méi)必要的處理減到最少,處理精度和震蕩率減小到最合理范圍,open?pose 的默認(rèn)處理分辨率的精度較高,識(shí)別精度很高,但如果GPU 性能不好的話,就會(huì)讓FPS[12]非常不理想。本文結(jié)合這些問(wèn)題進(jìn)行分析和調(diào)試,尋找最優(yōu)的參數(shù)解決方案。

3 平臺(tái)設(shè)計(jì)

本系統(tǒng)平臺(tái)的硬件部分包括一部手機(jī)、一臺(tái)GPU性能較好PC機(jī),手機(jī)進(jìn)行視頻錄制和拍照片,把錄制好的視頻和圖片導(dǎo)入到PC 里,PC 端利用OpenPose 系統(tǒng)進(jìn)行處理,如圖1。手機(jī)端和電腦端分別下載DroidCam,此軟件可以實(shí)現(xiàn)通過(guò)無(wú)線網(wǎng)絡(luò),把手機(jī)作為PC端攝像頭的功能,將電腦和手機(jī)連接好,實(shí)現(xiàn)實(shí)時(shí)的攝像畫(huà)面功能,PC 端利用OpenPose 系統(tǒng),進(jìn)行實(shí)時(shí)攝像畫(huà)面人體姿態(tài)識(shí)別,如圖2。

圖1 視頻圖片處理流程

圖2 攝像實(shí)時(shí)處理流程

4 系統(tǒng)實(shí)現(xiàn)

綜合前面的開(kāi)發(fā)環(huán)境搭建和算法分析,本章主要任務(wù)是設(shè)計(jì)并實(shí)現(xiàn)基于OpenPose[13]的圖片、視頻和實(shí)時(shí)攝像頭的人體姿態(tài)識(shí)別系統(tǒng)。深度學(xué)習(xí)訓(xùn)練數(shù)據(jù)集模型文件采用預(yù)先訓(xùn)練好的COCO[14]模型,通過(guò)OpenPose 對(duì)圖片、視頻、實(shí)時(shí)攝像頭、進(jìn)行姿態(tài)識(shí)別和圖片、關(guān)節(jié)點(diǎn)信息的輸出。

4.1 手機(jī)作為攝像頭與電腦連接

手機(jī)端和電腦端各自下載DroidCam 軟件,從而手機(jī)可作為電腦的攝像頭。

1)下載手機(jī)端DroidCam運(yùn)行如圖3。

圖3 Android端DroidCam運(yùn)行

手機(jī)屏幕上顯示的WIFI IP 為手機(jī)的IP 地址,Device IP為端口號(hào)。

2)下載電腦端DroidCam運(yùn)行如圖4。

圖4 電腦端DroidCam運(yùn)行結(jié)果

電腦端輸入手機(jī)端的IP 地址和端口號(hào),如圖5。

圖5 輸入界面

將上面手機(jī)上的IP 地址和端口號(hào)輸入電腦端的對(duì)應(yīng)位置,下面的Audio 可以設(shè)置是否通過(guò)手機(jī)錄制聲音。

4)連接后的效果如圖6。

圖6 連接效果

點(diǎn)擊“Start”后手機(jī)與電腦連接,手機(jī)攝像頭的畫(huà)面被同步到電腦上,視頻延遲很低,清晰度流暢度也不錯(cuò),電腦端視頻也是以攝像頭視頻流的方式被調(diào)用的,方便后面對(duì)調(diào)用攝像頭時(shí),能夠調(diào)用到這個(gè)視頻流。

4.2 對(duì)圖片進(jìn)行人體姿態(tài)識(shí)別處理

1)選取一張含有人物的圖片,如圖7。

圖7 人物圖

2)輸入命令行指令,輸入圖片地址和想要將處理好的圖片輸出的地址,如圖8。

圖8 指令圖1

其中”binOpenPoseDemo.exe”為運(yùn)行OpenPose的命令,--write_images examples3”表示將處理的數(shù)據(jù)以圖片格式輸出,輸出地址為”examples3”。--image_dir examples2”表示處理的數(shù)據(jù)為圖片,讀取地址為”examples2”。

3)輸出的人體姿態(tài)圖像如圖9。

圖9 人物姿態(tài)識(shí)別圖

4.3 對(duì)圖片進(jìn)行人體面部識(shí)別和手部識(shí)別

1)輸入命令行指令如圖10。

圖10 指令圖2

其中“--face”表示啟用人臉姿態(tài)識(shí)別,“--hand”表示啟用手部姿態(tài)識(shí)別,--face_net_reso?lution“256×256”表示面部識(shí)別的識(shí)別分辨率為‘256×256’,--hand_net_resolution“256×256”“表示手部姿態(tài)識(shí)別的識(shí)別分辨率為‘256×256’。

2)運(yùn)行效果如圖11。

圖11 人體姿態(tài)面部手部識(shí)別圖

4.4 對(duì)視頻進(jìn)行人體姿態(tài)識(shí)別

1)選取一段人物清晰的視頻如圖12。

圖12 人體視頻動(dòng)圖

2)輸入命令行指令如圖13。

圖13 指令圖3

視頻地址為“examplesmediammexport162703 4-098799.mp4”,“write_images_examplesmedia_out”為設(shè)置輸出格式為圖片,輸出地址為“examplesme?dia_out”。

3)輸出的人體姿態(tài)圖片如圖14。

圖14 圖片輸出圖

因?yàn)橐曨l通過(guò)處理只能輸出為逐幀的圖片,所以此時(shí)該文件夾中輸出了兩千多張圖片,是逐幀處理輸出的。

4)逐幀圖片合成視頻

通過(guò)pr 等視頻剪輯軟件,將導(dǎo)出到“exam?plesmedia_out”路徑下的2847張進(jìn)行視頻合成。

5)合成后視頻效果如圖15。

圖15 視頻合成效果動(dòng)圖

6)視頻人體識(shí)別流程圖如圖16。

圖16 視頻處理流程圖

4.5 攝像頭實(shí)時(shí)人體姿態(tài)識(shí)別

1)手機(jī)作為攝像頭進(jìn)行連接

手機(jī)端電腦端下載DroidCam 軟件,電腦端輸入手機(jī)端的IP 地址和端口,進(jìn)行連接,效果如圖17所示。

圖17 攝像頭連接圖

2)輸入命令行命令,如圖18所示。

圖18 指令圖4

3)運(yùn)行結(jié)果為如圖19。

圖19 實(shí)時(shí)人體姿態(tài)識(shí)別動(dòng)圖

5 系統(tǒng)優(yōu)化

5.1 攝像頭調(diào)用錯(cuò)誤

在啟用攝像頭實(shí)時(shí)運(yùn)行時(shí),會(huì)出現(xiàn)攝像頭調(diào)用錯(cuò)誤的情況,調(diào)用的不是自己想調(diào)用的手機(jī)攝像頭,而是電腦攝像頭,如圖20所示。

圖20 系統(tǒng)默認(rèn)調(diào)用攝像頭

在運(yùn)行時(shí),需要將攝像頭指定為數(shù)組中的第二個(gè)攝像頭,如圖21所示。

圖21 指令圖5

改過(guò)攝像頭后運(yùn)行程序如圖22。

圖22 改后攝像圖

將攝像頭改為1 后,OpenPose 的運(yùn)行可以正常顯示手機(jī)作為攝像頭傳入的畫(huà)面。

5.2 運(yùn)行時(shí)內(nèi)存溢出

獨(dú)立運(yùn)行Pose[15]模式時(shí),OpenPose可以正常運(yùn)行,但將face 和hand 添加進(jìn)來(lái)時(shí),程序就會(huì)出現(xiàn)溢出如圖23。

圖23 內(nèi)存溢出提示圖

第6 行顯示“out of memory”表示內(nèi)存溢出了。經(jīng)過(guò)查詢研究發(fā)現(xiàn),OpenPose 在默認(rèn)情況下,對(duì)pose、face、hand 的解析分辨率設(shè)置的較高,設(shè)置成小一點(diǎn)的分辨率可以解決這個(gè)問(wèn)題。對(duì)pose、face、hand重新設(shè)置分辨率參數(shù),如圖24。

圖24 重新設(shè)定分辨率圖

運(yùn)行效果如圖25所示。

圖25 人體臉部手部姿態(tài)識(shí)別動(dòng)圖

5.3 優(yōu)化調(diào)試

經(jīng)過(guò)幾次討論和嘗試,鎖定了flags.hpp[17]文檔,里面有每個(gè)參數(shù)詳細(xì)注釋,如圖26。

圖26 文檔注釋圖

其中主要參數(shù):

Pose:身體骨骼關(guān)鍵點(diǎn)檢測(cè)模式;

Face:臉部關(guān)鍵點(diǎn)檢測(cè)模式;

Hand:手部關(guān)鍵點(diǎn)檢測(cè)模式。

在不同模式下設(shè)置不同分辨參數(shù),導(dǎo)致運(yùn)行幀率不同和人體識(shí)別精度不同。通過(guò)調(diào)整參數(shù),來(lái)提高骨骼還原度、面部還原度、手部還原度。通過(guò)實(shí)驗(yàn)設(shè)置不同分辨率參數(shù)來(lái)找到一套最優(yōu)參數(shù)設(shè)置。

發(fā)現(xiàn)是電腦GPU 配置太差,無(wú)法運(yùn)行默認(rèn)狀態(tài)的pose+hand/face[16],以上報(bào)錯(cuò)信息也是內(nèi)存溢出。

解決方案:

調(diào)整網(wǎng)絡(luò)的分辨率,其調(diào)整如表1。

表1 分辨率調(diào)整表格

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

默認(rèn)情況下如表2所示。

表2 默認(rèn)情況表

第一次調(diào)整如表3所示。

表3 第一次調(diào)整表

第二次調(diào)整如表4所示。

表4 第二次調(diào)整表

第三次調(diào)整如表5。

表5 第三次調(diào)整表

由以上實(shí)驗(yàn)結(jié)果,對(duì)每個(gè)列表的分辨率進(jìn)行實(shí)驗(yàn),統(tǒng)計(jì)每個(gè)列表分辨率下運(yùn)行的幀率,綜合考慮流暢性和識(shí)別精度兩方面,得到了一套比較合理的分辨率方案,如表6所示。

表6 最終方案表

為了使得行人檢測(cè)和姿態(tài)估計(jì)系統(tǒng)在精確度、時(shí)效性以及幀率之間達(dá)到了一個(gè)良好的平衡,通過(guò)實(shí)驗(yàn),本文總結(jié)出一套全新的參數(shù)優(yōu)化策略:為了得到一套比較合理的分辨率方案,可以快速地去設(shè)置參數(shù),初始分辨率為256*256,針對(duì)net_resolution模型,可以調(diào)整pose、pose+face、pose+hand、pose+face+hand 的參數(shù);針對(duì)face_net_resolution 模型,只需要去調(diào)整post+face 參數(shù)或pose+face+hand 參數(shù);針對(duì)hand_net_resolution 模型,只需要調(diào)整pose+hand或pose+face+hand參數(shù)。

6 結(jié)語(yǔ)

本論文研究了在各種不同檢測(cè)需求下和不同硬件環(huán)境下,最優(yōu)的配置參數(shù)。實(shí)現(xiàn)性能利用最大化。

本文在基于深度學(xué)習(xí)的行人檢測(cè)姿態(tài)估計(jì)系統(tǒng)的基礎(chǔ)上主要做了以下工作:

1)對(duì)與不能調(diào)用其他非系統(tǒng)攝像頭的問(wèn)題進(jìn)行研究改進(jìn)。

2)對(duì)不同精度需求和不同配置的電腦進(jìn)行參數(shù)優(yōu)化。

3)總結(jié)出一套全新的參數(shù)優(yōu)化策略。

人體姿態(tài)識(shí)別做為一個(gè)研究方向,以后一定會(huì)進(jìn)入我們每個(gè)人的生活,可以預(yù)測(cè)這個(gè)技術(shù)以后一定會(huì)改變我們的生活方式,為人類帶來(lái)巨大貢獻(xiàn)。

猜你喜歡
攝像頭姿態(tài)分辨率
浙江首試公路非現(xiàn)場(chǎng)執(zhí)法新型攝像頭
攝像頭連接器可提供360°視角圖像
攀爬的姿態(tài)
EM算法的參數(shù)分辨率
原生VS最大那些混淆視聽(tīng)的“分辨率”概念
全新一代宋的新姿態(tài)
跑與走的姿態(tài)
基于太赫茲技術(shù)的新一代攝像頭及其在安防領(lǐng)域的應(yīng)用探討
基于深度特征學(xué)習(xí)的圖像超分辨率重建
一種改進(jìn)的基于邊緣加強(qiáng)超分辨率算法