CN100568978C - 一种帧间与帧内编码模式的选择方法 - Google Patents
一种帧间与帧内编码模式的选择方法 Download PDFInfo
- Publication number
- CN100568978C CN100568978C CN 200610160672 CN200610160672A CN100568978C CN 100568978 C CN100568978 C CN 100568978C CN 200610160672 CN200610160672 CN 200610160672 CN 200610160672 A CN200610160672 A CN 200610160672A CN 100568978 C CN100568978 C CN 100568978C
- Authority
- CN
- China
- Prior art keywords
- intra
- cost
- inter
- macro
- pattern
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
技术领域
本发明涉及实时视频编码中的一种编码模式选择算法。
背景技术
视频编码算法包含帧内编码和带有运动补偿帧间预测的帧间编码两种模式。带有运动补偿帧间预测的帧间编码模式(后面称为Inter模式)在压缩比上对于帧内编码模式(后面称为Intra模式)具有无与伦比的优势。因此,在图像帧一级和16x16图像块(称为宏块)一级尽量采用Inter模式来获得高压缩比,就是P帧和Inter宏块。仅在初始时刻(包括序列的绝对初始时刻和切入时刻)和需要纠正或应付传输差错时使用I帧(图像帧一级的编码模式为Intra),在帧间块匹配失败时和需要局部图像失谐校正或刷新时使用Intra宏块(宏块一级的编码模式为Intra)。
其中,帧间块匹配失败是由遮挡引起的。此时,当前帧部分图像区域与参考帧图像之间没有对应关系或对应得不恰当,Inter模式的率失真性能比Intra模式的还差。虽然在绝大多数情况下同一场景的帧间块匹配是成功的,这样的块匹配失败情况只占少数,但是如果不及时改成Intra模式,就会引起局部图像质量衰退,如出现拖影和残留的效果。通常的解决方法是在进行P帧编码时对每个宏块同时进行Inter模式与Intra模式的尝试,计算出各自的率失真性能量度量,如能同时实现码率R和失真度D优化的Lagrangian代价J=D+λ×R,从中选出率失真性能较好的模式。
H.264Intra模式所包含的4x4亮度帧内预测要求利用编解码顺序前的相邻4x4块的重建图像数据生成预测值。当且仅当前一个4x4块的重建图像生成后,才能开始处理后一个4x4块。于是,为了获得4x4Intra模式的Lagrangian代价J,必须对每个4x4亮度块执行完整的Intra宏块编码过程。其附带生成的Intra模式编码结果只有在宏块编码模式最后确定为Intra模式的情况下才有用。而Intra宏块在P帧中出现的机会非常低。在绝大多数情况下,Intra模式编码结果都成为无用数据被丢弃。
H.263TMN12的帧间与帧内模式选择算法简单得多:只需要求出宏块的自方差,便可以作为Intra代价与帧间预测残差的绝对值和SAD比较,不需要执行任何Intra编码运算。可惜这种方法不能沿用到H.264编码。因为H.264Intra模式包含了H.263Intra模式所没有的图像平面空间预测,必须用帧内预测残差与帧间预测残差相比较。
文献Fast inter mode select,JVT of ITU-T VCEG and ISO/IEC MPEG,Document JVT-I020,San Diego,USA,September 2003,公开了一种帧间与帧内模式选择算法:在完成Inter模式选择后,比较时域相关性和空域相关性,根据比较结果决定是执行Intra模式尝试,还是确定宏块编码模式为Inter模式。该算法定义方块空域相关性指标ABE为当前宏块与编码顺序前的相邻宏块相交的边界像素的像素值之差(交界线一边用原始图像值,另外一边用重建图像值)的平均值,定义方块时域相关性指标AR为最佳Inter模式下变换系数码流的平均长度。如果AR<kABE(k为预先设定的正数),时域相关性大于空域相关性,最佳编码模式为Inter模式,可以跳过Intra模式的尝试;否则,空域相关性大于时域相关性,需要执行Intra模式尝试。
实际应用表明该算法能够大幅度减少Intra模式尝试的机会,有效减少运算量,同时对图像质量的影响甚微(<0.1dB)。可以改进之处包括该算法在比较时域相关性和空域相关性前需要生成Inter模式变换系数码流,这样每个宏块可能出现两次生成变换系数码流的过程,存在进一步简化处理过程和减少运算量的余地;该算法只能用于帧内预测不受限的编码情况,不能用于帧内预测受限的编码情况。
帧内预测不受限的情况允许用同一个slice内相邻的任何宏块(包括Inter宏块和Intra宏块)的边界像素值去预测当前宏块,帧内预测受限的情况只允许用同一个slice内相邻的Intra宏块的边界像素值去预测当前宏块,不允许用相邻的Inter宏块的边界像素值去预测当前宏块。H.264定义了帧内预测不受限和受限两种编码选项。帧内预测不受限的帧内预测效率和Intra模式压缩比更高,帧内预测受限的码流容错性更强。因为除非相邻的宏块全是Intra宏块,否则,帧内预测不受限时当前Intra宏块的图像重建与过去帧的重建图像相关,可能传递过去帧的差错图像;帧内预测受限时当前Intra宏块的图像重建与过去帧的重建图像完全无关,可以起到画面刷新的作用。而现有技术中快速帧间与帧内模式选择算法仅仅考虑且只能应用于帧内预测不受限的编码情况。
视频信源码流的容错性是多媒体通信产品的关键性能。尤其对于通过无QoS保证的IP网络传输多媒体数据的H.323会议电视终端,通过码流中少量帧内预测受限的Intra宏块刷新局部图像差错的意义更显突出。适用于帧内预测受限的编码情况同时通过自适应省略无意义处理,有效减少运算量的快速选择帧间和帧内模式的方法成为产品化的迫切需求。
发明内容
本发明要解决的技术问题是提供一种帧间与帧内模式选择方法,在强容错性的帧内预测受限的编码选项中,不仅能刷新局部图像差错,而且通过提早终止帧内模式的尝试自适应省略无意义处理,进一步减少运算量,从而快速完成宏块帧间和帧内模式的选择,提高编码速度。
本发明提出一种帧间与帧内编码模式的选择方法,包括以下步骤:
(1)在完成帧间运动补偿预测模式选择并且求得帧间模式代价JInter后,计算宏块顶部4个方块的Intra代价Ji,并完成这4个方块的图像重建,所述i表示亮度块的编号,0≤i≤3;
(2)计算宏块内部空间相关性指标SADBE;
(5)逐个4x4方块计算余下的12个4x4方块的Intra代价Ji,并进行累加得到宏块的Intra代价JIntra;
(6)判断此次累加的结果JIntra是否大于JInter,如果是,确定宏块编码模式为Inter模式,结束,否则,继续执行步骤(7);
(7)判断是否已计算出宏块内所有16个方块的Intra代价,如果是,将当前宏块的编码模式设置为Intra,结束,否则,继续执行步骤(5)。
进一步,上述方法还可具有以下特点:步骤(1)中计算每个方块Intra代价的方法包括:
(a)选择4x4帧内预测方式,从H.264标准所提供的总共9种预测方式中选出率失真性能最佳的一种预测方式,生成预测图像;
(b)根据原始图像数据-预测图像数据=残差数据,进一步由4x4帧内预测模式的偏移量+残差数据的绝对值和SAD计算出Intra代价。
进一步,上述方法还可具有以下特点:步骤(2)中,计算宏块内部空间相关性指标SADBE的方法包括:
其中,Y_orgi是当前宏块第4行第i列的原始图像像素值,Y_reci是当前宏块第3行第i列的重建图像像素值。
所述QP0(QP)为一常量。
进一步,上述方法还可具有以下特点:所述方法适用于帧内预测受限、同时包含亮度4x4帧内预测的宏块编码模式的视频编码。
与现有技术相比,本发明的技术效果是在强容错性的帧内预测受限的编码选项下通过提早终止帧内预测编码模式的尝试自适应省略无意义处理,从而快速完成宏块帧间和帧内模式的选择,显著提高编码速度。
附图说明
图1(a)为现有技术规定的编码顺序图。
图1(b)为本发明实施例中的编码顺序图。
图2是实施例中计算宏块内部空间相关性示意图。
图3是实施例中的方法流程图。
具体实施方式
在帧内预测受限的情况下,只有相邻的Intra宏块才能提供帧内预测。显然,Intra模式的率失真性能不能用现有技术中当前宏块与相邻宏块的边界像素值差来评估。
为了快速选出帧间Inter模式和帧内Intra模式,本发明将图1(a)中规定的宏块内16个4x4亮度块的编码顺序调整为图1(b)所示的处理顺序。这样在处理完位于宏块顶部的4个4x4方块后,可以立即计算宏块内部的空间相关性指标,即计算图1(b)中0、1、2、3块重建图像的最下一行(图2中第3行)与4、5、6、7块原始图像的最上一行(即图2中第4行)之间像素值的绝对值差和,并以该绝对值差和为Intra代价预测值。通过比较Inter代价和Intra代价预测值决定是继续Intra模式尝试还是终止Intra模式尝试(确定Inter模式为最佳宏块编码模式)。这样就可以在处理完4个4x4块后较早地终止Intra模式尝试和Intra代价计算,减少运算量。
当然,为了保持码流的兼容性和互通性,每个4x4方块的具体处理方法仍然完全按照标准执行,包括4x4方块空间相邻性判定、宏块码流结构等。改动的只是4个4x4块的编码顺序,宏块内部4x4块的熵编码顺序仍然照旧。
下面结合附图对本发明的实施例进行详细说明。如图3所示,该方法包括以下步骤:
步骤110,在完成帧间运动补偿预测模式选择并且求得帧间模式代价JInter后,对宏块顶部4个4x4方块,即图1(b)中0、1、2、3块,计算出其Intra代价,4个方块的Intra代价分别为J0,J1,J2,J3,并完成这4个方块的图像重建;
现有的计算每个方块的Intra代价并完成图像重建的方法,包括以下步骤:
(a)选择4x4帧内预测方式,从H.264标准所提供的总共9种预测方式中选出率失真性能最佳的一种预测方式,生成预测图像;
(b)根据原始图像数据-预测图像数据=残差数据,进一步由4x4帧内预测模式的偏移量+残差数据的绝对值和SAD计算出Intra代价;
(c)对残差系数编码生成变换系数Run-Level符号,其中步骤包括正交变换、量化、之字扫描与游程编码生成Run-Level符号、反向量化、生成编码器本地重建图像。
补充说明,上述过程与完整的H.2644x4帧内预测编码过程相比,仅差熵编码一步。即使在最大限度减少模式选择运算量的要求下,也仅仅能够省略这一步。
步骤120,根据计算方块空域相关性指标ABE的方法,计算宏块内部空间相关性指标SADBE,
其中,Y_orgi是图2中当前宏块第4行第i列的原始图像像素值,Y_reci是图2中当前宏块第3行第i列的重建图像像素值。
该步骤的方法参见文献Fast inter mode select,JVT of ITU-T VCEG andISO/IEC MPEG,Document JVT-I020,San Diego,USA,September 2003。
步骤130,计算Intra代价预测值
上式中,是帧内模式代价预测值,QP0(QP)是模式选择的偏移量,为一常量,详细说明见于H.264Joint Model,J0,J1,J2,J3是16x16宏块最顶部4个4x4块的帧内模式代价,SADBE为宏块内部空间相关性指标。
在帧内预测受限的情况下,即H.264图像参数集中的constrained_intra_pred_flag=1,虽然不能在Intra模式尝试前根据宏块间相关性跳过Intra模式的尝试,但是可以在宏块内部最顶部的4个4x4亮度块的处理结束时刻根据宏块内部相关性预测Intra代价,从而可能提前终止Intra模式的尝试,省略无意义的处理。
步骤150,立即终止Intra代价计算,确定宏块编码模式为Inter模式,结束;
对于在P帧中出现机会最大的Inter块,对应的时域相关性总是大于空域相关性,因此以极高的概率在此处终止不必要的Intra模式的继续尝试。至于剩余的一小部分Inter模式情况,也会在宏块余下的12个4x4亮度块的精确Intra代价计算中通过与Inter代价的比较而被逐步排除Intra模式。
步骤160,继续以Inter代价为提前终止尝试的量逐个4x4方块计算余下的12个4x4方块的Intra代价Ji(图1(b)中4~15块),并进行累加得到宏块的Intra代价JIntra,
其中,n≤15。
步骤170,判断此次累加的结果JIntra是否大于JInter,如果是,执行步骤150,否则,继续执行步骤180;
步骤180,判断是否已计算出宏块内所有16个方块的Intra代价,如果是,执行步骤190,否则,执行步骤160;
步骤190,将当前宏块的编码模式设置为Intra,结束。
最后处理完16个方块时宏块模式正是Intra,编码结果成为有用数据。Intra宏块在P帧所占比例很少。因此,Intra模式尝试所花费的运算量显著降低。在实际应用中也表现出既显著减少运算量,又保证图像质量及率失真性能的效果,提高P帧Intra模式编码的速度达到32.12%,提高总处理速度2.63%;所付出的代价是增加码率最大1.27%,或图像质量最大下降0.077dB。
Claims (6)
3、如权利要求1所述方法,其特征在于,步骤(1)中计算每个方块Intra代价的方法包括:
(a)选择4×4帧内预测方式,从H.264标准所提供的总共9种预测方式中选出率失真性能最佳的一种预测方式,生成预测图像;
(b)根据原始图像数据-预测图像数据=残差数据,进一步由4×4帧内预测模式的偏移量+残差数据的绝对值和SAD计算出Intra代价。
4、如权利要求1所述方法,其特征在于,步骤(2)中,计算宏块内部空间相关性指标SADBE的方法包括:
其中,Y_orgi是当前宏块第4行第i列的原始图像像素值,Y_reci是当前宏块第3行第i列的重建图像像素值。
6、如权利要求1所述方法,其特征在于:
所述方法适用于帧内预测受限、同时包含亮度4×4帧内预测的宏块编码模式的视频编码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200610160672 CN100568978C (zh) | 2006-12-04 | 2006-12-04 | 一种帧间与帧内编码模式的选择方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200610160672 CN100568978C (zh) | 2006-12-04 | 2006-12-04 | 一种帧间与帧内编码模式的选择方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101198065A CN101198065A (zh) | 2008-06-11 |
CN100568978C true CN100568978C (zh) | 2009-12-09 |
Family
ID=39548156
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200610160672 Expired - Fee Related CN100568978C (zh) | 2006-12-04 | 2006-12-04 | 一种帧间与帧内编码模式的选择方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100568978C (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102387358A (zh) * | 2010-08-27 | 2012-03-21 | 无锡中星微电子有限公司 | 帧内宏块编码方法、解码方法及其编码器、解码器 |
EP3186964A1 (en) * | 2014-08-25 | 2017-07-05 | Intel Corporation | Selectively bypassing intra prediction coding based on preprocessing error data |
CN108337513B (zh) * | 2017-01-20 | 2021-07-23 | 浙江大学 | 一种帧内预测像素生成方法和装置 |
CN116962685B (zh) * | 2023-09-21 | 2024-01-30 | 杭州爱芯元智科技有限公司 | 视频编码方法、装置、电子设备及存储介质 |
-
2006
- 2006-12-04 CN CN 200610160672 patent/CN100568978C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN101198065A (zh) | 2008-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4851741B2 (ja) | ソース画像のシーケンスを符号化する方法及び装置 | |
KR100994524B1 (ko) | 화상 정보 부호화 장치 및 방법, 및 화상 정보 복호 장치및 방법 | |
US20050114093A1 (en) | Method and apparatus for motion estimation using variable block size of hierarchy structure | |
CN105379284A (zh) | 动态图像编码装置及其动作方法 | |
CN101198066A (zh) | 一种帧间与帧内编码模式的选择方法 | |
CN110933430B (zh) | 二次编码优化方法 | |
JP2006519565A (ja) | ビデオ符号化 | |
JP5345220B2 (ja) | 1つ以上の所定の予測因子の除外を伴う符号化及び復号 | |
CN101984665A (zh) | 一种视频传输质量评测的方法与系统 | |
CN110365975A (zh) | 一种avs2视频编解码标准优化方案 | |
CN100568978C (zh) | 一种帧间与帧内编码模式的选择方法 | |
JP5375938B2 (ja) | 復号装置及び方法 | |
KR100905059B1 (ko) | 동영상 부호화에 있어서 비트 발생 가능성 예측을 이용한블록 모드 결정 방법 및 장치 | |
KR100669897B1 (ko) | H.264/avc에서의 고속 매크로블록 모드 선택 방법 | |
KR100359819B1 (ko) | 압축영상의 공간 도메인에서의 효율적인 엣지 예측 방법 | |
JP2000078586A (ja) | 画像圧縮方法 | |
JP4924708B2 (ja) | 復号装置及び方法 | |
JP4806483B2 (ja) | 画像圧縮方法 | |
KR100733991B1 (ko) | Mpeg2에서 h.264로의 트랜스코딩 방법 | |
JP5513333B2 (ja) | 動画像符号化装置、動画像符号化方法、およびプログラム | |
JP5375935B2 (ja) | 符号化装置及び方法 | |
JP4983908B2 (ja) | 復号装置及び方法 | |
KR101283577B1 (ko) | 비디오 영상의 부호화 방법 및 이를 수행하는 비디오 영상 부호화 장치 | |
JP5375937B2 (ja) | 符号化装置及び方法 | |
JP2956726B2 (ja) | 動画像の高能率符号化方法及び装置 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20091209 Termination date: 20151204 |
|
EXPY | Termination of patent right or utility model |