Yolo Pose Estimation and Skeleton: Difference between revisions
From wikiluntti
(→Yolo) |
|||
Line 20: | Line 20: | ||
=== Image detection === | === Image detection === | ||
<gallery> | |||
Yolo_poses.png|thumb|AN image before and after the code. | |||
</gallery> | |||
<syntaxhighlight lang="python"> | <syntaxhighlight lang="python"> | ||
Line 36: | Line 40: | ||
plt.imshow(cv2.cvtColor(results[0].plot(), cv2.COLOR_BGR2RGB)) | plt.imshow(cv2.cvtColor(results[0].plot(), cv2.COLOR_BGR2RGB)) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== Pose to skeleton === | === Pose to skeleton === |
Revision as of 20:50, 5 October 2025
Introduction
Make a pose estimator and use it to make a moving skeleton.
Use Yolo from Ultralytics.
- Python 3.7+
- Yolo v11
- A CUDA-enabled GPU (optional but recommended for faster inference).
pip install ultralytics opencv-python numpy
Yolo
There are 17 keypoints. YOLOv11’s pose model outputs:
- (x, y) coordinates for each keypoint and
- confidence scores indicating the model’s certainty in each keypoint’s position.
Image detection
-
AN image before and after the code.
from ultralytics import YOLO
import matplotlib.pyplot as plt
import cv2
from PIL import Image
model = YOLO("yolo11n-pose.pt") # n, s, m, l, x versions available
results = model.predict(source="sample_image.jpg")
plt.figure(figsize=(10, 10))
plt.title('YOLOv11 Pose Results')
plt.axis('off')
plt.imshow(cv2.cvtColor(results[0].plot(), cv2.COLOR_BGR2RGB))