块匹配

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

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

  • 块匹配块

描述

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

港口

输入

全部展开

图像或视频帧,指定为标量、向量或矩阵。如果将参数之间的估计运动设置为两个图像,则此端口的名称更改为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使用逐步减小的步长搜索当前帧中与当前帧中像素块最匹配的下一帧像素块。块的起始步长大约等于最大搜索范围的一半。在每个步骤中,块将搜索区域的中心点与位于区域边界上的八个搜索点进行比较,并将中心点移动到其值与中心点值最接近的搜索点。然后块将步长减少一半,并再次开始该过程。此选项的计算开销较低,尽管它可能无法找到最佳解决方案。

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

如果您选择均方误差(MSE),块估计块的中心像素的位移为 ( 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 ) 最小化这个疯狂方程的值:

一个 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