999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

對人體姿態估計熱圖誤差的再思考

2022-08-24 06:30:38楊飛宇宋展肖振中莫曜陽陳宇潘哲張敏張遙錢貝貝湯朝偉金武
計算機應用 2022年8期

楊飛宇,宋展,肖振中,莫曜陽,陳宇,潘哲,張敏,張遙,錢貝貝,湯朝偉,金武

(1.中國科學院深圳先進技術研究院,廣東深圳 518055;2.奧比中光科技集團股份有限公司,廣東深圳 518063;3.南京航空航天大學能源與動力學院,南京 210016)

0 引言

近年來,深度學習[1]的快速發展極大地提高了人體姿態估計算法的表現。在眾多的基于深度學習的算法中,基于熱圖的算法取得了最佳的表現[2-6]。熱圖解碼利用神經網絡預測的熱圖估計人體關節點的坐標。與圖像分類[7-9]、目標檢測[10-12]和語義分割[13-14]等計算機視覺任務不同的是,人體姿態估計算法采用的度量指標將預測和標注的人體關節點進行點對點的比較,所以人體姿態估計任務對采用的熱圖解碼算法的可靠性十分敏感。另外,大多數應用場景都要求進行實時的人體姿態估計,對熱圖解碼算法的速度也提出了嚴格的要求。因此,開發快速、精確的熱圖解碼算法,高效高精度地計算人體關節點的坐標具有重要意義。

現有的熱圖解碼算法專注于消除熱圖的隨機誤差,忽略了系統誤差的影響。比如,標準熱圖解碼算法取熱圖上的最大響應點的坐標作為關節點的坐標,該算法簡單但容易引入較大的誤差。文獻[15]通過將最大響應點的坐標向第二大響應點坐標移動1/4 的距離所得到的坐標作為預測的人體關節點的位置。該算法利用了熱圖的兩個極值點,在某種程度上能減小隨機誤差,但效果有限。文獻[16]在此基礎上開展了進一步研究,通過計算熱圖的一階和二階導數來解高斯分布的平均值。這種算法利用整個熱圖減小隨機誤差,也達到了目前最佳的精度水平。但是由于需要高斯平滑前處理操作,該算法的速度較慢。從以上研究可以發現,現有的熱圖解碼算法只處理隨機誤差,忽略了特定網絡帶來的系統誤差的影響。

為了考慮系統誤差的影響,本文利用神經網絡在訓練集上的誤差表現補償模型在推理階段的誤差。本文定義了一個最佳的誤差補償因子以描述網絡的誤差特性,并用于開展誤差補償。該算法可以很容易地與任意基于熱圖的神經網絡集成,而無需更改模型設計。

本文主要工作包括:1)通過實驗發現了目前基于熱圖的算法存在顯著的系統誤差,而之前的熱圖解碼算法都忽略了系統誤差的存在;2)通過理論推導給出了結合神經網絡和訓練集評估和補償誤差的算法。

1 相關工作

1.1 姿態估計

得益于神經網絡技術的飛速發展[1],姿態估計進入了一個快速發展的新階段。人體姿態估計通常分為單人和多人任務。單人姿態估計只檢測人體關節,無需檢測關節點之間的連接關系,因此具有相對較高的精度[2-3,17-18]。多人姿態估計又分為兩類:自上而下算法[4]和自下而上算法[19-21]。自上而下的算法本質上是將行人檢測與單人姿態估計相結合。首先通過行人檢測算法(比如YOLO(You Only Look Once)[11]和 Mask R-CNN(Mask Region-based Convolutional Neural Network)[10]等)檢測出行人的外接框,然后用每一個外接框裁剪出每一個人體實例,最后用單人姿態估計網絡(比如級聯金字塔網絡(Cascaded Pyramid Network,CPN)[4]和高分辨率網絡(High-Resolution Network,HRNet)[2]等)去檢測每個人體實例的骨架關節點。比如CPN[4]通過多級精細化的方法定位更精確的人體關節點位置;張小娜等[22]設計了對稱空間變換網絡與單人姿態估計網絡相連接,實現在遮擋情況下更精確的預測;田宇[23]提出了基于沙漏網絡的輕量化的自上而下的人體姿態估計網絡,能夠實現在復雜場景下相對快速的推理。兩階段過程通常比較耗時,需要同時使用行人檢測和單人姿態估計兩個神經網絡,但具有較高的精度。因此,目前人體姿態估計任務精度最高的算法大多是基于自上而下框架實現的[3]。自下而上的算法在學習關節點坐標的同時,還要學習關節點之間的連接關系以達到區分不同實體的目的[19-21]。代表性的連接關系學習策略包括學習相鄰關節點的連接(OpenPose)[19],通過關聯嵌入分組學習人體關節(Associative Embedding)[20]和通過概率學習連接(Pose Proposal Network)[21]。

1.2 熱圖解碼

學術界對人體姿態的研究主要集中在設計不同的網絡架構,對熱圖解碼研究較少,然而熱圖解碼卻對最終預測的精度有顯著的影響。標準解碼算法是目前應用最廣泛的熱圖解碼算法,它使用高斯濾波器[24]對熱圖進行平滑后提取響應最大點坐標作為關節點坐標。標準解碼算法速度快,但對誤差極其敏感,通常精度較低。為了在一定程度上解決這一問題,Newell 等[15]提出了一種基于經驗的Shifting 算法,它僅憑借一個點確定關節點位置不夠可靠,因此該算法將高斯平滑后熱圖的最大響應點的坐標向第二最大響應點的坐標移動1/4 的距離以定位人體關節點坐標。該算法由熱圖的兩個極大值代替一個極大值,效果優于標準算法,但由于建立在標準算法的基礎上,速度比標準算法稍慢一些。Zhang等[16]提出了一種名為DARK(Distribution-Aware coordinate Representation of Keypoints)的解碼算法,該算法在高斯平滑后的熱圖上取一階導數和二階導數求解高斯分布的平均值。由于用到了整個熱圖的信息,DARK 算法[16]能夠提供更精確的預測,是目前精度最佳的熱圖解碼算法,但由于需要進行高斯平滑和求解導數,該算法的速度較慢。以上算法都沒有考慮系統誤差的影響,因此不可避免地限制了算法的預測精度。

2 本文方法

本章首先回顧熱圖編碼的過程,然后提出本文的誤差補償算法,最后給出誤差補償過程中誤差補償因子的計算方法。

2.1 熱圖編碼

熱圖編碼是將人體關節點坐標轉換成對應的熱圖的過程。在基于熱圖的人體姿態估計中,人體關節坐標按比例編碼到熱圖中,可以表示為:

p與p'分別對應彩色圖中以及熱圖中的點坐標,λ為神經網絡輸出步長。最直接的編碼方式是將關節點像素設為1,所有的非關節點像素設為0(One-hot 編碼)。然而,僅用一個有效像素代表關節點容易受到誤差的干擾。相比之下,采用連續的像素分布代表關節點信息更有利于神經網絡的學習。用二維高斯分布編碼人體關節坐標已經成為一個標準的做法。二維高斯分布可以表示為:

其中:μ為平均值;Σ為協方差矩陣。采用二維高斯編碼過后,高斯分布的均值μ所對應的坐標即原來的人體關節點的坐標。解碼的過程就是從帶有誤差的高斯分布中估計均值μ的坐標的過程。

2.2 誤差補償方法

從熱圖編碼的過程可以看出,解碼的過程即獲得高斯分布均值的過程,標準算法通過最大值所在位置的坐標近似均值的位置,或者采用導數的方法開展更精確的估計,但是現有算法只能平均掉隨機誤差,無法考慮系統誤差的影響。本文提出通過誤差補償的方式,不僅可以消除隨機誤差的影響,同時充分考慮了系統的作用,并且通過對結果進行補償修正,能夠獲取更精確的熱圖解碼。這一節將闡述本文提出的熱圖誤差補償算法。圖1 給出了神經網絡預測的熱圖中存在的誤差。針對一維的情況進行分析,所得結論同樣適用于二維的真實熱圖情況。首先,神經網絡預測的熱圖可以分解為:

圖1 熱圖的信號和誤差函數Fig.1 Signal and error functions of heatmap

其中:g(x)表示高斯分布信號函數;h(x)表示誤差函數,同時包含了隨機誤差和系統誤差;f(x)表示神經網絡預測的熱圖,即帶誤差的信號函數。為便于描述,將f(x)、g(x)和h(x)簡單地表示為f、g和h。

解碼的任務可以定義為:g和h均未知,f已知,求μ的估計值,下面給出了本文提出的誤差補償算法的理論推導。根據均值的定義,高斯信號g的均值μ可以表示為:

同樣地,選取一個較小的偏移量Δ,帶噪聲的信號f在區間[x1,x2-Δ]的均值ν(Δ)可以表示為:

對于一個收斂較好的神經網絡,應該具有較高的信噪比,因此在區間[x1,x2-Δ]上誤差的積分相較于信號的積分可以忽略,即

將式(7)代入(6),可得

又由于Δ較小且信號g是均值為(x1+x2)2 的高斯分布,其主要響應位于均值附近,所以可以認為g在[x1,x2]區間上的積分遠大于在[x2-Δ,x2]區間上的積分:

再由ν(Δ)的定義(5)可知,將Δopt代入式(5)可得待求量μ的一個估計值為:

稱Δopt為誤差補償因子。

2.3 誤差補償因子的計算

式(12)即本文提出的誤差補償熱圖解碼方法,可以看出μ被近似為f在區間[x1,x2-Δopt]上的平均值,已知Δopt即可得到μ的估計值,下面將討論如何確定Δopt。由式(10)可以得出,由于誤差函數h的不確定性,理論上并不一定存在一個Δopt,使得δ(Δopt)=0 成立,因此需要尋找使δ(Δ)最接近于0 的Δ,即

由于μ和Δopt都是待求量,因此不能通過式(13)求解。在實際情況下,可以通過數據集確定Δopt的值,假設算法的精度為A,它可以表示為ν的函數,即A(ν),在訓練集D上評估神經網絡N的精度可以表示為:

那么,在理論上A在μ處取得高精度,即

因此,Δopt可以被表示為:

對于二維真實熱力圖的情況,由于在數據編碼、網絡推理和熱圖解碼過程中,x和y方向都采用相同處理。因此由對稱性可知,x和y服從相同的誤差分布,可以得出:

值得注意的是,本文算法一次性補償所有誤差包括隨機誤差和系統誤差。此外,與以往算法不同的是,此算法無需利用高斯光滑進行預處理,因為該算法可以在任意帶有噪聲的熱力圖上開展積分運算,噪聲本身可以被計算為需要補償的對象,4.4 節進一步討論了高斯平滑對不同算法的影響。

3 實驗設置

當模型在訓練集上收斂后,通過式(16)可獲得最優誤差補償因子Δopt。圖2 描述了確定Δopt的具體步驟:1)首先找到熱圖的最大值(圖2 中的A 點),近似作為高斯分布的中心位置。2)將積分區域擴展到6σ+3,其中σ是高斯分布的標準差。由于高斯分布落在([-3σ,3σ])區域內的概率為99.7%,為了進一步覆蓋整個分布,這里在兩邊再額外擴展一個像素,達到6σ+3。注意,也可以采用更大的區域,對結果沒有影響,但是會帶來額外的計算。3)將x和y軸的上限減小Δ(在圖2 中僅顯示x軸),并使用式(5)進行積分,獲得預測的關節坐標ν(Δ),再用式(14)評估模型精度A(ν)(例如,COCO(Common Objects in COntext)上的平均精度)。4)最后再由式(16),獲得最佳模型性能的是最佳誤差補償因子Δopt,該誤差補償因子將用于模型推理。值得注意的是,x1和x2的值是由生成熱圖的σ大小決定的,更大的σ值需要更大的積分區域,即x1=-3σ,x2=3σ。

圖2 計算最優補償因子Δopt的方法Fig.2 Calculation method of optimal compensation factor Δopt

本文采用COCO-2017 和MPII(Max Planck Institute for Informatics)兩個廣泛使用的人體姿態估計數據集進行測試,COCO 關鍵點數據集[25]具有20 萬張圖像包含超過25 萬個人像樣本,這些樣本具有豐富的人像尺度、背景環境和遮擋模式。每個人實例被標記為17 個關節。MPII 人體姿態數據集[26]包含2 萬張圖像,其中包括4 萬多個人體樣本,每個樣本都有16 個關鍵點。平均精度(Average Precision,AP)和相對頭部的正確點百分比(Percentage of Correct Keypoints with respect to head,PCKh)指標分別用于COCO 和MPII 數據集以評估模型性能。

為了開展充分的驗證,本文采用14 個模型進行評估,包括 HRNet(High Resolution Net)模型族(HR-W32 和HR-W48)[2]和ResNet 模型族(ResNet-50、ResNet-101 和ResNet-152)[17],模型具有具有3 種輸入分辨率(256×192,256×256 和384×288)。本文使用不同的算法對它們的熱圖進行解碼,包括標準算法、Shifting 算法[15]、DARK 算法[16]和本文算法。值得注意的是,原始的DARK 算法[16]為了提升精度,采用了flip 的策略,但是flip 策略需要進行2 次推理,在實際應用中為了達到較快的推理速度,通常并不會采用flip 策略,因此本文在模型評估中不使用flip 策略。

4 實驗結果與分析

4.1 系統誤差

表1 列出了各個模型在COCO 和MPII 上的Δopt值,因為在這兩個數據集上具有相同的Δopt值,所以沒有分別列出。

表1 各個模型的最優誤差補償因子Δopt值Tab.1 Optimal error compensation factor Δopt value of each model

這說明COCO 和MPII 數據具有較高的一致性。另外,對于所有模型都有Δopt>0 成立,說明系統誤差總是向右下角偏移,需要通過減小右下角的積分面積補償系統誤差帶來的偏移。本文僅從實驗結果中觀察到了系統誤差,并不能確定系統誤差的準確來源,系統誤差可能是由于神經網絡中的不對稱操作造成的,例如非對稱pooling,非對稱padding 或stride>1 的卷積等操作,這些操作導致特征向右下角移動,從而引入系統誤差。由于這些系統誤差不能僅僅依靠熱圖本身的信息消除,因此標準算法、Shifting 算法[15]和DARK 算法[16]都無法消除系統誤差,而本文算法利用了訓練集和模型提供的支撐信息,可以起到消除系統誤差的作用。

4.2 COCO結果

本文在COCO 數據集上對比了各個算法。表2 列出了各個模型的精度指標,包括平均精度(AP)和平均召回(AR)??梢钥闯?,本文算法在各個指標上都優于其他算法。具體來說,本文算法使HRNet-W48-256×192 模型的平均精度相比之前最佳算法提升了2.86 個百分點。算法的精度可以排列為:本文算法>DARK 算法[16]>Shifting 算法[15]>標準算法。前3 種算法建立在標準算法的基礎上,所以精度更高。DARK算法[16]通過充分利用熱圖信息,能夠比Shifting 算法[15]更好地減小隨機誤差;但DARK 算法[16]仍然存在顯著的系統誤差,因此精度不如本文算法。

表2 COCO驗證集上的精度(驗證過程不采用flip策略)Tab.2 Accuracy on COCO validation dataset(validation process without flip strategy)

圖3 比較了各個算法的AP 指標。可以看出,相較于對比算法,本文算法獲得了較大的精度增益。比如在輸入分辨率為256×192 時,本文算法使ResNet-50、ResNet-101 和ResNet-152 模型AP 較之前最先進的DARK 算法[16]分別獲得2.24、2.68 和2.59 個百分點的精度提升;HR-W32 和HR-W48 模型的AP 分別提高了2.73 和2.86 個百分點。圖4 給出了采用本文算法預測的人體骨架點,藍色和紅色分別表示沒有誤差補償和有誤差補償的結果??梢钥闯鐾ㄟ^誤差補償可以預測出更合理的關節點坐標。從熱圖看出,采用誤差補償修正前的關節點的位置更接近于最大響應處所對應的坐標位置,然而響應往往并非一個理想的高斯分布,而是受到周圍因素,如顏色、形狀等的影響而具有不規則的形態。采用了誤差補償算法通過積分修正的關節點位置,更充分地考慮全局響應的影響,預測結果更合理。

圖3 不同算法在COCO驗證集上的AP比較Fig.3 AP comparison of different methods on COCO validation dataset

圖4 誤差補償對預測結果的影響Fig.4 Influence of error compensation on prediction results

4.3 MPII結果

表3 列出了在MPII 數據集上各個模型的PCKh 值。可以注意到,DARK 算法[16]預測的頭部關節更好,本文算法對肩關節、肘關節、腕關節、髖關節和膝關節的效果優于其他算法。圖5 對比了不同算法的PCKh0.1(以0.1 為閾值的PCKh指標)和PCKh0.5(以0.5 為閾值的PCKh 指標)指標,同樣可以得出:本文算法>DARK 算法[16]>Shifting 算法[15]>標準算法的精度順序排序。對于PCKh0.1指標,本文算法將HR-W32-256×256 和ResNet-152-256×256 的性能分別提高了8.42 和7.79 個百分點(圖5(a))。當使用更寬松的PCKh0.5指標進行評估時,精度提升了0.42 和0.47 個百分點(圖5(b))。不同的神經網絡結構、輸入分辨率、評估指標和數據集的測試表明,本文算法均優于現有的算法,驗證了本文算法的合理性和通用性。

圖5 不同算法在MPII數據集上的PCKh值比較Fig.5 PCKh comparison of different methods on MPII dataset

表3 MPII驗證集上的PCKh精度(驗證過程不采用flip策略) 單位:%Tab.3 PCKh accuracy on MPII dataset(validation process without flip strategy)unit:%

4.4 高斯平滑

以往的算法對高斯平滑有較強的依賴,比如DARK 算法[16]需要用高斯平滑對熱圖進行預處理,以進行后續的求導操作,不使用高斯平滑會導致明顯的精度損失。相反地,本文算法對高斯平滑并沒有依賴性,因為本文使用的積分操作對非光滑的表面也適用。表4 列出了高斯平滑對DARK算法[16]和本文算法的影響??梢钥闯?,在沒有高斯平滑的情況下,DARK 算法[16]的模型性能顯著下降,因為此時DARK 算法[16]不能獲得精確的一階和二階導數。而本文算法在使用和不使用高斯平滑時,精度僅出現了小幅的波動,表明本文算法并不依賴高斯平滑進行預處理,由于使用積分代替導數,本文算法更能抵抗噪聲的干擾。

表4 分辨率、高斯平滑和主干網絡對算法精度的影響Tab.4 Influence of resolution,Gaussian smoothing and backbone network on algorithm accuracy

4.5 速度對比

在實際的人體姿態估計應用中,通常要求快速地完成預測,因此算法的速度十分重要。Shifting 算法[15]、DARK 算法[16]和本文算法都是基于標準算法實現的,因此有必要對比各算法所引入的計算耗時。表5 列出了各算法與標準算法相比在Intel Core-i7 9700F CPU 上的額外運行時間??梢钥闯觯篠hifting 算法[15]速度最快,但精度低;精度較高的DARK算法[16]處理單張圖像需要3.0 ms,這是由于DARK 算法[16]需要進行全圖的高斯平滑,然后計算熱圖的一階和二階導數,計算量較大。相比之下,本文算法處理單張圖片耗時1.4 ms,速度約為DARK 算法[16]的2 倍,顯著地縮短了計算時間。

表5 不同算法相較于標準算法的額外運行時間單位:msTab.5 Extra running time of different methods beyond standard method unit:ms

5 結語

針對當前熱圖解碼算法沒有考慮系統誤差的問題,本文提出了一種基于誤差補償的熱圖解碼算法。該算法較當前最佳的算法具有顯著的精度提升,同時由于不依賴于高斯平滑預處理,不用進行耗時的求導預算,本文算法的速度約為當前最佳算法的2 倍。大量的實驗結果表明,當前的人體姿態估計算法的系統誤差主要偏向于熱圖的右下角,可能的原因是神經網絡中的非對稱操作。當前并不能確定產生系統誤差的根本原因,將在以后開展相關的研究。

主站蜘蛛池模板: 成人精品在线观看| 国产SUV精品一区二区6| 97国产在线播放| 亚洲精品你懂的| 最新日本中文字幕| 国产乱论视频| 国产精品一区在线麻豆| 中文字幕无码中文字幕有码在线| 毛片久久久| 中文字幕天无码久久精品视频免费| 久久久久无码精品国产免费| 伊人五月丁香综合AⅤ| 欧美性精品| 亚洲综合片| 拍国产真实乱人偷精品| 在线国产综合一区二区三区| 日韩成人在线一区二区| 国产区91| 青青草欧美| 国产主播在线一区| 久久香蕉国产线看精品| 日本道综合一本久久久88| 四虎影视8848永久精品| 亚洲成人黄色在线| 国产AV毛片| 免费毛片网站在线观看| 精品在线免费播放| 亚洲国产成人麻豆精品| 99视频在线精品免费观看6| 亚洲综合久久一本伊一区| 99热这里只有精品5| 激情视频综合网| 91精品国产情侣高潮露脸| 色老二精品视频在线观看| 99尹人香蕉国产免费天天拍| 91网红精品在线观看| 欧美亚洲第一页| 亚洲男人天堂网址| 精品少妇三级亚洲| 98超碰在线观看| 欧美性色综合网| 亚洲丝袜中文字幕| 天天摸天天操免费播放小视频| 日本欧美视频在线观看| 午夜电影在线观看国产1区| 无码日韩视频| 亚洲视频免费在线看| 成人国产精品网站在线看| 中文字幕欧美日韩高清| 精品国产免费第一区二区三区日韩| 欧美日韩第三页| 国产美女在线观看| 久久黄色视频影| 久草中文网| 欧美国产精品不卡在线观看 | 无码高潮喷水在线观看| 91精品伊人久久大香线蕉| 国产欧美高清| 亚洲精品国产综合99久久夜夜嗨| 鲁鲁鲁爽爽爽在线视频观看| 精品黑人一区二区三区| 91色在线视频| 国产精品主播| 四虎影视库国产精品一区| 久久精品亚洲中文字幕乱码| 亚洲一区二区三区麻豆| 亚洲成综合人影院在院播放| 在线无码私拍| 在线免费a视频| 全部毛片免费看| 中文字幕 日韩 欧美| 欧美五月婷婷| 女同国产精品一区二区| 伊人久久精品亚洲午夜| 精品国产毛片| 91精品aⅴ无码中文字字幕蜜桃| 国产一国产一有一级毛片视频| 欧美在线网| 国产二级毛片| 欧美特黄一级大黄录像| 亚洲三级网站| 人妻无码AⅤ中文字|