探索行为识别如何识别视频中的行为。学习使用Ultralytics YOLO26进行姿势估计,并为HAR任务构建智能AI系统。
行为识别,通常也称为人体行为识别(HAR),是计算机视觉(CV)的一个动态子领域,旨在识别和分类视频数据中主体执行的特定行为或动作。传统目标检测回答“图像中有什么?”的问题,而行为识别则解决更复杂的问题:“随着时间推移发生了什么?”。通过分析帧序列而非静态图像,机器学习(ML)模型可以区分“行走”、“骑行”、“跌倒”或“握手”等复杂活动,使其成为构建理解人类意图和上下文的智能系统的关键组成部分。
动作识别要求模型同时处理空间信息(物体或人物的外观)和时间信息(它们随时间如何移动)。为此,现代人工智能 (AI)系统通常采用超越标准卷积神经网络 (CNN)的专用架构。
自动解释人类运动的能力在各个行业中具有变革性潜力,可提高安全性、效率和用户体验。
常见的工作流程包括首先检测人物及其骨骼姿势,然后分析这些关节的运动。Ultralytics YOLO26模型为初始姿势估计步骤提供了最先进的速度和准确率,这是许多行为识别流程的基础。
以下示例演示了如何使用Python从视频帧中提取骨骼关键点:
from ultralytics import YOLO
# Load the YOLO26 pose estimation model
model = YOLO("yolo26n-pose.pt")
# Run inference on an image to detect person keypoints
results = model("https://ultralytics.com/images/bus.jpg")
# Process results
for result in results:
# Access the keypoints (x, y, visibility)
if result.keypoints is not None:
print(f"Detected keypoints shape: {result.keypoints.data.shape}")
区分行为识别与类似的计算机视觉任务很重要,以确保应用正确的方法。
开发鲁棒的行为识别模型面临挑战,特别是需要大型标注视频数据集,例如Kinetics-400或UCF101。标注视频数据比标注静态图像耗时得多。为了解决这个问题,像Ultralytics Platform这样的工具可帮助简化标注和训练工作流程。
此外,计算效率至关重要。实时处理高分辨率视频需要大量的硬件资源。行业正日益转向边缘AI,优化模型以直接在相机和移动设备上运行,以减少延迟和带宽使用。未来的进步旨在提高模型泛化能力,使系统即使在未明确训练过的视角下也能识别行为。
开启您的机器学习未来之旅