論文地址:https://arxiv.org/abs/1611.08050
Github主頁:https://github.com/ZheC/Realtime_Multi-Person_Pose_Estimation
網(wǎng)絡架構

文章代碼總共分為兩條線
第一條線:求所有的關鍵點(頭,肩膀,手肘,手腕 ... )
1)一共兩個cnn,第一個cnn的輸入是原圖,輸出是熱圖(每一個熱圖包含某一種關鍵點)
2)第二個cnn輸入是上一個cnn得到的所有熱圖,和原圖。輸出還是熱圖。循環(huán)直至收斂
,共17個關鍵點,分別是:
Nose = 0 # 鼻子
Neck = 1 # 脖子
RShoulder = 2 # 右肩
RElbow = 3 # 右肘
RWrist = 4 # 右手腕
LShoulder = 5 # 左肩
LElbow = 6 # 左肘
LWrist = 7 # 左手腕
RHip = 8 # 右臀
RKnee = 9 # 右膝蓋
RAnkle = 10 # 右腳踝
LHip = 11 # 左臀
LKnee = 12 # 左膝蓋
LAnkle = 13 # 左腳踝
REye = 14 # 右眼
LEye = 15 # 左眼
REar = 16 # 右耳
LEar = 17 # 左耳
Background = 18
第二條線:求所有關節(jié)區(qū)域
1)一共兩個cnn,第一個cnn的輸入是原圖,輸出是熱圖(每一個熱圖包含某一種連接(可以簡單理解為骨頭)區(qū)域),其實它們是一整片區(qū)域,不過每個地方的概率大小不同。
2)第二個cnn輸入是上一個cnn得到的所有熱圖,和原圖。輸出還是熱圖。循環(huán)直至收斂
根據(jù)前邊兩個階段得到的兩個熱圖,計算哪兩個點連接比較好。這就要根據(jù)關節(jié)區(qū)域和點的位置來計算每個像素的小法向。生成一個法向圖。
根據(jù)前邊生成的法向圖,第一條線中最后得到的各個點的連線,確定哪兩個點的連線的概率最大,找到所有這樣的線。找到一個線就可以開始用最小生成樹算法來找下一條線,最終得到一個人的骨架,然后得到所有的骨架,如果有連接不完整的,那就殘缺的存在就好了。