在科學研究中,從方法論上來講,都應「先見森林,再見樹木」。當前,人工智慧學術研究方興未艾,技術迅猛發展,可謂萬木爭榮,日新月異。對於AI從業者來說,在廣袤的知識森林中,系統梳理脈絡,才能更好地把握趨勢。為此,我們精選國內外優秀的綜述文章,開闢「綜述專欄」,敬請關注。
地址:https://www.zhihu.com/people/qi-qi-17-13-47
01
人體骨骼關鍵點檢測是諸多計算機視覺任務的基礎,例如動作分類,行為識別,以及無人駕駛等等。2012年,Hinton課題組為了證明深度學習的潛力,首次參加ImageNet圖像識別比賽,其通過構建的CNN網絡AlexNet一舉奪得冠軍,且碾壓第二名(SVM方法)的分類性能。也正是由於該比賽,CNN吸引到了眾多研究者的注意。深度學習開始迎來超級發展時期,人體骨骼關鍵點檢測效果也不斷提升。
由於人體具有柔韌性,會出現各種姿態,人體任何部位的變化都會產生新的姿態,同時關鍵點的可見性受穿著、視角等影響非常大,而且還面臨著遮擋、光照、霧等環境的影響,使得人體骨骼關鍵點檢測成為計算機視覺領域中一個極具挑戰性的課題。本文主要介紹單人2D人體骨骼關鍵點的近年來的相關算法,以及最新的多人2D人體骨骼關鍵點算法和3D人體骨骼關鍵點算法。
02
LSP(Leeds Sports Pose Dataset):單人人體關鍵點檢測數據集,關鍵點個數為14,樣本數2K,在目前的研究中作為第二數據集使用。FLIC(Frames Labeled In Cinema):單人人體關鍵點檢測數據集,關鍵點個數為9,樣本數2W,在目前的研究中作為第二數據集使用。MPII(MPII Human Pose Dataset):單人/多人人體關鍵點檢測數據集,關鍵點個數為16,樣本數25K,是單人人體關鍵點檢測的主要數據集。MSCOCO:多人人體關鍵點檢測數據集,關鍵點個數為17,樣本數多於30W,多人關鍵點檢測的主要數據集,主流數據集;AI Challenger:多人人體關鍵點檢測數據集,關鍵點個數為14,樣本數約38W,競賽數據集;human3.6M:是3D人體姿勢估計的最大數據集,由360萬個姿勢和相應的視頻幀組成,這些視頻幀包含11位演員從4個攝像機視角執行15項日常活動的過程。數據集龐大將近100G。(很多人好像下載不了,有人想要的話,網盤分享給各位)PoseTrack:最新的關於人體骨骼關鍵點的數據集,多人人體關鍵點跟蹤數據集,包含單幀關鍵點檢測、多幀關鍵點檢測、多人關鍵點跟蹤三個人物,多於500個視頻序列,幀數超過20K,關鍵點個數為15。
03
在介紹多人關鍵點檢測論文之前,首先介紹一下關鍵點回歸的Ground Truth的構建問題,主要有兩種思路,Coordinate和Heatmap,Coordinate即直接將關鍵點坐標作為最後網絡需要回歸的目標,這種情況下可以直接得到每個坐標點的直接位置信息;Heatmap即將每一類坐標用一個概率圖來表示,對圖片中的每個像素位置都給一個概率,表示該點屬於對應類別關鍵點的概率,比較自然的是,距離關鍵點位置越近的像素點的概率越接近1,距離關鍵點越遠的像素點的概率越接近0,具體可以通過相應函數進行模擬,如Gaussian等,如果同一個像素位置距離不同關鍵點的距離大小不同,即相對於不同關鍵點該位置的概率不一樣,這時可以取Max或Average。對於兩種Ground Truth的差別,Coordinate網絡在本質上來說,需要回歸的是每個關鍵點的一個相對於圖片的offset,而長距離offset在實際學習過程中是很難回歸的,誤差較大,同時在訓練中的過程,提供的監督信息較少,整個網絡的收斂速度較慢;Heatmap網絡直接回歸出每一類關鍵點的概率,在一定程度上每一個點都提供了監督信息,網絡能夠較快的收斂,同時對每一個像素位置進行預測能夠提高關鍵點的定位精度,在可視化方面,Heatmap也要優於Coordinate,除此之外,實踐證明,Heatmap確實要遠優於Coordinate。最後,對於Heatmap + Offsets的Ground Truth構建思路主要是Google在CVPR 2017上提出的,與單純的Heatmap不同的是,Google的Heatmap指的是在距離目標關鍵點一定範圍內的所有點的概率值都為1,在Heatmap之外,使用Offsets,即偏移量來表示距離目標關鍵點一定範圍內的像素位置與目標關鍵點之間的關係。
1.Towards accurate multi-person pose estimation in the wild(cvpr2017)第一階段使用faster rcnn做detection,檢測出圖片中的多個人,並對bounding box進行image crop;第二階段採用fully convolutional resnet對每一個bonding box中的人物預測dense heatmap和offset; 最後通過heatmap和offset的融合得到關鍵點的精確定位。
2.Learning to Refifine Human Pose Estimation(2018)本文提出了訓練一個新的模型, 來對某個pose estimation model產生的pose進行修正。文章引入了一種有效的後處理技術用於人體姿勢估計中的身體關節細化任務。由於其前饋架構,簡單且端到端的可訓練,高效的。提出了一個培訓數據增強方案糾錯,使網絡能夠識別錯誤的身體關節預測和學習方法改進它們。
04
(廢話一下,2019開始專門做單人2d關鍵點的論文也太少了吧,很多文章都是做2d多人或者3d,然後把mpll的數據集的結果在文章後面貼一貼,這個數據集可能要到頭了,建議萌新們要發文章直接做2d多人或者3d。入門練手就隨意啦~)首先看下單人姿態估計數據集MPII(MPII Human Pose Dataset)官方列出的榜單http://human-pose.mpi-inf.mpg.de/#results截圖時間2020/07/27,最佳成績已經達到94.1%。
1.Convolutional Pose Machines(2016)本論文將深度學習應用於人體姿態分析,同時用卷積圖層表達紋理信息和空間信息。在2016年的MPII榜單中名列前茅。主要網絡結構分為多個stage,各個階段都有監督訓練,避免過深網絡難以優化的問題。通過改變卷積核大小來得到多個尺度輸入的特徵和響應,既能確保精度,又考慮了各個部件之間的遠距離關係。其中第一個stage會產生初步的關鍵點的檢測效果,接下來的幾個stage均以前一個stage的預測輸出和從原圖提取的特徵作為輸入,進一步提高關鍵點的檢測效果。
2.Learning Feature Pyramids for Human Pose Estimation (ICCV2017)本文主要關注人體部件中的尺度問題,這種尺度變化主要發生在相機拍攝視角變化,設計了 Pyramid Residual Module (PRMs) 來增強 CNN 網絡對尺度信息的提取能力。同時發現DCNNs多輸入或者多輸出層的初始化問題,以及發現在一些場景中激活變化累積是由identity mapping造成的, 對於這兩個問題作者分別提出解決的方法。
3.Stacked Hourglass Networks for Human Pose Estimation(2017)Hourglass模塊設計的初衷就是為了捕捉每個尺度下的信息,因為捕捉像臉,手這些部分的時候需要局部的特徵,而最後對人體姿態進行預測的時候又需要整體的信息。為了捕獲圖片在多個尺度下的特徵,通常的做法是使用多個pipeline分別單獨處理不同尺度下的信息,然後再網絡的後面部分再組合這些特徵,而作者使用的方法就是用帶有skip layers的單個pipeline來保存每個尺度下的空間信息。在Hourglass模塊中,卷積和max pooling被用來將特徵降到一個很低的解析度,在每一個max pooling步驟中,網絡產生分支並在原來提前池化的解析度下使用更多的卷積,當到達最低的解析度的時候,網絡開始upsample並結合不同尺度下的特徵。這裡upsample(上採樣)採用的方法是最鄰近插值,之後再將兩個特徵集按元素位置相加。當到達輸出解析度的時候,再接兩個1×1的卷積層來進行最後的預測,網絡的輸出是一組heatmap,對於給定的heatmap,網絡預測在每個像素處存在關節的概率。
4.Multi-Context Attention for Human Pose Estimation(2018)這篇文章整合多內容信息注意力機制(multi-context attention mechanism)到CNN網絡,得到人體姿態估計 end-to-end 框架.採用堆積沙漏網絡(stacked hourglass networks) 生成不同解析度特徵的注意力圖(attention maps),不同解析度特徵對應著不同的語義.並同時結合了整體注意力模型和肢體部分注意力模型,整體注意力模型針對的是整體人體的全局一致性,部分注意力模型針對不同身體部分的詳細描述. 因此,能夠處理從局部顯著區域到全局語義空間的不同粒度內容.另外,設計了新穎的沙漏殘差單元(Hourglass Residual Units, HRUs),增加網絡的接受野. HRUs 擴展了帶分支的殘差單元,分支的 filters 具有較大接受野;利用 HRUs 可以學習得到不同尺度的特徵.
5.A Cascaded Inception of Inception Network with Attention Modulated Feature Fusion for Human Pose Estimation(2018)本文提出了三種新技術。為人類姿勢巧妙地利用不同級別的特徵進行估計。首先,初始化(IOI)塊是旨在強調低級特徵。其次,根據人體關節信息提出了注意機制來調整關節的重要性。第三,提出了一種級聯網絡來順序定位關節強制從獨立部件的關節傳遞消息像頭部和軀幹到手腕或腳踝等遠程關節。
6.Deeply Learned Compositional Models for Human Pose Estimation(2018ECCV)這篇文章利用深度神經網絡來學習人體的組成。是具有分層組成架構和自下而上/自上而下的推理階段的新型網絡。
7.Human Pose Estimation with Spatial Contextual Information(2019)
目前大多數網絡以多階段的方式進行訓練並加以優化精細。在這個出發點上,作者提出了兩個簡單但有效的模塊,即Cascade Prediction Fusion(CPF)網絡用來預測關鍵點和Pose Graph Neural Network(PGNN), 用來對上級預測的關鍵點進行修正。
8.Cascade Feature Aggregation for Human Pose Estimation(2019)這篇文章是2019年mpll數據集結果達到93.3%那篇,相比其他論文,這篇文章達到這麼高的評分,主要有三點,一是,作者把stage2到stageN的heatmap的平均值作為最後輸出;二是作者通過實驗得出stage1把resnet101作為backbone,後面的stage採用resnet50作為backbone效果最佳;三是作者引入了AI Challenger的數據集來擴充訓練數據。
9.Toward fast and accurate human pose estimation via soft-gated skip connections(2020)這篇文章是2020年mpll數據集結果達到94.1%那篇。
05
自上而下(Top-Down)的人體骨骼關鍵點檢測算法主要包含兩個部分,目標檢測和單人人體骨骼關鍵點檢測,對於目標檢測算法,這裡不再進行描述,而對於關鍵點檢測算法,首先需要注意的是關鍵點局部信息的區分性很弱,即背景中很容易會出現同樣的局部區域造成混淆,所以需要考慮較大的感受野區域;其次人體不同關鍵點的檢測的難易程度是不一樣的,對於腰部、腿部這類關鍵點的檢測要明顯難於頭部附近關鍵點的檢測,所以不同的關鍵點可能需要區別對待;最後自上而下的人體關鍵點定位依賴於檢測算法的提出的Proposals,會出現檢測不準和重複檢測等現象,大部分相關論文都是基於這三個特徵去進行相關改進。自下而上(Bottom-Up)的人體骨骼關鍵點檢測算法主要包含兩個部分,關鍵點檢測和關鍵點聚類,其中關鍵點檢測和單人的關鍵點檢測方法上是差不多的,區別在於這裡的關鍵點檢測需要將圖片中所有類別的所有關鍵點全部檢測出來,然後對這些關鍵點進行聚類處理,將不同人的不同關鍵點連接在一塊,從而聚類產生不同的個體。而這方面的論文主要側重於對關鍵點聚類方法的探索,即如何去構建不同關鍵點之間的關係。https://cocodataset.org/index.htm#keypoints-2020對於keypoint檢測這個任務,目前排名如圖(截圖於2020.10.10).注意的是和mpII一樣test數據集沒有標籤,需要提交給官方網站獲得結果。日常實驗效果在val上自測。
1.RMPE: Regional Multi-Person Pose Estimation(2018)本論文主要考慮的是自上而下的關鍵點檢測算法在目標檢測產生Proposals的過程中,可能會出現檢測框定位誤差、對同一個物體重複檢測等問題。檢測框定位誤差,會出現裁剪出來的區域沒有包含整個人活著目標人體在框內的比例較小,造成接下來的單人人體骨骼關鍵點檢測錯誤;對同一個物體重複檢測,雖然目標人體是一樣的,但是由於裁剪區域的差異可能會造成對同一個人會生成不同的關鍵點定位結果。本文提出了一種方法來解決目標檢測產生的Proposals所存在的問題,即通過空間變換網絡將同一個人體的產生的不同裁剪區 (Proposals)都變換到一個較好的結果,如人體在裁剪區域的正中央,這樣就不會產生對於一個人體的產生的不同Proposals有不同關鍵點檢測效果。
2.Cascaded Pyramid Network for Multi-Person Pose Estimation(cpn)(2018)這篇文章是由Face++團隊發表的COCO 17關鍵點的冠軍方案,本論文主要關注的是不同類別關鍵點的檢測難度是不一樣的,整個結構的思路是先檢測比較簡單的關鍵點、然後檢測較難的關鍵點、最後檢測更難的或不可見的關鍵點。分為兩個stage,GlobalNet和RefineNet其中GlobalNet主要負責檢測容易檢測和較難檢測的關鍵點,對於較難關鍵點的檢測,主要體現在網絡的較深層,通過進一步更高層的語義信息來解決較難檢測的關鍵點問題;RefineNet主要解決更難或者不可見關鍵點的檢測,這裡對關鍵點進行難易程度進行界定主要體現在關鍵點的訓練損失上,使用了常見的Hard Negative Mining策略,在訓練時取損失較大的top-K個關鍵點計算損失,然後進行梯度更新,不考慮損失較小的關鍵點。
3.Rethinking on Multi-Stage Networks for Human Pose Estimation(2019)時隔一年,Face++團隊又拿下了COCO 18關鍵點檢測冠軍。提出了多階段姿態估計網絡(MSPN)有三個新的技術。首先,當前多階段方法中的單級模塊遠非最優。例如,沙漏在所有塊中使用相等寬度的通道用於向下和向下提取。這種設計與當前網絡架構設計(ResNet)不一致。作者發現採用現有良好的網絡結構進行下採樣路徑和簡單的上採樣路徑要好很多。其次,由於重複的向下和向上採樣步驟,信息更容易丟失,優化變得更加困難。作者建議在不同階段匯總特徵以加強信息流動並減輕培訓的難度。最後,觀察姿勢定位精度逐漸提高。在多階段,作者採取粗到細的多監督方式。
4.Spatial Shortcut Network for Human Pose Estimation(2019)現有的基於姿態估計的方式,是通過逐像素分類實現的,這種方式是考慮不到大範圍的空間信息的。舉例來說:由於肘關節的外觀與膝關節非常相似,對於一個感受野僅能覆蓋肘關節本身的小特徵提取器,很難將兩者區分開來。但如果感受野能同時看到附近的手腕或肩膀,那麼將其歸類為肘部就容易得多。在涉及姿態估計的方法中,需要抑制非主要人體部位的檢測。對卷積網絡而言,只要將網絡變的更深,或者增大卷積核,就能夠促進空間信息流動,我們就可以增加最終特徵的感受野。感受野增加了,上述提到的問題能夠被較好的解決。然而不論是大卷積核還是深網絡,這對計算和訓練都帶來了較大的挑戰。為了空間信息能夠低成本的流動,本文提出了一種針對於姿態估計任務的空間連接網絡,使信息在空間上的流動更容易。本文提出的網絡為spatial shortcut network (SSN)。該網絡將特徵映射移動和注意機制結合在一個稱為特徵移動模塊feature shifting module(FSM)中。該模塊在參數數量和計算成本上都與普通卷積層一樣輕量,並可以插入到網絡的任何部分來補充空間信息。
5.Deep High-Resolution Representation Learning for Human Pose Estimation (2019cvpr)HRNet的體系結構。它由並行的高到低解析度子網組成,並在多解析度子網之間進行重複的信息交換(多尺度融合)。即模型是通過在高解析度特徵圖主網絡中逐漸並行的加入低解析度特徵圖子網絡,不同網絡實現多尺度融合與特徵提取實現的。
1.OpenPose: Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields(IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE2019)目前,已經有了許多關於檢測的工作。許多的檢測方式都是先想辦法檢測出身體的部位的關節點,然後再連接這些部位點得到人的姿態骨架。本文的工作差不多也是這個套路,但是為了快速的把點連到一起,提出了Part Affinity Fields這個概念來實現快速的關節點連接。
2.Single-Network Whole-Body Pose Estimation(ICCV2019)本文提出了第一個二維全身姿態估計的單網絡方法,它要求同時定位身體、臉、手和腳的關鍵點。方法在OpenPose的基礎上有了很大的改進,OpenPose是目前為止唯一能夠在速度和全局精度方面進行全身姿態估計的方法。與OpenPose不同的是,本文的方法不需要為每隻手和每一張臉的候選對象運行一個額外的網絡,這使得它在多人場景中運行速度大大提高。速度: 在測試時,無論檢測到多少人,本文的單網絡方法都提供了一個恆定的實時推斷,大約比最先進的(OpenPose)的n人圖像快n倍。準確性: 方法也比之前的OpenPose產生了更高的準確性,特別是在臉部和手部關鍵點檢測上,更適用於遮擋、模糊和低解析度的臉部和手部。
06
https://zhuanlan.zhihu.com/p/164603050
07
1.Distribution-Aware Coordinate Representation for Human Pose Estimation (2020cvpr)在這項工作中,本文第一次系統地研究了在圖像中用於人體姿勢估計的坐標表示(包括編碼和解碼)在很大程度上被忽略但仍很重要的問題。不僅揭示了該問題的真正意義,而且還提出了一種新穎的關鍵點坐標表示(DARK),以進行更具判別性的模型訓練和推理。作為現成的插件組件,現有的最新模型可以從此方法中無縫受益,而無需進行任何算法調整。論文地址:https://arxiv.org/abs/1910.06278代碼:https://github.com/ilovepose/DarkPose
2.The Devil is in the Details: Delving into Unbiased Data Processing for Human Pose Estimation(2020cvpr)解決兩個方面的問題:一個是在測試過程中,如果使用flip ensemble時,由翻轉圖像得到的結果和原圖得到的結果並不對齊。另外一個是使用的編碼解碼(encoding-decoding)方法存在較大的統計誤差。論文地址:https://arxiv.org/abs/1911.07524
3.4D Association Graph for Realtime Multi-person Motion Capture Using Multiple Video Cameras(2020cvpr)論文地址:https://arxiv.org/abs/2002.12625https://blog.csdn.net/sigai_csdn/article/details/80650411
本文目的在於學術交流,並不代表本公眾號贊同其觀點或對其內容真實性負責,版權歸原作者所有,如有侵權請告知刪除。
分享、點讚、在看,給個三連擊唄!