CN108810317A - 真实运动估计方法及装置、计算机可读存储介质、终端 - Google Patents
真实运动估计方法及装置、计算机可读存储介质、终端 Download PDFInfo
- Publication number
- CN108810317A CN108810317A CN201710315971.9A CN201710315971A CN108810317A CN 108810317 A CN108810317 A CN 108810317A CN 201710315971 A CN201710315971 A CN 201710315971A CN 108810317 A CN108810317 A CN 108810317A
- Authority
- CN
- China
- Prior art keywords
- scale image
- image
- pixel
- motion vector
- current
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
- H04N5/144—Movement detection
- H04N5/145—Movement estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/01—Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
- H04N7/0135—Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving interpolation processes
- H04N7/014—Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving interpolation processes involving the use of motion vectors
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Image Analysis (AREA)
Abstract
一种真实运动估计方法及装置,所述方法包括:构建当前帧的图像金字塔,得到对应的多个尺度图像;按照从低至高的顺序遍历所构建的多个尺度图像;获取当前尺度图像中需要重新运动估计的像素点和不需要重新运动估计的像素点的信息;分别计算得到当前尺度图像中需要和不需要重新运动估计的像素点的运动矢量,得到当前尺度图像的运动矢量场;基于当前尺度图像中的像素点和当前尺度图像的平坦区域参数,确定下一尺度图像中需要和不需要重新运动估计的像素点,并估计得到下一尺度图像的运动矢量场,直至多个尺度图像遍历完成,得到当前帧的运动矢量场。上述的方案,可以提高运动估计的收敛速度。
Description
技术领域
本发明涉及图像处理技术领域,特别是涉及一种真实运动估计方法及装置、计算机可读存储介质、终端。
背景技术
目前视频传输中的编解码技术可以获得很高的压缩比,然而为了适应一些网络带宽的限制,通常将视频信号的时空分辨率降低以降低数据量,在时域中可以通过编码端跳帧来实现。但是,在解码端必然会引起视频运动的不连续和图像质量的退化,尤其在快速运动和复杂场景中更为明显。
为解决上述问题,可以通过在解码端采用视频插帧技术,即帧率转换技术来恢复原始帧率以提高视频图像的主观视觉效果。视频插帧技术也可以用于不同帧率的视频格式之间的转换。由于简单的帧重复和帧平均会产生运动抖动和模糊,因此,在实际运用中通常采用方法是基于块匹配的运动补偿内插(Motion-compensated Interpolation,MCI),而该方法所获得的内插帧的质量取决于运动矢量估计的准确度。
现有技术中,通常采用三维递归搜索的块匹配方法来估计物体的真实运动。三维递归搜索的块匹配方法中,当前块的运动矢量是对时间、空间预测的运动矢量的小范围的修正。当前块的运动矢量同时也是下一分块,下一行的相邻分块的空域候选矢量和时域候选矢量。因此,对当前块的运动估计需要在计算各个帧图像划分得到的分块的候选运动矢量时,采用光栅扫描顺序,即从上到下,从左至右的顺序。但是,这种扫描顺序会造成运动矢量沿着从上至下,或者从左至右的顺序收敛,无法快速地收敛到真实的运动矢量。
发明内容
本发明实施例解决的技术问题是如何提高运动估计的收敛速度。
为解决上述问题,本发明实施例提供了一种真实运动估计方法,包括:构建当前帧的图像金字塔,得到对应的多个尺度图像;按照从低至高的顺序遍历所构建的多个尺度图像;其中,最高尺度图像为当前帧的原始图像;获取当前尺度图像中需要重新运动估计的像素点和不需要重新运动估计的像素点的信息;分别计算得到当前尺度图像中需要重新运动估计的像素点的运动矢量和不需要重新运动估计的像素点的运动矢量,得到当前尺度图像的运动矢量场;基于当前尺度图像中的像素点和当前尺度图像的平坦区域参数,确定下一尺度图像中需要重新运动估计的像素点和不需要重新运动估计的像素点,并估计得到下一尺度图像的运动矢量场,直至所述多个尺度图像遍历完成,得到当前帧的运动矢量场。
可选地,所述计算得到不需要重新运动估计的像素点的运动矢量,包括:以不需要重新运动估计的像素点所在的平坦区域的四个顶点的像素点的运动矢量进行插值,得到所述不需要重新运动估计的像素点的运动矢量。
可选地,所述计算得到需要重新运动估计的像素点的运动矢量,包括:对前一尺度图像上产生的运动矢量场进行引导滤波上采样,得到当前尺度图像的运动矢量场的初始值;基于所述当前尺度图像的运动矢量场的初始值,对所述需要重新运动估计的像素点进行运动估计,得到所述需要重新运动估计的像素点的运动矢量。
可选地,所述对前一尺度图像上产生的运动矢量场进行引导滤波上采样,得到当前尺度图像的运动矢量场的初始值,包括:计算所述前一尺度图像的方差,以及所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差;对所述前一尺度图像和所述前一尺度图像的运动矢量场分别进行均值滤波,得到均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场;基于均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场,以及前一尺度图像的方差和所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差,计算得到第一参数和第二参数;对计算得到的第一参数和第二参数分别进行均值滤波,得到均值滤波后的第一图像和第二图像;对所述均值滤波后的第一图像和第二图像分别进行上采样,得到上采样后的第一图像和第二图像;以当前尺度图像作为引导图像,并基于所述上采样后得到的第一图像和第二图像,计算得到当前尺度图像的运动矢量场的初始值。
可选地,所述对前一尺度图像和所述前一尺度图像的运动矢量场分别进行均值滤波,得到均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场,包括:meanI=fmean(I);meanS=fmean(S);其中,meanI表示均值滤波后的前一尺度图像,meanS表示均值滤波后的前一尺度图像的运动矢量场,I表示前一尺度图像、S表示前一尺度图像的运动矢量场,fmean表示均值滤波函数。
可选地,所述计算前一尺度图像的方差,以及所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差,包括:corrI=fmean(I.*I);corrIS=fmean(I.*S);且,varI=corrI-meanI.*meanI;covIS=corrIS-meanI.*meanS;其中,covIS表示前一尺度图像与前一尺度图像上产生的运动矢量场的协方差。
可选地,所述基于均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场,以及前一尺度图像的方差和所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差,计算得到第一参数和第二参数,包括:a=covIS/varI+ε;b=meanS-a.*meanI;其中,a表示所述第一参数,b表示所述第二参数。
可选地,所述对计算得到的第一参数和第二参数分别进行均值滤波,得到均值滤波后的第一图像和第二图像,包括:meana=fmean(a);meanb=fmean(b);其中,meana表示均值滤波后的第一图像,meanb表示表示均值滤波后的第二图像。
可选地,所述对所述均值滤波后的第一图像和第二图像分别进行上采样,得到上采样后的第一图像和第二图像,包括:meanA=fmean(meana);meanB=fmean(meanb);其中,meanA表示上采样后的第一图像,meanB表示上采样后的第一图像。
可选地,所述以当前尺度图像作为引导图像,并基于所述上采样后得到的第一图像和第二图像,计算得到当前尺度图像的运动矢量的初始值,包括:S'=meanA.*I'+meanB;其中,S'表示所述当前尺度图像的运动矢量的初始值。
可选地,所述基于当前尺度图像中的像素点和当前尺度图像的平坦区域参数,确定下一尺度图像中需要重新运动估计的像素点和不需要重新运动估计的像素点,包括:对当前尺度图像中的像素点进行遍历;判断遍历到的当前像素点是否经过平坦区域判断;当确定当前像素点未经过平坦区域判断,判断当前像素点的规则性数值是否小于预设的规则性数值;当确定当前像素点的规则性数值小于预设的规则阈值时,以前一尺度图像对应的平坦区域参数,确定当前尺度图像中当前像素点对应的平坦区域,并将当前像素点对应的平坦区域中的所有像素点标记为经过平坦区域判断;判断所述当前像素点对应的平坦区域中的所有像素点的规则性数值是否均小于所述规则阈值;当确定所述当前像素点对应的平坦区域中的所有像素点的规则性数值均小于所述规则阈值时,将下一尺度图像中对应的第一区域的四个顶点的像素点标记为需要重新运动估计的像素点,并将下一尺度图像中对应的第一区域的其他像素点标记为不需要重新运动估计的像素点;当确定所述当前像素点对应的平坦区域中的所有像素点的规则性数值非均小于所述规则阈值时,将下一尺度图像中对应的第一区域的所有像素点均标记为需要重新运动估计的像素点;当确定当前像素点未经过平坦区域判断,且当前像素点的规则性数值大于或等于所述规则阈值时,将当前像素点标记为经过平坦区域判断,并将下一尺度图像中对应的四个像素点作为需要重新运动估计的像素点;当确定当前像素点经过平坦区域判断时,并获取当前尺度图像中的下一像素点,直至当前尺度图像中的所有像素点遍历完成。
可选地,采用如下的公式计算当前像素点的规则性数值:R=(maxj∈N(i)||MVi-MVj||j);其中,i表示当前像素的索引,j表示当前像素的领域中像素的索引,MVi表示当前像素的运动矢量,MVj表示领域像素的运动矢量。
可选地,当前一尺度图像对应的平坦区域参数为平坦区域宽度D,且当前像素点的位置为(x,y),所述当前像素点对应的平坦区域为以当前像素点的位置作为左上顶点,且宽度为平坦区域宽度D的矩形区域;所述第一区域为以下一尺度图像中的像素点(2x,2y)作为左上角的顶点,且,且宽度为平坦区域宽度D的2倍的矩形区域;所述下一尺度图像中对应的四个像素点分别为(2x,2y)、(2x+1,2y)、(2x,2y+1)、(2x+1,2y+1)。
本发明实施例还提供了一种真实运动估计装置,包括:构建单元,适于构建当前帧的图像金字塔,得到对应的多个尺度图像;遍历单元,适于按照从低至高的顺序遍历所构建的多个尺度图像;其中,最高尺度图像为当前帧的原始图像;获取单元,适于获取当前尺度图像中需要重新运动估计的像素点和不需要重新运动估计的像素点的信息;计算单元,适于分别计算得到当前尺度图像中需要重新运动估计的像素点的运动矢量和不需要重新运动估计的像素点的运动矢量,得到当前尺度图像的运动矢量场;估计单元,适于基于当前尺度图像中的像素点和当前尺度图像的平坦区域参数,确定下一尺度图像中需要重新运动估计的像素点和不需要重新运动估计的像素点,并估计得到下一尺度图像的运动矢量场,直至所述多个尺度图像遍历完成,得到当前帧的运动矢量场。
可选地,所述计算单元,适于以不需要重新运动估计的像素点所在的平坦区域的四个顶点的像素点的运动矢量进行插值,得到所述不需要重新运动估计的像素点的运动矢量。
可选地,所述计算单元,适于对前一尺度图像上产生的运动矢量场进行引导滤波上采样,得到当前尺度图像的运动矢量场的初始值;基于所述当前尺度图像的运动矢量场的初始值,对所述需要重新运动估计的像素点进行运动估计,得到所述需要重新运动估计的像素点的运动矢量。
可选地,所述计算单元,适于计算所述前一尺度图像的方差,以及所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差;对所述前一尺度图像和所述前一尺度图像的运动矢量场分别进行均值滤波,得到均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场;基于均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场,以及前一尺度图像的方差和所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差,计算得到第一参数和第二参数;对计算得到的第一参数和第二参数分别进行均值滤波,得到均值滤波后的第一图像和第二图像;对所述均值滤波后的第一图像和第二图像分别进行上采样,得到上采样后的第一图像和第二图像;以当前尺度图像作为引导图像,并基于所述上采样后得到的第一图像和第二图像,计算得到当前尺度图像的运动矢量场的初始值。
可选地,所述计算单元,适于采用如下的公式计算得到均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场:meanI=fmean(I);meanS=fmean(S);其中,meanI表示均值滤波后的前一尺度图像,meanS表示均值滤波后的前一尺度图像的运动矢量场,I表示前一尺度图像、S表示前一尺度图像的运动矢量场,fmean表示均值滤波函数。
可选地,所述计算单元,适于采用如下的公式计算前一尺度图像的方差,以及所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差:corrI=fmean(I.*I);corrIS=fmean(I.*S);且,varI=corrI-meanI.*meanI;covIS=corrIS-meanI.*meanS;其中,其中,covIS表示前一尺度图像与前一尺度图像上产生的运动矢量场的协方差。
可选地,所述计算单元,适于采用如下的公式计算得到第一参数和第二参数:a=covIS/varI+ε;b=meanS-a.*meanI;其中,a表示所述第一参数,b表示所述第二参数。
可选地,所述计算单元,适于采用如下的公式计算得到均值滤波后的第一图像和第二图像:meana=fmean(a);meanb=fmean(b);其中,meana表示均值滤波后的第一图像,meanb表示表示均值滤波后的第二图像。
可选地,所述计算单元,适于采用如下的公式计算得到对所述均值滤波后的第一图像和第二图像分别进行上采样,得到上采样后的第一图像和第二图像:meanA=fmean(meana);meanB=fmean(meanb);其中,meanA表示上采样后的第一图像,meanB表示上采样后的第一图像。
可选地,所述计算单元,适于采用如下的公式计算得到当前尺度图像的运动矢量的初始值,包括:S'=meanA.*I'+meanB;其中,S'表示所述当前尺度图像的运动矢量的初始值。
可选地,所述估计单元,适于对当前尺度图像中的像素点进行遍历;判断遍历到的当前像素点是否经过平坦区域判断;当确定当前像素点未经过平坦区域判断,判断当前像素点的规则性数值是否小于预设的规则性数值;当确定当前像素点的规则性数值小于预设的规则阈值时,以前一尺度图像对应的平坦区域参数,确定当前尺度图像中当前像素点对应的平坦区域,并将当前像素点对应的平坦区域中的所有像素点标记为经过平坦区域判断;判断所述当前像素点对应的平坦区域中的所有像素点的规则性数值是否均小于所述规则阈值;当确定所述当前像素点对应的平坦区域中的所有像素点的规则性数值均小于所述规则阈值时,将下一尺度图像中对应的第一区域的四个顶点的像素点标记为需要重新运动估计的像素点,并将下一尺度图像中对应的第一区域的其他像素点标记为不需要重新运动估计的像素点;当确定所述当前像素点对应的平坦区域中的所有像素点的规则性数值非均小于所述规则阈值时,将下一尺度图像中对应的第一区域的所有像素点均标记为需要重新运动估计的像素点;当确定当前像素点未经过平坦区域判断,且当前像素点的规则性数值大于或等于所述规则阈值时,将当前像素点标记为经过平坦区域判断,并将下一尺度图像中对应的四个像素点作为需要重新运动估计的像素点;当确定当前像素点经过平坦区域判断时,并获取当前尺度图像中的下一像素点,直至当前尺度图像中的所有像素点遍历完成。
可选地,所述估计单元,适于采用如下的公式计算当前像素点的规则性数值:R=(maxj∈N(i)||MVi-MVj||j);i表示当前像素的索引,j表示当前像素的领域中像素的索引,MVi表示当前像素的运动矢量,MVj表示领域像素的运动矢量。
可选地,当前一尺度图像对应的平坦区域参数为平坦区域宽度D,且当前像素点的位置为(x,y),所述当前像素点对应的平坦区域为以当前像素点的位置作为左上顶点,且宽度为平坦区域宽度D的矩形区域;所述第一区域为以下一尺度图像中的像素点(2x,2y)作为左上角的顶点,且,且宽度为平坦区域宽度D的2倍的矩形区域;所述下一尺度图像中对应的四个像素点分别为(2x,2y)、(2x+1,2y)、(2x,2y+1)、(2x+1,2y+1)。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令运行时执行上述的真实运动估计方法的步骤。
本发明实施例还提供了一种终端,包括存储器和处理器,所述存储器上储存有能够在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行上述的真实运动估计方法的步骤。
与现有技术相比,本发明的技术方案具有以下的优点:
上述的方案,通过将当前帧的原始图像作为最高尺度的图像,按照从低至高的顺序对构建的当前帧的多个尺度图像进行遍历,并基于当前尺度图像的像素点确定下一尺度图像中需要进行重新运动估计的点和不需要重新运动估计的像素点,可以有效减少物体内部区域中需要重新运动估计的像素点的数量,因而可以提高运动矢量的收敛速度。
进一步地,在计算需要重新运动估计的像素点的运动矢量场时,通过对前一尺度图像上产生的运动矢量场进行引导滤波上采样,得到当前尺度图像的运动矢量场的初始值,并基于所述当前尺度图像的运动矢量场的初始值,对所述需要重新运动估计的像素点进行运动估计,得到所述需要重新运动估计的像素点的运动矢量,可以有效利用图像的边缘信息,提高物体边缘处的像素点的运动矢量场的估计准确性,从而可以提升运动矢量场估计的准确性。
附图说明
图1是本发明实施例中的一种真实运动估计方法的流程图;
图2是本发明实施例中计算得到当前尺度图像中需要重新运动估计的像素点的运动矢量的方法的流程图;
图3是本发明实施例中确定下一尺度图像中需要重新运动估计的像素点和不需要重新运动估计的像素点的方法的流程图;
图4是本发明实施例中的真实运动估计装置的结构示意图。
具体实施方式
正如背景技术所言,现有技术中的三维递归搜索的块匹配方法中,当前块的运动矢量是对时间、空间预测的运动矢量的小范围的修正。当前块的运动矢量同时也是下一分块,下一行的相邻分块的空域候选矢量和时域候选矢量。因此,对当前块的运动估计需要在计算各个帧图像划分得到的分块的候选运动矢量时,采用光栅扫描顺序,即从上到下,从左至右的顺序。但是,这种扫描顺序会造成运动矢量沿着从上至下,或者从左至右的顺序收敛,无法快速并准确地收敛到真实的运动矢量。
为解决现有技术中存在的上述问题,本发明实施例采用的技术方案通过将当前帧的原始图像作为最高尺度的图像,按照从低至高的顺序对构建的当前帧的多个尺度图像进行遍历,并基于当前尺度图像的像素点确定下一尺度图像中需要进行重新运动估计的点和不需要重新运动估计的像素点,可以有效减少物体内部区域中需要重新运动估计的像素点的数量,因而可以提高运动矢量的收敛速度。
为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
图1示出了本发明实施例中的一种图像生成方法的流程图。如图1所示的图像生成方法,可以采用如下的步骤实现:
步骤S101:构建当前帧的图像金字塔,得到对应的多个尺度图像。
在具体实施中,当前帧为待进行运动矢量场估计的图像。
在具体实施中,当前帧的图像金字塔可以通过对当前帧的原始图像进行小波变换得到。其中,所构建的当前帧的图像金字塔的层数,也即对应的多个尺度图像的数量,可以根据实际的需要进行设置。
在本发明一实施例中,根据目标***所支持的最大运动矢量,金字塔的层数可根据目标***所支持的最大运动矢量和采用的运动估计方法所支持的最大运动矢量进行确定,如可以采用如下的公式计算得到当前帧的图像金字塔所包括的尺度图像的数量:
其中,layers表示当前帧的图像金字塔中的尺度图像的数量,MVsys表示目标***所支持的最大运动矢量,MValg表示采用的运动估计方法所支持的最大运动矢量。
步骤S102:按照从低至高的顺序遍历所构建的多个尺度图像。
在具体实施中,在当前帧的图像金字塔中,最高尺度图像为当前帧的原始图像,也即当前帧的图像金字塔的尺度图像按照尺寸递减的顺序进行排列。
本领域的技术人员可以理解的是,当前帧的图像金字塔中多个尺度图像的高低顺序也可以采用其他的方式设置,只要在从当前帧的原始图像开始按照顺序逐层对各个尺度图像进行遍历即可。
步骤S103:获取当前尺度图像中需要重新运动估计的像素点和不需要重新运动估计的像素点的信息。
在具体实施中,当前尺度图像为按照顺序遍历到的当前位序的尺度图像,也即当前进行处理的尺度图像。
在本发明一实施例中,当前尺度图像中需要重新运动估计的像素点和不需要重新运动估计的像素点通过前一尺度图像中的像素点和前一尺度图像对应的平坦区域参数进行确定。
在本发明一实施例中,在当前帧为场景中的第一帧图像时,当前帧的图像金字塔中的最低尺度图像的运动矢量场全部初始化为0;在当前帧不是场景中的第一帧图像时,最低尺度图像的运动矢量场则可以通过对前一帧图像的最终运动矢量场进行下采样得到。
其中,将最低尺度图像的运动矢量场全部初始化为0,则最低尺度图像的平坦区域也全部初始化为0,也即意味着最低尺度图像中的每个像素点均为一个单独的平坦区域。
步骤S104:分别计算得到当前尺度图像中需要重新运动估计的像素点的运动矢量场和不需要重新运动估计的像素点的运动矢量场,得到当前尺度图像的运动矢量场。
在本发明一实施例中,对于当前尺度图像中需要重新运动估计的像素点的运动矢量场,可以通过前一尺度图像进行引导滤波上采样得到;对于当前尺度图像中不需要重新运动估计的像素点的运动矢量场,通过该像素点对应的平坦区域的四个顶点的像素点的运动矢量进行插值得到。通过前述的方式,便可以得到当前尺度图像的最终的运动矢量场。
其中,当前尺度图像中的不需要重新运动估计的像素点对应的平坦区域的四个顶点的像素点的运动矢量可采用相应的运动估计方法计算得到,如采用现有的3DRS运动估计方法,或者类似于视频编码中使用的快速搜索算法,或者也可以采用其他的运动估计方法计算得到,在此不做限制。
步骤S105:判断当前帧的图像金字塔中的所有尺度图像是否遍历完成;当判断结果为是时,可以结束操作;反之,则可以执行步骤S106。
步骤S106:基于当前尺度图像中的像素点,确定下一尺度图像中需要重新运动估计的像素点,并从步骤S103开始执行。
在具体实施中,在计算得到当前尺度图像的最终的运动矢量场时,可以基于当前尺度图像中的像素点的像素值和当前尺度图像对应的平坦区域参数,确定下一尺度图像中需要重新运动估计的像素点,并从步骤S103开始执行,直至当前帧的图像金字塔中的所有尺度图像遍历完成,从而得到当前帧的运动矢量场。
上述的方案,通过将当前帧的原始图像作为最低尺度的图像,按照从低至高的顺序对构建的当前帧的多个尺度图像进行遍历,并基于当前尺度图像的像素点确定下一尺度图像中需要进行重新运动估计的点和不需要重新运动估计的像素点,可以有效减少物体内部区域中需要重新运动估计的像素点的数量,因而可以提高运动矢量的收敛速度。
图2示出了本发明实施例中的一种计算得到当前尺度图像中需要重新运动估计的像素点的运动矢量的方法,具体可以包括如下的步骤:
步骤S201:对前一尺度图像上产生的运动矢量场进行引导滤波上采样,得到当前尺度图像的运动矢量场的初始值。
在本发明一实施例中,对前一尺度图像上产生的运动矢量场进行引导滤波上采样时,可以首先获取前一尺度图像I和前一尺度图像的运动矢量场S。
接着,可以计算所述前一尺度图像I的方差,以及所述前一尺度图像I与前一尺度图像上产生的运动矢量场S的协方差。
在本发明一实施例中,采用如下的公式计算得到算所述前一尺度图像的方差,以及所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差:
corrI=fmean(I.*I) (2)
corrIS=fmean(I.*S) (3)
且:
varI=corrI-meanI.*meanI (4)
covIS=corrIS-meanI.*meanS (5)
其中,covIS表示前一尺度图像与前一尺度图像上产生的运动矢量场的协方差。
在获取前一尺度图像I和前一尺度图像的运动矢量场S时,可以对前一尺度图像和所述前一尺度图像的运动矢量场分别进行均值滤波,以得到均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场。
在本发明一实施例中,采用如下的公式计算得到均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场:
meanI=fmean(I) (6)
meanS=fmean(S) (7)
其中,meanI表示均值滤波后的前一尺度图像,meanS表示均值滤波后的前一尺度图像的运动矢量场,I表示前一尺度图像、S表示前一尺度图像的运动矢量场,fmean表示均值滤波函数。
在计算得到均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场,以及前一尺度图像的方差和所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差时,可以基于均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场,以及前一尺度图像的方差和所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差,计算得到第一参数和第二参数。
在本发明一实施例中,采用如下的公式计算得到第一参数和第二参数:
a=covIS/varI+ε (8)
b=meanS-a.*meanI (9)
其中,a表示所述第一参数,b表示所述第二参数。
在计算得到的第一参数和第二参数时,可以对得到的第一参数和第二参数分别进行均值滤波,得到均值滤波后的第一图像和第二图像。
在本发明一实施例中,采用如下的公式计算得到均值滤波后的第一图像和第二图像:
meana=fmean(a) (10)
meanb=fmean(b) (11)
其中,meana表示均值滤波后的第一图像,meanb表示表示均值滤波后的第二图像。
在得到均值滤波后的第一图像和第二图像后,可以对所述均值滤波后的第一图像和第二图像分别进行上采样,得到上采样后的第一图像和第二图像。
在本发明一实施例中,采用如下的公式计算得到上采样后的第一图像和第二图像:
meanA=fmean(meana) (12)
meanB=fmean(meanb) (13)
其中,meanA表示上采样后的第一图像,meanB表示上采样后的第一图像。
在计算得到上采样后的第一图像和第二图像之后,可以以当前尺度图像作为引导图像,并基于所述上采样后得到的第一图像和第二图像,计算得到当前尺度图像的运动矢量的初始值。
在本发明一实施例中,采用如下的公式计算得到当前尺度图像的运动矢量的初始值:
S'=meanA.*I'+meanB (14)
其中,S'表示所述当前尺度图像的运动矢量的初始值。
步骤S202:基于所述当前尺度图像的运动矢量场的初始值,对所述需要重新运动估计的像素点进行运动估计,得到所述需要重新运动估计的像素点的运动矢量。
在本发明一实施例中,当计算得到所述当前尺度图像的运动矢量场的初始值时,以计算得到所述当前尺度图像的运动矢量场的初始值为基础,采用与当前尺度图像中不需要进行运动估计的像素点相同的运动估计方法,得到需要重新运动估计的像素点的运动矢量。
图3示出了本发明实施例中的一种基于当前尺度图像的像素点的信息确定下一尺度图像中需要重新运动估计的像素点和不需要重新运动估计的像素点的方法,具体可以采用如下的操作实现:
步骤S301:对当前尺度图像中的像素点进行遍历。
在具体实施中,可以按照预定的扫描顺序,如从左至右、从上至下的扫描顺序对当前尺度图像中的像素点进行遍历。
步骤S302:判断遍历到的当前像素点是否经过平坦区域判断;当判断结果为是时,可以执行步骤S309;反之,则可以执行步骤S303。
在具体实施中,当前像素点经过平坦区域判断,表明在对当前尺度图像中的其他的像素点进行平坦区域的判断处理时,当前像素点位于其他像素点的平坦区域内,从而使得当前像素点已经经过平坦区域的判断,也即已经对当前像素点的规则性数值是否大于预设的规则数值进行过一次判断。
步骤S303:判断当前像素点的规则性数值是否小于预设的规则阈值;当判断结果为是时,可以执行步骤S304;反之,则可以执行步骤S308。
在本发明一实施例中,采用如下的公式计算得到当前像素点的规则性数值:
R=(maxj∈N(i)||MVi-MVj||) (15)
其中,i表示当前像素的索引,j表示当前像素的领域中像素的索引,MVi表示当前像素的运动矢量,MVj表示领域像素的运动矢量。
步骤S304:以前一尺度图像对应的平坦区域参数,确定当前尺度图像中当前像素点对应的平坦区域,并将当前像素点对应的平坦区域中的所有像素点标记为经过平坦区域判断。
在具体实施中,当确定当前像素点的规则性数值小于预设的规则阈值时,以前一尺度图像对应的平坦区域参数D,作为当前像素点对应的平坦区域的宽度确定当前像素点的平坦区域,且当前像素点的平坦区域以当前像素点作为左上角顶点的矩形区域。
换言之,以当前像素点的位置坐标为(x,y)为例,则当前像素点对应的平坦区域的四个顶点的位置坐标,分别为(x,y)、(x+D,y)、(x,y+D)和(x+D,y+D)。
步骤S305:判断所述当前像素点对应的平坦区域中的所有像素点的规则性数值是否均小于所述规则阈值;当判断结果为是时,可以执行步骤S306;反之,则可以执行步骤S307。
在本发明一实施例中,采用公式(2)对当前像素点对应的平坦区域中的所有像素点的规则性数值进行计算,以确定当前像素点对应的平坦区域中的各个像素点的规则性数值是否均小于预设的规则阈值。
步骤S306:将下一尺度图像中对应的第一区域的四个顶点的像素点标记为需要重新运动估计的像素点,并将所述第一区域中的其他像素点标记为不需要重新运动估计的像素点。
在具体实施中,当确定当前像素点对应的平坦区域中的各个像素点的规则性数值均小于预设的规则阈值时,可以将下一尺度图像中对应的第一区域的四个顶点的像素点标记为需要重新运动估计的像素点,并将下一尺度图像中对应的第一区域的其他像素点标记为不需要重新运动估计的像素点。
在本发明一实施例中,以当前像素点的位置坐标为(x,y),且前一尺度图像对应的平坦区域参数为平坦区域宽度D为例,当前尺度图像对应的平坦区域参数为2D,且下一尺度图像中对应的第一区域为以像素点(2x,2y)作为左上角顶点,宽度为当前尺度图像对应的平坦区域参数为2D的矩形区域,也即下一尺度图像中对应的第一区域的四个顶点的像素点分别为(2x,2y)、(2x+2D,2y)、(2x,2y+2D)和(2x+2D,2y+2D)。
步骤S307:将下一尺度图像中对应的第一区域的所有像素点均标记为需要重新运动估计的像素点。
在具体实施中,当确定当前尺度图像中,当前像素点对应的平坦区域中所有像素点中,部分像素点的规则性数值小于预设的规则阈值,部分像素点的规则性数值大于或等于预设的规则阈值,或者当前像素点对应的平坦区域中的所有像素点的规则性数值均大于或等于预设的规则阈值时,可以将下一尺度图像中对应的第一区域的所有像素点均标记为需要重新运动估计的像素点。
在本发明一实施例中,下一尺度图像中对应的第一区域为以像素点(2x,2y)、(2x+2D,2y)、(2x,2y+2D)和(2x+2D,2y+2D)分别作为顶点的矩形区域。
步骤S308:将当前像素点标记为经过平坦区域判断,并将下一尺度图像中对应的四个像素点作为需要重新运动估计的像素点。
在本发明一实施例中,当确定当前像素点(x,y)的规则性数值大于或等于预设的规则阈值时,将下一的像素点(2x,2y)及其相邻的三个像素点(2x+1,2y)、(2x,2y+1)和(2x+1,2y+1)标记为需要重新运动估计的像素点,并同时将当前像素点(x,y)标记为经过平坦区域判断,以避免对同一像素重复进行平坦区域判断。
步骤S309:判断当前尺度图像中的像素点是否遍历完成;当判断结果为是时,可以结束操作;反之,则可以执行步骤S310。
步骤S310:获取当前尺度图像中的下一像素点。
在具体实施中,当确定直至当前尺度图像中的像素点未遍历完成时,可以按照顺序获取当前尺度图像中当前像素点之后的下一像素点,并从步骤S302开始执行,直至当前尺度图像中所有像素点遍历完成。
上述对本发明实施例中的方法进行了详细的描述,下面将对上述的方法对应装置做介绍。
参见图4,本发明实施例中的一种真实运动估计装置400,可以包括构建单元401、遍历单元402、获取单元403、计算单元404和估计单元405,其中:
所述构建单元401,适于构建当前帧的图像金字塔,得到对应的多个尺度图像;
所述遍历单元402,适于按照从低至高的顺序遍历所构建的多个尺度图像;其中,最低尺度图像为当前帧的原始图像;
所述获取单元403,适于获取当前尺度图像中需要重新运动估计的像素点和不需要重新运动估计的像素点的信息;
所述计算单元404,适于分别计算得到当前尺度图像中需要重新运动估计的像素点的运动矢量和不需要重新运动估计的像素点的运动矢量,得到当前尺度图像的运动矢量场;在本发明一实施例中,所述计算单元404,适于以不需要重新运动估计的像素点所在的平坦区域的四个顶点的像素点的运动矢量进行插值,得到所述不需要重新运动估计的像素点的运动矢量。
在本发明一实施例中,所述计算单元404,适于对前一尺度图像上产生的运动矢量场进行引导滤波上采样,得到当前尺度图像的运动矢量场的初始值;基于所述当前尺度图像的运动矢量场的初始值,对所述需要重新运动估计的像素点进行运动估计,得到所述需要重新运动估计的像素点的运动矢量。
在本发明一实施例中,所述计算单元404,适于计算所述前一尺度图像的方差,以及所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差;对所述前一尺度图像和所述前一尺度图像的运动矢量场分别进行均值滤波,得到均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场;基于均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场,以及前一尺度图像的方差和所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差,计算得到第一参数和第二参数;对计算得到的第一参数和第二参数分别进行均值滤波,得到均值滤波后的第一图像和第二图像;对所述均值滤波后的第一图像和第二图像分别进行上采样,得到上采样后的第一图像和第二图像;以当前尺度图像作为引导图像,并基于所述上采样后得到的第一图像和第二图像,计算得到当前尺度图像的运动矢量场的初始值。
在本发明一实施例中,所述计算单元404,适于采用如下的公式计算得到均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场:meanI=fmean(I);meanS=fmean(S);其中,meanI表示均值滤波后的前一尺度图像,meanS表示均值滤波后的前一尺度图像的运动矢量场,I表示前一尺度图像、S表示前一尺度图像的运动矢量场,fmean表示均值滤波函数。
在本发明一实施例中,所述计算单元404,适于采用如下的公式计算前一尺度图像的方差,以及所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差:corrI=fmean(I.*I);corrIS=fmean(I.*S);且,varI=corrI-meanI.*meanI;covIS=corrIS-meanI.*meanS;其中,covIS表示前一尺度图像与前一尺度图像上产生的运动矢量场的协方差。
在本发明一实施例中,所述计算单元404,适于采用如下的公式计算得到第一参数和第二参数:a=covIS/varI+ε;b=meanS-a.*meanI;其中,a表示所述第一参数,b表示所述第二参数。
在本发明一实施例中,所述计算单元404,适于采用如下的公式计算得到均值滤波后的第一图像和第二图像:meana=fmean(a);meanb=fmean(b);其中,meana表示均值滤波后的第一图像,meanb表示表示均值滤波后的第二图像。
在本发明一实施例中,所述计算单元404,适于采用如下的公式计算得到对所述均值滤波后的第一图像和第二图像分别进行上采样,得到上采样后的第一图像和第二图像:meanA=fmean(meana);meanB=fmean(meanb);其中,meanA表示上采样后的第一图像,meanB表示上采样后的第一图像。
在本发明一实施例中,所述计算单元404,适于采用如下的公式计算得到当前尺度图像的运动矢量的初始值,包括:S'=meanA.*I'+meanB;其中,S'表示所述当前尺度图像的运动矢量的初始值。
在本发明一实施例中,所述计算单元404,适于对当前尺度图像中的像素点进行遍历;判断遍历到的当前像素点是否经过平坦区域判断;当确定当前像素点未经过平坦区域判断,判断当前像素点的规则性数值是否小于预设的规则性数值;当确定当前像素点的规则性数值小于预设的规则阈值时,以前一尺度图像对应的平坦区域参数,确定当前尺度图像中当前像素点对应的平坦区域,并将当前像素点对应的平坦区域中的所有像素点标记为经过平坦区域判断;判断所述当前像素点对应的平坦区域中的所有像素点的规则性数值是否均小于所述规则阈值;当确定所述当前像素点对应的平坦区域中的所有像素点的规则性数值均小于所述规则阈值时,将下一尺度图像中对应的第一区域的四个顶点的像素点标记为需要重新运动估计的像素点,并将下一尺度图像中对应的第一区域的其他像素点标记为不需要重新运动估计的像素点;当确定所述当前像素点对应的平坦区域中的所有像素点的规则性数值非均小于所述规则阈值时,将下一尺度图像中对应的第一区域的所有像素点均标记为需要重新运动估计的像素点;当确定当前像素点未经过平坦区域判断,且当前像素点的规则性数值大于或等于所述规则阈值时,将当前像素点标记为经过平坦区域判断,并将下一尺度图像中对应的四个像素点作为需要重新运动估计的像素点;当确定当前像素点经过平坦区域判断时,并获取当前尺度图像中的下一像素点,直至当前尺度图像中的所有像素点遍历完成。在本发明一实施例中,当前一尺度图像对应的平坦区域参数为平坦区域宽度D,且当前像素点的位置为(x,y),所述当前像素点对应的平坦区域为以当前像素点的位置作为左上顶点,且宽度为平坦区域宽度D的矩形区域;所述第一区域为以下一尺度图像中的像素点(2x,2y)作为左上角的顶点,且,且宽度为平坦区域宽度D的2倍的矩形区域;所述下一尺度图像中对应的四个像素点分别为(2x,2y)、(2x+1,2y)、(2x,2y+1)、(2x+1,2y+1)。
所述估计单元405,适于基于当前尺度图像中的像素点和当前尺度图像的平坦区域参数,确定下一尺度图像中需要重新运动估计的像素点和不需要重新运动估计的像素点,并估计得到下一尺度图像的运动矢量场,直至所述多个尺度图像遍历完成,得到当前帧的运动矢量场。
在本发明一实施例中,所述估计单元405,适于采用如下的公式计算当前像素点的规则性数值:R=(maxj∈N(i)||MVi-MVj||j);i表示当前像素的索引,j表示当前像素的领域中像素的索引,MVi表示当前像素的运动矢量,MVj表示领域像素的运动矢量。
采用本发明实施例中的上述方案,通过将当前帧的原始图像作为最高尺度的图像,按照从低至高的顺序对构建的当前帧的多个尺度图像进行遍历,并基于当前尺度图像的像素点确定下一尺度图像中需要进行重新运动估计的点和不需要重新运动估计的像素点,可以有效减少物体内部区域中需要重新运动估计的像素点的数量,因而可以提高运动矢量的收敛速度。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令运行时执行上述的真实运动估计方法的步骤。
本发明实施例还提供了一种终端,包括存储器和处理器,所述存储器上储存有能够在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行上述的真实运动估计方法的步骤。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
以上对本发明实施例的方法及***做了详细的介绍,本发明并不限于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。
Claims (28)
1.一种真实运动估计方法,其特征在于,包括:
构建当前帧的图像金字塔,得到对应的多个尺度图像;
按照从低至高的顺序遍历所构建的多个尺度图像;其中,最高尺度图像为当前帧的原始图像;
获取当前尺度图像中需要重新运动估计的像素点和不需要重新运动估计的像素点的信息;
分别计算得到当前尺度图像中需要重新运动估计的像素点的运动矢量和不需要重新运动估计的像素点的运动矢量,得到当前尺度图像的运动矢量场;
基于当前尺度图像中的像素点和当前尺度图像的平坦区域参数,确定下一尺度图像中需要重新运动估计的像素点和不需要重新运动估计的像素点,并估计得到下一尺度图像的运动矢量场,直至所述多个尺度图像遍历完成,得到当前帧的运动矢量场。
2.根据权利要求1所述的真实运动估计方法,其特征在于,所述计算得到不需要重新运动估计的像素点的运动矢量,包括:
以不需要重新运动估计的像素点所在的平坦区域的四个顶点的像素点的运动矢量进行插值,得到所述不需要重新运动估计的像素点的运动矢量。
3.根据权利要求1所述的真实运动估计方法,其特征在于,所述计算得到需要重新运动估计的像素点的运动矢量,包括:
对前一尺度图像上产生的运动矢量场进行引导滤波上采样,得到当前尺度图像的运动矢量场的初始值;
基于所述当前尺度图像的运动矢量场的初始值,对所述需要重新运动估计的像素点进行运动估计,得到所述需要重新运动估计的像素点的运动矢量。
4.根据权利要求3所述的真实运动估计方法,其特征在于,所述对前一尺度图像上产生的运动矢量场进行引导滤波上采样,得到当前尺度图像的运动矢量场的初始值,包括:
计算所述前一尺度图像的方差,以及所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差;
对所述前一尺度图像和所述前一尺度图像的运动矢量场分别进行均值滤波,得到均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场;
基于均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场,以及前一尺度图像的方差和所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差,计算得到第一参数和第二参数;
对计算得到的第一参数和第二参数分别进行均值滤波,得到均值滤波后的第一图像和第二图像;
对所述均值滤波后的第一图像和第二图像分别进行上采样,得到上采样后的第一图像和第二图像;
以当前尺度图像作为引导图像,并基于所述上采样后得到的第一图像和第二图像,计算得到当前尺度图像的运动矢量场的初始值。
5.根据权利要求4所述的真实运动估计方法,其特征在于,所述对前一尺度图像和所述前一尺度图像的运动矢量场分别进行均值滤波,得到均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场,包括:
meanI=fmean(I);
meanS=fmean(S);
其中,meanI表示均值滤波后的前一尺度图像,meanS表示均值滤波后的前一尺度图像的运动矢量场,I表示前一尺度图像、S表示前一尺度图像的运动矢量场,fmean表示均值滤波函数。
6.根据权利要求5所述的真实运动估计方法,其特征在于,所述计算前一尺度图像的方差,以及所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差,包括:
corrI=fmean(I.*I);
corrIS=fmean(I.*S);且,
varI=corrI-meanI.*meanI;
covIS=corrIS-meanI.*meanS;
其中,covIS表示前一尺度图像与前一尺度图像上产生的运动矢量场的协方差。
7.根据权利要求6所述的真实运动估计方法,其特征在于,所述基于均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场,以及前一尺度图像的方差和所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差,计算得到第一参数和第二参数,包括:
a=covIS/varI+ε;
b=meanS-a.*meanI;
其中,a表示所述第一参数,b表示所述第二参数。
8.根据权利要求7所述的真实运动估计方法,其特征在于,所述对计算得到的第一参数和第二参数分别进行均值滤波,得到均值滤波后的第一图像和第二图像,包括:
meana=fmean(a);
meanb=fmean(b);
其中,meana表示均值滤波后的第一图像,meanb表示表示均值滤波后的第二图像。
9.根据权利要求8所述的真实运动估计方法,其特征在于,所述对所述均值滤波后的第一图像和第二图像分别进行上采样,得到上采样后的第一图像和第二图像,包括:
meanA=fmean(meana);
meanB=fmean(meanb);
其中,meanA表示上采样后的第一图像,meanB表示上采样后的第一图像。
10.根据权利要求9所述的真实运动估计方法,其特征在于,所述以当前尺度图像作为引导图像,并基于所述上采样后得到的第一图像和第二图像,计算得到当前尺度图像的运动矢量的初始值,包括:
S'=meanA.*I'+meanB;
其中,S'表示所述当前尺度图像的运动矢量的初始值。
11.根据权利要求1所述的真实运动估计方法,其特征在于,所述基于当前尺度图像中的像素点和当前尺度图像的平坦区域参数,确定下一尺度图像中需要重新运动估计的像素点和不需要重新运动估计的像素点,包括:
对当前尺度图像中的像素点进行遍历;
判断遍历到的当前像素点是否经过平坦区域判断;
当确定当前像素点未经过平坦区域判断,判断当前像素点的规则性数值是否小于预设的规则性数值;当确定当前像素点的规则性数值小于预设的规则阈值时,以前一尺度图像对应的平坦区域参数,确定当前尺度图像中当前像素点对应的平坦区域,并将当前像素点对应的平坦区域中的所有像素点标记为经过平坦区域判断;判断所述当前像素点对应的平坦区域中的所有像素点的规则性数值是否均小于所述规则阈值;当确定所述当前像素点对应的平坦区域中的所有像素点的规则性数值均小于所述规则阈值时,将下一尺度图像中对应的第一区域的四个顶点的像素点标记为需要重新运动估计的像素点,并将下一尺度图像中对应的第一区域的其他像素点标记为不需要重新运动估计的像素点;当确定所述当前像素点对应的平坦区域中的所有像素点的规则性数值非均小于所述规则阈值时,将下一尺度图像中对应的第一区域的所有像素点均标记为需要重新运动估计的像素点;
当确定当前像素点未经过平坦区域判断,且当前像素点的规则性数值大于或等于所述规则阈值时,将当前像素点标记为经过平坦区域判断,并将下一尺度图像中对应的四个像素点作为需要重新运动估计的像素点;
当确定当前像素点经过平坦区域判断时,并获取当前尺度图像中的下一像素点,直至当前尺度图像中的所有像素点遍历完成。
12.根据权利要求11所述的真实运动估计方法,其特征在于,采用如下的公式计算当前像素点的规则性数值:
R=(maxj∈N(i)||MVi-MVj||);
其中,i表示当前像素的索引,j表示当前像素的领域中像素的索引,MVi表示当前像素的运动矢量,MVj表示领域像素的运动矢量。
13.根据权利要求11或12所述的真实运动估计方法,其特征在于,当前一尺度图像对应的平坦区域参数为平坦区域宽度D,且当前像素点的位置为(x,y),所述当前像素点对应的平坦区域为以当前像素点的位置作为左上顶点,且宽度为平坦区域宽度D的矩形区域;所述第一区域为以下一尺度图像中的像素点(2x,2y)作为左上角的顶点,且,且宽度为平坦区域宽度D的2倍的矩形区域;所述下一尺度图像中对应的四个像素点分别为(2x,2y)、(2x+1,2y)、(2x,2y+1)、(2x+1,2y+1)。
14.一种真实运动估计装置,其特征在于,包括:
构建单元,适于构建当前帧的图像金字塔,得到对应的多个尺度图像;
遍历单元,适于按照从低至高的顺序遍历所构建的多个尺度图像;其中,最高尺度图像为当前帧的原始图像;
获取单元,适于获取当前尺度图像中需要重新运动估计的像素点和不需要重新运动估计的像素点的信息;
计算单元,适于分别计算得到当前尺度图像中需要重新运动估计的像素点的运动矢量和不需要重新运动估计的像素点的运动矢量,得到当前尺度图像的运动矢量场;
估计单元,适于基于当前尺度图像中的像素点和当前尺度图像的平坦区域参数,确定下一尺度图像中需要重新运动估计的像素点和不需要重新运动估计的像素点,并估计得到下一尺度图像的运动矢量场,直至所述多个尺度图像遍历完成,得到当前帧的运动矢量场。
15.根据权利要求14所述的真实运动估计装置,其特征在于,所述计算单元,适于以不需要重新运动估计的像素点所在的平坦区域的四个顶点的像素点的运动矢量进行插值,得到所述不需要重新运动估计的像素点的运动矢量。
16.根据权利要求14所述的真实运动估计装置,其特征在于,所述计算单元,适于对前一尺度图像上产生的运动矢量场进行引导滤波上采样,得到当前尺度图像的运动矢量场的初始值;基于所述当前尺度图像的运动矢量场的初始值,对所述需要重新运动估计的像素点进行运动估计,得到所述需要重新运动估计的像素点的运动矢量。
17.根据权利要求16所述的真实运动估计装置,其特征在于,所述计算单元,适于计算所述前一尺度图像的方差,以及所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差;对所述前一尺度图像和所述前一尺度图像的运动矢量场分别进行均值滤波,得到均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场;基于均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场,以及前一尺度图像的方差和所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差,计算得到第一参数和第二参数;对计算得到的第一参数和第二参数分别进行均值滤波,得到均值滤波后的第一图像和第二图像;对所述均值滤波后的第一图像和第二图像分别进行上采样,得到上采样后的第一图像和第二图像;以当前尺度图像作为引导图像,并基于所述上采样后得到的第一图像和第二图像,计算得到当前尺度图像的运动矢量场的初始值。
18.根据权利要求17所述的真实运动估计装置,其特征在于,所述计算单元,适于采用如下的公式计算得到均值滤波后的前一尺度图像和均值滤波后的前一尺度图像的运动矢量场:
meanI=fmean(I);
meanS=fmean(S);
其中,meanI表示均值滤波后的前一尺度图像,meanS表示均值滤波后的前一尺度图像的运动矢量场,I表示前一尺度图像、S表示前一尺度图像的运动矢量场,fmean表示均值滤波函数。
19.根据权利要求18所述的真实运动估计装置,其特征在于,所述计算单元,适于采用如下的公式计算前一尺度图像的方差,以及所述前一尺度图像与前一尺度图像上产生的运动矢量场的协方差:
corrI=fmean(I.*I);
corrIS=fmean(I.*S);且,
varI=corrI-meanI.*meanI;
covIS=corrIS-meanI.*meanS;
其中,covIS表示前一尺度图像与前一尺度图像上产生的运动矢量场的协方差。
20.根据权利要求19所述的真实运动估计装置,其特征在于,所述计算单元,
适于采用如下的公式计算得到第一参数和第二参数:
a=covIS/varI+ε;
b=meanS-a.*meanI;
其中,a表示所述第一参数,b表示所述第二参数。
21.根据权利要求20所述的真实运动估计装置,其特征在于,所述计算单元,
适于采用如下的公式计算得到均值滤波后的第一图像和第二图像:
meana=fmean(a);
meanb=fmean(b);
其中,meana表示均值滤波后的第一图像,meanb表示表示均值滤波后的第二图像。
22.根据权利要求21所述的真实运动估计装置,其特征在于,所述计算单元,适于采用如下的公式计算得到对所述均值滤波后的第一图像和第二图像分别进行上采样,得到上采样后的第一图像和第二图像:
meanA=fmean(meana);
meanB=fmean(meanb);
其中,meanA表示上采样后的第一图像,meanB表示上采样后的第一图像。
23.根据权利要求22所述的真实运动估计装置,其特征在于,所述计算单元,适于采用如下的公式计算得到当前尺度图像的运动矢量的初始值,包括:
S'=meanA.*I'+meanB;
其中,S'表示所述当前尺度图像的运动矢量的初始值。
24.根据权利要求23所述的真实运动估计装置,其特征在于,所述估计单元,适于对当前尺度图像中的像素点进行遍历;判断遍历到的当前像素点是否经过平坦区域判断;当确定当前像素点未经过平坦区域判断,判断当前像素点的规则性数值是否小于预设的规则性数值;当确定当前像素点的规则性数值小于预设的规则阈值时,以前一尺度图像对应的平坦区域参数,确定当前尺度图像中当前像素点对应的平坦区域,并将当前像素点对应的平坦区域中的所有像素点标记为经过平坦区域判断;判断所述当前像素点对应的平坦区域中的所有像素点的规则性数值是否均小于所述规则阈值;当确定所述当前像素点对应的平坦区域中的所有像素点的规则性数值均小于所述规则阈值时,将下一尺度图像中对应的第一区域的四个顶点的像素点标记为需要重新运动估计的像素点,并将下一尺度图像中对应的第一区域的其他像素点标记为不需要重新运动估计的像素点;当确定所述当前像素点对应的平坦区域中的所有像素点的规则性数值非均小于所述规则阈值时,将下一尺度图像中对应的第一区域的所有像素点均标记为需要重新运动估计的像素点;当确定当前像素点未经过平坦区域判断,且当前像素点的规则性数值大于或等于所述规则阈值时,将当前像素点标记为经过平坦区域判断,并将下一尺度图像中对应的四个像素点作为需要重新运动估计的像素点;当确定当前像素点经过平坦区域判断时,并获取当前尺度图像中的下一像素点,直至当前尺度图像中的所有像素点遍历完成。
25.根据权利要求24所述的真实运动估计装置,其特征在于,所述估计单元,适于采用如下的公式计算当前像素点的规则性数值:
R=(maxj∈N(i)||MVi-MVj||j);
其中,i表示当前像素的索引,j表示当前像素的领域中像素的索引,MVi表示当前像素的运动矢量,MVj表示领域像素的运动矢量。
26.根据权利要求24或25所述的真实运动估计装置,其特征在于,当前一尺度图像对应的平坦区域参数为平坦区域宽度D,且当前像素点的位置为(x,y),所述当前像素点对应的平坦区域为以当前像素点的位置作为左上顶点,且宽度为平坦区域宽度D的矩形区域;所述第一区域为以下一尺度图像中的像素点(2x,2y)作为左上角的顶点,且,且宽度为平坦区域宽度D的2倍的矩形区域;所述下一尺度图像中对应的四个像素点分别为(2x,2y)、(2x+1,2y)、(2x,2y+1)、(2x+1,2y+1)。
27.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述计算机指令运行时执行权利要求1至13任一项所述的真实运动估计方法的步骤。
28.一种终端,其特征在于,包括存储器和处理器,所述存储器上储存有能够在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行权利要求1至13任一项所述的真实运动估计方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710315971.9A CN108810317B (zh) | 2017-05-05 | 2017-05-05 | 真实运动估计方法及装置、计算机可读存储介质、终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710315971.9A CN108810317B (zh) | 2017-05-05 | 2017-05-05 | 真实运动估计方法及装置、计算机可读存储介质、终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108810317A true CN108810317A (zh) | 2018-11-13 |
CN108810317B CN108810317B (zh) | 2021-03-09 |
Family
ID=64094196
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710315971.9A Active CN108810317B (zh) | 2017-05-05 | 2017-05-05 | 真实运动估计方法及装置、计算机可读存储介质、终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108810317B (zh) |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09130805A (ja) * | 1995-10-27 | 1997-05-16 | Graphics Commun Lab:Kk | 動きベクトル検出方法及びその装置 |
KR0132037B1 (ko) * | 1993-06-30 | 1998-04-24 | 김영욱 | 평균 피라미드를 이용한 계층적 고속 이동 벡터 추정장치 |
US20050162565A1 (en) * | 2003-12-29 | 2005-07-28 | Arcsoft, Inc. | Slow motion processing of digital video data |
CN1665300A (zh) * | 2005-04-07 | 2005-09-07 | 西安交通大学 | 高性能空域可伸缩的运动估计与运动矢量编码实现方法 |
CN102088542A (zh) * | 2009-12-07 | 2011-06-08 | 矽统科技股份有限公司 | 层级式运动估算方法 |
CN103065326A (zh) * | 2012-12-26 | 2013-04-24 | 西安理工大学 | 基于时-空多尺度运动注意力分析的目标检测方法 |
CN103139469A (zh) * | 2011-12-01 | 2013-06-05 | 索尼公司 | 利用多分辨率过程生成鲁棒深度图的***和方法 |
CN104159114A (zh) * | 2013-05-13 | 2014-11-19 | 哈尔滨点石仿真科技有限公司 | 一种计算图像帧间大运动速度的光流方法 |
CN104202603A (zh) * | 2014-09-23 | 2014-12-10 | 浙江工商大学 | 一种应用于视频帧速率上转换的运动向量场生成方法 |
CN104331151A (zh) * | 2014-10-11 | 2015-02-04 | 中国传媒大学 | 基于光流法的手势运动方向识别方法 |
CN105100618A (zh) * | 2015-07-30 | 2015-11-25 | 中国科学院光电技术研究所 | 一种能够准确检测出视频序列中复杂抖动的稳像方法 |
CN105809712A (zh) * | 2016-03-02 | 2016-07-27 | 西安电子科技大学 | 一种高效大位移光流估计方法 |
CN105939475A (zh) * | 2016-06-06 | 2016-09-14 | 中国矿业大学 | 一种高质量边信息生成方法 |
CN106534858A (zh) * | 2015-09-10 | 2017-03-22 | 展讯通信(上海)有限公司 | 真实运动估计方法及装置 |
-
2017
- 2017-05-05 CN CN201710315971.9A patent/CN108810317B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR0132037B1 (ko) * | 1993-06-30 | 1998-04-24 | 김영욱 | 평균 피라미드를 이용한 계층적 고속 이동 벡터 추정장치 |
JPH09130805A (ja) * | 1995-10-27 | 1997-05-16 | Graphics Commun Lab:Kk | 動きベクトル検出方法及びその装置 |
US20050162565A1 (en) * | 2003-12-29 | 2005-07-28 | Arcsoft, Inc. | Slow motion processing of digital video data |
CN1665300A (zh) * | 2005-04-07 | 2005-09-07 | 西安交通大学 | 高性能空域可伸缩的运动估计与运动矢量编码实现方法 |
CN102088542A (zh) * | 2009-12-07 | 2011-06-08 | 矽统科技股份有限公司 | 层级式运动估算方法 |
CN103139469A (zh) * | 2011-12-01 | 2013-06-05 | 索尼公司 | 利用多分辨率过程生成鲁棒深度图的***和方法 |
CN103065326A (zh) * | 2012-12-26 | 2013-04-24 | 西安理工大学 | 基于时-空多尺度运动注意力分析的目标检测方法 |
CN104159114A (zh) * | 2013-05-13 | 2014-11-19 | 哈尔滨点石仿真科技有限公司 | 一种计算图像帧间大运动速度的光流方法 |
CN104202603A (zh) * | 2014-09-23 | 2014-12-10 | 浙江工商大学 | 一种应用于视频帧速率上转换的运动向量场生成方法 |
CN104331151A (zh) * | 2014-10-11 | 2015-02-04 | 中国传媒大学 | 基于光流法的手势运动方向识别方法 |
CN105100618A (zh) * | 2015-07-30 | 2015-11-25 | 中国科学院光电技术研究所 | 一种能够准确检测出视频序列中复杂抖动的稳像方法 |
CN106534858A (zh) * | 2015-09-10 | 2017-03-22 | 展讯通信(上海)有限公司 | 真实运动估计方法及装置 |
CN105809712A (zh) * | 2016-03-02 | 2016-07-27 | 西安电子科技大学 | 一种高效大位移光流估计方法 |
CN105939475A (zh) * | 2016-06-06 | 2016-09-14 | 中国矿业大学 | 一种高质量边信息生成方法 |
Non-Patent Citations (2)
Title |
---|
ARSHAD AHMED ET AL.: "CONTENT ADAPTIVE MOTION ESTIMATION FOR MOBILE VIDEO ENCODERS", 《THE 2001 IEEE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS》 * |
冷寒冰 等: "基于多尺度时域矩匹配的自适应非均匀性校正算法", 《红外与毫米波学报》 * |
Also Published As
Publication number | Publication date |
---|---|
CN108810317B (zh) | 2021-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100499738C (zh) | 考虑水平和垂直图形的全局运动补偿的顺序扫描方法 | |
CN101388977B (zh) | 图像处理设备和图像处理方法 | |
EP1978737A2 (en) | Frame interpolation apparatus and method | |
CN102136144B (zh) | 图像配准可靠性模型和超分辨率图像的重构方法 | |
US20150154450A1 (en) | Optical Flow Tracking Method and Apparatus | |
CN106204447A (zh) | 基于总变差分和卷积神经网络的超分辨率重建方法 | |
KR20140135968A (ko) | 초해상도화를 수행하는 방법 및 장치 | |
US9514569B2 (en) | Method and apparatus for converting two-dimensional image into three-dimensional image | |
CN105100807A (zh) | 一种基于运动矢量后处理的帧率提升方法 | |
JPH0799660A (ja) | 動き補償予測装置 | |
JP2007181674A (ja) | ブロック整合及び動き補償補間を利用した映像形成方法 | |
US20080069221A1 (en) | Apparatus, method, and computer program product for detecting motion vector and for creating interpolation frame | |
JPH08205194A (ja) | 動き補償フレーム間予測装置 | |
CN106534858B (zh) | 真实运动估计方法及装置 | |
CN109963048A (zh) | 降噪方法、降噪装置及降噪电路*** | |
CN106791768A (zh) | 一种基于图割优化的深度图帧率提升方法 | |
CN111383257B (zh) | 一种车厢装卸率确定方法和装置 | |
CN104980726B (zh) | 一种联合运动向量的双目视频立体匹配方法 | |
JP5492223B2 (ja) | 動きベクトル検出装置及び方法 | |
JP3801870B2 (ja) | 多変量空間処理装置 | |
JP2010055252A (ja) | 動きベクトル検出装置および画像処理装置 | |
CN103196460B (zh) | 一种估计步长的方法和装置 | |
CN108810317A (zh) | 真实运动估计方法及装置、计算机可读存储介质、终端 | |
CN103618904B (zh) | 基于像素的运动估计方法及装置 | |
Sim et al. | Robust reweighted MAP motion estimation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |