CN116320443A - 视频图像处理方法、装置、计算机设备和存储介质 - Google Patents

视频图像处理方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN116320443A
CN116320443A CN202310216950.7A CN202310216950A CN116320443A CN 116320443 A CN116320443 A CN 116320443A CN 202310216950 A CN202310216950 A CN 202310216950A CN 116320443 A CN116320443 A CN 116320443A
Authority
CN
China
Prior art keywords
motion estimation
target
pixel
sub
pixel motion
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.)
Pending
Application number
CN202310216950.7A
Other languages
English (en)
Inventor
焦华龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202310216950.7A priority Critical patent/CN116320443A/zh
Publication of CN116320443A publication Critical patent/CN116320443A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请涉及一种视频图像处理方法、装置、计算机设备、存储介质和计算机程序产品。该方法针对不同编码速度要求,确定了对应的分像素运动估计的目标精度,对于当前像素块,先进行整像素运动估计,在进行分像素运动估计时,按分像素运动估计的精度从低至高的顺序进行分像素运动估计,每次分像素运动估计以上一次像素运动估计确定的目标最优位置为中心进行,得到当前精度的分像素运动估计的目标最优位置,直到当前分像素运动估计的精度达到目标精度时停止分像素运动估计。该方法能够达到编码速度匹配的精度的同时提升编码效率,从而能够灵活根据不同编码速度进行不同精度的分像素运动估计。

Description

视频图像处理方法、装置、计算机设备和存储介质
技术领域
本申请涉及云技术和图像处理领域,特别是涉及一种视频图像处理方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
随着互联网技术的快速发展,视频应用的需求也日益增加。视频应用过程中,需要面临视频压缩的问题。目标视频压缩编码的方式有很多,包括HEVC、VVC等。在视频压缩编码中,分数像素的运动估计常常是被用来在整数像素运动估计之后,来更精确的得到匹配像素匹配块的位置;除此之外也常被用于视频编码前处理阶段的时域滤波中,来寻找最匹配的块来有效去除画面中的噪点,在节约压缩需要的码字的同时,更好的用于其他视频帧的参考,提升编码器的压缩效率。
然而现在的分像素运动估计存在效率低的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提升效率的视频图像处理方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种视频图像处理方法。所述方法包括:
获取待编码视频图像中当前图像帧的当前像素块;
对所述当前像素块进行整像素运动估计,确定所述整像素运动估计的所述当前像素块的目标最优位置;
获取视频应用的目标编码速度,根据所述目标编码速度确定对应的分像素运动估计的目标精度;
按分像素运动估计的精度从低至高的顺序,以上一次像素运动估计确定的所述目标最优位置为中心进行分像素运动估计,得到当前精度的分像素运动估计的目标最优位置,直到当前分像素运动估计的精度达到所述目标精度时停止分像素运动估计;
以所述目标精度的分像素运动估计出的所述目标最优位置作为所述当前像素块的运动估计结果。
第二方面,本申请还提供了一种视频图像处理装置。所述装置包括:
像素块获取模块,用于获取待编码视频图像中当前图像帧的当前像素块;
整像素运动估计模块,用于对所述当前像素块进行整像素运动估计,确定所述整像素运动估计的所述当前像素块的目标最优位置;
速度匹配模块,用于获取视频应用的目标编码速度,根据所述目标编码速度确定对应的分像素运动估计的目标精度;
分像素运动估计模块,用于按分像素运动估计的精度从低至高的顺序,以上一次像素运动估计确定的所述目标最优位置为中心进行分像素运动估计,得到当前精度的分像素运动估计的目标最优位置,直到当前分像素运动估计的精度达到所述目标精度时停止分像素运动估计,并以所述目标精度的分像素运动估计出的所述目标最优位置作为所述当前像素块的运动估计结果。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取待编码视频图像中当前图像帧的当前像素块;
对所述当前像素块进行整像素运动估计,确定所述整像素运动估计的所述当前像素块的目标最优位置;
获取视频应用的目标编码速度,根据所述目标编码速度确定对应的分像素运动估计的目标精度;
按分像素运动估计的精度从低至高的顺序,以上一次像素运动估计确定的所述目标最优位置为中心进行分像素运动估计,得到当前精度的分像素运动估计的目标最优位置,直到当前分像素运动估计的精度达到所述目标精度时停止分像素运动估计;
以所述目标精度的分像素运动估计出的所述目标最优位置作为所述当前像素块的运动估计结果。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取待编码视频图像中当前图像帧的当前像素块;
对所述当前像素块进行整像素运动估计,确定所述整像素运动估计的所述当前像素块的目标最优位置;
获取视频应用的目标编码速度,根据所述目标编码速度确定对应的分像素运动估计的目标精度;
按分像素运动估计的精度从低至高的顺序,以上一次像素运动估计确定的所述目标最优位置为中心进行分像素运动估计,得到当前精度的分像素运动估计的目标最优位置,直到当前分像素运动估计的精度达到所述目标精度时停止分像素运动估计;
以所述目标精度的分像素运动估计出的所述目标最优位置作为所述当前像素块的运动估计结果。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取待编码视频图像中当前图像帧的当前像素块;
对所述当前像素块进行整像素运动估计,确定所述整像素运动估计的所述当前像素块的目标最优位置;
获取视频应用的目标编码速度,根据所述目标编码速度确定对应的分像素运动估计的目标精度;
按分像素运动估计的精度从低至高的顺序,以上一次像素运动估计确定的所述目标最优位置为中心进行分像素运动估计,得到当前精度的分像素运动估计的目标最优位置,直到当前分像素运动估计的精度达到所述目标精度时停止分像素运动估计;
以所述目标精度的分像素运动估计出的所述目标最优位置作为所述当前像素块的运动估计结果。
上述视频图像处理方法、装置、计算机设备、存储介质和计算机程序产品,针对不同编码速度要求,确定了对应的分像素运动估计的目标精度,对于当前像素块,先进行整像素运动估计,在进行分像素运动估计时,按分像素运动估计的精度从低至高的顺序进行分像素运动估计,每次分像素运动估计以上一次像素运动估计确定的目标最优位置为中心进行,得到当前精度的分像素运动估计的目标最优位置,直到当前分像素运动估计的精度达到目标精度时停止分像素运动估计。通过在达到编码速度对应的目标分像素运动估计的精度时跳过更高精度的分像素运动估计,能够达到编码速度匹配的精度的同时提升编码效率,从而能够灵活根据不同编码速度进行不同精度的分像素运动估计。该方法可以根据不同编码速度要求灵活进行调整,满足不同编码速度、不同压缩效率的业务应用场景。
附图说明
图1为一个实施例中视频图像处理方法的应用环境图;
图2为一个实施例中视频图像处理方法的流程示意图;
图3为一个实施例中以上一次像素运动估计确定的目标最优位置为中心进行分像素运动估计,得到当前精度的分像素运动估计的目标最优位置的步骤的流程示意图;
图4为另一个实施例中目标搜索点集的示意图;
图5为另一个实施例中视频图像处理方法的流程示意图;
图6为一个实施例中视频图像处理装置的结构框图;
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的视频图像处理方法,可以应用于视频应用的业务场景,包括视频直播、视频点播和云游戏等业务场景。云游戏(Cloud gaming)又可称为游戏点播(gaming on demand),是一种以云计算技术为基础的在线游戏技术。云游戏技术使图形处理与数据运算能力相对有限的轻端设备(thin client)能运行高品质游戏。在云游戏场景下,游戏并不在玩家游戏终端,而是在云端服务器中运行,并由云端服务器将游戏场景渲染为视频音频流,通过网络传输给玩家游戏终端。玩家游戏终端无需拥有强大的图形运算与数据处理能力,仅需拥有基本的流媒体播放能力与获取玩家输入指令并发送给云端服务器的能力即可。
本申请的视频图像处理方法,可应用于视频编码处理,如VVC/H.266编码器。目前,通用的视频编解码标准基于都采用基于块的混合编码框架。视频图像中的每一帧被分割成相同大小(比如128×128,64×64等)的正方形的最大编码单元(Largest Coding Unit,LCU),每个最大编码单元还可以根据规则划分成矩形的编码单元(Coding Unit,CU);而且编码单元可能还会划分成更小的预测单元(Prediction Unit,PU)。具体地,混合编码框架可以包括有预测、变换(Transform)、量化(Quantization)、熵编码(EntropyCoding)、环路滤波(In Loop Filter)等模块;其中,预测模块可以包括帧内预测(intraPrediction)和帧间预测(interPrediction),帧间预测可以包括运动估计(motion estimation)和运动补偿(motion compensation)。由于视频图像的一个帧内相邻像素之间存在很强的相关性,在视频编解码技术中使用帧内预测方式能够消除相邻像素之间的空间冗余;但是由于视频图像中的相邻帧之间也存在着很强的相似性,在视频编解码技术中使用帧间预测方式消除相邻帧之间的时间冗余,从而能够提高编码效率。
本申请实施例提供的视频图像处理方法,可以应用于如图1所示的视频直播的应用环境中。其中,直播终端102以及观看终端106通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他服务器上。其中,直播终端102采集视频数据,并对视频数据进行编码处理,得到码流,将码流通服务器传送至各观看终端。直播终端的编码处理过程,简单来说包括源视频像素数据分块→预测残差→dct/整数变换→量化→熵编码。其中,预测残差通过运动估计和运动补偿来实现。
运动估计简单说就是在参考帧中找到当前块的最优匹配块,用运动向量(MV)表示匹配块与当前块的位置关系。运动补偿简单说就是对匹配块与当前块求差值得到残差用于传输。
其中,直播终端获取待编码视频图像中当前图像帧的当前像素块;对当前像素块进行整像素运动估计,确定整像素运动估计的当前像素块的目标最优位置;获取视频应用的目标编码速度,根据目标编码速度确定对应的分像素运动估计的目标精度;按分像素运动估计的精度从低至高的顺序,以上一次像素运动估计确定的目标最优位置为中心进行分像素运动估计,得到当前精度的分像素运动估计的目标最优位置,直到当前分像素运动估计的精度达到目标精度时停止分像素运动估计;以目标精度的分像素运动估计出的目标最优位置作为当前像素块的运动估计结果。其中,直播终端102可以但不限于是各种台式计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种视频图像处理方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
步骤202,获取待编码视频图像中当前图像帧的当前像素块。
其中,视频序列图像在时间上存在很强的相关性,即相邻帧的图像差别不大。帧间预测即消除视频序列在时间上的冗余,从而达到压缩视频的作用。运动补偿(MotionCompensation,MC)是一种描述相邻帧差别的方法。通过运动补偿,编码器可以通过编码两帧之间的差别,消除帧间的冗余信息。运动估计ME(Motion Estimation)是指搜索出每个块在邻近帧中最匹配块位置的方法。两者之间空间位置的相对偏移量被称为运动矢量(Motion Vector,MV)。
其中,运动估计的基本思想是将图像序列的每一视频帧分成许多互不重叠的预测单元,该预测单元为像素块,并认为预测单元内所有像素的位移量都相同,然后对每个预测单元到视频参考帧某一给定特定搜索范围内根据一定的匹配准则找出与当前像素块最相似的块,简称匹配块(即参考预测单元),匹配块与当前像素块的相对位置即为运动矢量,视频压缩的时候,只需要保存运动矢量和残差数据就可以完全恢复出当前块,通过运动估计可以去除帧间冗余度,使得视频传输的比特数大为减少。
本实施例中,将待编码视频帧的当前图像帧分为多个像素块,以便对每个像素块进行运动估计。
步骤204,对当前像素块进行整像素运动估计,确定整像素运动估计的当前像素块的目标最优位置。
其中,运动估计可以包括:整像素运动估计和分像素运动估计。
具体地,利用参考帧进行像素运动估计。参考帧可以是已经编码好了的图像帧,也可以是原始图像帧。由于时间上相邻的参考帧更可能存在相似的图像块,因此,这些相邻帧一般是参考帧的主要来源。整像素运动估计为视频帧的大小为原始大小的状态下的像素运动估计,在选定参考帧之后,整像素运动估计中的匹配块移动的步长为一个像素,对当前像素块到参考帧中一定的搜索窗内,根据一定的匹配准则,找出与当前像素块最相似的块,即最佳匹配块。将最佳匹配块的中心作为整像素运动估计的当前像素块的目标最优位置。其中,最佳匹配块与当前像素块的相对位移即运动矢量。
步骤206,获取视频应用的目标编码速度,根据目标编码速度确定对应的分像素运动估计的目标精度。
分数像素运动估计可以包括1/2分数像素运动估计,1/4分数像素运动估计,1/8分数像素运动估计和1/16分数像素运动估计,甚至还可以是更高精度(分数值最小)的分像素运动估计。数值1/2,1/4,1/8和1/16表示分像素数运动估计的精度,数值越大,精度越低。其中,1/2分数像素运动估计为将视频参考帧放大两倍,同时对视频参考帧进行插值处理,因而该1/2像素运动估计的1/2参考预测单元(匹配块)移动步长为半个像素,可以实现比整像素运动估计更精确的搜索位置查找。1/4像素运动估计为将视频参考帧放大四倍,同时对视频参考帧进行插值处理,因而该1/4像素运动估计的1/4参考预测单元移动步长为四分之一个像素,可以实现比1/2像素运动估计还要更精确的搜索位置查找。1/8像素运动估计为将视频参考帧放大八倍,同时对视频参考帧进行插值处理,因而该1/8像素运动估计的1/8参考预测单元移动步长为八分之一个像素,可以实现比1/4像素运动估计还要更精确的搜索位置查找。1/16像素运动估计为将视频参考帧放大16倍,同时对视频参考帧进行插值处理,因而该1/16像素运动估计的1/16参考预测单元移动步长为十六分之一个像素,可以实现比1/8像素运动估计还要更精确的搜索位置查找。
其中,分像素运动估计的数值越小,表明精度越高,得到的压缩效果越好,相应的编码速度也越慢。
考虑到在视频应用的不同场景,往往有不同的编码速度要求。例如,在实时性要求高的直播场景,往往要求较高的编码速度,以满足实时性要求。而在一些离线转码场景,可以采用较低的编码速度。
基于分像素运动估计的精度与编码速度的关系,可以预设不同视频应用场景的目标编码速度,并设置目标编码速度与分像素运动估计的精度的对应关系。比如,目标编码速度要求快,则设置相应的分像素运动估计的精度低。又如,目标编码速度要求慢,则设置相应的分像素运动估计的精度高。示例性的,视频直播的应用场景,目标编码速度可以为20-30fps,相应的分像素运动估计的目标精度可以为1/2个像素,或1/4个像素。对于视频点播的应用场景,目标编码速度可以为1-5fps,相应的分像素运动估计的目标精度可以为1/8个像素,或1/16个像素。
应当注意的是,本实施例中的步骤编号并不是用于限定步骤的先后关系,比如,获取视频应用的目标编码速度,根据所述目标编码速度确定对应的分像素运动估计的目标精度的步骤,可以是在获取待编码视频图像中当前图像帧的当前像素块的步骤之前或是之后。
步骤208,按分像素运动估计的精度从低至高的顺序,以上一次像素运动估计确定的目标最优位置为中心进行分像素运动估计,得到当前精度的分像素运动估计的目标最优位置,直到当前分像素运动估计的精度达到目标精度时停止分像素运动估计。
其中,分像素运动估计的精度从低至高的顺序具体为分像数数值从大至小的顺序,比如,按1/2,1/4,1/8至1/16的顺序进行分像素运动估计。在每一次分像素运动估计时以上一次像素运动估计的目标最优目标位置进行当前精度的分像素运动估计,得到当前精度的分像素运动估计的目标最优位置。具体地,获取上一次像素运动估计的目标最优目标位置为中心的一定范围内的相应分数的像素位置,并插值得到这些相应分数的像素对应的亚像素匹配块,计算范围内各像素点的编码代价,取编码代价最小的点作为当前精度的分像素运动估计的目标最优位置。以1/2分像素运动估计为例,上一次像素运动估计为整像素运动估计,对整像素运动估计的目标最优位置为中心的一定范围内的1/2个像素点,并插值得到各1/2个像素点对应的亚像素匹配块,计算范围内的各点(1/2像素点和1个整像素点)的编码代价,将编码代价最小的点作为1/2分像素运动估计的目标最优位置。以1/4分像素运动估计为例,上一次像素运动估计为1/2分像素运动估计,对1/2分像素运动估计的目标最优位置为中心的一定范围内的1/4个像素点,并插值得到各1/4个像素点对应的亚像素匹配块,计算范围内的各点(1/4像素点和1个对1/2)的编码代价,将编码代价最小的点作为1/4分像素运动估计的目标最优位置。1/8分像素运动估计和1/16分像素运动估计依此类推,此处不再赘述。
本实施例中,按分像素运动估计的精度从低至高的顺序进行分像素运动估计,直到当前分像素运动估计的精度达到目标精度时停止分像素运动估计。也就是说,当当前分像素运动估计的精度达到目标精度时停止分像素运动估计,停止进行更高精度的分像素运动估计。示例性的,一种视频应用的目标编码速度对应的分像素运动的目标精度为1/4像素。按分像素运动估计的精度从低至高的顺序,以整像素运动估计确定的目标最优位置为中心进行1/2分像素运动估计,得到1/2分像素运动估计的目标最优位置,再以1/2分像素运动估计确定的目标最优位置为中心进行1/4分像素运动估计,得到1/4分像素运动估计的目标最优位置。此时,达到了分像素运动估计的目标精度,停止进行更高精度的分像素运动估计。
从而本实施例中,至少进行了一次分像素运动估计,能够一定程度上保证编码的精度,同时,在当前分像素运动估计的精度达到目标精度时停止分像素运动估计,即在达到目标精度(编码速度对应的分像素精度)时跳过更高精度的分像素运动估计,能够满足编码速度的要求,提升压缩效率。该方法可以根据不同编码速度要求灵活进行调整,满足不同编码速度、不同压缩效率的业务应用场景。
步骤210,以目标精度的分像素运动估计出的目标最优位置作为当前像素块的运动估计结果。
具体地,可以根据目标精度的分像素运动估计出的目标最优位置确定最佳匹配块,进而根据最佳匹配块与当前像素块的差值计算预测残差,以便进行运动补偿。运动补偿(Motion Compensation,MC)是一种描述相邻帧差别的方法。通过运动补偿,编码器可以通过编码两帧之间的差别,消除帧间的冗余信息。因此,运动补偿能够对匹配块与当前像素块求差值得到残差用于传输。
以H.265/HEVC编码为例,在H.265/HEVC中,通过运动估计和选定一个已经编码的图像作为参考图像,用选定的参考图像作为当前图像的编码块的最佳匹配块,标定匹配块的偏移,将此偏移量称为运动矢量。基于运动估计的结果,根据最佳匹配块与匹配块的差值计算预测残差,以便进行运动补偿。
上述的视频图像处理方法,针对不同编码速度要求,确定了对应的分像素运动估计的目标精度,对于当前像素块,先进行整像素运动估计,在进行分像素运动估计时,按分像素运动估计的精度从低至高的顺序进行分像素运动估计,每次分像素运动估计以上一次像素运动估计确定的目标最优位置为中心进行,得到当前精度的分像素运动估计的目标最优位置,直到当前分像素运动估计的精度达到目标精度时停止分像素运动估计。通过在达到编码速度对应的目标分像素运动估计的精度时跳过更高精度的分像素运动估计,能够达到编码速度匹配的精度的同时提升编码效率,从而能够灵活根据不同编码速度进行不同精度的分像素运动估计。该方法可以根据不同编码速度要求灵活进行调整,满足不同编码速度、不同压缩效率的业务应用场景。
通过对视频图像进行分析,可以发现,相邻视频帧的图像变化是慢慢变化的过程,且图像变化具有一定的方向性趋势,比如,相邻两帧中车辆的位置根据镜头移动方向发生了变化。考虑到变化的方向性以及变化速度,可以在分像素搜点匹配过程中,采用跳过策略,跳过部分点,提高编码速度。
具体地,如图3所示,以上一次像素运动估计确定的目标最优位置为中心进行分像素运动估计,得到当前精度的分像素运动估计的目标最优位置,包括:
步骤302,以上一次像素运动估计确定的目标最优位置为中心,将预设数量的当前精度的分像素点作为目标搜索点集。
具体地,将上一次像素运动估计确定的目标最优位置为中心的预设数量的当前精度的分像素点作为目标搜索点集。具体的预设数量可以根据匹配块的搜索范围来确定,比如匹配块的搜索范围为3×3,则以目标最优位置为中心的8邻域的当前精度分像素点作为目标搜索点集。如图4所示,以目标最优位置C点为中心,以C点周围的8邻域的当前精度分像素点作为目标搜索点。以当前精度为1/2为例,以目标最优位置C点为中心,以C点周围的8邻域的1/2像素点作为目标搜索点。以当前精度为1/4为例,以目标最优位置C点为中心,以C点周围的8邻域的1/4像素点作为目标搜索点。
步骤304,按像素排布的预设搜索方向对目标搜索点集中的第一部分目标搜索点进行搜索,并计算第一部分目标搜索点的匹配代价。
通常像素排布具有两个维度,分别为横向和纵向,像素排布的预设搜索方向则可以包括横向搜索和纵向搜索。横向搜索是按像素排布的横向依次搜索,比如先搜索第一行像素,再搜索第二行像素,对各行像素按序搜索,其中,按序搜索可以按行像素从上至下的顺序,也可以按行像素从下至上的顺序。纵向搜索是按像素排布的纵向搜索,比如先搜索第一列像素,再搜索第二列像素,对各列像素按序搜索。其中,按序搜索可以按列像素从左至右的顺序,也可以按列像素从右至左的顺序。
通常,最佳匹配块的搜索过程包括:对参考帧中的像素点I所对应的匹配块与当前像素块所得到的匹配代价值,其中代价值最小的点所对应的匹配块即为最佳匹配块。在按像素排布的预设搜索方向对目标搜索点集中的第一部分目标搜索点进行搜索时,计算各目标搜索点的匹配代价。以横向搜索为例,按像素排布的横向对目标搜索点集中的第一部分目标搜索点进行搜索,计算各目标搜索点的代价。
其中,第一部分目标搜索点是目标搜索点集中的部分搜索点,而不是全量搜索点。例如,可以按像素排布的预设搜索方向确定排序在前的部分搜索点作为第一部分目标搜索点。例如,在从左至右的纵向搜索时,将第一列和第二列的目标搜索点作为第一部分目标搜索点。例如,在从上至下的横向搜索时,将第一行和第二行的目标搜索点作为第一部分目标搜索点,也就是说,搜索时,不是在全局目标像素点中搜索,而是先在部分目标像素点中搜索。
步骤306,在匹配代价按像素排布的预设搜索方向呈上升趋势时,停止对目标搜索点集中的剩余目标搜索点进行估计,将第一部分目标搜索点和上一次像素运动估计确定的目标最优位置中的匹配代价最小的点,作为当前精度的分像素运动估计的目标最优位置。
其中,匹配代价按像素排布的搜索方向的变化趋势可以根据搜索方向上匹配代价均值的变化趋势或是最小值的变化趋势来确定。比如,随着像素排布的搜索方向的推进,将各行像素/列像素的匹配代价的均值变化趋势作为匹配代价按搜索方向的变化趋势,将各行像素/列像素的匹配代价的最小值的变化趋势作为匹配代价按搜索方向的变化趋势。
在匹配代价按搜索方向呈上升趋势时,可以认为沿该像素排布的搜索方向,图像中的物体具有向搜索方向的反方向变化的趋势,若沿搜索方向继续搜索,剩余目标搜索点的匹配代价会继续上升,那么对于剩余目标搜索点搜索的价值不大,则可以跳过剩余的目标搜索点,不再对剩余目标搜索点进行搜索,从而提高分像素运动估计效率,进而提高整体编码效率。
在只对第一部分目标搜索点进行估计的情况下,将第一部分目标搜索点和上一次像素运动估计确定的目标最优位置中的匹配代价最小的点,作为当前精度的分像素运动估计的目标最优位置。
本实施例对于目标搜索点集,先按像素排布的预设搜索方向对第一部分目标搜索点进行搜索,并计算第一部分目标搜索点的匹配代价,在根据匹配代价确定按搜索方向呈上升趋势时,可以说明图像中物体的变化趋势与搜索方向相反,剩余目标搜索点的匹配代价会继续上升,则可以跳过剩余的目标搜索点集,不再对剩余目标搜索点进行搜索,一方面在确定匹配代价按搜索方向呈上升趋势时,通过跳过剩余目标搜索点的策略,提高分像素运动估计效率,进而提高整体编码效率。另一方面,剩余目标搜索点跳过的判断原则是根据目标搜索点的匹配代价按搜索方向的变化趋势来判定的,以相邻两帧图像变化趋势为依据,因此,此时剩余目标搜索点跳过并不影响运动估计精度。
请继续参阅图3,该方法还包括:
步骤308,在匹配代价按像素排布的预设搜索方向呈非上升趋势时,对目标搜索点集中的剩余目标搜索点进行搜索,计算剩余目标搜索点的匹配代价。
具体地,非上升趋势包括下降趋势,波动趋势等。在匹配代价按像素排布的预设搜索方向呈下降趋势,表示剩余目标搜索点的匹配代价可能更小。在匹配代价按像素排布的预设搜索方向呈波动趋势时,表示剩余目标搜索点的匹配代价具有波动性。在这两种情况时,无法准确预估剩余目标搜索点的匹配代价的变化,此时,则继续对剩余目标搜索点进行搜索,得到剩余目标搜索点的匹配代价。
在匹配代价按像素排布的预设搜索方向呈下降趋势,表示剩余目标搜索点的匹配代价可能更小,最佳匹配点可能在剩余目标搜索点中,若在匹配代价按像素排布的预设搜索方向呈波动趋势,则无法判断最佳匹配点的位置,此时,增加对剩余目标搜索点估计,能够达到最小误判情况下的加速效果。
步骤310,将目标搜索点集点和上一次像素运动估计确定的目标最优位置中的匹配代价最小的点,作为当前精度的分像素运动估计的目标最优位置。
在全量目标搜索点集进行估计的情况下,将目标搜索点集点和上一次像素运动估计确定的目标最优位置中的匹配代价最小的点,作为当前精度的分像素运动估计的目标最优位置。
本实施例中,通过在匹配代价按像素排布的预设搜索方向呈非上升趋势时,对目标搜索点集中的剩余目标搜索点进行估计,能够提升分像素运动估计的精度。
在一个实施例中,确定第一部分目标搜索点的方式,包括:将目标搜索点集按像素排布方向进行分组,得到N组搜索点;将N组搜索点中在预设搜索方向的至少前两组搜索点作为第一部分目标搜索点。
其中,可以以像素排布的横向对目标搜索点集进行排序,得到每一行像素对应的N组搜索点,即一行像素点为一组搜索点。以图4为例,像素点(4,0,5)作为一组搜索点,像素点(1,3)作为一组搜索点,像素点(6,2,7)作为一组搜索点。还可以以像素排布的纵向对目标搜索点集进行排序,得到每一列像素对应的N组搜索点,即一列像素点为一组搜索点。以图4为例,像素点(4,1,6)作为一组搜索点,像素点(0,2)作为一组搜索点,像素点(5,3,7)作为一组搜索点。
由于第一部分目标搜索点是在先进行估计的目标搜索点,因此,可以将N组搜索点中在预设搜索方向的至少前两组搜索点作为第一部分目标搜索点。由于第一部分目标搜索点是预设搜索方向的至少前两组搜索点,则可以确保第一目标搜索点是目标搜索点集中先被搜索的点。
本实施例中,通过按像素排布方向的方式对目标搜索点集进行分组,能够根据搜索方向确定第一部分目标搜索点。由于搜索方向与像素排布方向一致,因此,能够精准的获取第一部分目标搜索点。
此时,在第一部分目标搜索点中匹配代价最小的搜索点在搜索方向上的第一组时,确定匹配代价按像素排布的预设搜索方向呈上升趋势。
以图4为例,以一行像素点为一组搜索点,包括三组搜索点,分别为像素点组(4,0,5),像素点组(1,3)和像素点组(6,2,7)。若预设搜索方向为从上至下,则像素点组(4,0,5)和像素点组(1,3)中的目标像素点作为第一部分目标搜索点。若预设搜索方向为从下至上,则像素点组(6,2,7)和像素点组(1,3)中的目标像素点作为第一部分目标搜索点。
以图4为例,以一列像素点为一组搜索点,包括三组搜索点,分别为像素点组(4,1,6),像素点组(0,2)和像素点组(5,3,7)。若预设搜索方向为从左至右,则像素点组(4,1,6)和像素点组(0,2)中的目标像素点作为第一部分目标搜索点。若预设搜索方向为从下至上,则像素点组(5,3,7)和像素点组(0,2)中的目标像素点作为第一部分目标搜索点。
由于第一部分目标搜索点是N组搜索点中在预设搜索方向的至少前两组搜索点,若第一部分目标搜索点中匹配代价最小的搜索点在搜索方向上的第一组,即第一部分目标搜索点中匹配代价最小的搜索点在搜索方向上的第一行/列,其它组别对应行/列上的搜索点的匹配代价相对较大,可以确定匹配代价按像素排布的预设搜索方向呈上升趋势。
其中,为方便比对,可以将每个组别的目标搜索点分别放在一个数组中,然后分别计算至少前两个像素组对应的匹配代价,如果至少前两个像素组对应的匹配代价中最小值在第一个数组中,则说明匹配代价按像素排布的预设搜索方向呈上升趋势。此时,可以跳过对其它像素组的估计。例如,以一列像素点为一组搜索点,包括三组搜索点,分别为像素点组(4,1,6),像素点组(0,2)和像素点组(5,3,7)。若预设搜索方向为从左至右,则像素点组(4,1,6)和像素点组(0,2)中的目标像素点作为第一部分目标搜索点。当第一部分目标搜索点中匹配代价最小的搜索点在第一组(4,1,6)时,跳过对第三组像素点组(5,3,7)进行搜索。
而在第一部分目标搜索点中匹配代价最小的搜索点在搜索方向上的非第一组时,确定匹配代价按像素排布的预设搜索方向呈非上升趋势。例如,以一列像素点为一组搜索点,包括三组搜索点,分别为像素点组(4,1,6),像素点组(0,2)和像素点组(5,3,7)。若预设搜索方向为从左至右,则像素点组(4,1,6)和像素点组(0,2)中的目标像素点作为第一部分目标搜索点。当第一部分目标搜索点中匹配代价最小的搜索点在第二组(0,2)时,继续对第三组像素点组(5,3,7)进行搜索。
本实施例中,通过第一部分目标搜索点中匹配代价最小的搜索点在目标搜索点组上的位置,快速判断匹配代价按像素排布的预设搜索方向的变化趋势,跳过部分搜索点。
在另一个实施例中,视频图像处理方法还包括:在整像素运动估计的目标最优位置所在的最佳匹配块与当像素像块的匹配误差小于阈值时,将整像素运动估计的目标最优位置作为当前像素块的运动估计结果。
也就是说,在整像素运动估计的目标最优位置满足一定条件时,不进行分像素运动估计,而是将整像素运动估计的目标最优位置作为当前像素块的运动估计结果。其中,该条件为目标最优位置所在的最佳匹配块与当像素像块的匹配误差小于阈值。
其中,在运动估计的过程中,常用最小均方误差(Mean Square Error,MSE),最小平均绝对误差(Mean Absolute Difference,MAD),绝对误差和(Sum of AbsoluteDifference,SAD)等参量作为准则来评估两个块之间的相似度。而最小SAD准则因为不含乘除法,利于硬件实现而应用最为广泛。本实施例中,匹配误差可以为绝对误差和,在整像素运动估计的目标最优位置所在的最佳匹配块与当像素像块的绝对误差和小于阈值时,表示二者的匹配度高,进一步提升匹配精度的收益就大幅下降了,为了这很小的精度提升花费大量计算就变得性价比很低,比如对于像素块为16x16的情况。其中,在快速档阈值可以取512,在慢速档阈值可以取256。
本实施例中,在整像素运动估计时,计算最佳匹配块与当前像素块的绝对误差和,比较绝对误差和(SAD)与设定的阈值,基于比较结果决定是否跳过分像素运动估计。具体地,在绝对误差和(SAD)小于设定的阈值跳过分像素运动估计,提升像素运动估计的灵活性和效率。
一个实施例中,以上一次像素运动估计确定的目标最优位置为中心,将该中心点8邻域的当前精度的分像素点作为目标搜索点集,目标搜索点集的组别的划分为按像素排布的横向划分为三组,搜索方向为从上至下,一种视频图像处理方法进行说明,如图5所示,包括:
步骤501,获取待编码视频图像中当前图像帧的当前像素块。
步骤502,对当前像素块进行整像素运动估计,确定整像素运动估计的当前像素块的目标最优位置。
步骤503,判断整像素运动估计的目标最优位置所在的最佳匹配块与当像素像块的匹配误差是否小于阈值。若是,则执行步骤504。若否,则执行步骤505。
步骤504,将整像素运动估计的目标最优位置作为当前像素块的运动估计结果。
也就是说,在整像素运动估计的目标最优位置所在的最佳匹配块与当像素像块的匹配误差小于阈值时,直接将整像素运动估计的目标最优位置作为当前像素块的运动估计结果,从而跳过分像素运动估计。
步骤505,获取视频应用的目标编码速度,根据目标编码速度确定对应的分像素运动估计的目标精度。
步骤506,以上一次像素运动估计确定的目标最优位置为中心,以该中心的8邻域的当前精度的分像素点作为目标搜索点集。
以当前精度为1/2像素为例,将整像素运动估计确定的目标最优位置为中心的8领域的1/2分像素点作为目标搜索点集。
步骤507,将目标搜索点集按像素行分为三组,对前两组目标搜索点进行搜索,计算前两组目标搜索点的匹配代价。
步骤508,判断前两组目标搜索点的匹配代价最小的搜索点是否在第一组。若是,则执行步骤509,若否,则执行510。
步骤509,将前两组目标搜索点和上一次像素运动估计确定的目标最优位置中的匹配代价最小的点作为当前精度的分像素运动估计的目标最优位置。在步骤509之后,执行步骤512。
步骤510,对第三组目标搜索点进行匹配,得到第三组目标搜索点的匹配代价。
步骤511,将三组目标搜索点和上一次像素运动估计确定的目标最优位置中的匹配代价最小的点,作为当前精度的分像素运动估计的目标最优位置。
在分像素估计过程中,通过前两组目标搜索点的最小匹配代价所在的位置确定匹配代价的变化趋势而判断是否需要跳过部分搜索点,提升了搜索效率。
步骤512,判断当前分像素运动估计的精度是否达到目标精度。若是,则执行步骤513,若否,则执行步骤514。
步骤513,以目标精度的分像素运动估计出的目标最优位置作为当前像素块的运动估计结果。
步骤514,更新当前的分像素运动估计的精度,并在步骤514之后,返回步骤506,以进行下一精度的分像素运动估计。
例如,当前精度为1/2分像素,目标精度为1/4分像素,当前分像素精度还未达到目标精度,则执行步骤514,将当前的分像素精度更新为1/4,并返在步骤506,以进行1/4分像素运动估计。从而实现根据编码速度的要求,调过更高精度的分像素运动估计,提升分像素运动估计的效率。
在视频编码中,分数像素的运动估计常常是被用来在整数像素运动估计之后,来更精确的得到匹配像素匹配块的位置。除此之外也常被用于视频编码前处理阶段的时域滤波中,来寻找最匹配的块来有效去除画面中的噪点,在节约压缩需要的码字的同时,更好的用于其他视频帧的参考,提升编码器的压缩效率。传统方案采用在整数像素周边固定几个点的固定精度来搜索,本申请通过引入多个部分的提前终止跳过和可配置分数像素精度相结合算法,达到在不同速度性能要求的最佳压缩率。具体如下:
1、在判断整像素运动估计的目标最优位置所在的最佳匹配块与当像素像块的匹配误差小于阈值时,将整像素运动估计的目标最优位置作为当前像素块的运动估计结果,从而跳过分像素运动估计,提升像素运动估计的灵活性和效率。
2、设置了编码速度对应的分像素运动估计的目标精度,在进行了相应的目标精度的分像素运动估计后,调过更高精度的分像素运动估计,能够达到编码速度匹配的精度的同时提升编码效率,从而能够灵活根据不同编码速度进行不同精度的分像素运动估计。
3、在进行分像素运动估的过程中,对目标搜索点进行分过,通过前两组目标搜索点的最小匹配代价所在的位置确定匹配代价的变化趋势而判断是否需要跳过部分搜索点,提升了搜索效率。
本申请的视频图像处理方法,能够适应不同场景对编码速度与压缩效率的要求,在需要不同的编码速度时使用分数像素跳过,分数像素精度灵活配置和搜索点跳过等算法,在压缩性能损失最小的情况下满足速度的要求,达到更好的节约带宽等资源的目的。该方法可应用于VVC/H.266编码器的时域滤波阶段的分数像素运动估计,相较于固定模式的算法,可以给离线点播场景带来的可观的带宽节省;而在直播互动等场景带来了数倍的速度提升,满足了实时性的要求。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的视频图像处理方法的视频图像处理装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个视频图像处理装置实施例中的具体限定可以参见上文中对于视频图像处理方法的限定,在此不再赘述。
在一个实施例中,如图6所示,提供了一种视频图像处理装置,包括:
像素块获取模块602,用于获取待编码视频图像中当前图像帧的当前像素块;
整像素运动估计模块604,用于对所述当前像素块进行整像素运动估计,确定所述整像素运动估计的所述当前像素块的目标最优位置;
速度匹配模块606,用于获取视频应用的目标编码速度,根据所述目标编码速度确定对应的分像素运动估计的目标精度;
分像素运动估计模块608,用于按分像素运动估计的精度从低至高的顺序,以上一次像素运动估计确定的所述目标最优位置为中心进行分像素运动估计,得到当前精度的分像素运动估计的目标最优位置,直到当前分像素运动估计的精度达到所述目标精度时停止分像素运动估计,并以所述目标精度的分像素运动估计出的所述目标最优位置作为所述当前像素块的运动估计结果。
上述视频图像处理装置,针对不同编码速度要求,确定了对应的分像素运动估计的目标精度,对于当前像素块,先进行整像素运动估计,在进行分像素运动估计时,按分像素运动估计的精度从低至高的顺序进行分像素运动估计,每次分像素运动估计以上一次像素运动估计确定的目标最优位置为中心进行,得到当前精度的分像素运动估计的目标最优位置,直到当前分像素运动估计的精度达到目标精度时停止分像素运动估计。通过在达到编码速度对应的目标分像素运动估计的精度时跳过更高精度的分像素运动估计,能够达到编码速度匹配的精度的同时提升编码效率,从而能够灵活根据不同编码速度进行不同精度的分像素运动估计。该方法可以根据不同编码速度要求灵活进行调整,满足不同编码速度、不同压缩效率的业务应用场景。
在其中一个实施例中,分像素运动估计模块,包括:
搜索点确定模块,用于按像素排布的预设搜索方向对所述目标搜索点集中的第一部分目标搜索点进行匹配,得到所述第一部分目标搜索点的匹配代价。
搜索模块,用于按像素排布的预设搜索方向对所述目标搜索点集中的第一部分目标搜索点进行搜索,并计算所述第一部分目标搜索点的匹配代价。
搜索输出模块,用于在所述匹配代价按所述像素排布的预设搜索方向呈上升趋势时,停止对所述目标搜索点集中的剩余目标搜索点进行搜索,将所述第一部分目标搜索点和上一次像素运动估计确定的所述目标最优位置中的匹配代价最小的点,作为当前精度的分像素运动估计的目标最优位置。
在另一个实施列中,搜索模块,还用于在所述匹配代价按所述像素排布的预设搜索方向呈非上升趋势时,对所述目标搜索点集中的剩余目标搜索点进行搜索,计算所述剩余目标搜索点的匹配代价。
搜索输出模块,还用于将所述目标搜索点集点和上一次像素运动估计确定的所述目标最优位置中的匹配代价最小的点,作为当前精度的分像素运动估计的目标最优位置。
在另一个实施例中,搜索点确定模块,还用于将所述目标搜索点集按像素排布方向进行分组,得到N组搜索点;将所述N组搜索点中在所述预设搜索方向的至少前两组搜索点作为第一部分目标搜索点。
在另一个实施例中,搜索点确定模块,还用于在所述第一部分目标搜索点中匹配代价最小的搜索点在所述搜索方向上的第一组时,确定所述匹配代价按所述像素排布的预设搜索方向呈上升趋势。
在另一个实施例中,搜索点确定模块,还用于在所述第一部分目标搜索点中匹配代价最小的搜索点在所述搜索方向上的非第一组时,确定所述匹配代价按所述像素排布的预设搜索方向呈非上升趋势。
在另一个实施例中,整像素运动估计模块,还用于在所述整像素运动估计的所述目标最优位置所在的最佳匹配块与所述当像素像块的匹配误差小于阈值时,将所述整像素运动估计的所述目标最优位置作为所述当前像素块的运动估计结果。
上述视频图像处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图7所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种视频图像处理方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各实施例中视频图像处理方法的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各实施例中视频图像处理方法的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各实施例中视频图像处理方法的步骤。需
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (10)

1.一种视频图像处理方法,其特征在于,所述方法包括:
获取待编码视频图像中当前图像帧的当前像素块;
对所述当前像素块进行整像素运动估计,确定所述整像素运动估计的所述当前像素块的目标最优位置;
获取视频应用的目标编码速度,根据所述目标编码速度确定对应的分像素运动估计的目标精度;
按分像素运动估计的精度从低至高的顺序,以上一次像素运动估计确定的所述目标最优位置为中心进行分像素运动估计,得到当前精度的分像素运动估计的目标最优位置,直到当前分像素运动估计的精度达到所述目标精度时停止分像素运动估计;
以所述目标精度的分像素运动估计出的所述目标最优位置作为所述当前像素块的运动估计结果。
2.根据权利要求1所述的方法,其特征在于,以上一次像素运动估计确定的所述目标最优位置为中心进行分像素运动估计,得到当前精度的分像素运动估计的目标最优位置,包括:
以上一次像素运动估计确定的所述目标最优位置为中心,将预设数量的当前精度的分像素点作为目标搜索点集;
按像素排布的预设搜索方向对所述目标搜索点集中的第一部分目标搜索点进行搜索,并计算所述第一部分目标搜索点的匹配代价;
在所述匹配代价按所述像素排布的预设搜索方向呈上升趋势时,停止对所述目标搜索点集中的剩余目标搜索点进行搜索,将所述第一部分目标搜索点和上一次像素运动估计确定的所述目标最优位置中的匹配代价最小的点,作为当前精度的分像素运动估计的目标最优位置。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在所述匹配代价按所述像素排布的预设搜索方向呈非上升趋势时,对所述目标搜索点集中的剩余目标搜索点进行搜索,计算所述剩余目标搜索点的匹配代价;
将所述目标搜索点集点和上一次像素运动估计确定的所述目标最优位置中的匹配代价最小的点,作为当前精度的分像素运动估计的目标最优位置。
4.根据权利要求2或3所述的方法,其特征在于,所述方法还包括:
将所述目标搜索点集按像素排布方向进行分组,得到N组搜索点;
将所述N组搜索点中在所述预设搜索方向的至少前两组搜索点作为第一部分目标搜索点。
5.根据权利要求4所述的方法,其特征在于,确定所述匹配代价按所述像素排布的预设搜索方向是否呈上升趋势的方式,包括:
在所述第一部分目标搜索点中匹配代价最小的搜索点在所述搜索方向上的第一组时,确定所述匹配代价按所述像素排布的预设搜索方向呈上升趋势。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
在所述第一部分目标搜索点中匹配代价最小的搜索点在所述搜索方向上的非第一组时,确定所述匹配代价按所述像素排布的预设搜索方向呈非上升趋势。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述整像素运动估计的所述目标最优位置所在的最佳匹配块与所述当像素像块的匹配误差小于阈值时,将所述整像素运动估计的所述目标最优位置作为所述当前像素块的运动估计结果。
8.一种视频图像处理装置,其特征在于,所述装置包括:
像素块获取模块,用于获取待编码视频图像中当前图像帧的当前像素块;
整像素运动估计模块,用于对所述当前像素块进行整像素运动估计,确定所述整像素运动估计的所述当前像素块的目标最优位置;
速度匹配模块,用于获取视频应用的目标编码速度,根据所述目标编码速度确定对应的分像素运动估计的目标精度;
分像素运动估计模块,用于按分像素运动估计的精度从低至高的顺序,以上一次像素运动估计确定的所述目标最优位置为中心进行分像素运动估计,得到当前精度的分像素运动估计的目标最优位置,直到当前分像素运动估计的精度达到所述目标精度时停止分像素运动估计,并以所述目标精度的分像素运动估计出的所述目标最优位置作为所述当前像素块的运动估计结果。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN202310216950.7A 2023-02-27 2023-02-27 视频图像处理方法、装置、计算机设备和存储介质 Pending CN116320443A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310216950.7A CN116320443A (zh) 2023-02-27 2023-02-27 视频图像处理方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310216950.7A CN116320443A (zh) 2023-02-27 2023-02-27 视频图像处理方法、装置、计算机设备和存储介质

Publications (1)

Publication Number Publication Date
CN116320443A true CN116320443A (zh) 2023-06-23

Family

ID=86819868

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310216950.7A Pending CN116320443A (zh) 2023-02-27 2023-02-27 视频图像处理方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN116320443A (zh)

Similar Documents

Publication Publication Date Title
US11381839B2 (en) Method and device for image motion compensation
US20220116647A1 (en) Picture Prediction Method and Picture Prediction Apparatus
US11800136B2 (en) Constrained motion field estimation for hardware efficiency
US10291925B2 (en) Techniques for hardware video encoding
CN110741640B (zh) 用于视频代码化中的运动补偿预测的光流估计
US20100166073A1 (en) Multiple-Candidate Motion Estimation With Advanced Spatial Filtering of Differential Motion Vectors
CN107852500B (zh) 运动矢量场编码方法和解码方法、编码和解码装置
US8848799B2 (en) Utilizing thresholds and early termination to achieve fast motion estimation in a video encoder
JP2016514378A (ja) 高効率次世代ビデオコーディングのためのコンテンツ適応双方向性又は機能性予測マルチパスピクチャ
CN108810549B (zh) 一种面向低功耗的流媒体播放方法
JPWO2012086829A1 (ja) 動き推定装置、動き推定方法、動き推定プログラム、および動画像符号化装置
CN116760965B (zh) 全景视频编码方法、装置、计算机设备和存储介质
WO2019036080A1 (en) ESTIMATION OF CONSTRAINED MOTION FIELD FOR INTERPRETING
CN109729363B (zh) 一种视频图像的处理方法和装置
US10142633B2 (en) Flexible coding unit ordering and block sizing
US10715822B2 (en) Image encoding method and encoder
CN114449294A (zh) 运动估计方法、装置、设备、存储介质和计算机程序产品
CN116320443A (zh) 视频图像处理方法、装置、计算机设备和存储介质
JP2015165644A (ja) 動画像符号化装置及び動画像符号化方法
KR102496619B1 (ko) 복수의 프레임에 대한 모션 추정 방법 및 장치
Jubran et al. Sequence-level reference frames in video coding
US10075691B2 (en) Multiview video coding method using non-referenced view video group
US9549193B2 (en) Video encoding method and video encoding device
US20240236365A9 (en) Method and device for image motion compensation
CN110876082B (zh) 一种视频帧的复杂度的确定方法及装置

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40088254

Country of ref document: HK