运动向量(Motion Vector,MV)概述
- 基本定义
运动向量是视频帧中某个宏块(或子块)相对于参考帧(前帧、后帧或双向帧)位置的位移量,用一对水平、垂直坐标 表示。它描述了像素块在时间轴上的“运动轨迹”,是帧间预测(Motion‑Compensation Prediction)的核心数据。 - 在视频编码中的作用
- 精度与子像素插值
- 运动向量的预测与差分编码
- 常见的搜索算法
- 全搜索(Full Search)、三步搜索(Three‑Step Search)、钻石搜索(Diamond Search)、六边形搜索(Hexagon Search) 等在不同复杂度/性能需求下使用。
- 这些算法在整数像素层面确定最佳 MV,然后在子像素层面进行细化(FME),如 ¼ pixel 插值。
- 在图形渲染中的扩展应用
- 运动模糊(Motion Blur):渲染管线记录每个像素的屏幕空间运动向量,用于在后处理阶段生成自然的运动模糊效果。
- 时间性抗锯齿(TAA):利用历史帧的运动向量对像素进行重投影,平滑高频噪声,提升画面稳定性。
- 这些技术在实时渲染(如游戏引擎 HDRP)中广泛使用,原理与视频编码的 MV 类似,只是用途从压缩转向视觉效果。
- 标准化与发展趋势
- H.264/AVC:采用 ¼ pixel MV、4×4~16×16 可变块大小、CABAC/CAVLC 编码。
- HEVC/H.265:块大小扩大至 64×64,继续使用 ¼ pixel MV,并引入更高效的预测模式。
- VVC:在 MV 预测、子像素插值和熵编码上进一步优化,以适应 4K/8K 超高清视频需求。
- 小结
运动向量是连接相邻视频帧的“位移桥梁”。它通过运动估计找出块级对应关系,用运动补偿生成预测图像,再通过差分编码实现高效压缩;在图形渲染中,它又被用来记录像素运动轨迹,支撑运动模糊和时间性抗锯齿等视觉效果。随着视频分辨率和实时渲染需求的提升,MV 的精度、预测算法和硬件实现仍在持续演进。
声明:文章均为AI生成,请谨慎辨别信息的真伪和可靠性!