块匹配

估计图像或视频帧之间的运动

  • 库:
  • 计算机视觉工具箱/分析和增强

  • 块匹配块

描述

块匹配块通过比较像素块来估计两个图像或两个视频帧之间的运动。该块通过在一个搜索区域上移动像素块来在帧之间匹配像素块。

港口

输入

全部展开

图像或视频帧,指定为标量、向量或矩阵。如果参数之间的估计运动设置为两个图像,则该端口的名称更改为I1

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

图像或视频帧,指定为标量、向量或矩阵。

依赖关系

要启用该端口,请设置估计之间的运动参数两张图片

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

输出

全部展开

速度大小,以标量、矢量或矩阵的形式返回。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

以复数形式返回标量、矢量或矩阵的速度分量。

依赖关系

要公开此端口,请设置速度输出参数复杂形式的水平和垂直分量

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

参数

全部展开

主要选项卡

指定是否估计两个图像或两个视频帧之间的运动。选择两张图片估计两个图像之间的运动。选择当前帧和第n帧后估计距离为N帧的两个视频帧之间的运动。

依赖关系

设置为:当前帧和第n帧后公开N参数。

指定一个标量值,表示参考帧和当前帧之间的帧数。

依赖关系

若要启用该参数,请设置估计之间的运动参数当前帧和第n帧后

指定该块如何定位当前帧和下一帧中与该像素块最匹配的像素块。

  • 详尽的-块通过在搜索区域上每次移动一个像素来选择像素块在下一帧中的位置。这个过程在计算上是昂贵的。

  • 三步- block通过使用一个稳定减小的步长来搜索下一帧中与当前帧中像素块最匹配的像素块。块开始的步长大约等于最大搜索范围的一半。在每一步中,块将搜索区域的中心点与该区域边界上的8个搜索点进行比较,并将中心点移动到与中心点值最近的搜索点上。然后该块将步长减少一半,并再次开始这个过程。这个选项的计算开销较小,尽管它可能无法找到最佳解决方案。

指定该块如何度量当前帧中像素块与下一帧中像素块的相似性。

如果您选择均方误差,该块估计块中心像素的位移为 d 1 d 2 使MSE方程最小化的值:

年代 E d 1 d 2 1 N 1 × N 2 n 1 n 2 B 年代 n 1 n 2 k 年代 n 1 + d 1 n 2 + d 2 k + 1 2

在上一个方程中,B是一个 N 1 × N 2 像素块,和年代x, y, k)表示位于()的像素位置x, y)的框架k

如果您选择平均绝对差(MAD),块匹配块估计块中心像素的位移为 d 1 d 2 使MAD方程最小化的值:

一个 D d 1 d 2 1 N 1 × N 2 n 1 n 2 B | 年代 n 1 n 2 k 年代 n 1 + d 1 n 2 + d 2 k + 1 |

指定像素块的大小。

指定输入图像的两个细分的重叠(以像素为单位)。

指定像素块中任意中心像素可以从图像移动到图像或从帧移动到帧的最大像素数。块使用这个值来确定搜索区域的大小。

指定的输出。如果您选择平方,该块输出一个光流矩阵,其中每个元素的形式u2+ v2.如果您选择复杂形式的水平和垂直分量,该块输出一个光流矩阵,其中每个元素的形式 u + j v .每个值的实部是水平速度分量,虚部是竖直速度分量。

数据类型选项卡

定点块的详细参数请参见为块指定定点属性

块特征

数据类型

|不动点|整数|

多维信号

没有

适应信号

没有

算法

全部展开

扩展功能

C / c++代码生成
使用Simulink®Coder™生成C和c++代码。金宝app

定点转换
使用定点设计器™设计和模拟定点系统。

之前介绍过的R2006a