Action Recognition
Узнай, как распознавание действий идентифицирует поведение на видео. Научись использовать Ultralytics YOLO26 для оценки позы и создания интеллектуальных ИИ-систем для задач HAR.
Распознавание действий, также широко известное как распознавание активности человека (HAR), представляет собой динамичную подобласть computer vision (CV), связанную с определением и классификацией конкретных поведенческих проявлений или движений, выполняемых субъектами в видеоданных. В то время как традиционное object detection отвечает на вопрос «что находится на изображении?», распознавание действий решает более сложную задачу: «что происходит с течением времени?». Анализируя последовательности кадров, а не статические изображения, модели machine learning (ML) могут различать сложные виды активности, такие как «ходьба», «езда на велосипеде», «падение» или «рукопожатие», что делает эту технологию важнейшим компонентом для создания интеллектуальных систем, понимающих намерения и контекст человека.
Основные концепции и методы#
Распознавание действий требует от модели обработки как пространственной информации (как выглядят объекты или люди), так и временной информации (как они перемещаются во времени). Для достижения этой цели современные системы artificial intelligence (AI) часто используют специализированные архитектуры, выходящие за рамки стандартных convolutional neural networks (CNNs).
- Pose Estimation: Мощный метод, при котором модель отслеживает определенные keypoints на теле человека, такие как локти, колени и плечи. Геометрические изменения этих ключевых точек с течением времени служат надежным сигналом для классификации действий, независимо от беспорядка на заднем плане.
- Временное моделирование: Алгоритмы используют такие структуры, как Recurrent Neural Networks (RNNs) или сети долговременной краткосрочной памяти (LSTM), чтобы запоминать прошлые кадры и предсказывать будущие действия. Совсем недавно Video Transformers приобрели популярность благодаря своей способности обрабатывать зависимости на больших расстояниях в видеопотоках.
- Двухпоточные сети: Этот подход обрабатывает пространственные признаки (RGB-кадры) и временные признаки (часто с использованием optical flow) в параллельных потоках, объединяя данные для выполнения финальной классификации.
Реальные приложения#
Способность автоматически интерпретировать движения человека обладает трансформационным потенциалом для различных отраслей, повышая безопасность, эффективность и качество пользовательского опыта.
- AI in Healthcare: Распознавание действий жизненно важно для систем мониторинга пациентов. Например, оно обеспечивает автоматическое обнаружение падений в домах престарелых, немедленно предупреждая персонал, если пациент падает. Оно также используется в remote physical rehabilitation, где ИИ-тренеры анализируют технику выполнения упражнений пациентом, чтобы убедиться, что он выполняет движения правильно и безопасно.
- Интеллектуальное видеонаблюдение и безопасность: Помимо простого обнаружения движения, передовые системы безопасности используют распознавание действий для выявления подозрительного поведения, такого как драки, кражи в магазинах или несанкционированный вход, игнорируя при этом безобидную активность. Это снижает количество ложных срабатываний и улучшает real-time security monitoring.
Реализация анализа действий с помощью Ultralytics#
Типичный рабочий процесс включает в себя сначала обнаружение людей и их скелетной позы, а затем анализ движения этих суставов. Модель 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}")Разграничение связанных терминов#
Важно отличать распознавание действий от схожих задач компьютерного зрения, чтобы обеспечить применение правильных методов.
- Распознавание действий против Object Tracking: Трекинг объектов фокусируется на сохранении идентичности конкретного объекта или человека по мере их перемещения между кадрами (например, «Человек А находится в координате X»). Распознавание действий интерпретирует поведение этого отслеживаемого субъекта (например, «Человек А бежит»).
- Распознавание действий против Video Understanding: В то время как распознавание действий определяет конкретные физические акты, понимание видео — это более широкая концепция, которая включает в себя осмысление всего повествования, контекста и причинно-следственных связей в видеосцене.
Проблемы и будущие тенденции#
Разработка надежных моделей распознавания действий представляет трудности, в частности из-за потребности в крупных размеченных video datasets, таких как Kinetics-400 или UCF101. Разметка видеоданных отнимает значительно больше времени, чем разметка статических изображений. Для решения этой задачи такие инструменты, как Ultralytics Platform, помогают оптимизировать процесс разметки и обучения.
Кроме того, критически важна вычислительная эффективность. Обработка видео высокого разрешения в реальном времени требует значительных аппаратных ресурсов. Индустрия все больше смещается в сторону Edge AI, оптимизируя модели для запуска непосредственно на камерах и мобильных устройствах с целью снижения задержки и использования пропускной способности. Будущие достижения направлены на улучшение model generalization, позволяя системам распознавать действия даже с тех ракурсов, для которых они явно не проходили обучение.






