一种适用于相机移动场景的运动估计方法及装置制造方法及图纸

技术编号:32023281 阅读:51 留言:0更新日期:2022-01-22 18:46
本申请公开了一种适用于相机移动场景的运动估计方法。根据前一视频帧的运动估计信息,计算当前视频帧上每一个图像块的运动估计的初始搜索中心。以当前视频帧上每一个图像块的运动估计的初始搜索中心为中心,在参考帧中进行第一范围的下采样搜索,得到当前视频帧上每一个图像块的最优粗像素精度运动矢量以及当前视频帧的运动估计信息。以当前视频帧上每一个图像块的最优粗像素精度运动矢量为搜索中心,在参考帧中进行第二范围的局部全搜索,得到当前视频帧上每一个图像块的最优整像素精度运动矢量;第一范围>第二范围。上述方法利用前一编码帧的运动估计信息,自动计算下一编码帧运动估计的初始搜索中心,极大地提升了相机移动场景的编码效率。相机移动场景的编码效率。相机移动场景的编码效率。

【技术实现步骤摘要】
一种适用于相机移动场景的运动估计方法及装置


[0001]本申请涉及一种数字视频编码技术,特别是涉及一种适用于相机移动场景的、适合于硬件实现的运动估计(motion estimation)方法。

技术介绍

[0002]视频编码是一种通过压缩视频图像中的冗余成分,并使用尽可能少的数据来表征视频信息的技术。目前常见的视频编码标准有HEVC(High Efficiency Video Coding,高效视频编码,又称H.265)和AVC(Advanced Video Coding,高级视频编码,又称H.264)等。
[0003]视频编码技术以图像块作为最基本的编码单元。在HEVC中,编码的基本单元是CU(Coding Unit,编码单元)。CU可以为64像素
×
64像素、32像素
×
32像素、16像素
×
16像素、8像素
×
8像素的图像块。
[0004]运动估计是在已编码的视频帧(称为参考帧)中,为当前编码帧中的当前图像块搜索最优匹配块,使得率失真代价(Rate Distortion Cost,RD Cost)最小。运动估计是视频编码算法的核心技术之一,包含整像素运动估计(IME,Integer Motion Estimation)和子像素运动估计(FME,Fractional Motion Estimation),其作用是消除视频信号的时域信息冗余,从而提高编码效率。本申请的“运动估计”都指整像素运动估计。请参阅图1,参考帧中的最优匹配块与当前编码帧中的当前图像块在参考帧中的同位图像块(相同位置的图像块)的相对偏移即为当前图像块的最优运动矢量(Motion Vector,MV)。在运动估计时,是使用当前帧上的当前图像块与参考帧搜索窗口(即运动估计的搜索范围)内的所有图像块(包括或不包括同位图像块,取决于搜索中心的位置以及搜索范围)逐一进行匹配,去寻找最优匹配块。图1适用于不同场景:如果是粗像素精度运动估计(即粗粒度搜索),图1中的最优运动矢量就是最优粗像素精度运动矢量;如果是整像素精度运动估计(即细粒度搜索),图1中的最优运动矢量就是最优整像素精度运动矢量。
[0005]为了提高视频编码速度,使用专用集成电路(ASIC)对视频编码过程进行硬件加速成为业界的通用做法。在视频编码的各个算法模块中,运动估计模块的运算量占整个视频编码器运算量的70%以上,是硬件视频编码器最重要的模块之一。在硬件视频编码器中,运动估计模块一般设计为粗粒度搜索和细粒度搜索相结合的方式。粗粒度搜索是以预设点为搜索中心的较大范围的下采样搜索,得到当前图像块的最优粗像素精度运动矢量。所述预设点通常设置为(0,0)坐标点,也就是当前图像块在参考帧上对应的同位图像块的左上角位置。粗粒度搜索的搜索中心又可以称为“运动估计的初始搜索中心”。细粒度搜索则是以最优粗像素精度运动矢量为搜索中心的较小范围的局部全搜索,得到当前图像块的最优整像素精度运动矢量。
[0006]相机发生移动的编码场景在视频编码中经常出现。例如,录制足球赛或马术比赛等体育类视频时,相机的视角需要不停移动以跟踪足球或者赛马选手;某些智能监控摄像头安装在可转动的云台上,相机的视角可以移动以覆盖监控死角;无人机上的摄像头,相机的视场会随无人机的飞行而不断移动。
[0007]在一个典型的视频场景中,一般包含运动的前景物体和静止的背景物体。比如在道路监控视频场景中,马路、路灯、建筑物等自身不会产生位移的物体可以判定为静止的背景物体,而行人、车辆等自身会产生位移的物体可以判定为运动的前景物体。当然,运动的前景物体和静止的背景物体之间也可能发生相互转换。比如在录制视频的过程中,一直停放在路边没有移动的车辆就可以判定为静止的背景物体的一部分。在本申请中,“前景物体”一般指视频录制的过程中自身会发生位移的物体,“背景物体”一般指视频录制的过程中自身不会发生位移的物体。请参阅图2,在相机静止场景下,前景物体由于自身运动产生的运动矢量记为MV
F
,MV
F
的幅度不为0。背景物体由于自身运动产生的运动矢量记为MV
B
,MV
B
的幅度为0。
[0008]在录制视频的过程中,如果相机发生移动,会对视场中的每一个物体(包含前景物体和背景物体)叠加一个由于相机移动而产生的额外的运动矢量,记为MV
C
。请参阅图3,在相机移动场景下(例如相机视场向左平移),原先静止的背景物体在视场中也会发生“移动”,其最终的运动矢量MV

B
=MV
C
;而原先运动的前景物体,其最终的运动矢量MV
F

则会在自身运动矢量MV
F
的基础上叠加相机移动产生的MV
C
,有MV

F
=MV
F
+MV
C
。可见,当相机发生移动时,前景物体和背景物体都会在自身运动矢量的基础上叠加一个由相机移动而产生的运动矢量。如果相机的位移比较大,前景物体和背景物体的最终运动矢量就会超出以预设点为搜索中心的运动估计的搜索范围,导致运动估计无法搜索到前景物体和背景物体的最优匹配结果,大大降低编码效率。在硬件编码器中,运动估计的搜索范围的大小一般都是预先设定好的。目前的视频编码标准都是基于图像块的,无论在视频中什么形状的物体,都是将其划分为一个个的图像块进行编码操作。
[0009]需要特别注意的一点是,上例只是对相机移动问题的简单抽象。在实际场景中,对于视频中的每一帧,视场中不同位置的物体由于相机的移动而引入的额外的MV
C
都可能是互不相同的。这是由于相机的运动方式有多种情况,除了较简单的平移运动外,还有轴向运动、转动等运动方式。当相机发生轴向运动或者转动时,视场中不同位置处的物体的MV
C
各不相同。即便相机的移动是平移运动,由于相机镜头的光学性质不同,视场内物体的MV
C
也不一定相同。广角、鱼眼镜头的畸变较大,导致位于视场中心的物体的MV
C
较小,而位于视场边缘的物体的MV
C
较大;长焦镜头的畸变较小,视场内所有位置的物体MV
C
近似相同。
[0010]综上所述,在视频编码的过程中,如果相机发生了移动,如何在运动估计的过程中对相机移动引入的MV
C
进行有效补偿就成了一个难点。
[0011]现有的硬件视频编码器中,已经有一些方案用来处理相机移动时的运动估计问题。
[0012]一种方案是从编码器外部设置帧级的全局运动矢量(Global Motion Vector,GMV)给硬件编码器,来对相机移动引入的MV
C
进行补偿。在这种方案中,用户使用程序命令或者配置文件为每一个视频帧设置一个适用于当前视频帧内所有图像块的GMV,即帧级GMV。硬件编码器在编码每一视频帧时本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种适用于相机移动场景的运动估计方法,其特征是,包括如下步骤;步骤S10:根据前一视频帧的运动估计信息,计算当前视频帧上每一个图像块的运动估计的初始搜索中心;步骤S20:以当前视频帧上每一个图像块的运动估计的初始搜索中心为中心,在参考帧中进行第一范围的下采样搜索,得到当前视频帧上每一个图像块的最优粗像素精度运动矢量以及当前视频帧的运动估计信息;当前视频帧的运动估计信息是指两个列表:一张由当前视频帧内所有图像块的最优粗像素精度运动矢量所组成的列表,简称为粗运动矢量列表;一张由当前视频帧内所有图像块的最小绝对误差和SAD代价所组成的列表,简称为SAD代价列表;当前视频帧的运动估计信息用于下一视频帧的运动估计的初始搜索中心的计算;步骤S30:以当前视频帧上每一个图像块的最优粗像素精度运动矢量为搜索中心,在参考帧中进行第二范围的局部全搜索,得到当前视频帧上每一个图像块的最优整像素精度运动矢量;所述第一范围>第二范围。2.根据权利要求1所述的适用于相机移动场景的运动估计方法,其特征是,所述步骤S10进一步包括如下步骤;其中,前一视频帧的运动估计信息是指前一视频帧的粗运动矢量列表和SAD代价列表;步骤S11:将视频帧划分为一个或者多个划分区域,每个划分区域内的编码图像块的数量必须大于一个;步骤S12:统计前一视频帧在各个划分区域的全局运动矢量;步骤S13:判断前一视频帧的各个划分区域的全局运动矢量是否可信;对于前一视频帧上的某个划分区域,如果其全局运动矢量被判定为可信,称为可信划分区域,进入步骤S14;对于前一视频帧上的某个划分区域,如果其全局运动矢量被判定为不可信,称为不可信划分区域,进入步骤S15;步骤S14:采用运动矢量幅值判定和SAD代价判定相结合的方式,判断前一视频帧上每一个可信划分区域内的各个图像块的最优粗像素精度运动矢量是否属于离群运动矢量;如果前一视频帧上的某一个可信划分区域内的某一个图像块的最优粗像素精度运动矢量被判定为属于离群运动矢量,则将该图像块所属的可信划分区域的全局运动矢量作为当前视频帧内同位图像块的运动估计的初始搜索中心;如果前一视频帧上的某一个可信划分区域内的某一个图像块的最优粗像素精度运动矢量被判定为不属于离群运动矢量,进入步骤S15;步骤S15:对于前一视频帧上的每一个不可信划分区域,判断该划分区域内每一个图像块的最优粗像素精度运动矢量是否超出了以预设点为搜索中心的运动估计的搜索范围;对于前一视频帧上的每一个可信划分区域内的每一个被判定为不属于离群运动矢量的图像块的最优粗像素精度运动矢量,判断该图像块的最优粗像素精度运动矢量是否超出了以预设点为搜索中心的运动估计的搜索范围;如果超出,则前一视频帧上该图像块的最优粗像素精度运动矢量作为当前视频帧上的同位图像块的运动估计的初始搜索中心;如果没有超出,则前一视频帧上该图像块在当前视频帧上的同位图像块使用预设点作
为运动估计的初始搜索中心。3.根据权利要求2所述的适用于相机移动场景的运动估计方法,其特征是,所述步骤S11中,所述划分区域是对整个视频流中的每一个视频帧都按照相同的方式进行划分,无论是已编码的视频帧还是待编码的视频帧。4.根据权利要求2所述的适用于相机移动场景的运动估计方法,其特征是,所述步骤S12中,采用运动矢量MV直方图来进行统计;设置MV水平分量直方图和MV垂直分量直方图,依据前一视频帧的粗运动矢量列表对前一视频帧的各个划分区域内的图像块的MV分布概率进行统计,得到各个划分区域内出现概率最高的MV水平分量和垂直分量,并据此计算出各个划分区域的全局运动矢量GMV。5.根据权利要求2所述的适用于相机移动场景的运动估计方法,其特征是,所述步骤S13中,判断的方法是:对于每一个划分区...

【专利技术属性】
技术研发人员:刘鹏飞
申请(专利权)人:翱捷科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1