2D HPE 通常分為兩個通用框架:
top-down framework:使用 two-step procedure:
\(\Diamond\) top-down framework 可以隨著物體檢測器和姿勢偵測器的進步而不斷改進。
top-down 可細分為以下幾個類別:
bottom-up framework:與 top-down 相比,bottom-up 透過不依賴人類檢測,直接執行關鍵點估計,以達成減少計算量的目的,但就有需要判斷關節點屬於誰的問題。
bottom-up 可細分為以下幾個類別:
Regression-Based 很有效,但是他只有輸出每個關節的座標而已,完全不考慮身體部位的面積。 為了解決這個問題,發展出了 heatmap-based 的方法。
以下為幾個代表性的 Regression-Based 方法:
熱圖 \(H_i\) 通過以第 \(i\) 個關節位置\((x_i, y_i)\)為中心的 2D 高斯產生,編碼該位置是第 i 個關節的機率。 訓練目標是預測總共 \(N\) 個關節的 \(N\) 個熱圖 \(\begin {Bmatrix}H_1,H_2,..,H_N\end{Bmatrix}\)。
Heatmap-Based 的準確率會比 Regression-Based 來的高,但是相對的需要較多的計算資源,以及有著不可避免的量化誤差。
以下為幾個代表性的 Heatmap-Based 方法:
Iterative Architecture (迭代架構):Convolutional Pose Machines 建構了一個順序預測框架,該框架採用 sequential CNN 來隱式模擬人體部位之間的遠程空間依賴性,並且提出了中間監督來緩解迭代架構中梯度消失的固有問題,後來因為 ResNet 出現,把梯度消失/爆炸的問題完美解決了,因此很多大模型就出現了。
下圖為迭代架構的示意圖,( a )為 Convolutional Pose Machine 的架構,( b )為使用 LSTM 對 Convolutional Pose Machine 進行延伸的 LSTM Pose Machines。
Symmetric Architecture (對稱架構):
Stacked Hourglass Networks for Human Pose Estimation 提出了一種基於池化和上採樣的連續步驟的新穎的堆疊沙漏架構,它結合了所有尺度的特徵來捕捉關節之間的各種空間關係。
堆疊沙漏架構如下圖( a )所示。
以下為基於這種堆疊沙漏架構的成功變體,這些變體模型都保留了從高到低和從低到高卷積之間的對稱結構:
Asymmetric Architecture (非對稱架構) : 與對稱架構一樣是高到低和低到高的卷積架構,但是非對稱架構偏重於由高到低的過程,因此存在特徵編碼和解碼不平衡的問題,可能會影響模型表現。
以下模型採用經典分類網路(VGGNet 和 ResNet)的子網路進行從高到低的卷積,並採用簡單網路進行從低到高的卷積:
High Resolution Architecture (高解析度架構): 高解析度架構能夠在整個過程中保持高解析度表示,HRNet 在多個視覺任務上實現最先進的結果,足以證明高解析度表示在人體姿勢估計方面的優越性。
其中Pay Attention Selectively and Comprehensively: Pyramid Gating Network for Human Pose Estimation without Pre-training 以 HRNet 為骨幹網絡,進一步結合門控機制和特徵注意模組來選擇和融合判別性和注意力感知特徵。
\(reg. conv.\) = 常規卷積層,\(strided \ conv.\) = 用於可學習下採樣的跨步卷積層,
\(trans.conv.\) = 用於可學習上採樣的轉置卷積層,\(ele. sum\) = 逐元求和
Composed Human Proposal Detection (組合人類提案檢測): 上述模型專注於對從整個圖像中裁剪出的 Human Proposal 進行姿勢估計,並簡單地採用現成的 Human Proposal Detecter 進行 Proposal Detection,且 Human Proposal 的品質(人類位置和冗餘檢測)會影響姿勢估計器的結果。 因此有以下兩派人馬從不同的角度去解決這個問題:
使用 Video-Based Method 的優缺點如下:
根據時間資訊的利用方式,Video-Based 方法大致可分為:
Optical Flow(光流): 基於光流的表示可以在像素層級對運動線索進行建模,這有利於捕捉有用的時間資訊,但是在擷取人體運動資訊之類的有用特徵的同時也將背景的變化也一起蒐集起來了,因此光流只能提取不純的特徵,並且對雜訊相當敏感:
RNN(循環神經網路): RNN 可捕獲視訊幀之間的時間上下文以改進姿勢估計,因此可以有效地從單人圖像序列中估計人體姿勢,但截至論文發表為止,RNN 尚未應用於多人影片,作者推測可能 RNN 在提取每個人的時間上下文時會受到其他人的影響:
Pose Tracking(姿態追蹤): Pose Tracking method 會為視訊幀中的每個人建立一個軌跡,以過濾不相關資訊的干擾,並且在多人場景中表現出強烈的適應性,但是這些模型需要計算特徵相似性或姿勢相似性來創建軌跡,計算資源++:
Key Frame Optimization(關鍵影格優化): Key Frame Optimization 的特點在於模型會選擇一些關鍵影格來改善目前影格的姿態估計:
上述的方法雖然有效但是模型都偏大,為了可以在手機等輕量設備上實際應用,需要將模型壓縮以達到即時計算:
FastPose 是一個基於教師-學生網絡的快速姿勢蒸餾模型,教師網絡採用8階段沙漏模型,而學生網絡則採用緊湊型對應模型(4階段沙漏)。
LSTM Pose Machines 提出了一種輕量級的 LSTM 架構來執行視訊姿態估計。
Lite-HRNet 提出了兩種減少HRNet參數的方案:
Human Center Regression-Based Method 利用人體中心點來表示人物實例:
Associate Embedding-Based Method 為每個關鍵點分配一個關聯嵌入以區分不同人的實例表示:
Part Field-Based Method 先偵測關鍵點及其之間的連接,然後根據關鍵點連接進行關鍵點分組:
常見的資料增強技術包括隨機旋轉、隨機縮放、隨機截斷、水平翻轉、隨機資訊丟棄和光照變化。
多任務學習旨在透過在相關視覺任務之間共享表示來捕獲資訊特徵。
人體解析是與人體姿勢估計密切相關的任務,其目標是將人體分割成頭部、手臂和腿等語意部分。
\(\Diamond\) 人體解析資訊可提升人體姿勢估計的效能。
在實際應用中,預先訓練的姿態估計模型通常需要適應沒有標籤或稀疏標籤的新領域。 下列領域適應方法利用有標籤的來源領域來學習一個模型,使其在無標籤或標籤稀疏的目標領域上表現良好:
Post Processing Approaches 不會立即預測最終關鍵點位置,而是先估計初始姿勢,然後透過一些後處理操作進行最佳化。
作者將這些方法分為兩大類:
heatmap based 的模型需要從估計的關鍵點熱圖解碼關節的 2D 座標 (x, y),且通常會將預測熱圖中最大活化值的位置作為關鍵點座標,但是預測的高斯熱圖並不總是符合標準高斯分佈,並且可能包含多個峰值,這降低了座標計算的準確性。
解碼過程中,最大運算的不可微性質也會產生量化誤差,因此以下研究嘗試設計可微分演算法:
很多姿態估計器會直接將模型輸出作為最終估計,以下方法將這些估計值透過與模型無關的 Pose Resampling 技術進一步改進。
針對靜態影像設計的 Pose Resampling:
針對動態影片設計的 Pose Resampling: 以下方法透過執行姿勢聚合來整合當前幀的多個估計姿勢以改善估計結果:
PCP 指標反映了局部身體部位的準確性。
如果估計的部位的端點位於閾值內,則認為該部位是正確的,該閾值可以是其註釋位置處的地面實況片段長度的一小部分[31]。
除了所有身體部位的平均 PCP 之外,通常還會報告軀幹、大腿和頭部等單獨的身體肢體 PCP。
與 PCP 指標類似,PCPm 在整個測試中利用平均真實片段長度的 50% 作為匹配閾值。
PCK 用於測量局部身體關鍵點的準確性,如果候選關節位於匹配閾值內,則認為它是正確的
關鍵點位置與地面實況相符的閾值可以定義為人體邊界框大小的一部分(表示為 PCK)和頭部片段長度的 50%(表示為 PCKh)。
AP 度量是基於物件關鍵點相似度(OKS)[93] 來定義的,它評估預測關鍵點和真實關鍵點之間的相似性。
不同 OKS 閾值 N 下的平均精度得分表示為 AP@N。
對於基於影像的人體姿勢估計,平均精確度 (mAP) 是所有 OKS 閾值下 AP 分數的平均值。
在基於影片的人體姿態估計中,mAP 每個關節的平均 AP 分數。