[go: up one dir, main page]

CN102970540B - 基于关键帧码率-量化模型的多视点视频码率控制方法 - Google Patents

基于关键帧码率-量化模型的多视点视频码率控制方法 Download PDF

Info

Publication number
CN102970540B
CN102970540B CN201210479090.8A CN201210479090A CN102970540B CN 102970540 B CN102970540 B CN 102970540B CN 201210479090 A CN201210479090 A CN 201210479090A CN 102970540 B CN102970540 B CN 102970540B
Authority
CN
China
Prior art keywords
frame
view point
image sets
point video
current view
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
Application number
CN201210479090.8A
Other languages
English (en)
Other versions
CN102970540A (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.)
Ningbo University
Original Assignee
Ningbo University
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 Ningbo University filed Critical Ningbo University
Priority to CN201210479090.8A priority Critical patent/CN102970540B/zh
Publication of CN102970540A publication Critical patent/CN102970540A/zh
Application granted granted Critical
Publication of CN102970540B publication Critical patent/CN102970540B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明公开了一种基于关键帧码率-量化模型的多视点视频码率控制方法,其通过分四层来进行码率控制,分别为视点层、GOP层、帧层和宏块层,在视点层中根据各个视点实际编码的比例值分配视点间的码率;在GOP层中分配整个GOP的总码率和根据分析得到的关键帧的码率-量化参数模型计算每个GOP的关键帧的编码量化参数;在帧层中根据不同层次B帧的码率分配权重合理地分配码率;在宏块层中根据宏块的编码复杂度进行宏块的码率分配并求取宏块的编码量化参数,优点在于利用关键帧的码率-量化模型,且针对不同层次的B帧采用不平等码率分配策略,能更合理的进行目标比特分配,有效的进行码率控制,在保证码率控制精度的情况下提供较好的率失真性能和主观质量。

Description

基于关键帧码率-量化模型的多视点视频码率控制方法
技术领域
本发明涉及一种多视点视频码率控制技术,尤其是涉及一种基于关键帧码率-量化模型的多视点视频码率控制方法。
背景技术
为了满足人们对视频的质量和内容越来越高的多样性要求,具有3D视觉功能的多视点视频技术正越来越受到学术界和工业界的重视,并成为近年来视频研究的热点之一。码率控制是多视点视频相关应用中的关键技术之一,它要在时间上合理分配码率,防止缓冲区的溢出,同时还要在各个视点之间进行合理的码率分配,以保证视点间视频质量的均衡性。国际标准化组织JVT(JointVideoTeam)一直致力于多视点视频编码标准的制定,并提出了JMVC(JointMulti-viewVideoCoding)作为公共研究平台。在JMVC中采用了HBP(HierarchicalBPictures)预测编码结构,采用了视差补偿预测和运动补偿预测去除各种时间、空间和视点间冗余,进一步提高编码压缩效率。但是,视差补偿和运动补偿原来是针对二维视频的码率控制模型,因此不能直接应用于多视点视频编码,目前JMVC尚未给出码率控制模型。目前,有学者已经提出了一些多视点视频的码率控制方法,但这些码率控制方法都只是简单地把H.264中的一些码率控制提案拓展到多视点视频中,没有着重考虑多视点视频的特殊性,如与单通道I帧类似的关键帧的码率-量化模型分析和HBP的特殊结构等都是多视点视频码率控制中急需考虑的问题。
在采用HBP预测编码结构的MVC中,将一组图像组定义为一个GOP(GroupofPicture),而每个GOP的第1帧即为关键帧,有效进行关键帧码率控制将有助于提高整个GOP的编码质量。在传统的单通道码率控制算法中,所有量化参数的调整都只针对P帧或B帧,而I帧仅仅采用前一个GOP的所有P帧/B帧的平均QP(QuantizationParameter)值来进行编码,若前一个GOP的所有P帧/B帧的平均QP值较大,则将导致I帧的QP选取较大,使得整个序列的图像质量降低。此外,编码帧的比特数不仅取决于QP的大小,而且与编码图像的复杂度有关,因此应拟合出I帧的码率和QP的关系模型,将此模型应用于I帧的QP的求取中。总之,I帧的码率控制主要是如何建立合适的I帧码率-量化模型以确定准确的量化参数,因此在多视点视频中要着重分析HBP结构中的关键帧的码率与量化参数的关系,拟合出关键帧的R-QP曲线应用于码率控制中关键帧的QP设置。
发明内容
本发明所要解决的技术问题是提供一种在保证码率控制精度的前提下,能够有效的提高率失真性能和视频编码质量的基于关键帧码率-量化模型的多视点视频码率控制方法。
本发明解决上述技术问题所采用的技术方案为:一种基于关键帧码率-量化模型的多视点视频码率控制方法,其特征在于包括以下步骤:
①定义输入的多视点视频中当前正在处理的第k'个视点视频为当前视点视频,其中,k'表示视点的编号,k'的初始值为1;
②将当前视点视频划分成多个图像组,每个图像组在AVC编码格式下包括I帧、P帧和B帧三种类型的图像,每个图像组中的第1帧为关键帧;
③计算预分配给当前视点视频的目标比特数,记为Tview(k'),Tview(k')=Ttotal×w(k′),其中,Ttotal表示输入的多视点视频的总目标比特数,w(k')表示输入的多视点视频中的第k'个视点视频的比例权重;
④给当前视点视频中的每个图像组预分配目标比特数,并设置当前视点视频中的每个图像组中的关键帧的编码量化参数,具体过程为:
④-1、计算预分配给当前视点视频中的第i个图像组的目标比特数,记为f(i,0), f ( i , 0 ) = B F r × N gop i = 1 B F r × N gop - ( B s 8 - B c ( i - 1 , N gop ) ) 2 ≤ i ≤ N , 其中,N表示当前视点视频所包含的图像组的个数,B表示外部设置的可用带宽,Fr为帧率,Ngop表示当前视点视频中的第i个图像组所包含的帧的帧数,Bs表示初始缓存区大小,Bc(i-1,Ngop)表示编码完当前视点视频中的第(i-1)个图像组后的实际缓存区占用度;
④-2、判断当前视点视频中的第i个图像组是否为第1个图像组,如果是,则将外部设置的初始编码量化参数QP0作为第1个图像组中的关键帧的编码量化参数,然后执行步骤④-6,否则,执行步骤④-3,其中,1≤i≤N,QP0∈[0,51];
④-3、根据关键帧的码率-量化模型计算当前视点视频中的第i个图像组中的关键帧的第一个待选的编码量化参数,记为Q′K(i,0),其中,RK(i,0)表示预分配给当前视点视频中的第i个图像组中的关键帧的目标比特数,C1和C2均为常数;
④-4、根据当前视点视频中的第i-1个图像组中除关键帧外的所有帧的编码量化参数的平均值,计算当前视点视频中的第i个图像组中的关键帧的第二个待选的编码量化参数,记为Q″K(i,0), Q K ′ ′ ( i , 0 ) = Sum BQP ( i - 1 ) N gop - 1 - 1 - 8 × T r ( i - 1 , N goop ) T r ( i , 0 ) - N gop 15 , 其中,SumBQP(i-1)表示当前视点视频中的第i-1个图像组中除关键帧外的所有帧的编码量化参数的和,Tr(i-1,Ngop)表示编码完当前视点视频中的第i-1个图像组后当前视点视频中的剩余比特数,Tr(i,0)表示预编码当前视点视频中的第i个图像组中的关键帧时第i个图像组中的剩余比特数;
④-5、从Q′K(i,0)和Q″K(i,0)中选择值小的待选的编码量化参数作为当前视点视频中的第i个图像组中的关键帧的初步的编码量化参数,记为 然后根据前后两帧同类型帧的编码量化参数的差值不得超过2的原则对进行修正,将修正后的编码量化参数记为 Q ~ K ( i , 0 ) = min { Q K ( i - 1,0 ) + 2 , max { Q K ( i - 1,0 ) - 2 , Q ~ K ( i , 0 ) } } , 接着根据H.264标准进一步对进行修正,得到当前视点视频中的第i个图像组中的关键帧的最终的编码量化参数,记为QK(i,0),其中,QK(i-1,0)表示当前视点视频中的第i-1个图像组中的关键帧的编码量化参数,min{}为取最小值函数,max{}为取最大值函数;
④-6、令i=i+1,然后返回步骤④-1继续给当前视点视频中的下一个图像组预分配目标比特数,并设置下一个图像组中的关键帧的编码量化参数,直至当前视点视频中的所有图像组处理完毕,其中,i=i+1中的“=”为赋值符号;
⑤更新预编码当前视点视频中的每个图像组中除关键帧外的每帧时的剩余比特数和目标缓存区占用度,然后给当前视点视频中的每个图像组中除关键帧外的每帧预分配目标比特数,具体过程为:
⑤-1、在恒定带宽的情况下,计算预编码当前视点视频中的第i个图像组中除关键帧外的每帧时第i个图像组中的剩余比特数,将预编码当前视点视频中的第i个图像组中的第j帧时第i个图像组中的剩余比特数记为Tr(i,j),Tr(i,j)=Tr(i,j-1)-A(i,j-1),然后计算预编码当前视点视频中的第i个图像组中除关键帧外的每帧时的目标缓存区占用度,将预编码当前视点视频中的第i个图像组中的第j帧时的目标缓存区占用度记为Tbl(i,j),其中,1≤i≤N,2≤j≤Ngop,Tr(i,j-1)表示预编码当前视点视频中的第i个图像组中的第j-1帧前第i个图像组中的剩余比特数,A(i,j-1)表示编码当前视点视频中的第i个图像组中的第j-1帧的实际比特数,Tbl(i,j-1)表示预编码当前视点视频中的第i个图像组中的第j-1帧时的目标缓存区占用度,Tbl(i,2)表示预编码当前视点视频中的第i个图像组中的第2帧时的目标缓存区占用度,Tbl(i,2)=Bc(i,2),Bc(i,2)表示编码完当前视点视频中的第i个图像组中的第2帧后的实际缓存区占用度;
⑤-2、根据预编码当前视点视频中的第i个图像组中除关键帧外的每帧时第i个图像组中的剩余比特数,计算预分配给当前视点视频中的第i个图像组中除关键帧外的每帧的待选的目标比特数,对于当前视点视频中的第i个图像组中的第j帧,根据Tr(i,j),计算预分配给当前视点视频中的第i个图像组中的第j帧的待选的目标比特数,记为 f ^ ( i , j ) , f ^ ( i , j ) = T r ( i , j ) × w b t Σ l = t L w b l × N b l , 其中,l表示B帧的不同层次,1≤t≤L,L表示分层B帧总的层次数,表示第t层次B帧对应的权重值,表示剩余B帧中第l层次B帧对应的权重值,表示剩余B帧中第l层次B帧的帧数;
⑤-3、根据预编码当前视点视频中的第i个图像组中除关键帧外的每帧时的目标缓存区占用度和编码完当前视点视频中的第i个图像组中除关键帧外的每帧后的实际缓存区占用度,计算预分配给当前视点视频中的第i个图像组中除关键帧外的每帧的待选的目标比特数,对于当前视点视频中的第i个图像组中的第j帧,根据Tbl(i,j)和编码完当前视点视频中的第i个图像组中的第j帧后的实际缓存区占用度Bc(i,j),计算预分配给当前视点视频中的第i个图像组中的第j帧的待选的目标比特数,记为 f ~ ( i , j ) = B F r + γ × ( Tbl ( i , j ) - B c ( i , j ) ) , 其中,γ为常数;
⑤-4、根据步骤⑤-2和步骤⑤-3计算得到的预分配给当前视点视频中的第i个图像组中除关键帧外的每帧的两个待选的目标比特数,计算预分配给当前视点视频中的第i个图像组中除关键帧外的每帧的最终的目标比特数,对于当前视点视频中的第i个图像组中的第j帧,根据计算预分配给当前视点视频中的第i个图像组中的第j帧的最终的目标比特数,记为f(i,j), f ( i , j ) = β × f ^ ( i , j ) + ( 1 - β ) × f ~ ( i , j ) , 其中,β为常数;
⑥给当前视点视频中的每个图像组中除关键帧外的每帧中的每个宏块预分配目标比特数,然后计算当前视点视频中的每个图像组中除关键帧外的每帧中的每个宏块的编码量化参数,具体过程为:
⑥-1、计算预分配给当前视点视频中的第i个图像组中除关键帧外的每帧中的每个宏块的目标比特数,将预分配给当前视点视频中的第i个图像组中的第j帧中的第k个宏块的目标比特数记为fmb(j,k),其中,1≤i≤N,2≤j≤Ngop,Tmb(j,k)表示预编码当前视点视频中的第i个图像组中的第j帧中的第k个宏块时第j帧中的剩余比特数,MAD(j,k)表示当前视点视频中的第i个图像组中的第j帧中的第k个宏块的MAD值,MAD(j,p)表示当前视点视频中的第i个图像组中的第j帧中的第p个宏块的MAD值,1≤k≤Nmb,1≤p≤Nmb,Nmb表示当前视点视频中的第i个图像组中的第j帧所包含的宏块的个数;
⑥-2、根据预分配给当前视点视频中的第i个图像组中除关键帧外的每帧中的每个宏块的目标比特数,计算当前视点视频中的第i个图像组中除关键帧外的每帧中的每个宏块的编码量化参数,对于当前视点视频中的第i个图像组中的第j帧中的第k个宏块,采用 f mb ( j , k ) = ( X 1 Q mb ( j , k ) 2 + X 2 Q mb ( j , k ) ) × MAD ( j , k ) , 计算当前视点视频中的第i个图像组中的第j帧中的第k个宏块的编码量化参数,记为Qmb(j,k),其中,X1和X2均为 f mb ( j , k ) = ( X 1 Q mb ( j , k ) 2 + X 2 Q mb ( j , k ) ) × MAD ( j , k ) 中的模型参数,在编码完一个宏块后采用线性回归技术更新X1和X2值;
⑦将输入的多视点视频中下一个待处理的视点视频作为当前视点视频,然后返回步骤②继续执行,直至输入的多视点视频中的所有视点视频处理完毕。
所述的步骤④-3的具体过程为:
a、计算当前视点视频中的第i-1个图像组中的关键帧的编码复杂度,记为CK(i-1,0),CK(i-1,0)=AK(i-1,0)×QK(i-1,0),其中,AK(i-1,0)表示当前视点视频中的第i-1个图像组中的关键帧的编码实际比特数,QK(i-1,0)表示当前视点视频中的第i-1个图像组中的关键帧的编码量化参数;
b、计算当前视点视频中的第i-1个图像组中除关键帧外的每帧的编码复杂度,将当前视点视频中的第i-1个图像组中的第j帧的编码复杂度记为CB(i-1,j),CB(i-1,j)=AB(i-1,j)×QB(i-1,j),然后计算当前视点视频中的第i-1个图像组中除关键帧外的所有帧的编码复杂度之和,记为CB,i-1其中,2≤j≤Ngop,AB(i-1,j)表示当前视点视频中的第i-1个图像组中的第j帧的编码实际比特数,QB(i-1,j)表示当前视点视频中的第i-1个图像组中的第j帧的编码量化参数;
c、根据当前视点视频中的第i-1个图像组中的关键帧的编码复杂度和除关键帧外的所有帧的编码复杂度之和,计算预分配给当前视点视频中的第i个图像组中的关键帧的目标比特数,记为RK(i,0),其中,f(i,0)表示预分配给当前视点视频中的第i个图像组的目标比特数,CK(i-1,0)表示当前视点视频中的第i-1个图像组中的关键帧的编码复杂度;
d、根据关键帧的码率-量化模型计算当前视点视频中的第i个图像组中的关键帧的第一个待选的编码量化参数,记为Q′K(i,0),其中,C1和C2均为常数。
所述的步骤④-3中C1=17.96,C2=-0.1704。
所述的步骤⑤-2中当当前视点视频中的图像组的长度为8时,分层B帧总的层次数L为3, t+l=L;所述的步骤⑤-3中γ=0.75;所述的步骤⑤-4中β=0.5。
所述的步骤⑥-1中当前视点视频中的第i个图像组中的第j帧中的第k个宏块的MAD值MAD(j,k)的获取过程为:根据当前视点视频中的第i个图像组中的第j-1帧中与第j帧中的第k个宏块相同位置的宏块的MAD值MAD(j-1,k),线性预测出MAD(j,k),MAD(j,k)=a1×MAD(j-1,k)+a2,其中,a1和a2均为预测模型参数,a1的初始值为1,a2的初始值为0,在编码完一个宏块后采用线性回归技术更新a1和a2值。
与现有技术相比,本发明的优点在于通过分四层来进行码率控制,分别为视点层、GOP层、帧层和宏块层,在视点层中,根据各个视点实际编码的比例值分配视点间的码率;在GOP层中,分配整个GOP的总码率和根据分析得到的关键帧的码率-量化参数模型计算每个GOP的关键帧的编码量化参数;在帧层中,根据不同层次B帧的码率分配权重合理地分配码率;在宏块层中,根据宏块的编码复杂度进行宏块的码率分配并求取宏块的编码量化参数,实验结果表明本发明方法能够较精确地控制码率,码率控制精度主要处于1%以内,其PSNR和率失真性能都有提高,在客观质量的评价基础上,对各个序列的主观质量也进行了相应的评价,最终实验结果表明,本发明方法不仅能够取得良好的客观质量,而且也能够取得更好的主观质量。
附图说明
图1为基于HBP结构的多视点视频预测编码结构以及关键帧的示意图;
图2为本发明方法的总体实现框图;
图3a为Breakdancers序列的3类视点的关键帧的R-QP统计曲线图;
图3b为Doorflowers序列的3类视点的关键帧的R-QP统计曲线图;
图4为1024×768分辨率下4个序列关键帧的R-QP统计曲线图;
图5a为Breakdancers序列采用原始方法和本发明方法的率失真曲线;
图5b为Ballet序列采用原始方法和本发明方法的率失真曲线;
图5c为Doorflowers序列采用原始方法和本发明方法的率失真曲线;
图5d为Alt_Moabit序列采用原始方法和本发明方法的率失真曲线;
图6a为Breakdancers序列采用原始方法处理后得到的重构图像;
图6b为Breakdancers序列采用本发明方法处理后得到的重构图像;
图6c为Breakdancers序列的原始图像的局部区域;
图6d为Breakdancers序列采用原始方法处理后得到的重构图像的局部区域;
图6e为Breakdancers序列采用本发明方法处理后得到的重构图像的局部区域;
图7a为Ballet序列采用原始方法处理后得到的重构图像;
图7b为Ballet序列采用本发明方法处理后得到的重构图像;
图7c为Ballet序列的原始图像的局部区域;
图7d为Ballet序列采用原始方法处理后得到的重构图像的局部区域;
图7e为Ballet序列采用本发明方法处理后得到的重构图像的局部区域;
图8a为Alt_Moabit序列采用原始方法处理后得到的重构图像;
图8b为Alt_Moabit序列采用本发明方法处理后得到的重构图像;
图8c为Alt_Moabit序列的原始图像的局部区域;
图8d为Alt_Moabit序列采用原始方法处理后得到的重构图像的局部区域;
图8e为Alt_Moabit序列采用本发明方法处理后得到的重构图像的局部区域;
图9a为Doorflowers序列采用原始方法处理后得到的重构图像;
图9b为Doorflowers序列采用本发明方法处理后得到的重构图像;
图9c为Doorflowers序列的原始图像的局部区域;
图9d为Doorflowers序列采用原始方法处理后得到的重构图像的局部区域;
图9e为Doorflowers序列采用本发明方法处理后得到的重构图像的局部区域。
具体实施方式
以下结合附图实施例对本发明作进一步详细描述。
本发明提出的一种基于关键帧码率-量化模型的多视点视频码率控制方法,其通过视点层、图像组(GOP)层、帧层和宏块层来进行码率控制。在视点层,根据各个视点实际编码的比例值分配视点间的码率;在图像组层,分配整个图像组的总码率和根据分析得到的关键帧的码率-量化的指数模型计算每个图像组中的关键帧的编码量化参数;在帧层,根据不同层次B帧的码率分配权重合理地分配码率;在宏块层,根据宏块的编码复杂度进行宏块的码率分配并求取宏块的编码量化参数。图1给出了基于HBP结构的多视点视频预测编码结构的示意图,图1中水平方向的箭头表示时间参考,垂直方向的箭头表示视点间参考。I类视点(I-View)采用帧内编码技术,不参考其它视点,P类视点(P-View)是单向的视点参考,参考I视点,如图1中的View2。同理,B类视点(B-View)是由重构的I和P类视点进行双向视点间预测得到,如图1中的View1。如图1中所示,一个图像组由各视点中时刻T0到时刻T7对应的所有帧组成,每个图像组的第1帧即为关键帧,即各视点中的I0,B1和P0。在本发明方法中将视点分为3类,分别为I-view,P-view和B-view。图2给出了本发明方法的总体实现框图,其包括以下步骤:
①定义输入的多视点视频中当前正在处理的第k'个视点视频为当前视点视频,其中,k'表示视点的编号,k'的初始值为1,如:假设当前视点视频为第1个视点视频,则k'=1。
②将当前视点视频划分成多个图像组,每个图像组在AVC编码格式下包括I帧、P帧和B帧三种类型的图像,其中B帧又包括B1、B2、B3和B4四种类型的帧,每个图像组中的第1帧为关键帧,如图1所示。
③计算预分配给当前视点视频的目标比特数,记为Tview(k'),Tview(k')=Ttotal×w(k′),其中,Ttotal表示输入的多视点视频的总目标比特数,w(k')表示输入的多视点视频的各视点视频的比例权重,w(k')由固定编码量化参数编码所获得的各视点视频的编码实际比特数的比例确定。
④给当前视点视频中的每个图像组预分配目标比特数,并设置当前视点视频中的每个图像组中的关键帧的编码量化参数,具体过程为:
④-1、计算预分配给当前视点视频中的第i个图像组的目标比特数,记为f(i,0), f ( i , 0 ) = B F r × N gop i = 1 B F r × N gop - ( B s 8 - B c ( i - 1 , N gop ) ) 2 ≤ i ≤ N , 其中,N表示当前视点视频所包含的图像组的个数,B表示外部设置的可用带宽,Fr为帧率,Ngop表示当前视点视频中的第i个图像组所包含的帧的帧数,Bs表示初始缓存区大小,Bc(i-1,Ngop)表示编码完当前视点视频中的第(i-1)个图像组后的实际缓存区占用度。
在此,为了确保当前视点视频中的所有图像组都有一定的质量,实际缓存区占用度在编码完一个图像组后必须保持在左右。
④-2、判断当前视点视频中的第i个图像组是否为第1个图像组,如果是,则将外部设置的初始编码量化参数QP0作为第1个图像组中的关键帧的编码量化参数,然后执行步骤④-6,否则,执行步骤④-3,其中,1≤i≤N,QP0∈[0,51],即QP0的值为0到51范围内的整数。
④-3、根据关键帧的码率-量化模型计算当前视点视频中的第i个图像组中的关键帧的第一个待选的编码量化参数,记为Q′K(i,0),其中,RK(i,0)表示预分配给当前视点视频中的第i个图像组中的关键帧的目标比特数,C1和C2均为常数。
在此具体实施例中,步骤④-3的具体过程为:
a、计算当前视点视频中的第i-1个图像组中的关键帧的编码复杂度,记为CK(i-1,0),CK(i-1,0)=AK(i-1,0)×QK(i-1,0),其中,AK(i-1,0)表示当前视点视频中的第i-1个图像组中的关键帧的编码实际比特数,QK(i-1,0)表示当前视点视频中的第i-1个图像组中的关键帧的编码量化参数。
b、计算当前视点视频中的第i-1个图像组中除关键帧外的每帧的编码复杂度,将当前视点视频中的第i-1个图像组中的第j帧的编码复杂度记为CB(i-1,j),CB(i-1,j)=AB(i-1,j)×QB(i-1,j),然后计算当前视点视频中的第i-1个图像组中除关键帧外的所有帧的编码复杂度之和,记为CB,i-1其中,2≤j≤Ngop,AB(i-1,j)表示当前视点视频中的第i-1个图像组中的第j帧的编码实际比特数,QB(i-1,j)表示当前视点视频中的第i-1个图像组中的第j帧的编码量化参数。
c、根据当前视点视频中的第i-1个图像组中的关键帧的编码复杂度和除关键帧外的所有帧的编码复杂度之和,计算预分配给当前视点视频中的第i个图像组中的关键帧的目标比特数,记为RK(i,0),其中,f(i,0)表示预分配给当前视点视频中的第i个图像组的目标比特数,CK(i-1,0)表示当前视点视频中的第i-1个图像组中的关键帧的编码复杂度。
d、根据关键帧的码率-量化模型计算当前视点视频中的第i个图像组中的关键帧的第一个待选的编码量化参数,记为Q′K(i,0),其中,C1和C2均为常数,在此,取C1=17.96,C2=-0.1704。
在本实施例中,对于关键帧的码率-量化模型(R-QP)是经过统计分析拟合得出的曲线模型。图3a给出了分辨率为1024×768的Breakdancers序列的3类视点的关键帧的码率-量化统计曲线图,图3b给出了分辨率为1024×768的Doorflowers序列的3类视点的关键帧的码率-量化统计曲线图。在图3a和图3b中横坐标为量化参数,量化参数取值为26个不同QP组成的集合,记为{QPK|QPK=2×K,K∈N,0≤K≤25},纵坐标为关键帧对应的编码量化参数下的编码实际比特数,单位为兆比特(Mbit)。从图3a和图3b中可以看出对于同一个序列,3类不同视点的关键帧的码率-量化模型几乎都相同。图4给出了1024×768分辨率下4个不同序列在QPK下的关键帧的码率-量化散点图。从图4中可以看出4个序列的整体趋势相似,采用中值方法求出4个序列的平均码率散点图,根据4个序列的平均码率值和对应的量化参数,拟合出两种关键帧的码率-量化曲线,一种为指数模型,另一种为二次模型。表1给出了两种拟合方式的一些指标,其中,SSE(squaresumoferror)为误差平方和,指各个测试点对测定平均值偏差平方和,越小越好;R-square为拟合优度,取值范围是[0,1],R-square的值越接近1,说明回归直线对观测值的拟合程度越好,反之,R-square的值越接近0,说明回归直线对观测值的拟合程度越差。分析表1所列的数据可知,在QP满足QP∈{QPK|QPK=2×K,K∈N,0≤K≤25}情况下二次模型的SSE比指数模型的SSE稍低,而且二次模型的相关系数R-square较高,故二次模型比指数模型稍好,但是精度都不够高。根据图4和表1的分析发现二次模型比指数模型稍好,真正应用的QP范围一般是QP∈{QPK|QPK=2×K,K∈N,10≤K≤25},为了剔除QP区间从0到20的整数,记为QP∈{QPK|QPK=2×K,K∈N,0≤K≤9},对其真正应用QP的影响,更好地拟合出符合实际运用的关键帧的码率-量化模型,在QP满足QP∈{QPK|QPK=2×K,K∈N,10≤K≤25}情况下对序列进行二次模型和指数模型的重新拟合。表2给出了4个序列的两种模型的各种指标,以便分析其优劣。从表2中看出,若针对QP∈{QPK|QPK=2×K,K∈N,10≤K≤25}区间内进行R-QP模型拟合,4种序列的指数模型都比二次模型更加准确。指数模型的SSE都在0.01以下,而且指数模型的相关系数R-square有3个序列都达到0.99以上,二次模型只有1个序列,并且其它相关系数都较低。此外,将4个序列在对应QP下的码率取平均值获得的平均R-QP的统计关系,指数曲线的相关系数高达0.99而二次曲线只有0.92;同理,二次曲线的SSE值偏大。最终,确定关键帧的码率-量化模型为指数模型:其中,C1和C2均为常数,R为关键帧的目标码率,QP为关键帧的量化参数。
表1在QP∈{QPK|QPK=2×K,K∈N,0≤K≤25}下关键帧的R-QP拟合曲线比较
拟合曲线方程 方程式 SSE R-square
指数模型 R=5.1060×exp(-0.0873×QP) 1.5021 0.9726
二次模型 R=0.0033×QP2-0.2527×QP+4.6310 0.6427 0.9884
表2在QP∈{QPK|QPK=2×K,K∈N,10≤K≤25}区间内的R-QP拟合曲线
④-4、根据当前视点视频中的第i-1个图像组中除关键帧外的所有帧的编码量化参数的平均值,计算当前视点视频中的第i个图像组中的关键帧的第二个待选的编码量化参数,记为Q″K(i,0), Q K ′ ′ ( i , 0 ) = Sum BQP ( i - 1 ) N gop - 1 - 1 - 8 × T r ( i - 1 , N gop ) T r ( i , 0 ) - N gop 15 , 其中,SumBQP(i-1)表示当前视点视频中的第i-1个图像组中除关键帧外的所有帧的编码量化参数的和,Tr(i-1,Ngop)表示编码完当前视点视频中的第i-1个图像组后当前视点视频中的剩余比特数,Tr(i,0)表示预编码当前视点视频中的第i个图像组中的关键帧时第i个图像组中的剩余比特数。
④-5、从Q′K(i,0)和Q″K(i,0)中选择值小的待选的编码量化参数作为当前视点视频中的第i个图像组中的关键帧的初步的编码量化参数,记为 然后为了前后两帧视频帧的质量相差较小,规定前后两个同类型视频帧的编码量化参数的差值不得超过2根据前后两帧同类型帧的编码量化参数的差值不得超过2的原则对进行修正,将修正后的编码量化参数记为 Q ~ K ( i , 0 ) = min { Q K ( i - 1,0 ) + 2 , max { Q K ( i - 1,0 ) - 2 , Q ^ K ( i , 0 ) } } , 接着根据H.264标准进一步对进行修正,得到当前视点视频中的第i个图像组中的关键帧的最终的编码量化参数,记为QK(i,0),其中,QK(i-1,0)表示当前视点视频中的第i-1个图像组中的关键帧的编码量化参数,min{}为取最小值函数,max{}为取最大值函数。
④-6、令i=i+1,然后返回步骤④-1继续给当前视点视频中的下一个图像组预分配目标比特数,并设置下一个图像组中的关键帧的编码量化参数,直至当前视点视频中的所有图像组处理完毕,其中,i=i+1中的“=”为赋值符号。
⑤更新预编码当前视点视频中的每个图像组中除关键帧外的每帧时的剩余比特数和目标缓存区占用度,然后给当前视点视频中的每个图像组中除关键帧外的每帧预分配目标比特数,具体过程为:
⑤-1、在恒定带宽的情况下,计算预编码当前视点视频中的第i个图像组中除关键帧外的每帧时第i个图像组中的剩余比特数,将预编码当前视点视频中的第i个图像组中的第j帧时第i个图像组中的剩余比特数记为Tr(i,j),Tr(i,j)=Tr(i,j-1)-A(i,j-1),然后计算预编码当前视点视频中的第i个图像组中除关键帧外的每帧时的目标缓存区占用度,将预编码当前视点视频中的第i个图像组中的第j帧时的目标缓存区占用度记为Tbl(i,j),其中,1≤i≤N,2≤j≤Ngop,Tr(i,j-1)表示预编码当前视点视频中的第i个图像组中的第j-1帧前第i个图像组中的剩余比特数,A(i,j-1)表示编码当前视点视频中的第i个图像组中的第j-1帧的实际比特数,Tbl(i,j-1)表示预编码当前视点视频中的第i个图像组中的第j-1帧时的目标缓存区占用度,Tbl(i,2)表示预编码当前视点视频中的第i个图像组中的第2帧时的目标缓存区占用度,Tbl(i,2)=Bc(i,2),Bc(i,2)表示编码完当前视点视频中的第i个图像组中的第2帧后的实际缓存区占用度。
⑤-2、根据预编码当前视点视频中的第i个图像组中除关键帧外的每帧时第i个图像组中的剩余比特数,计算预分配给当前视点视频中的第i个图像组中除关键帧外的每帧的待选的目标比特数,对于当前视点视频中的第i个图像组中的第j帧,根据Tr(i,j),计算预分配给当前视点视频中的第i个图像组中的第j帧的待选的目标比特数,记为其中,l表示B帧的不同层次,1≤t≤L,L表示分层B帧总的层次数,表示第t层次B帧对应的权重值,表示剩余B帧中第l层次B帧对应的权重值,表示剩余B帧中第l层次B帧的帧数。在此,当当前视点视频中的图像组的长度为8时,分层B帧总的层次数L为3,
⑤-3、根据预编码当前视点视频中的第i个图像组中除关键帧外的每帧时的目标缓存区占用度和编码完当前视点视频中的第i个图像组中除关键帧外的每帧后的实际缓存区占用度,计算预分配给当前视点视频中的第i个图像组中除关键帧外的每帧的待选的目标比特数,对于当前视点视频中的第i个图像组中的第j帧,根据Tbl(i,j)和编码完当前视点视频中的第i个图像组中的第j帧后的实际缓存区占用度Bc(i,j),计算预分配给当前视点视频中的第i个图像组中的第j帧的待选的目标比特数,记为 f ~ ( i , j ) = B F r + γ × ( Tbl ( i , j ) - B c ( i , j ) ) , 其中,γ为常数,在此取γ=0.75。
⑤-4、根据步骤⑤-2和步骤⑤-3计算得到的预分配给当前视点视频中的第i个图像组中除关键帧外的每帧的两个待选的目标比特数,计算预分配给当前视点视频中的第i个图像组中除关键帧外的每帧的最终的目标比特数,对于当前视点视频中的第i个图像组中的第j帧,根据计算预分配给当前视点视频中的第i个图像组中的第j帧的最终的目标比特数,记为f(i,j),其中,β为常数,在此取β=0.5。
⑥给当前视点视频中的每个图像组中除关键帧外的每帧中的每个宏块预分配目标比特数,然后计算当前视点视频中的每个图像组中除关键帧外的每帧中的每个宏块的编码量化参数,具体过程为:
⑥-1、计算预分配给当前视点视频中的第i个图像组中除关键帧外的每帧中的每个宏块的目标比特数,将预分配给当前视点视频中的第i个图像组中的第j帧中的第k个宏块的目标比特数记为fmb(j,k),其中,1≤i≤N,2≤j≤Ngop,Tmb(j,k)表示预编码当前视点视频中的第i个图像组中的第j帧中的第k个宏块时第j帧中的剩余比特数,MAD(j,k)表示当前视点视频中的第i个图像组中的第j帧中的第k个宏块的MAD值,MAD(j,p)表示当前视点视频中的第i个图像组中的第j帧中的第p个宏块的MAD值,1≤k≤Nmb,1≤p≤Nmb,Nmb表示当前视点视频中的第i个图像组中的第j帧所包含的宏块的个数。
在此具体实施例中,当前视点视频中的第i个图像组中的第j帧中的第k个宏块的MAD值MAD(j,k)的获取过程为:根据当前视点视频中的第i个图像组中的第j-1帧中与第j帧中的第k个宏块相同位置的宏块的MAD值MAD(j-1,k),线性预测出MAD(j,k),MAD(j,k)=a1×MAD(j-1,k)+a2,其中,a1和a2均为预测模型参数,a1的初始值为1,a2的初始值为0,在编码完一个宏块后采用线性回归技术更新a1和a2值。
⑥-2、根据预分配给当前视点视频中的第i个图像组中除关键帧外的每帧中的每个宏块的目标比特数,计算当前视点视频中的第i个图像组中除关键帧外的每帧中的每个宏块的编码量化参数,对于当前视点视频中的第i个图像组中的第j帧中的第k个宏块,采用 f mb ( j , k ) = ( X 1 Q mb ( j , k ) 2 + X 2 Q mb ( j , k ) ) × MAD ( j , k ) , 计算当前视点视频中的第i个图像组中的第j帧中的第k个宏块的编码量化参数,记为Qmb(j,k),其中,X1和X2均为 f mb ( j , k ) = ( X 1 Q mb ( j , k ) 2 + X 2 Q mb ( j , k ) ) × MAD ( j , k ) 中的模型参数,在编码完一个宏块后采用线性回归技术更新X1和X2值。
⑦将输入的多视点视频中下一个待处理的视点视频作为当前视点视频,然后返回步骤②继续执行,直至输入的多视点视频中的所有视点视频处理完毕。
以下为对本发明方法进行测试,以证明本发明方法的有效性和可行性。测试环境如表3所列,在IntelCore2Duo3.0GHz、3.25GB内存的计算机上,测试了原始方法和本发明方法。原始方法是指将H.264/AVC中的G012算法拓展到多视点视频编码中,其码率控制部分不做任何针对多视点视频的相关改进。表3中原始方法采用OrgRC表示,本发明方法采用ProRC表示。
表4列出了4个序列在不同的基本QP下的本发明方法与原始方法的码率控制精度和峰值信噪比(PSNR)比较。表4中的目标码率和实际码率是3个视点的总比特数,码率偏差(RateControlError,RCE)用于度量码率控制的精度,即其中,Rtarget和Ractual分别表示目标码率和实际码率。从表4中码率精度方面可以看出,原始方法和本发明方法的码率控制精度大部分都在1%以内控制。原始方法的平均码率控制精度为(-0.17%),而本发明方法的平均码率控制精度为(-0.36%),可知原始方法与本发明方法在码率控制精度上相差不多,而本发明方法是对采用帧内编码的关键帧进行改进,其占用码率比值较大,因此如果关键帧的码率有所改动将会给码率精度带来较大的影响,码率精度还不够精确,尤其在较低码率端时。从表4中的PSNR方面可以看出,本发明方法的PSNR较明显高于原始方法,PSNR平均提高0.19。在较高码率时PSNR增益不那么明显,但是在较低码率时各个序列都有较大的提高,尤其是Doorflowers增益可达0.8dB多,Ballet序列增益达0.6dB。测试序列在较低码率端PSNR增益较明显是因为原始方法在计算关键帧的QP时采用前一个GOP的B帧的平均QP,低码率时B帧的QP选取都较大,因此关键帧的QP值大导致质量较低;而本发明方法根据码率分配利用关键帧的码率-量化参数模型(R-QP)模型求取QP,此时分配的码率和模型系数都较稳定,QP的取值较小,因此在低码率端PSNR增益较显著。
图5a、图5b、图5c和图5d分别给出了Breakdancers序列、Ballet序列、Doorflowers序列和Alt_Moabit序列采用JMVC原始方法(OrgRC)和本发明方法(ProRC)的率失真性能比较,图5a、图5b、图5c和图5d中的Totalrate是指3类视点的总码率,PSNR是3类视点的PSNR平均值。从图5a、图5b、图5c和图5d中可以看出,本发明方法的率失真性能与原始方法相比稍微有所提高,在高码率端与原始方法几乎持平,在低码率端性能提高较显著。分析其原因就是本发明方法中的关键帧的码率-量化参数模型和不同层次的B帧码率分配处理在一定程度上提高了PSNR和率失真性能。
图6a和图6b分别给出了Breakdancers序列采用原始方法处理后得到的重构图像和采用本发明方法处理后的重构图像,图6c给出了Breakdancers序列的原始图像的局部区域,图6d给出了图6a的局部区域,图6e给出了图6b的局部区域。分析图6a至图6e可知,在舞者后面平坦的背景处,原始方法出现了严重的方块效应,而本发明方法则无方块效应获得较高的质量。分析其应该是本发明方法将关键帧的质量提高了导致后续帧的质量也有较大提高,保护了平坦处的质量,舞者的手臂尤其是边缘处在原始方法中有较明显方块效应也都得到了较好的保护。图6d和图6e将手臂的局部区域进行了放大,观察可发现在原始方法中手臂的边缘出现锯齿现象而本发明方法边界曲线较平滑,更适于人眼的主观感受。
图7a和图7b分别给出了Ballet序列采用原始方法处理后得到的重构图像和采用本发明方法处理后的重构图像,图7c给出了Ballet序列的原始图像的局部区域,图7d给出了图7a的局部区域,图7e给出了图7b的局部区域。与Breakdancers序列类似,图7a和图7b在原始方法中芭蕾舞者的脸蛋、胳膊和抬起的那条腿都受到了较严重的影响,观察局部区域图7d和图7e更明显地看出原始方法的人脸部分已经完全被破坏,而本发明方法这些地方都比原始方法获得了更高的质量。
图8a和图8b分别给出了Alt_Moabit序列采用原始方法处理后得到的重构图像和采用本发明方法处理后的重构图像,图8c给出了Alt_Moabit序列的原始图像的局部区域,图8d给出了图8a的局部区域,图8e给出了图8b的局部区域。Alt_Moabit序列有场景变换,会出现车辆和较大型的公交车。从图8c至图8e的局部区域可以看出原始方法中的蓝色轿车车头和公交车头都出现了较明显的方块效应,而本发明方法中轿车和公交车的车头都比较清晰,没有明显的方块效应。
图9a和图9b分别给出了Doorflowers序列采用原始方法处理后得到的重构图像和采用本发明方法处理后的重构图像,图9c给出了Doorflowers序列的原始图像的局部区域,图9d给出了图9a的局部区域,图9e给出了图9b的局部区域。从图9a至图9e可以看出,Doorflowers序列有位男士捧着鲜花从门外进来,纹理较复杂,仔细观察可发现进门男士的头部、腿部和椅子的边缘在原始方法中都较模糊,不够清晰,而在本发明方法中得到了较高的质量,从局部区域图中也可以看出。
表3测试环境
表4本发明方法与原始方法的码率控制精度和PSNR比较

Claims (5)

1.一种基于关键帧码率-量化模型的多视点视频码率控制方法,其特征在于包括以下步骤:
①定义输入的多视点视频中当前正在处理的第k'个视点视频为当前视点视频,其中,k'表示视点的编号,k'的初始值为1;
②将当前视点视频划分成多个图像组,每个图像组在AVC编码格式下包括I帧、P帧和B帧三种类型的图像,每个图像组中的第1帧为关键帧;
③计算预分配给当前视点视频的目标比特数,记为Tview(k'),Tview(k')=Ttotal×w(k'),其中,Ttotal表示输入的多视点视频的总目标比特数,w(k')表示输入的多视点视频中的第k'个视点视频的比例权重;
④给当前视点视频中的每个图像组预分配目标比特数,并设置当前视点视频中的每个图像组中的关键帧的编码量化参数,具体过程为:
④-1、计算预分配给当前视点视频中的第i个图像组的目标比特数,记为f(i,0), f ( i , 0 ) = B F r × N g o p i = 1 B F r × N g o p - ( B s 8 - B c ( i - 1 , N g o p ) ) 2 ≤ i ≤ N , 其中,N表示当前视点视频所包含的图像组的个数,B表示外部设置的可用带宽,Fr为帧率,Ngop表示当前视点视频中的第i个图像组所包含的帧的帧数,Bs表示初始缓存区大小,Bc(i-1,Ngop)表示编码完当前视点视频中的第(i-1)个图像组后的实际缓存区占用度;
④-2、判断当前视点视频中的第i个图像组是否为第1个图像组,如果是,则将外部设置的初始编码量化参数QP0作为第1个图像组中的关键帧的编码量化参数,然后执行步骤④-6,否则,执行步骤④-3,其中,1≤i≤N,QP0∈[0,51];
④-3、根据关键帧的码率-量化模型计算当前视点视频中的第i个图像组中的关键帧的第一个待选的编码量化参数,记为Q′K(i,0),其中,RK(i,0)表示预分配给当前视点视频中的第i个图像组中的关键帧的目标比特数,C1和C2均为常数;
④-4、根据当前视点视频中的第i-1个图像组中除关键帧外的所有帧的编码量化参数的平均值,计算当前视点视频中的第i个图像组中的关键帧的第二个待选的编码量化参数,记为Q″K(i,0), Q K ′ ′ ( i , 0 ) = Sum B Q P ( i - 1 ) N g o p - 1 - 1 - 8 × T r ( i - 1 , N g o p ) T r ( i , 0 ) - N g o p 15 , 其中,SumBQP(i-1)表示当前视点视频中的第i-1个图像组中除关键帧外的所有帧的编码量化参数的和,Tr(i-1,Ngop)表示编码完当前视点视频中的第i-1个图像组后当前视点视频中的剩余比特数,Tr(i,0)表示预编码当前视点视频中的第i个图像组中的关键帧时第i个图像组中的剩余比特数;
④-5、从Q′K(i,0)和Q″K(i,0)中选择值小的待选的编码量化参数作为当前视点视频中的第i个图像组中的关键帧的初步的编码量化参数,记为 然后根据前后两帧同类型帧的编码量化参数的差值不得超过2的原则对进行修正,将修正后的编码量化参数记为 Q ~ K ( i , 0 ) = m i n { Q K ( i - 1 , 0 ) + 2 , m a x { Q K ( i - 1 , 0 ) - 2 , Q ^ K ( i , 0 ) } } , 接着根据H.264标准进一步对进行修正,得到当前视点视频中的第i个图像组中的关键帧的最终的编码量化参数,记为QK(i,0),其中,QK(i-1,0)表示当前视点视频中的第i-1个图像组中的关键帧的编码量化参数,min{}为取最小值函数,max{}为取最大值函数;
④-6、令i=i+1,然后返回步骤④-1继续给当前视点视频中的下一个图像组预分配目标比特数,并设置下一个图像组中的关键帧的编码量化参数,直至当前视点视频中的所有图像组处理完毕,其中,i=i+1中的“=”为赋值符号;
⑤更新预编码当前视点视频中的每个图像组中除关键帧外的每帧时的剩余比特数和目标缓存区占用度,然后给当前视点视频中的每个图像组中除关键帧外的每帧预分配目标比特数,具体过程为:
⑤-1、在恒定带宽的情况下,计算预编码当前视点视频中的第i个图像组中除关键帧外的每帧时第i个图像组中的剩余比特数,将预编码当前视点视频中的第i个图像组中的第j帧时第i个图像组中的剩余比特数记为Tr(i,j),Tr(i,j)=Tr(i,j-1)-A(i,j-1),然后计算预编码当前视点视频中的第i个图像组中除关键帧外的每帧时的目标缓存区占用度,将预编码当前视点视频中的第i个图像组中的第j帧时的目标缓存区占用度记为Tbl(i,j),其中,1≤i≤N,2≤j≤Ngop,Tr(i,j-1)表示预编码当前视点视频中的第i个图像组中的第j-1帧前第i个图像组中的剩余比特数,A(i,j-1)表示编码当前视点视频中的第i个图像组中的第j-1帧的实际比特数,Tbl(i,j-1)表示预编码当前视点视频中的第i个图像组中的第j-1帧时的目标缓存区占用度,Tbl(i,2)表示预编码当前视点视频中的第i个图像组中的第2帧时的目标缓存区占用度,Tbl(i,2)=Bc(i,2),Bc(i,2)表示编码完当前视点视频中的第i个图像组中的第2帧后的实际缓存区占用度;
⑤-2、根据预编码当前视点视频中的第i个图像组中除关键帧外的每帧时第i个图像组中的剩余比特数,计算预分配给当前视点视频中的第i个图像组中除关键帧外的每帧的待选的目标比特数,对于当前视点视频中的第i个图像组中的第j帧,根据Tr(i,j),计算预分配给当前视点视频中的第i个图像组中的第j帧的待选的目标比特数,记为 其中,l表示B帧的不同层次,1≤t≤L,L表示分层B帧总的层次数,表示第t层次B帧对应的权重值,表示剩余B帧中第l层次B帧对应的权重值,表示剩余B帧中第l层次B帧的帧数;
⑤-3、根据预编码当前视点视频中的第i个图像组中除关键帧外的每帧时的目标缓存区占用度和编码完当前视点视频中的第i个图像组中除关键帧外的每帧后的实际缓存区占用度,计算预分配给当前视点视频中的第i个图像组中除关键帧外的每帧的待选的目标比特数,对于当前视点视频中的第i个图像组中的第j帧,根据Tbl(i,j)和编码完当前视点视频中的第i个图像组中的第j帧后的实际缓存区占用度Bc(i,j),计算预分配给当前视点视频中的第i个图像组中的第j帧的待选的目标比特数,记为 f ~ ( i , j ) = B F r + γ × ( T b l ( i , j ) - B c ( i , j ) ) , 其中,γ为常数;
⑤-4、根据步骤⑤-2和步骤⑤-3计算得到的预分配给当前视点视频中的第i个图像组中除关键帧外的每帧的两个待选的目标比特数,计算预分配给当前视点视频中的第i个图像组中除关键帧外的每帧的最终的目标比特数,对于当前视点视频中的第i个图像组中的第j帧,根据计算预分配给当前视点视频中的第i个图像组中的第j帧的最终的目标比特数,记为f(i,j),其中,β为常数;
⑥给当前视点视频中的每个图像组中除关键帧外的每帧中的每个宏块预分配目标比特数,然后计算当前视点视频中的每个图像组中除关键帧外的每帧中的每个宏块的编码量化参数,具体过程为:
⑥-1、计算预分配给当前视点视频中的第i个图像组中除关键帧外的每帧中的每个宏块的目标比特数,将预分配给当前视点视频中的第i个图像组中的第j帧中的第k个宏块的目标比特数记为fmb(j,k),其中,1≤i≤N,2≤j≤Ngop,Tmb(j,k)表示预编码当前视点视频中的第i个图像组中的第j帧中的第k个宏块时第j帧中的剩余比特数,MAD(j,k)表示当前视点视频中的第i个图像组中的第j帧中的第k个宏块的MAD值,MAD(j,p)表示当前视点视频中的第i个图像组中的第j帧中的第p个宏块的MAD值,1≤k≤Nmb,1≤p≤Nmb,Nmb表示当前视点视频中的第i个图像组中的第j帧所包含的宏块的个数;
⑥-2、根据预分配给当前视点视频中的第i个图像组中除关键帧外的每帧中的每个宏块的目标比特数,计算当前视点视频中的第i个图像组中除关键帧外的每帧中的每个宏块的编码量化参数,对于当前视点视频中的第i个图像组中的第j帧中的第k个宏块,采用 f m b ( j , k ) = ( X 1 Q m b ( j , k ) 2 + X 2 Q m b ( j , k ) ) × M A D ( j , k ) , 计算当前视点视频中的第i个图像组中的第j帧中的第k个宏块的编码量化参数,记为Qmb(j,k),其中,X1和X2均为 f m b ( j , k ) = ( X 1 Q m b ( j , k ) 2 + X 2 Q m b ( j , k ) ) × M A D ( j , k ) 中的模型参数,在编码完一个宏块后采用线性回归技术更新X1和X2值;
⑦将输入的多视点视频中下一个待处理的视点视频作为当前视点视频,然后返回步骤②继续执行,直至输入的多视点视频中的所有视点视频处理完毕。
2.根据权利要求1所述的基于关键帧码率-量化模型的多视点视频码率控制方法,其特征在于所述的步骤④-3的具体过程为:
a、计算当前视点视频中的第i-1个图像组中的关键帧的编码复杂度,记为CK(i-1,0),CK(i-1,0)=AK(i-1,0)×QK(i-1,0),其中,AK(i-1,0)表示当前视点视频中的第i-1个图像组中的关键帧的编码实际比特数,QK(i-1,0)表示当前视点视频中的第i-1个图像组中的关键帧的编码量化参数;
b、计算当前视点视频中的第i-1个图像组中除关键帧外的每帧的编码复杂度,将当前视点视频中的第i-1个图像组中的第j帧的编码复杂度记为CB(i-1,j),CB(i-1,j)=AB(i-1,j)×QB(i-1,j),然后计算当前视点视频中的第i-1个图像组中除关键帧外的所有帧的编码复杂度之和,记为CB,i-1其中,2≤j≤Ngop,AB(i-1,j)表示当前视点视频中的第i-1个图像组中的第j帧的编码实际比特数,QB(i-1,j)表示当前视点视频中的第i-1个图像组中的第j帧的编码量化参数;
c、根据当前视点视频中的第i-1个图像组中的关键帧的编码复杂度和除关键帧外的所有帧的编码复杂度之和,计算预分配给当前视点视频中的第i个图像组中的关键帧的目标比特数,记为RK(i,0),其中,f(i,0)表示预分配给当前视点视频中的第i个图像组的目标比特数,CK(i-1,0)表示当前视点视频中的第i-1个图像组中的关键帧的编码复杂度;
d、根据关键帧的码率-量化模型计算当前视点视频中的第i个图像组中的关键帧的第一个待选的编码量化参数,记为Q′K(i,0),其中,C1和C2均为常数。
3.根据权利要求1所述的基于关键帧码率-量化模型的多视点视频码率控制方法,其特征在于所述的步骤④-3中C1=17.96,C2=-0.1704。
4.根据权利要求1至3中任一项所述的基于关键帧码率-量化模型的多视点视频码率控制方法,其特征在于所述的步骤⑤-2中当当前视点视频中的图像组的长度为8时,分层B帧总的层次数L为3, 所述的步骤⑤-3中γ=0.75;所述的步骤⑤-4中β=0.5。
5.根据权利要求4所述的基于关键帧码率-量化模型的多视点视频码率控制方法,其特征在于所述的步骤⑥-1中当前视点视频中的第i个图像组中的第j帧中的第k个宏块的MAD值MAD(j,k)的获取过程为:根据当前视点视频中的第i个图像组中的第j-1帧中与第j帧中的第k个宏块相同位置的宏块的MAD值MAD(j-1,k),线性预测出MAD(j,k),MAD(j,k)=a1×MAD(j-1,k)+a2,其中,a1和a2均为预测模型参数,a1的初始值为1,a2的初始值为0,在编码完一个宏块后采用线性回归技术更新a1和a2值。
CN201210479090.8A 2012-11-21 2012-11-21 基于关键帧码率-量化模型的多视点视频码率控制方法 Expired - Fee Related CN102970540B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210479090.8A CN102970540B (zh) 2012-11-21 2012-11-21 基于关键帧码率-量化模型的多视点视频码率控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210479090.8A CN102970540B (zh) 2012-11-21 2012-11-21 基于关键帧码率-量化模型的多视点视频码率控制方法

Publications (2)

Publication Number Publication Date
CN102970540A CN102970540A (zh) 2013-03-13
CN102970540B true CN102970540B (zh) 2016-03-02

Family

ID=47800383

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210479090.8A Expired - Fee Related CN102970540B (zh) 2012-11-21 2012-11-21 基于关键帧码率-量化模型的多视点视频码率控制方法

Country Status (1)

Country Link
CN (1) CN102970540B (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103414889B (zh) * 2013-04-09 2016-06-22 宁波大学 一种基于双目恰可察觉失真的立体视频码率控制方法
CN104219522B (zh) * 2013-06-04 2018-02-16 北京大学 一种视频图像编码中的码率控制方法及装置
CN104717500B (zh) * 2013-12-12 2018-04-06 中国电信股份有限公司 一种视频编码码率控制方法和系统
CN104244009B (zh) * 2014-08-26 2017-07-07 南京邮电大学 一种分布式视频编码中码率控制方法
WO2018132964A1 (zh) * 2017-01-18 2018-07-26 深圳市大疆创新科技有限公司 传输编码数据的方法、装置、计算机系统和移动设备
CN108401159B (zh) * 2017-02-07 2022-07-08 腾讯科技(深圳)有限公司 一种目标码率控制的方法以及电子设备
CN111182301A (zh) * 2018-11-12 2020-05-19 北京眼神科技有限公司 一种图像压缩时选择最优量化参数的方法、装置、设备及系统
CN109819252B (zh) * 2019-03-20 2021-05-18 福州大学 一种不依赖gop结构的量化参数级联方法
CN112004087B (zh) * 2019-05-27 2023-05-09 北京君正集成电路股份有限公司 一种以双帧作为控制单元的码率控制优化方法及存储介质
CN110290389B (zh) * 2019-07-11 2022-12-06 东华大学 基于长短期参考帧挑选假设匹配块视频压缩感知重构方法
CN110636303B (zh) * 2019-09-19 2022-12-06 深圳市梦网视讯有限公司 一种gop层率控调整方法和系统
CN110545434B (zh) * 2019-09-20 2022-12-02 深圳市梦网视讯有限公司 一种转码片源gop层率控调整方法及系统
CN110971900A (zh) * 2019-11-14 2020-04-07 杭州当虹科技股份有限公司 一种适用于4k、8k超高清运动平缓视频的码率控制方法
CN111372145B (zh) * 2020-04-15 2021-07-27 烽火通信科技股份有限公司 一种多视点视频的视点切换方法和系统
CN116320434A (zh) * 2023-02-26 2023-06-23 翱捷科技股份有限公司 一种p帧和/或b帧图像块级别的码率控制方法及装置
CN116248882A (zh) * 2023-02-26 2023-06-09 翱捷科技股份有限公司 一种i帧图像块级别的码率控制方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101674472A (zh) * 2009-09-25 2010-03-17 上海大学 多视点视频编码的多级码率控制方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8750371B2 (en) * 2010-02-22 2014-06-10 Thomson Licensing Method and apparatus for rate control for multi-view video coding

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101674472A (zh) * 2009-09-25 2010-03-17 上海大学 多视点视频编码的多级码率控制方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一种结合人眼视觉特性的H.264/AVC码率控制算法;郑巧燕等;《光电子·激光》;20110331;第22卷(第3期);P440-445 *

Also Published As

Publication number Publication date
CN102970540A (zh) 2013-03-13

Similar Documents

Publication Publication Date Title
CN102970540B (zh) 基于关键帧码率-量化模型的多视点视频码率控制方法
CN101888566B (zh) 立体视频编码率失真性能估计方法
CN101835056B (zh) 基于模型的纹理视频与深度图的最优码率分配方法
CN100496121C (zh) 一种交互式多视点视频系统的图像信号处理方法
CN104811691B (zh) 一种基于小波变换的立体视频质量客观评价方法
CN103024387B (zh) 一种基于感知的多视点视频码率控制方法
CN101494776B (zh) 一种h.264码率控制方法
CN103561266B (zh) 基于对数r-q模型和层次化比特分配的码率控制方法
CN104796690B (zh) 一种基于人脑记忆模型的无参考视频质量评价方法
CN100562116C (zh) 一种面向多视点视频的码率控制方法
CN103634601B (zh) 基于结构相似度的高效视频编码感知码率控制优化方法
DE102019103346B4 (de) Ssim-basierte rate-distortion-optimierung für eine verbesserte wahrnehmbare qualität bei videos
CN112399176B (zh) 一种视频编码方法、装置、计算机设备及存储介质
CN101572806B (zh) 一种基于h.264的i帧码率控制方法
CN102036062B (zh) 视频编码方法、装置及电子设备
CN103096079B (zh) 一种基于恰可察觉失真的多视点视频码率控制方法
CN101578875A (zh) 利用迭代重新编码的视频信号编码
Guarda et al. Deep learning-based point cloud geometry coding: RD control through implicit and explicit quantization
CN102938840A (zh) 应用于多视点视频编码系统的关键帧量化参数选择方法
CN107040771B (zh) 一种针对全景视频的编码优化方法
CN105120282A (zh) 一种时域依赖的码率控制比特分配方法
CN101674472A (zh) 多视点视频编码的多级码率控制方法
Xu et al. Consistent visual quality control in video coding
CN101888561A (zh) 一种率失真优化动态调整的多视点视频传输差错控制方法
Jin et al. Quantifying the importance of cyclopean view and binocular rivalry-related features for objective quality assessment of mobile 3D video

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: 20160302

Termination date: 20181121

CF01 Termination of patent right due to non-payment of annual fee