Pose Estimation
Tìm hiểu cách ước tính tư thế (pose estimation) sử dụng các điểm khóa (keypoints) để theo dõi chuyển động. Khám phá các ứng dụng thực tế và bắt đầu với Ultralytics YOLO26 để có kết quả nhanh, chính xác.
Pose estimation là một kỹ thuật computer vision chuyên biệt, vượt ra ngoài việc đơn giản phát hiện sự hiện diện của các đối tượng để hiểu được cấu trúc hình học và hướng không gian của chúng. Trong khi object detection tiêu chuẩn vẽ một hộp chữ nhật đơn giản xung quanh một chủ thể, pose estimation xác định các điểm ngữ nghĩa cụ thể, được gọi là keypoints, chẳng hạn như các khớp trên cơ thể con người (khuỷu tay, đầu gối, vai) hoặc các góc cấu trúc trên xe cộ. Bằng cách lập bản đồ các mốc này, các model machine learning có thể tái tạo biểu diễn khung xương của chủ thể, cho phép các hệ thống diễn giải ngôn ngữ cơ thể, động lực chuyển động và vị trí chính xác trong không gian 2D hoặc 3D.
Các cơ chế cốt lõi: Top-Down so với Bottom-Up#
Pose estimation hiện đại phụ thuộc rất nhiều vào các kiến trúc deep learning phức tạp, thường sử dụng Convolutional Neural Networks (CNNs) để xử lý dữ liệu trực quan. Các thuật toán này nhìn chung tuân theo một trong hai chiến lược chính để xác định keypoints:
- Top-Down Approaches: Phương pháp này trước tiên sử dụng một model object detection để định vị từng thể hiện riêng lẻ trong các bounding boxes. Khi một người hoặc đối tượng được cắt ra từ bức ảnh lớn hơn, bộ ước lượng pose sẽ dự đoán keypoints trong vùng cụ thể đó. Cách tiếp cận này thường có độ chính xác cao nhưng có thể gặp phải inference latency lớn hơn khi số lượng chủ thể trong khung hình tăng lên.
- Bottom-Up Approaches: Ngược lại, chiến lược này phát hiện tất cả các keypoints tiềm năng trong toàn bộ bức ảnh cùng một lúc (ví dụ: tìm mọi "đầu gối trái" trong đám đông) và sau đó sử dụng các thuật toán kết hợp để nhóm chúng thành các bộ xương riêng lẻ. Phương pháp này thường được ưa chuộng cho real-time inference trong các khung cảnh đông đúc vì chi phí tính toán vẫn tương đối ổn định bất kể có bao nhiêu người hiện diện.
Các model tiên tiến như YOLO26 tận dụng các kiến trúc end-to-end tiên tiến giúp cân bằng các nhu cầu này, cung cấp pose estimation tốc độ cao phù hợp để triển khai trên các thiết bị edge AI và nền tảng di động.
Phân biệt các thuật ngữ thị giác máy tính liên quan#
Sẽ rất hữu ích khi phân biệt pose estimation với các tác vụ nhận diện thị giác khác để hiểu được giá trị độc đáo của nó trong các workflow computer vision:
- Object Detection: Tập trung xác định đối tượng là gì và ở đâu, xuất ra một hộp chữ nhật. Nó đối xử với chủ thể như một vật thể cứng nhắc mà không hiểu được cấu trúc khớp bên trong của nó.
- Instance Segmentation: Tạo ra một mặt nạ hoàn hảo đến từng pixel phác thảo hình dạng chính xác của đối tượng. Mặc dù segmentation cung cấp các ranh giới, nhưng nó không xác định rõ ràng các khớp hoặc liên kết xương cần thiết cho kinematic analysis.
- Pose Estimation: Nhắm mục tiêu cụ thể vào cấu trúc bên trong, lập bản đồ các kết nối giữa các mốc được định sẵn trước (ví dụ: từ hông đến đầu gối) để phân tích tư thế và hành động.
Các ứng dụng trong thực tế#
Khả năng số hóa chuyển động của con người và đối tượng đã dẫn đến các ứng dụng mang tính chuyển đổi trong nhiều ngành công nghiệp khác nhau, thường được train bằng cách sử dụng các công cụ như Ultralytics Platform để quản lý các tập dữ liệu lớn gồm các keypoints đã được gán nhãn.
Chăm sóc sức khỏe và Phục hồi chức năng#
Trong lĩnh vực y tế, AI in healthcare sử dụng pose estimation để theo dõi quá trình phục hồi chức năng của bệnh nhân từ xa. Bằng cách theo dõi các góc khớp và biên độ chuyển động, các hệ thống tự động có thể đảm bảo bệnh nhân thực hiện các physical therapy exercises một cách chính xác tại nhà. Điều này làm giảm nguy cơ tái chấn thương và cho phép các bác sĩ định lượng tiến độ phục hồi mà không cần thiết bị phòng thí nghiệm đắt tiền.
Phân tích thể thao#
Các huấn luyện viên và vận động viên tận dụng sports analytics để tối ưu hóa hiệu suất. Các model pose estimation có thể phân tích mặt phẳng vung gậy của người chơi gôn, độ dài sải chân của vận động viên chạy bộ hoặc cơ biomechanics của người ném bóng mà không cần đến các bộ đồ gắn điểm đánh dấu gây khó chịu được sử dụng trong motion capture truyền thống. Điều này cung cấp phản hồi mang tính định hướng dữ liệu ngay lập tức để cải thiện kỹ thuật và ngăn ngừa chấn thương do vận động quá mức.
Bán lẻ và Phân tích hành vi#
Trong môi trường thương mại, các hệ thống AI in retail sử dụng pose detection để hiểu hành vi của khách hàng, chẳng hạn như với tay lấy sản phẩm trên các kệ cao hoặc đứng lâu ở các lối đi cụ thể. Dữ liệu này giúp tối ưu hóa bố cục cửa hàng và cải thiện inventory management bằng cách tương quan các hành động thể chất với quyết định mua hàng.
Ví dụ mã: Ước lượng tư thế với Ultralytics YOLO26#
Việc triển khai pose estimation rất đơn giản với các framework Python hiện đại. Ví dụ sau minh họa cách sử dụng gói ultralytics để tải một model YOLO26 đã được train trước (kế nhiệm của YOLO11) và phát hiện keypoints của con người trong một bức ảnh.
from ultralytics import YOLO
# Load the YOLO26 pose model (nano version for speed)
model = YOLO("yolo26n-pose.pt")
# Perform inference on an image source
# The model identifies bounding boxes and specific keypoints (joints)
results = model("https://ultralytics.com/images/bus.jpg")
# Print the xy coordinates of detected keypoints
print(results[0].keypoints.xy)
# Visualize the skeletal results directly
results[0].show()





