CN1317898C - 一种视频编解码过程中进行运动估计搜索计算的方法 - Google Patents

一种视频编解码过程中进行运动估计搜索计算的方法 Download PDF

Info

Publication number
CN1317898C
CN1317898C CNB2004100963246A CN200410096324A CN1317898C CN 1317898 C CN1317898 C CN 1317898C CN B2004100963246 A CNB2004100963246 A CN B2004100963246A CN 200410096324 A CN200410096324 A CN 200410096324A CN 1317898 C CN1317898 C CN 1317898C
Authority
CN
China
Prior art keywords
search
macro block
macro
region
decoding process
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.)
Active
Application number
CNB2004100963246A
Other languages
English (en)
Other versions
CN1615027A (zh
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.)
GUANGDONG ZHONGXING ELECTRONICS Co Ltd
Original Assignee
Vimicro Corp
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 Vimicro Corp filed Critical Vimicro Corp
Priority to CNB2004100963246A priority Critical patent/CN1317898C/zh
Publication of CN1615027A publication Critical patent/CN1615027A/zh
Application granted granted Critical
Publication of CN1317898C publication Critical patent/CN1317898C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种可同时对多个宏块进行并行处理的视频编解码过程中进行运动估计搜索计算的方法,首先在当前帧里从左至右的获取至少两个依次相邻的16×16像素的宏块,其中第一个宏块为首宏块;然后在参考帧里预先设定一区域半径,以所述首宏块的对应位置为中心,确定一方形搜索区域,使所述搜索区域的左边、上边和下边均与首宏块的对应位置之间的距离为区域半径,搜索区域的右边与首宏块的对应位置之间的距离=区域半径+16*(n-1),则所述搜索区域大小=(2*区域半径)×(区域半径+区域半径+16*(n-1)),其中n为获取的宏块个数;最后读取参考帧内所确定的搜索区域中的宏块数据,用于同时对所有获取的宏块进行搜索匹配。

Description

一种视频编解码过程中进行运动估计搜索计算的方法
技术领域
本发明涉及一种视频编解码中的运动估计搜索计算的方法。
技术背景
视频帧间编码利用图像的时间和空间冗余度来压缩视频,利用相邻帧之间的图像相关性,通过前一帧(或后一帧)来预测当前帧。预测越准确,传输的码流就可以压缩得越小。运动估计(Motion Estimation,ME)就是来实现这样一种运动图像预测的方法。运动估计算法的结果准确性影响码流的大小,而其运算复杂性影响帧率的快慢,这两项指标都是实时视频编码效率的主要指标。
在H.263、MPEG-4和H.264运动估计算法都是以宏块(Macro block)匹配为基础,对当前帧里的一个16×16的宏块,在上一帧(即参考帧)里众多的16×16的宏块中找出和它差别最小的一块。当前帧的块和上一帧的最小差别块之间的运动位移就是运动估计所要计算的运动向量。
在匹配当前的宏块时,可以采用全搜索或快速搜索的算法在参考帧里搜索,如采用快速搜索算法时,即在指定区域,比如以该宏块为中心的32×32像素范围内,以一定的模板或指定步长进行SAD(Sum Of Absolute Difference绝对差和)计算,最后确定局部最优点。由于搜索时是从左到右,从上到下依次扫描每个宏块,然而相邻宏块之间的搜索空间是几乎重叠的。因此,按照现有技术进行扫描,实质上对同样的数据进行了多次扫描和运算,并且每次也只能读取一个搜索区域进行一个宏块的匹配,而无法进行快速搜索计算。
发明内容
本发明的目的是:针对现有技术的不足,提供一种简单、快速,可同时对多个宏块进行并行搜索计算的视频编解码过程中进行运动估计搜索计算的方法。
为了解决上述技术问题,本发明所采取的技术方案是:一种视频编解码过程中进行运动估计搜索计算的方法,包括:
步骤一、在当前帧里从左至右的获取至少两个依次相邻的16×16像素的宏块,其中第一个宏块为首宏块,最后一个宏块为尾宏块;
步骤二、在参考帧里预先设定一区域半径,以所述首宏块的对应位置为中心,确定一方形搜索区域,使所述搜索区域的左边、上边和下边均与首宏块的对应位置之间的距离为区域半径,搜索区域的右边与首宏块的对应位置之间的距离=区域半径+16*(n-1),则所述搜索区域大小=(2*区域半径)×(区域半径+区域半径+16*(n-1)),其中n为获取的宏块个数;
步骤三、读取参考帧内所确定的搜索区域中的宏块数据,用于同时对所有获取的宏块进行搜索匹配。
所述步骤三可以采用快速搜索的方法,即:首先,读取所述搜索区域内的宏块数据;其次,按照快速搜索第一个模板的步长对所有宏块进行绝对差和计算,取最小误差位置为新的位置;然后,以新的位置为中心以新的步长或新的模板,同时计算各个宏块的绝对差和,再取最小误差位置为新的位置;最后,重复前一步骤,直到满足搜索匹配结束条件。
所述步骤一中可以获取两个相邻的宏块。
所述步骤二中,可以预先设定区域半径为16像素;以两个宏块中的首宏块的对应位置为中心,确定一方形搜索区域,使该搜索区域的左边、上边和下边均与首宏块的对应位置之间的距离为16像素,搜索区域的右边与首宏块的对应位置之间的距离为32像素,则所述搜索区域大小为32×48像素。
所述步骤三可以采用快速搜索方法中的三步法,即:首先,读取所述32×48像素的搜索区域内的宏块数据;其次,按照三步法的步长获得两个宏块的第一个模板,进行绝对差和计算,并取最小误差位置为新的位置;然后,重用所述模板,以新的位置为中心,步长减半得到新的比较点,同时计算两个宏块的绝对差和,再取最小误差位置;最后,重复前一步骤,直到直到满足搜索匹配结束条件。
所述步骤三可以采用全搜索的方法,即,在搜索区域内从左到右,从上到下平移,对每个位置都同时计算各个宏块和参考区域每个点的绝对误差之和,取最小一个位置得到当前各个宏块的最优匹配位置。
在上述技术方案中,本发明同时读取多个宏块的搜索区域内的数据,并同时对多个宏块进行搜索匹配计算,因此,本发明相对现有的搜索匹配方法,只需要增加少量的数据,即可实现多个宏块的并行搜索匹配,达到快速搜索的目的。另外,由于相邻的宏块之间的搜索区域是几乎重叠的,在搜索匹配计算时,可以重用计算模块,从而可以进一步提高搜索速度。
附图说明
附图1为本发明的方法流程图;
附图2为本发明的一种较佳实施例的宏块数据搜索区域示意图。
具体实施方式
下面将结合说明书附图及具体实施例对本发明作进一步详细说明。
参考附图1,本发明提供了一种视频编解码过程中进行运动估计搜索计算的方法,包括:
步骤一、在当前帧里从左至右的获取至少两个依次相邻的16×16像素的宏块,其中第一个宏块为首宏块,最后一个宏块为尾宏块;
步骤二、在参考帧里预先设定一区域半径,以所述首宏块的对应位置为中心,确定一方形搜索区域,使所述搜索区域的左边、上边和下边均与首宏块的对应位置之间的距离为区域半径,搜索区域的右边与首宏块的对应位置之间的距离=区域半径+16*(n-1),则所述搜索区域大小=(2*区域半径)×(区域半径+区域半径+16*(n-1)),其中n为获取的宏块个数;
步骤三、读取所确定的搜索区域内的数据,用于同时对所有获取的宏块进行搜索匹配。
搜索匹配的方法可以采用目前本领域内的多种方法,如全搜索法、快速搜索法。这些方法一般都是通过设计不同的搜索模板和搜索策略,进行高效的块匹配运动估计算法。
在目前所有块匹配算法中,全搜索的性能是最好的,本发明中采用全搜索的方法时,首先在搜索区域内从左到右,从上到下平移,对每个位置都同时计算各个宏块和参考区域每个点的绝对误差之和,然后取最小一个位置得到当前各个宏块的最优匹配位置。这种全搜索的方法由于要搜索整个搜索区域内的每一个点,因此存在费时的缺陷。
本发明还可以采用如三步法、四步法、二维对数法等等快速搜索方法,即:首先,读取所述搜索区域内的宏块数据;其次,按照快速搜索第一个模板的步长对所有宏块进行绝对差和计算,取最小误差位置为新的位置;然后,以新的位置为中心以新的步长或新的模板,同时计算各个宏块的绝对差和,再取最小误差位置为新的位置;最后,重复前一步骤,直到满足搜索匹配结束条件。
下面将给出一个对两个宏块进行并行搜索匹配计算的具体的实施例,以更加清楚的说明本发明的方法。由于多个两个宏块的并行搜索匹配计算的方法可以依本发明所给出的方法类推,因此,本发明包括但不限于本实施例。
参考图1、2,本实施例具体实施流程为:
步骤一:在当前帧里从左至右的获取至少两个依次相邻的16×16像素的宏块,如图2中的宏块A和宏块B;
步骤二:在参考帧1里预先设定一区域半径,本实施例中可以采用16像素;以两个宏块中的首宏块的对应位置为中心,确定一方形搜索区域2,使该搜索区域2的左边、上边和下边均与首宏块的对应位置之间的距离为16像素(即区域半径值),搜索区域2的右边与首宏块的对应位置之间的距离为32像素,则所述搜索区域大小=32×48像素。
步骤三,采用快速搜索法中的三步法搜索法,即,首先,读取所述32×48像素的搜索区域内的宏块数据;其次,按照三步法的步长获得两个宏块的第一个模板,进行绝对差和(SAD)计算,取最小误差位置为新的位置;由于这些计算模块对两个宏块是完全相同的,因此可以重用所述模块,然后,按照新的位置,步长减半得到新的比较点,同时计算两个宏块的绝对差和;最后,重复前一步骤,重复前一步骤,直到满足搜索匹配结束条件。如,直到最后步长小于1,如果其中一宏块先到终点,则将步长恢复,再读取搜索区域内大小为16×32的宏块数据,并行计算新的宏块搜索。由此,则可保持任一时刻都可以同时计算两个宏块的以三步法(TSS)模板的SAD计算。

Claims (6)

1、一种视频编解码过程中进行运动估计搜索计算的方法,包括:
步骤一、在当前帧里从左至右的获取至少两个依次相邻的16×16像素的宏块,其中第一个宏块为首宏块,最后一个宏块为尾宏块;
步骤二、在参考帧里预先设定一区域半径,以所述首宏块的对应位置为中心,确定一方形搜索区域,使所述搜索区域的左边、上边和下边均与首宏块的对应位置之间的距离为区域半径,搜索区域的右边与首宏块的对应位置之间的距离=区域半径+16*(n-1),则所述搜索区域大小=(2*区域半径)×(区域半径+区域半径+16*(n-1)),其中n为获取的宏块个数;
步骤三、读取参考帧内所确定的搜索区域中的宏块数据,用于同时对所有获取的宏块进行搜索匹配。
2、如权利要求1所述视频编解码过程中进行运动估计搜索计算的方法,其特征在于:所述步骤三采用快速搜索的方法,即:首先,读取所述搜索区域内的宏块数据;其次,按照快速搜索第一个模板的步长对所有宏块进行绝对差和计算,取最小误差位置为新的位置;然后,以新的位置为中心以新的步长或新的模板,同时计算各个宏块的绝对差和,再取最小误差位置为新的位置;最后,重复前一步骤,直到满足搜索匹配结束条件。
3、如权利要求1或2所述视频编解码过程中进行运动估计搜索计算的方法,其特征在于:所述步骤一中获取两个相邻的宏块。
4、如权利要求3所述视频编解码过程中进行运动估计搜索计算的方法,其特征在于:所述步骤二中,预先设定区域半径为16像素;以两个宏块中的首宏块的对应位置为中心,确定一方形搜索区域,使该搜索区域的左边、上边和下边均与首宏块的对应位置之间的距离为16像素,搜索区域的右边与首宏块的对应位置之间的距离为32像素,则所述搜索区域大小为32×48像素。
5、如权利要求4所述视频编解码过程中进行运动估计搜索计算的方法,其特征在于:所述步骤三采用快速搜索法中的三步法,具体为:首先,读取所述32×48像素的搜索区域内的宏块数据;其次,按照三步法的步长获得两个宏块的第一个模板,进行绝对差和计算,并取最小误差位置为新的位置;然后,重用所述模板,以新的位置为中心,步长减半得到新的比较点,同时计算两个宏块的绝对差和,再取最小误差位置;最后,重复前一步骤,直到满足搜索匹配结束条件。
6、如权利要求1所述视频编解码过程中进行运动估计搜索计算的方法,其特征在于:所述步骤三采用全搜索的方法,即,在搜索区域内从左到右,从上到下平移,对每个位置都同时计算各个宏块和参考区域每个点的绝对误差之和,取最小一个位置得到当前各个宏块的最优匹配位置。
CNB2004100963246A 2004-11-30 2004-11-30 一种视频编解码过程中进行运动估计搜索计算的方法 Active CN1317898C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2004100963246A CN1317898C (zh) 2004-11-30 2004-11-30 一种视频编解码过程中进行运动估计搜索计算的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2004100963246A CN1317898C (zh) 2004-11-30 2004-11-30 一种视频编解码过程中进行运动估计搜索计算的方法

Publications (2)

Publication Number Publication Date
CN1615027A CN1615027A (zh) 2005-05-11
CN1317898C true CN1317898C (zh) 2007-05-23

Family

ID=34766498

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100963246A Active CN1317898C (zh) 2004-11-30 2004-11-30 一种视频编解码过程中进行运动估计搜索计算的方法

Country Status (1)

Country Link
CN (1) CN1317898C (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1941909B (zh) * 2005-09-28 2010-05-05 中国科学院自动化研究所 基于正交分布模型的快速运动估计方法
CN101026761B (zh) * 2006-02-17 2010-05-12 中国科学院自动化研究所 一种具有最小误差的快速变尺寸块匹配的运动估计方法
CN1889667B (zh) * 2006-07-26 2011-03-30 浙江大学 视频信号多处理器并行处理方法
CN101945284B (zh) * 2010-09-29 2013-01-02 无锡中星微电子有限公司 一种运动估计的装置和方法
CN103051889A (zh) * 2011-10-14 2013-04-17 安凯(广州)微电子技术有限公司 一种图像运动估计方法及系统
TW201409994A (zh) 2012-08-30 2014-03-01 Novatek Microelectronics Corp 立體視訊的編碼方法與編碼裝置
CN103686190A (zh) * 2012-09-07 2014-03-26 联咏科技股份有限公司 立体视频的编码方法与编码装置
CN105306953A (zh) * 2015-12-10 2016-02-03 腾讯科技(深圳)有限公司 图像编码方法和装置
CN108271028A (zh) * 2016-12-30 2018-07-10 北京优朋普乐科技有限公司 一种子像素全搜索方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1131880A (zh) * 1995-03-20 1996-09-25 大宇电子株式会社 利用基于特征点的逐象素运动估算的图象处理装置
CN1142733A (zh) * 1995-08-08 1997-02-12 大宇电子株式会社 应用基于特征点的运动估算的图象处理系统
CN1348312A (zh) * 2000-10-11 2002-05-08 三星电子株式会社 用于混合型高速运动估计的方法和设备
JP2002218475A (ja) * 2000-12-18 2002-08-02 Inst For Information Industry ビデオ画像モーション評価の計算減量方法およびその装置
US20030161400A1 (en) * 2002-02-27 2003-08-28 Dinerstein Jonathan J. Method and system for improved diamond motion search
US20030174252A1 (en) * 2001-12-07 2003-09-18 Nikolaos Bellas Programmable motion estimation module with vector array unit
US20040013197A1 (en) * 2002-07-22 2004-01-22 Hyun-Sang Park High-speed motion estimator and method with variable search window
US20040114688A1 (en) * 2002-12-09 2004-06-17 Samsung Electronics Co., Ltd. Device for and method of estimating motion in video encoder

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1131880A (zh) * 1995-03-20 1996-09-25 大宇电子株式会社 利用基于特征点的逐象素运动估算的图象处理装置
CN1142733A (zh) * 1995-08-08 1997-02-12 大宇电子株式会社 应用基于特征点的运动估算的图象处理系统
CN1348312A (zh) * 2000-10-11 2002-05-08 三星电子株式会社 用于混合型高速运动估计的方法和设备
JP2002218475A (ja) * 2000-12-18 2002-08-02 Inst For Information Industry ビデオ画像モーション評価の計算減量方法およびその装置
US20030174252A1 (en) * 2001-12-07 2003-09-18 Nikolaos Bellas Programmable motion estimation module with vector array unit
US20030161400A1 (en) * 2002-02-27 2003-08-28 Dinerstein Jonathan J. Method and system for improved diamond motion search
US20040013197A1 (en) * 2002-07-22 2004-01-22 Hyun-Sang Park High-speed motion estimator and method with variable search window
US20040114688A1 (en) * 2002-12-09 2004-06-17 Samsung Electronics Co., Ltd. Device for and method of estimating motion in video encoder

Also Published As

Publication number Publication date
CN1615027A (zh) 2005-05-11

Similar Documents

Publication Publication Date Title
CN110087087B (zh) Vvc帧间编码单元预测模式提前决策及块划分提前终止方法
KR950009699B1 (ko) 움직임벡터 검출방법 및 장치
CN1262496A (zh) 使用正交变换域中的块匹配进行运动估测的方法和装置
CN1317898C (zh) 一种视频编解码过程中进行运动估计搜索计算的方法
CN1675848A (zh) 用于执行高质量快速预测运动搜索的方法和设备
CN102291581B (zh) 支持帧场自适应运动估计的实现方法
CN106604035B (zh) 一种用于视频编码和压缩的运动估计的方法
CN103747262B (zh) 一种基于gpu的运动估计方法
CN111654698B (zh) 一种针对h.266/vvc的快速cu分区决策方法
CN105898332B (zh) 针对3d-hevc编码标准的快速深度图帧内模式判决方法
JPH0884337A (ja) データ処理装置及びその方法
CN101031088A (zh) 一种用于视频编码器实现的快速十字运动估计方法
CN103327327A (zh) 用于高性能视频编码hevc的帧间预测编码单元选择方法
Chao et al. A novel hybrid motion estimator supporting diamond search and fast full search
CN1181691C (zh) 视频运动估计方法
Liyin et al. A review of motion estimation algorithms for video compression
CN1212014C (zh) 基于时空域相关性快速运动估计的视频编码方法
JP2011010297A (ja) 誤差絶対値和の推定システム及び推定方法
CN100385957C (zh) 一种运动矢量预测的方法
CN1556652A (zh) 基于最佳预测模式概率的视频帧内图像快速编码方法
KR100490730B1 (ko) 비디오 영상 압축 시스템에서의 적응적 패턴을 이용한움직임 예측 장치 및 방법
CN1263309C (zh) 用于视频编码的运动矢量预测方法
CN109040756B (zh) 一种基于hevc图像内容复杂度的快速运动估计方法
CN100366092C (zh) 一种视频编码中基于运动矢量预测的搜索方法
CN1816146A (zh) 一种视频数据压缩中的运动矢量估计方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: GUANGDONG ZHONGXING ELECTRONICS CO., LTD.

Free format text: FORMER OWNER: BEIJING VIMICRO CORPORATION

Effective date: 20150228

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 100083 HAIDIAN, BEIJING TO: 519031 ZHUHAI, GUANGDONG PROVINCE

TR01 Transfer of patent right

Effective date of registration: 20150228

Address after: 519031 Guangdong city of Zhuhai province Hengqin Baohua Road No. 6, room 105 -478

Patentee after: GUANGDONG ZHONGXING ELECTRONICS CO., LTD.

Address before: 100083, Haidian District, Xueyuan Road, Beijing No. 35, Nanjing Ning building, 15 Floor

Patentee before: Beijing Vimicro Corporation

DD01 Delivery of document by public notice

Addressee: GUANGDONG ZHONGXING ELECTRONICS CO., LTD.

Document name: Notification of Passing Examination on Formalities