术语表

光流

探索光学流在计算机视觉中的强大功能。了解它如何估算运动、增强视频分析以及推动人工智能创新。

使用Ultralytics HUB 对YOLO 模型进行简单培训

了解更多

光流是计算机视觉(CV)中的一个基本概念,用于描述视觉场景中的物体、表面和边缘因观察者(如摄像机)与场景之间的相对运动而产生的明显运动。它计算一个向量场,代表视频序列中连续帧之间亮度模式(像素或特征)的位移。这为视频中的运动动态提供了宝贵的信息,为许多更高层次的视觉任务奠定了基础。

光流如何工作

大多数光流算法的核心假设是亮度恒定,即物体上特定点的亮度在短时间内保持恒定,即使它在图像平面上移动也是如此。算法从一帧到下一帧跟踪这些恒定的亮度模式,以估计运动矢量。常见的技术包括

  • 稀疏光流:跟踪帧与帧之间有限的一组特定特征点(如角)的运动。Lucas-Kanade 方法就是一个常用的例子。
  • 密集光流:为图像中的每个像素计算运动向量。Horn-Schunck 方法是一个经典的例子,不过更现代的方法通常使用深度学习。您可以探索密集流与稀疏流的比较,了解更多细节。

这些方法提供了对像素运动的低层次理解,然后可以为各种应用进行解释。

光流的应用

光流在不同领域都有大量实际应用:

  • 视频压缩:运动矢量有助于预测后续帧,从而减少存储或传输所需的数据量,如MPEG 等标准。
  • 自主系统:机器人自动驾驶汽车中用于自我运动估计(确定摄像头自身的运动)、避障和了解其他物体的相对运动等任务。例如,自动驾驶汽车中的人工智能利用流跟踪附近的车辆和行人。
  • 动作识别:分析运动模式有助于识别视频中的行走、跑步或跌倒等动作。这在监控、运动分析和人机交互中非常有用。安全警报系统可能会使用光流来检测可疑动作。了解有关动作识别研究的更多信息。
  • 医学成像:在超声波或核磁共振成像等序列中跟踪器官或组织的运动,帮助诊断和分析。查看医学图像分析的更多信息。
  • 视频稳定估算摄像机运动,以数字方式消除不必要的抖动和抖动,从而实现更流畅的视频输出。了解电子图像稳定技术

光流与物体追踪

光流和物体追踪虽然相互关联,但却是截然不同的任务。光流为两个连续帧之间的像素或特征提供低层次的运动向量。它并不能从本质上理解物体的特性,也不能在较长时间内对物体进行跟踪。

物体跟踪通常使用以下模型 Ultralytics YOLO等模型进行物体跟踪,其重点是识别特定的物体实例(通常通过物体检测进行检测),并在多个帧(可能是长时间)中保持其特征和轨迹。跟踪算法经常使用光流作为输入(以及外观模型、卡尔曼滤波器等)来预测后续帧中的物体位置,但跟踪是一项更高层次的任务,涉及物体的持久性。您可以探索像YOLOv8 这样的跟踪模型。

OpenCV等库提供了各种光流算法的现成实现。

阅读全部