7-8 ポーズ推定

学習目標

姿勢推定は、コンピュータビジョンにおけるタスクの一つで、単に物体の位置を認識するだけでなく、人や物体の姿勢、関節の位置、動作構造をコンピュータが理解できるようにすることを目的としています。

例えば、人体姿勢推定では、モデルは画像や動画から以下の要素を識別します。

1. キーポイント

例:

- 頭部、目、肩

- 肘、手首

- 腰、膝、足首

2. 骨格

キーポイントを人体構造に基づいて接続し、骨格を形成します。

本学習では、Pythonと事前学習済みモデルを用いて姿勢推定を行います。


姿勢推定
画像に対して姿勢推定を行い、結果を出力します。

 

from ultralytics import YOLO

model = YOLO("yolo11n-pose.pt")

results = model.predict("https://ultralytics.com/images/bus.jpg")
for result in results:
    print(f'xy: {result.keypoints.xy}') # Keypoint data (Number of objects x 17 x 2)

すると結果が表示されます。

ウェブカメラを使用して姿勢推定を行い、レンダリングされた結果を表示する。

import cv2
from ultralytics import YOLO

model = YOLO("yolo11n-pose.pt")

video_path = 0
cap = cv2.VideoCapture(video_path)

while cap.isOpened():
    success, frame = cap.read()
    if success:
        results = model.predict(frame)
        annotated_frame = results[0].plot()
        cv2.imshow("YOLO Inference", annotated_frame)

        if cv2.waitKey(1) & 0xFF == ord("q"):
            break
    else:
        break

cap.release()
cv2.destroyAllWindows()

 

これで結果が表示されます。

Copyright © 2026 YUAN High-Tech Development Co., Ltd.
All rights reserved.