深圳Yolo 视觉
深圳
立即加入
词汇表

视频理解

探索视频理解,这是一种先进的 AI,可以解释视频中的动作和事件。了解它的工作原理以及它如何为自动驾驶和智能安全应用提供支持。

视频理解是计算机视觉(CV)领域中发展迅速的一个领域。 计算机视觉 (CV)人工智能(AI)的一个快速发展的领域。 视频理解是计算机视觉(CV)和人工智能(AI)中发展迅速的领域,其重点是使机器能够解释和分析一段时间内的视觉数据。与标准的 图像识别分析静态 不同,视频理解处理的是 帧序列,以理解时间上的 动态、背景和场景中的因果关系。这种能力使系统不仅能识别 物体,还能推断正在发生的事情,预测未来的行动,了解视觉输入背后的 "故事"。 视觉输入背后的 "故事"。这种整体方法对于创建与物理世界自然交互的系统至关重要。 与物理世界自然交互的系统来说,这种整体方法至关重要,从 自动驾驶汽车的交通导航到智能 助手监控家庭安全。

视频分析的核心机制

视频理解背后的技术架构比静态物体检测复杂得多。 物体检测复杂得多。要有效处理视频 深度学习模型必须同时处理 空间特征(物体的外观)和时间特征(这些物体如何移动和变化)。

现代系统通常采用多级管道:

  1. 空间分析:骨干网络,通常是一个 卷积神经网络(CNN)视觉Transformer (ViT),从单个帧中提取视觉特征。 从单个帧中提取视觉特征。
  2. 时间建模:这些空间特征会随着时间的推移而聚合,使用的架构包括 长短期记忆(LSTM) 网络或越来越多的 Transformer模型 利用注意力机制来关注 时间轴上的相关事件。
  3. 动作识别:该模型可对特定活动进行分类,如 "奔跑"、"跌倒 "或 "挥手"。 "摔倒 "或 "挥手 "等特定活动进行分类。 动作识别

这一过程通常由 光流技术的支持,以明确track 帧间的运动 矢量,从而增强模型辨别运动模式的能力。边缘计算 边缘计算的进步使这些计算密集型任务 任务可在本地设备上进行 实时推理

区分关键概念

要了解视频理解的范围,就必须将其与相关的计算机视觉任务区分开来:

  • 视频理解与物体跟踪物体跟踪侧重于在各帧中保持特定实例的 例如,跟踪一辆汽车),而视频理解则是解释该物体的行为(例如,汽车正在停车)。 物体的行为(例如,汽车正在停车)。
  • 视频理解与异常检测: 异常检测是视频理解的一个子集 异常检测是视频理解的一个子集,专门用来标记异常值或异常事件,通常用于智能监控。 智能监控
  • 视频理解与生成式人工智能:虽然 生成式人工智能文本到视频模型创建新内容,而视频理解 理解是一种分析过程,可从现有片段中提取结构化的见解。

实际应用

理解动态场景的能力推动着各大行业的创新:

  • 医疗保健和病人监控:医院利用视频理解技术监控病人 监视病人的行动,而无需持续的人工监护。通过采用 姿势估计,系统可以detect 跌倒或分析步态康复进展。 分析步态康复的进展。了解更多有关 人工智能在医疗保健中的应用,了解这些技术如何 如何改善患者的治疗效果。
  • 体育分析:教练和转播人员使用这些系统自动分析球员战术和比赛 动态。通过跟踪关键点和 识别复杂的战术,球队可通过数据驱动的洞察力获得竞争优势。了解我们对 体育分析中的人工智能
  • 零售智能:商店分析顾客流量和与产品的互动情况,以优化布局。 布局。这包括 实例细分,以区分 在拥挤的过道中区分不同的购物者。

利用Ultralytics实施视频分析

视频理解的基础步骤是可靠的目标跟踪。下面的示例演示了如何 实现跟踪。 Ultralytics YOLO11模型实现跟踪。这 建立更高层次分析所需的时间连续性。展望未来,即将推出的 YOLO26等即将推出的模型旨在进一步整合这些功能,以实现 更快的端到端视频处理。

from ultralytics import YOLO

# Load the YOLO11 model (nano version for speed)
model = YOLO("yolo11n.pt")

# Perform object tracking on a video file
# The 'persist=True' argument is crucial for maintaining object IDs across frames
results = model.track(source="path/to/traffic_video.mp4", persist=True, show=True)

# Process results to extract tracking IDs and class names
for result in results:
    boxes = result.boxes.xywh.cpu()
    track_ids = result.boxes.id.int().cpu().tolist()
    print(f"Detected IDs in this frame: {track_ids}")

挑战和未来方向

尽管取得了重大进展,但视频理解仍面临着诸多挑战,如计算成本高、难以处理 计算成本高、难以处理 遮挡物 暂时从视图中消失。研究人员正在积极研究 高效的模型架构以减少延迟,以及 自监督学习来训练模型 在大量无标记视频数据上训练模型。

工具,如 NVIDIA TensorRTONNX经常用于 优化这些重型模型的部署。随着这一领域的发展,我们可以期待更紧密地集成 多模态人工智能,结合视频、音频和文本 以实现更深入的理解。

加入Ultralytics 社区

加入人工智能的未来。与全球创新者联系、协作和共同成长

立即加入