CN105898304B - 一种精确的prores视频编码快速码率控制方法 - Google Patents
一种精确的prores视频编码快速码率控制方法 Download PDFInfo
- Publication number
- CN105898304B CN105898304B CN201610292191.2A CN201610292191A CN105898304B CN 105898304 B CN105898304 B CN 105898304B CN 201610292191 A CN201610292191 A CN 201610292191A CN 105898304 B CN105898304 B CN 105898304B
- Authority
- CN
- China
- Prior art keywords
- transferred
- image
- target
- sad
- formula
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/625—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种精确的PRORES视频编码快速码率控制方法,在给定一帧图像目标数据量的条件下,快速计算编码此图像需要的量化参数。本发明包含两部分:1.定义一种PRORES编码数据量的估算公式,将数据量R定义为图像DCT系数的绝对差值和SAD的线性函数,函数中的系数对每一个可能的QP都有不同的固定值,可通过查表的方式获取。2.公开在给定的图像目标数据量的情况下利用该公式计算QP的方法。本发明采用了根据经验系数查表与理论公式结合的QP计算方式,相对目前公开的其它算法更加准确且能灵活适应多种PRORES格式;而计算过程仅需要统计编码过程本身产生的DCT系数的SAD值,额外增加的计算量小于其它计算方法。
Description
技术领域
本发明涉及一种精确的PRORES视频编码快速码率控制方法。
背景技术
PRORES是苹果公司(Apple Inc.)制定的一种全帧内编码格式的高质量视频编码系列标准,包括PRORES422HQ,PRORES422,PRORES422LT和PRORES422PROXY共4种格式,具有较高的码率且允许每帧的实际长度可变,只需要平均码率达到苹果标准定义的码率。编码过程包含离散余弦变换变换(DCT,Discrete Cosine Transform),量化(Quantization)和熵编码三个主要步骤,其中,量化是唯一同时影响到编码质量与编码产生的数据量的环节。量化需要对每个片(片)单独设置量化参数(QP,Quantization Parameter),量化参数的大小同时影响到编码后的视频质量和产生的数据量即实际码率。增大QP会引起视频质量下降同时降低码率;减小QP会提高视频质量同时增大码率。
为了确定合适的量化参数,一种常用的办法是先用一个QP进行实际编码,再根据实际产生的数据量来决定是否需要增加或减小QP后重新编码。这种方式会导致对同一图像多次编码,因此效率很低。
大部分基于公式计算QP的方法,都假设编码数据量是编码图像某种特征和量化因子Q的函数(量子因子Q与量化参数QP具有一一对应关系,具体对应关系根据视频标准的不同有不同定义),通过计算出量化因子来得到量化参数。不同的计算方法有不同的函数定义形式,如MPEG-4VM8(Verification Model 8)中使用的码率估计公式为其中R为数据量,MAD(Mean of absolute difference)为待编码图像所有象素的平均绝对差分值,α和β为实验得出的固定系数;H.263TMN8(Test Model,Near-Team,Version 8)中使用的码率估计公式为其中,σ为待编码宏块(MB,Macroblock)中6个块(block)的象素值的均方差。在这些公式中,除了MAD,σ与Q的表现形式,公式中的系数如α,β,2e2,等对数据量R的准确性有直接影响。然而这些系数对不同的Q的取值都是相同的,与实际的编码结果并不完全一致,导致这些公式直接应用在PRORES编码中效果并不理想。
此外,这些公式在计算时使用的都是图像原始象素值的特征,然而,PRORES编码过程中实际进行熵编码的对象并不是原始象素点的值,而是对象素点进行离散余弦变换(DCT,Discrete Cosine Transform)后得到的系数进行编码,DCT系数的统计特征与原始象素点的统计特征并不完全一致,因此,上述这些使用图像原始象素值进行码率估计的公式得到的数据量R的准确性偏低。
最后,因为大多数视频格式可对不同的宏块设置不同的QP,因此这些方法在设计时大多以宏块为单位对QP进行计算;而PRORES是以片为单位(一个片包含多个MB)设置QP,并且DCT系数的编码方式也不同,因此,应用这些方式到PRORES中也会导致编码后的码率有较大偏差,从而影响质量。
发明内容
本发明的目的在于克服现有技术的不足,提供一种精确的PRORES视频编码快速码率控制方法,在给定一帧图像目标数据量的条件下,快速计算编码此图像需要的量化参数,本发明采用根据经验系数查表与理论公式结合的QP计算方式,相对目前公开的其它算法更加准确且能灵活适应多种PRORES格式;而计算过程仅需要统计编码过程本身产生的DCT系数的SAD值,额外增加的计算量小于其它计算方法。因此,本发明可显著提高PRORES的编码速度且保持视频质量无下降。
本发明的目的是通过以下技术方案来实现的:一种精确的PRORES视频编码快速码率控制方法,它包括如下子步骤:
S100:将目标图像的量化参数初始值QPpre设置为2,设置θ=1;转入步骤S101;
S101:将YUV图像进行DCT变换,分别得到Y,U,V分量的DCT系数;转入步骤S102;
S102:对图像的所有DCT系数计算绝对值之和SADdct;转入步骤S103;
S103:计算当前图像幅面大小SIZEcur与高清图像大小的比例再对SADdct进行归一化得到作为公式R=θ·(αQP·SAD+βQP)中使用的SAD值;转入步骤S104;
S104:令目标图像的暂时量化参数QP′=QPpre,设目标数据量为Rtarget,查表取出αQP和βQP代入公式R=θ·(αQP·SAD+βQP)计算出此图像块编码后产生的数据量的值R′,若R′<Rtarget,转入步骤S105;否则,转入步骤S107;
S105:若QP′已经是标准允许的最小量化参数,将当前图像的QP设为QP′,转入步骤S109;否则,转入步骤S106;
S106:计算所得数据量的值与目标数据量的差值ΔR′=Rtarget-R′,再令QP′=QP′-1,查表取出αQP和βQP代入公式R=θ·(αQP·SAD+βQP)计算出R′,若R′<Rtarget,转入步骤S105;否则,计算所得数据量的值与目标数据量的差值ΔR″=R′-Rtarget,若ΔR″<ΔR′,将当前图像的QP设为QP′,转入步骤S109;否则,将当前图像的QP设为QP′+1,转入步骤S109;
S107:若QP′已经是标准允许的最大量化参数,将当前图像的QP设为QP′,转入步骤S109;否则,转入步骤S108;
S108:计算ΔR′=R′-Rtarget,再令QP′=QP′+1,查表取出αQP和βQP代入公式R=θ·(αQP·SAD+βQP)计算出R′,若R′>Rtarget,转入步骤S107;否则,计算ΔR″=Rtarget-R′,若ΔR″<ΔR′,将当前图像的QP设为QP′,转入步骤S109;否则,将当前图像的QP设为QP′-1,转入步骤S109;
S109:使用得到的QP对图像进行编码,并置QPpre=QP,转入步骤S110;
S110:根据S109编码得到的实际数据量Rreal与目标数据量Rtarget,计算出实际数据量Rreal与目标数据量Rtarget的比值更新公式R=θ·(αQP·SAD+βQP)中的θ=θ×τ;若所有图像编码完成,结束;否则,转入S101编码下一帧图像;
其中QP为量化参数,αQP和βQP为固定系数,SAD为要使用目标QP进行编码的图像块的DCT系数的绝对值之和,R为预测的此图像块编码后产生的数据量,θ为调整系数。
如果计算单个片的QP,则SAD为单片的SAD;如果整帧图像使用一个QP,则SAD为整帧图像的SAD。
本发明的有益效果是:本发明提供了一种精确的PRORES视频编码快速码率控制方法,在给定一帧图像目标数据量的条件下,快速计算编码此图像需要的量化参数,本发明采用了根据经验系数查表与理论公式结合的QP计算方式,相对目前公开的其它算法更加准确且能灵活适应多种PRORES格式;而计算过程仅需要统计编码过程本身产生的DCT系数的SAD值,额外增加的计算量小于其它计算方法。因此,本发明可显著提高PRORES的编码速度且保持视频质量无下降。
附图说明
图1为使用本发明进行幅面为1920x1080的PRORES422HQ格式编码的流程图。
具体实施方式
下面结合一种精确的码率控制方式对本发明在编码帧率为29.97,码率为220Mbps,视频幅面为1920x1080的PRORES422HQ格式中的实施方式作进一步的详细说明。流程图如图1所示。具体步骤如下:
S200:初始化编码器,设置帧率为每帧标准数据量Rstand=7340674,设置下一帧目标数据量Rtarget=Rstand=7340674,设置缓冲区溢出状态Boverflow=0,将将QPpre设置初始值为2,设置θ=1;转入步骤S201;
S201:将YUV图像进行DCT变换,分别得到Y,U,V分量的DCT系数;转入步骤S202;
S202:对图像的所有DCT系数计算绝对值之和SADdct;转入步骤S203;
S203:计算当前图像幅面大小与高清图像大小的比例ρ=1,再对SADdct进行归一化得到SAD′dct=SADdct,作为公式R=θ·(αQP·SAD+βQP)中使用的SAD值;转入步骤S204;
S204:令QP′=QPpre,查表取出αQP和βQP代入公式R=θ·(αQP·SAD+βQP)计算出此图像块编码后产生的数据量的值R′,若R′<Rtarget,转入步骤S205;否则,转入步骤S207;
S205:若QP′已经是标准允许的最小量化参数,将当前图像的QP设为QP′,转入步骤S209;否则,转入步骤S206;
S206:计算所得数据量的值与目标数据量的差值ΔR′=Rtarget-R′,再令QP′=QP′-1,查表取出αQP和βQP代入公式R=θ·(αQP·SAD+βQP)计算出R′,若R′<Rtarget,转入步骤S205;否则,计算所得数据量的值与目标数据量的差值ΔR″=R′-Rtarget,若ΔR″<ΔR′,将当前图像的QP设为QP′,转入步骤S209;否则,将当前图像的QP设为QP′+1,转入步骤S209;
S207:若QP′已经是标准允许的最大量化参数,将当前图像的QP设为QP′,转入步骤S209;否则,转入步骤S208;
S208:计算ΔR′=R′-Rtarget,再令QP′=QP′+1,查表取出αQP和βQP代入公式R=θ·(αQP·SAD+βQP)计算出R′,若R′>Rtarget,转入步骤S207;否则,计算ΔR″=Rtarget-R′,若ΔR″<ΔR′,将当前图像的QP设为QP′,转入步骤S209;否则,将当前图像的QP设为QP′-1,转入步骤S209;
S209:使用得到的QP对图像进行编码,并置QPpre=QP,转入步骤S210;
S210:根据S209编码得到的实际数据量Rreal与目标数据量Rtarget,计算出实际数据量Rreal与目标数据量Rtarget的比值更新公式R=θ·(αQP·SAD+βQP)中的θ=θ×τ;转入S211;
S211:根据S209编码得到的实际数据量Rreal与目标数据量Rtarget,更新缓冲区溢出状态Boverflow=Boverflow+Rreal-Rtarget;转入步骤S212;
S212:更新下一帧目标数据量若令转入步骤S213;
S213:若所有图像编码完成,结束编码流程;否则,转入S201编码下一帧图像.
其中QP为量化参数,αQP和βQP为固定系数,SAD为要使用目标QP进行编码的图像块的DCT系数的绝对值之和,R为预测的此图像块编码后产生的数据量,θ为调整系数。
如果计算单个片的QP,则SAD为单片的SAD;如果整帧图像使用一个QP,则SAD为整帧图像的SAD。
本发明的公式R=θ·(αQP·SAD+βQP)使用了图像DCT系数的特征而非图像原始象素值的特征进行计算;式中的系数,αQP和βQP对PRORES的4种不同格式以及对每个QP都有不同的取值,因此无法直接通过反函数用R和SAD计算出QP,需要通过对可能的QP进行计算来找到使函数值最接近R的QP。
使用公式R=θ·(αQP·SAD+βQP)进行计算时,由于DCT变换是编码过程本身需要计算的,因此,DCT变换不产生额外的计算量;本发明要统计的图像特征为SAD,相对于其它算法统计的MAD在计算量上可视为完全相同,而相对于统计均方差σ所需要的计算量则明显下降;相对于其它使用R和图像特征值直接计算QP的方式,本发明需要对公式R=θ·(αQP·SAD+βQP)进行多次计算,然而,传统的方式需要对每个宏块进行一次公式计算,而本发明可对一帧图像只计算一个QP,因此,整个图像编码过程中,本发明使用公式进行计算的次数也远少于传统方法的计算次数。因此,本发明相对其它方式有更低的计算量,同时对数据量估计的准确度有了明显提升。
此外,本发明对一帧图像只使用一个相同的QP,这有利于对图像进行并行编码,同时相同的QP也可以使图像各个部分的质量都保持一致。同时,本发明也可以将一帧图像划分成多个部分分别计算QP,每个图像部分在计算QP时使用其自身的SAD值以及目标数据量进行计算。
Claims (2)
1.一种精确的PRORES视频编码快速码率控制方法,其特征在于:它包括如下子步骤:
S100:将目标图像的量化参数初始值QPpre设置为2,设置θ=1;转入步骤S101;
S101:将YUV图像进行DCT变换,分别得到Y,U,V分量的DCT系数;转入步骤S102;
S102:对图像的所有DCT系数计算绝对值之和SADdct;转入步骤S103;
S103:计算当前图像幅面大小SIZEcur与高清图像大小的比例再对SADdct进行归一化得到作为公式R=θ·(αQP·SAD+βQP)中使用的SAD值;转入步骤S104;
S104:令目标图像的暂时量化参数QP′=QPpre,设目标数据量为Rtarget,查表取出αQP和βQP代入公式R=θ·(αQP·SAD+βQP)计算出此图像块编码后产生的数据量的值R′,若R′<Rtarget,转入步骤S105;否则,转入步骤S107;
S105:若QP′已经是标准允许的最小量化参数,将当前图像的QP设为QP′,转入步骤S109;否则,转入步骤S106;
S106:计算所得数据量的值与目标数据量的差值ΔR′=Rtarget-R′,再令QP′=QP′-1,查表取出αQP和βQP代入公式R=θ·(αQP·SAD+βQP)计算出R′,若R′<Rtarget,转入步骤S105;否则,计算所得数据量的值与目标数据量的差值ΔR″=R′-Rtarget,若ΔR″<ΔR′,将当前图像的QP设为QP′,转入步骤S109;否则,将当前图像的QP设为QP′+1,转入步骤S109;
S107:若QP′已经是标准允许的最大量化参数,将当前图像的QP设为QP′,转入步骤S109;否则,转入步骤S108;
S108:计算ΔR′=R′-Rtarget,再令QP′=QP′+1,查表取出αQP和βQP代入公式R=θ·(αQP·SAD+βQP)计算出R′,若R′>Rtarget,转入步骤S107;否则,计算ΔR″=Rtarget-R′,若ΔR″<ΔR′,将当前图像的QP设为QP′,转入步骤S109;否则,将当前图像的QP设为QP′-1,转入步骤S109;
S109:使用得到的QP对图像进行编码,并置QPpre=QP,转入步骤S110;
S110:根据S109编码得到的实际数据量Rreal与目标数据量Rtarget,计算出实际数据量Rreal与目标数据量Rtarget的比值更新公式R=θ·(αQP·SAD+βQP)中的θ=θ×τ;若所有图像编码完成,结束;否则,转入S101编码下一帧图像;
其中QP为量化参数,αQP和βQP为固定系数,SAD为要使用目标QP进行编码的图像块的DCT系数的绝对值之和,R为预测的此图像块编码后产生的数据量,θ为调整系数。
2.根据权利要求1所述的一种精确的PRORES视频编码快速码率控制方法,其特征在于:如果计算单个片的QP,则SAD为单片的SAD;如果整帧图像使用一个QP,则SAD为整帧图像的SAD。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610292191.2A CN105898304B (zh) | 2016-05-05 | 2016-05-05 | 一种精确的prores视频编码快速码率控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610292191.2A CN105898304B (zh) | 2016-05-05 | 2016-05-05 | 一种精确的prores视频编码快速码率控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105898304A CN105898304A (zh) | 2016-08-24 |
CN105898304B true CN105898304B (zh) | 2018-10-16 |
Family
ID=56702117
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610292191.2A Active CN105898304B (zh) | 2016-05-05 | 2016-05-05 | 一种精确的prores视频编码快速码率控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105898304B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104782121A (zh) * | 2012-12-18 | 2015-07-15 | 英特尔公司 | 多区域视频会议编码 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8542737B2 (en) * | 2010-03-21 | 2013-09-24 | Human Monitoring Ltd. | Intra video image compression and decompression |
RU2510589C2 (ru) * | 2012-07-05 | 2014-03-27 | Вадим Витальевич Ярошенко | Способ кодирования цифрового видеоизображения |
-
2016
- 2016-05-05 CN CN201610292191.2A patent/CN105898304B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104782121A (zh) * | 2012-12-18 | 2015-07-15 | 英特尔公司 | 多区域视频会议编码 |
Also Published As
Publication number | Publication date |
---|---|
CN105898304A (zh) | 2016-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8509556B2 (en) | Image coding apparatus and image coding method to generate a targeted amount of code | |
CN101552917B (zh) | 一种视频压缩码率控制方法 | |
CN101159871B (zh) | 宏块组级视频码率控制方法 | |
CN103501438B (zh) | 一种基于主成分分析的内容自适应图像压缩方法 | |
CN100562116C (zh) | 一种面向多视点视频的码率控制方法 | |
JP4607305B2 (ja) | 映像符号化装置及び映像符号化方法 | |
CN112738515B (zh) | 用于自适应量化的量化参数调整方法和装置 | |
CN103945220B (zh) | 一种用于高效视频编码hevc的量化优化方法 | |
CN107277520B (zh) | 帧内预测的码率控制方法 | |
CN101779468A (zh) | 图像处理装置和图像处理方法 | |
CN104301724A (zh) | 视频处理方法、编码设备和解码设备 | |
CN101795415A (zh) | 一种视频编码中的码率控制方法及其装置 | |
CN104754335B (zh) | 一种视频编码码率控制方法 | |
CN104159095B (zh) | 一种多视点纹理视频和深度图编码的码率控制方法 | |
CN103957410A (zh) | 一种基于残差频域复杂度的i帧码率控制方法 | |
CN1838776B (zh) | 解码装置、逆量化方法及其程序 | |
CN111556315A (zh) | 数据传输方法及装置 | |
CN102572428A (zh) | 面向多媒体传感网分布式编解码的边信息估计方法 | |
CN102420987A (zh) | 基于分层b帧结构的码率控制的自适应比特分配方法 | |
CN100448295C (zh) | 一种低复杂度的积分码率控制方法 | |
CN102752598A (zh) | 快速自适应码率控制方法 | |
CN105898304B (zh) | 一种精确的prores视频编码快速码率控制方法 | |
CN100414997C (zh) | 一种视频数据压缩的量化方法 | |
CN109286817B (zh) | 一种视频编码中dct系数的量化失真信息处理方法 | |
CN103002284B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |