前回はROS(Noetic)でOpenPoseからメッセージを取得するためのパッケージ(
https://github.com/firephinx/openpose_ros)の導入について説明しました。
今回はpythonでメッセージの取得について書きます。
デフォルトでは25個の体のパーツの画像状での座標と認識したパーツが実際のパーツだる確率が出力されます。特定のパーツの座標のみ知りたい場合は指定(0~24)すると出来ます。(0がNose, 1がNeck...24がRHeelに対応している)
X Y score
Nose 239.5640 341.358 0.70
Neck 206.2270 353.120 0.90
RShoulder 159.220 341.419
RElbow 131.7780 384.560
Rwrist 188.5420 372.776
LShoulder 253.2610 364.842
LElbow 286.4910 415.841
LWrist 257.0760 433.491
MidHip 186.6620 470.655
RHip 157.2560 466.748
RKnee 112.1580 549.089
RAnkle 114.0790 627.423
LHip 216.0490 472.669
LKnee 233.6050 560.818
LAnkle 276.7830 639.204
Reye 233.6810 331.626
LEye 243.5060 333.555
REar 210.1900 323.830
LEar 0.0000 0.000
LBigToe 264.9830 666.627
LSmallToe 282.6300 664.626
LHeel 288.4960 645.047
RBigToe 67.1126 676.392
RSmallToe 67.1138 670.545
RHeel 123.9480 639.214
使うときは以下のリポジトリの getmsg_from_openpose_ros.pyをコピペして
python3 getmsg_from_openpose_ros.py とか rosrunするなりして実行してください。