#author("2024-06-10T01:56:31+00:00","default:ubi","ubi") #author("2024-06-12T00:50:03+00:00","default:ubi","ubi") [[小川]] [[Insider]] *mmpose[#xb6a1d9e] **Top-DownとBottom-Up [#qce4e8a5] ***Top-Down [#c2be9ab6] ~1.画像内の人物検出 ~2.検出された人物それぞれに対して、あらかじめ定義された関数の数と種類を推定 ~3.推定された間接に基づき、各関節の位置を特定 -対象物体の検出に先立ち、事前に物体の位置を推定することにより、より高い精度での推定が可能。 -画像内にある対象物体の数によって計算時間が増えてしまう。 ***Bottom-Up [#c2be9ab6] 1.画像内に映っているすべての人物の関節を検出 ~2.各関節の位置を特定 ~3.関節を人物にグループ化 -先に関節点を検出するため、対象物体の数に関係なく計算量が一定。 -周辺の情報を十分に考慮することができないため、制度が低下することがある。 **RTMとHRNet [#qce4e8a5] ***RTM [#c2be9ab6] リアルタイム性を重視 ***HRNet [#c2be9ab6] 精度を重視 **Human Pose Estimation [#qce4e8a5] ***2D Human Pose Top-Down Video Demo [#c2be9ab6] ビデオを入力として受け取り、人物検出のためにmmdetを実行し、ポーズ推定のためにmmposeを実行する。 ~[Top-Down]方式 ~[RTM]モデル python demo/topdown_demo_with_mmdet.py \ demo/mmdetection_cfg/rtmdet_m_640-8xb32_coco-person.py \ https://download.openmmlab.com/mmpose/v1/projects/rtmpose/rtmdet_m_8xb32-100e_coco-obj365-person-235e8209.pth \ configs/body_2d_keypoint/rtmpose/body8/rtmpose-m_8xb256-420e_body8-256x192.py \ https://download.openmmlab.com/mmpose/v1/projects/rtmposev1/rtmpose-m_simcc-body7_pt-body7_420e-256x192-e48f03d0_20230504.pth \ --input tests/data/posetrack18/videos/000001_mpiinew_test/000001_mpiinew_test.mp4 \ --output-root=vis_results/demo --show --draw-heatmap &color(#cc0000){rtmpose-m_8xb256-420e_body8-256x192.py}; ~→主に身体の主要な間接に焦点を当てている ~ -jsonファイルを出力する ~ --save-predictions ***2D Human Pose Bottom-up Image/Video Demo [#c2be9ab6] 人間検出器に頼らないボトムアップモデルを使用したデモスクリプト ~[Bottom-Up]方式 ~[HRNet]モデル python demo/bottomup_demo.py \ configs/body_2d_keypoint/dekr/coco/dekr_hrnet-w32_8xb10-140e_coco-512x512.py \ https://download.openmmlab.com/mmpose/v1/body_2d_keypoint/dekr/coco/dekr_hrnet-w32_8xb10-140e_coco-512x512_ac7c17bf-20221228.pth \ --input tests/data/coco/000000197388.jpg --output-root=vis_results \ --show --save-predictions ***2D Human Pose Estimation with Inferencer [#c2be9ab6] OpenMMLabのInterfacerを使用する。Inferencerは、モデルの推論を簡単に実行できるインターフェースを提供し、設定ファイルやチェックポイントパスの代わりにモデルエイリアスを使用してカスタマイズを行うことができる。 python demo/inferencer_demo.py \ tests/data/posetrack18/videos/000001_mpiinew_test/000001_mpiinew_test.mp4 \ --pose2d human --vis-out-dir vis_results/posetrack18 **Human Whole-Body Pose Estimation [#qce4e8a5] ***2D Human Whole-Body Pose Top-Down Video Demo [#c2be9ab6] ~[Top-Down]方式 ~[HRNet]モデル 入力としてビデオを受け取り、人物検出と全身の2Dポーズ推定を行う。mmdetectionを使用して人物検出を行い、mmposeを使用してポーズ推定を行う。 python demo/topdown_demo_with_mmdet.py \ demo/mmdetection_cfg/rtmdet_m_640-8xb32_coco-person.py \ https://download.openmmlab.com/mmpose/v1/projects/rtmpose/rtmdet_m_8xb32-100e_coco-obj365-person-235e8209.pth \ configs/wholebody_2d_keypoint/topdown_heatmap/coco-wholebody/td-hm_hrnet-w48_dark-8xb32-210e_coco-wholebody-384x288.py \ https://download.openmmlab.com/mmpose/top_down/hrnet/hrnet_w48_coco_wholebody_384x288_dark-f5726563_20200918.pth \ --input https://user-images.githubusercontent.com/87690686/137440639-fb08603d-9a35-474e-b65f-46b5c06b68d6.mp4 \ --output-root vis_results/ --show &color(#cc0000){td-hm_hrnet-w48_dark-8xb32-210e_coco-wholebody-384x288.py }; ~全身のポーズ推定、特に顔の特徴点や手の関節などの詳細な部分にも対応している。 ***2D Human Whole-Body Pose Estimation with Inferencer [#c2be9ab6] OpenMMLabのInferencerを使用して、指定されたディレクトリ内のすべての画像に対して、2Dの前身ポーズ推定を行う。 python demo/inferencer_demo.py tests/data/crowdpose \ --pose2d wholebody --vis-out-dir vis_results/crowdpose