CN106303547A - 三维视频编码方法和装置 - Google Patents

三维视频编码方法和装置 Download PDF

Info

Publication number
CN106303547A
CN106303547A CN201510310586.6A CN201510310586A CN106303547A CN 106303547 A CN106303547 A CN 106303547A CN 201510310586 A CN201510310586 A CN 201510310586A CN 106303547 A CN106303547 A CN 106303547A
Authority
CN
China
Prior art keywords
video
frame
block
distortion
coding
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.)
Granted
Application number
CN201510310586.6A
Other languages
English (en)
Other versions
CN106303547B (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.)
Shenzhen Institute of Advanced Technology of CAS
Original Assignee
Shenzhen Institute of Advanced Technology of CAS
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 Shenzhen Institute of Advanced Technology of CAS filed Critical Shenzhen Institute of Advanced Technology of CAS
Priority to CN201510310586.6A priority Critical patent/CN106303547B/zh
Publication of CN106303547A publication Critical patent/CN106303547A/zh
Application granted granted Critical
Publication of CN106303547B publication Critical patent/CN106303547B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明涉及一种三维视频编码方法和装置,包括:获取B视频块和对应的已编码或未编码A视频块虚拟绘制得到的虚拟绘制块或B视频块对应的虚拟视点图像块作为参考块;B视频块在当前编码模式下编码得到预编码B视频块,获取预编码B视频块和对应的已编码或未编码A视频块虚拟绘制得到的重建虚拟绘制块;计算参考块和重建虚拟绘制块的空域失真和时域失真,融合得到绘制失真;载入B视频帧的拉格朗日乘子,获取B视频块的预编码比特数,根据绘制失真、拉格朗日乘子和预编码比特数计算率失真代价;遍历所有编码模式编码,率失真代价最小的编码模式为B视频块的最佳编码模式;获取下一个B视频块编码直到待编码B视频帧编码完成,提高三维视频编码效率。

Description

三维视频编码方法和装置
技术领域
本发明涉及视频编码领域,特别是涉及一种三维视频编码方法和装置。
背景技术
随着数字媒体技术的快速发展及生活水平的不断提高,人们对于视频观看提出了更高的要求,以固定视点观看的传统平面(二维)视频,已无法满足人们的需求。三维电视和自由视点视频应运而生,三维电视和自由视点视频增加了场景对象的深度信息,使图像不再局限于显示屏平面,仿佛能够走出显示屏,使用户感受到深度感和沉浸感。多视点视频加深度(Multi-view Video plus Depth,MVD)的这种三维场景表示方式已逐渐成为多媒体系统中主流数据表示格式,MVD视频数据包含多通道彩色与深度视频,数据量是传统平面2D视频的几十倍甚至上百倍,对媒体计算平台的信号处理、传输和存储提出了重大挑战。
为了有效压缩MVD巨大的数据量,3D视频联合专家组(Joint CollaborativeTeam on 3D Video,JCT-3V)着重推进基于高效视频编码标准(High EfficiencyVideo Coding,HEVC)的三维视频研究以及多视点视频标准化,即3D-HEVC。其采用了基于率失真优化的运动预测和模式选择技术,以及其他一系列先进的视频编解码技术。三维视频除了传输视点外,在用户端还需要综合利用彩色信息与深度信息获得虚拟视点视频图像信息,以供三维显示装置显示较佳的三维效果。现有的编码中,率失真优化只考虑了传输视点图像失真,而没有考虑合成的虚拟视点失真,三维视频的主、客观质量不能达到最优。
发明内容
基于此,有必要针对上述技术问题,提供一种三维视频编码方法和装置,能提高三维编码视频的主、客观质量从而提高三维视频的编码效率。
一种三维视频编码方法,待编码三维视频包括多视点彩色视频和多视点深度视频,多视点彩色视频包括多个视点不同时刻的彩色视频帧,多视点深度视频包括多个视点不同时刻的深度视频帧,将深度视频帧和彩色视频帧分为A视频帧和B视频帧,同一视点同一时刻的彩色视频帧和深度视频帧中先编码的视频帧为A视频帧,后编码的视频帧为B视频帧,将A视频帧分割得到A视频块后进行编码得到已编码A视频块,将待编码B视频帧按照和A视频帧相同的分割方式得到B视频块为待编码块,所述方法包括:
步骤S110:获取由所述B视频块和对应的已编码或未编码A视频块进行虚拟绘制得到的虚拟绘制块或获取所述B视频块对应的虚拟视点图像块,将所述虚拟绘制块或虚拟视点图像块作为参考块;
步骤S120:将所述B视频块在当前编码模式下进行编码得到预编码B视频块;
步骤S130:获取由所述预编码B视频块和对应的已编码或未编码A视频块进行虚拟绘制得到的重建虚拟绘制块;
步骤S140:计算所述参考块和重建虚拟绘制块在空间方向上的空域失真,计算所述参考块和重建虚拟绘制块在时间方向上的时域失真,将空域失真和时域失真进行融合得到绘制失真;
步骤S150:载入B视频帧的拉格朗日乘子,获取编码后的B视频块的预编码比特数,根据所述绘制失真、拉格朗日乘子和预编码比特数计算得到率失真代价;
步骤S160:遍历所有编码模式重复步骤S120至步骤S150,比较率失真代价,将率失真代价最小的编码模式作为所述B视频块的最佳编码模式;
获取下一个B视频块重复步骤S110至步骤S160,直到待编码B视频帧包含的所有B视频块编码完成。
在其中一个实施例中,所述计算所述参考块和重建虚拟绘制块在时间方向上的时域失真的步骤包括:
获取所述参考块BCVS(i,j,t)在之前时刻所对应的前向参考块BCVS(i,j,t-k),其中i表示块位置横向坐标,j表示块位置纵向位置坐标,t表示时刻,k表示时刻索引,k>0;
获取所述重建虚拟绘制块在之前时刻所对应的前向重建绘制块
计算所述参考块BCVS(i,j,t)和前向参考块BCVS(i,j,t-k)不同像素位置的第一亮度像素差异其中ii,jj为像素位置索引值,0≤ii≤M-1,0≤jj≤N-1,M表示参考块的水平宽度,N表示参考块的竖直高度;
计算所述重建虚拟绘制块和前向重建绘制块不同像素位置的第二亮度像素差异
在参考块的像素范围内计算所述第一亮度像素差异和对应的第二亮度像素差异的变化平均值得到所述时域失真。
在其中一个实施例中,所述计算所述参考块和重建虚拟绘制块在时间方向上的时域失真的步骤包括:
根据公式计算得到所述时域失真其中IVS(i+ii,j+jj,t)为参考块BCVS(i,j,t)在像素位置(i+ii,j+jj)的亮度像素值,IVS(i+ii,j+jj,t-k)为前向参考块BCVS(i,j,t-k)在像素位置(i+ii,j+jj)的亮度像素值,为重建虚拟绘制块在像素位置(i+ii,j+jj)的亮度像素值,为前向重建虚拟绘制块在像素位置(i+ii,j+jj)的亮度像素值。
在其中一个实施例中,在所述载入B视频帧的拉格朗日乘子的步骤之前包括:
获取所述B视频帧之前时刻所对应的前向A视频帧和前向B视频帧,并进行绘制得到虚拟绘制帧;
获取所述B视频帧之前时刻所对应的前向重建A视频帧和前向重建B视频帧,并进行绘制得到重建虚拟绘制帧;
计算所述虚拟绘制帧和重建虚拟绘制帧在空间方向上的帧空域失真,计算所述虚拟绘制帧和重建虚拟绘制帧在时间方向上的帧时域失真,将帧空域失真和帧时域失真进行融合得到帧绘制失真;
通过公式计算得到B视频帧的拉格朗日乘子λ(n,t),其中R(n,t′)为B视频帧之前时刻的前向B视频帧F(n,t′)编码后的比特数,φ1(n,t′)为所述帧空域失真,QVS(n,t′)为所述帧绘制失真,n表示视点索引,t′表示B视频帧之前的时刻。
在其中一个实施例中,所述将空域失真和时域失真进行融合得到绘制失真的步骤为:
通过计算得到绘制失真DVS(i,j),其中表示空域失真,表示时域失真,ω为加权系数,其中0≤ω≤1;
所述将帧空域失真和帧时域失真进行融合得到帧绘制失真的步骤为:
将所述绘制失真以帧为单位相加得到帧绘制失真。
在其中一个实施例中,在所述载入B视频帧的拉格朗日乘子的步骤之前包括步骤之前,还包括:
计算所述前向A视频帧和对应的前向重建A视频帧在空间方向上的前向编码失真Q′(n,t′);
将前向编码失真Q′(n,t′)和帧绘制失真QVS(n,t′)通过公式Q(n,t′)=(1-α)·Q′(n,t′)+α·QVS(n,t′)得到帧编码失真Q(n,t′),其中0≤α≤1;
通过公式计算得到拉格朗日乘子,其中R(n,t′)为B视频帧之前时刻的前向B视频帧F(n,t′)编码后的比特数,n表示视点索引,t′表示时刻。
在其中一个实施例中,所述方法还包括:
在待编码三维视频包括的多视点彩色视频和多视点深度视频编码完成后,在所有视点和所有时刻范围内,进行以下步骤:
依次获取彩色视频帧和深度视频帧进行绘制得到第n个视点和t时刻对应的虚拟视频绘制帧FVS(n,t)或依次获取第n个视点和t时刻的B视频帧对应的虚拟视点图像帧CVS(n,t),将虚拟视频绘制帧FVS(n,t)或虚拟视点图像帧CVS(i,j)作为参考帧FCVS(n,t),其中0<n<N-1,0<t<T-1;
依次获取重建彩色视频帧和重建深度视频帧进行绘制得到第n个视点和t时刻的重建虚拟视频绘制帧
依次计算所述参考帧和重建虚拟视频绘制帧在时间方向上第n个视点和t时刻的时域失真φ1(n,t);
依次计算所述参考帧和重建虚拟视频绘制帧在空间方向上第n个视点和t时刻对应的空域失真φ2(n,t);
依次将时域失真φ1(n,t)和空域失真φ2(n,t)进行加权得到第n个视点和t时刻的视频绘制失真QVS(n,t);
依次分别计算A视频帧和重建A视频帧在空间方向上第n个视点和t时刻的视频编码失真Q′(n,t);
依次将视频绘制失真QVS(n,t)和视频编码失真Q′(n,t)进行融合得到第n个视点和t时刻的视频失真Q(n,t);
根据公式计算得到三维视频编码失真
一种三维视频编码装置,待编码三维视频包括多视点彩色视频和多视点深度视频,多视点彩色视频包括多个视点不同时刻的彩色视频帧,多视点深度视频包括多个视点不同时刻的深度视频帧,将深度视频帧和彩色视频帧分为A视频帧和B视频帧,同一视点同一时刻的彩色视频帧和深度视频帧中先编码的视频帧为A视频帧,后编码的视频帧为B视频帧,将A视频帧分割得到A视频块后进行编码得到已编码A视频块,将待编码B视频帧按照和A视频帧相同的分割方式得到B视频块为待编码块,其特征在于,所述装置包括:
参考块获取模块,用于获取由所述B视频块和对应的已编码或未编码A视频块进行虚拟绘制得到的虚拟绘制块或获取所述B视频块对应的虚拟视点图像块,将所述虚拟绘制块或虚拟视点图像块作为参考块;
预编码模块,用于将所述B视频块在当前编码模式下进行编码得到预编码B视频块;
重建虚拟绘制块获取模块,用于获取由所述预编码B视频块和对应的已编码或未编码A视频块进行虚拟绘制得到的重建虚拟绘制块;
绘制失真模块,用于计算所述参考块和重建虚拟绘制块在空间方向上的空域失真,计算所述参考块和重建虚拟绘制块在时间方向上的时域失真,将空域失真和时域失真进行融合得到绘制失真;
率失真代价计算模块,用于载入B视频帧的拉格朗日乘子,获取编码后的B视频块的预编码比特数,根据所述绘制失真、拉格朗日乘子和预编码比特数计算得到率失真代价;
最佳编码模式得到模块,用于遍历所有编码模式重复进入预编码模块至率失真代价计算模块,比较率失真代价,将率失真代价最小的编码模式作为所述B视频块的最佳编码模式;
重复编码模块,用于获取下一个B视频块,重复进入参考块获取模块至最佳编码模式得到模块,直到待编码B视频帧包含的所有B视频块编码完成。
在其中一个实施例中,所述绘制失真模块包括:
前向参考块获取单元,用于获取所述参考块BCVS(i,j,t)在之前时刻所对应的前向参考块BCVS(i,j,t-k),其中i表示块位置横向坐标,j表示块位置纵向位置坐标,t表示时刻,k表示时刻索引,k>0;
前向重建绘制块获取单元,用于获取所述重建虚拟绘制块在之前时刻所对应的前向重建绘制块
第一亮度像素差异计算单元,用于计算所述参考块BCVS(i,j,t)和前向参考块BCVS(i,j,t-k)不同像素位置的第一亮度像素差异其中ii,jj为像素位置索引值,0≤ii≤M-1,0≤jj≤N-1,M表示参考块的水平宽度,N表示参考块的竖直高度;
第二亮度像素差异计算单元,用于计算所述重建虚拟绘制块和前向重建绘制块不同像素位置的第二亮度像素差异
时域失真计算单元,用于在参考块的像素范围内计算所述第一亮度像素差异和对应的第二亮度像素差异的变化平均值得到所述时域失真。
在其中一个实施例中,所述装置还包括:
三维视频质量评价模块,用于在待编码三维视频包括的多视点彩色视频和多视点深度视频编码完成后,在所有视点和所有时刻范围内,依次获取彩色视频帧和深度视频帧进行绘制得到第n个视点和t时刻对应的虚拟视频绘制帧FVS(n,t)或依次获取第n个视点和t时刻的B视频帧对应的虚拟视点图像帧CVS(n,t),将虚拟视频绘制帧FVS(n,t)或虚拟视点图像帧CVS(i,j)作为参考帧FCVS(n,t),其中0<n<N-1,0<t<T-1,依次获取重建彩色视频帧和重建深度视频帧进行绘制得到第n个视点和t时刻的重建虚拟视频绘制帧依次计算所述参考帧和重建虚拟视频绘制帧在时间方向上第n个视点和t时刻的时域失真φ1(n,t),依次计算所述参考帧和重建虚拟视频绘制帧在空间方向上第n个视点和t时刻对应的空域失真φ2(n,t),依次将时域失真φ1(n,t)和空域失真φ2(n,t)进行加权得到第n个视点和t时刻的视频绘制失真QVS(n,t),依次分别计算A视频帧和重建A视频帧在空间方向上第n个视点和t时刻的视频编码失真Q′(n,t),依次将视频绘制失真QVS(n,t)和视频编码失真Q′(n,t)进行融合得到第n个视点和t时刻的视频失真Q(n,t),根据公式计算得到三维视频编码失真
上述三维视频编码方法和装置,通过获取由B视频块和对应的已编码或未编码A视频块进行虚拟绘制得到的虚拟绘制块或获取所述B视频块对应的虚拟视点图像块,将虚拟绘制块或虚拟视点图像块作为参考块,将B视频块在当前编码模式下进行编码得到预编码B视频块,获取由预编码B视频块和对应的已编码或未编码A视频块进行虚拟绘制得到的重建虚拟绘制块,计算参考块和重建虚拟绘制块在空间方向上的空域失真,计算参考块和重建虚拟绘制块在时间方向上的时域失真,将空域失真和时域失真进行融合得到绘制失真,载入B视频帧的拉格朗日乘子,获取编码后的B视频块的预编码比特数,根据绘制失真、拉格朗日乘子和预编码比特数计算得到率失真代价,遍历所有编码模式重复编码,比较率失真代价,将率失真代价最小的编码模式作为B视频块的最佳编码模式,获取下一个B视频块重复编码,直到待编码B视频帧包含的所有B视频块编码完成。在编码过程中,率失真代价的计算考虑了绘制失真,更好地符合人眼视觉系统的3D感知效果,使编码器得到更准确的最佳编码模式进行编码,能提高编码后的虚拟视点视频图像质量,能提高三维编码视频的主、客观质量从而提高三维视频的编码效率。
附图说明
图1为三维多视点视频系统示意图;
图2为一个实施例中三维视频编码方法的流程图;
图3为一个实施例中计算时域失真的流程图;
图4为一个实施例中拉格朗日乘子计算方法的流程图;
图5为另一个实施例中拉格朗日乘子计算方法的流程图;
图6为一个实施例中三维视频编码失真计算方法的流程图;
图7为一个实施例中三维视频编码装置的结构框图;
图8为一个实施例中率失真代价计算模块的结构框图;
图9为另一个实施例中三维视频编码装置的结构框图;
图10为各序列在不同三维视频编码方法下的率失真性能曲线图。
具体实施方式
三维多视点视频系统如图1所示,其主要包括采集、视频编码、网络传输、视频解码、视点绘制和3D(三维)显示模块,三维视频编码方法可运行于此系统。通过摄像头采集生成原始多视点视频,包括彩色视频和深度视频,摄像头还可以采集虚拟视点视频,虚拟视点视频是由原始左视点视频和原始右视点视频中间位置的摄像头采集的视频,不需要经过编码,只用于进行参考。经过多视点视频编码器编码生成码流,经过存储和传输,再经过多视点视频解码器解码生成重建多视点视频,同样包括重建彩色视频和深度视频,再经过虚拟视点绘制后进行显示。
如图2所示,提供了一种三维视频编码方法,包括以下步骤:
步骤S110,获取由所述B视频块和对应的已编码或未编码A视频块进行虚拟绘制得到的虚拟绘制块或获取所述B视频块对应的虚拟视点图像块,将虚拟绘制块或虚拟视点图像块作为参考块。
具体的,待编码三维视频包括多视点彩色视频和多视点深度视频,多视点彩色视频包括n视点t时刻的彩色视频帧为Fc(n,t),多视点深度视频包括n视点t时刻的深度视频帧为Fd(n,t)。同一视点同一时刻的彩色视频帧Fc(n,t)和深度视频帧Fd(n,t)的编码顺序可以自定义,先编码的视频帧为A视频帧,后编码的视频帧为B视频帧,如果先编码彩色视频帧Fc(n,t),则彩色视频帧Fc(n,t)为A视频帧,深度视频帧Fd(n,t)为B视频帧。如果先编码深度视频帧Fd(n,t),则深度视频帧Fd(n,t)为A视频帧,彩色视频帧Fc(n,t)为B视频帧。
对A视频帧采取块处理方式进行编码,进行分割后得到A视频块,将A视频块进行编码得到已编码A视频块,至于A视频块采用何种方法获取最佳编码模式不限定,如可以采用传统的编码方法对A视频块进行编码。将待编码B视频帧按照和A视频帧相同的分割方式得到B视频块为待编码块。
坐标位置为i,j的A视频块记为A'(i,j),已编码A视频块记为坐标位置为i,j的B视频块记为B(i,j),BVS(i,j)为由A视频块A'(i,j)或已编码A视频块和B视频块B(i,j)进行绘制得到的坐标位置为i,j的虚拟绘制块。
将与n视点对应的虚拟视点视频t时刻的虚拟视点视频帧按照和A视频帧相同的分割方式得到虚拟视点图像块,获取坐标位置为i,j的虚拟视点图像块CVS(i,j),将虚拟绘制块BVS(i,j)或虚拟视点图像块CVS(i,j)作为参考块BCVS(i,j)。
步骤S120,将B视频块在当前编码模式下进行编码得到预编码B视频块。
具体的,编码模式是指编码时与预测方法对应的预测模式,编码模式往往有多种,如帧内编码模式,帧间编码模式等。在编码时遍历所有的编码模式或根据需要选择需要的编码模式快速遍历。在遍历时,当前编码采用的编码模式为当前编码模式,对B视频块B(i,j)在当前编码模式下进行编码得到预编码B视频块
步骤S130,获取由预编码B视频块和对应的已编码或未编码A视频块进行虚拟绘制得到的重建虚拟绘制块。
具体的,将预编码B视频块和已编码A视频块或未编码A视频块A'(i,j)进行绘制得到的坐标位置为i,j的重建虚拟绘制块
步骤S140,计算参考块和重建虚拟绘制块在空间方向上的空域失真,计算参考块和重建虚拟绘制块在时间方向上的时域失真,将空域失真和时域失真进行融合得到绘制失真。
具体的,根据参考块BCVS(i,j)和重建虚拟绘制块分别计算空域失真和时域失真然后将空域失真和时域失真进行融合得到绘制失真DVS(i,j)。计算公式如下:
其中f2(·)为空域失真计算函数,f3(·)为时域失真计算函数,ω为系数,其取值范围为0≤ω≤1。可以理解的是,空域失真计算函数和时域失真计算函数可以根据需要自行设计。
在一个实施例中,计算参考块和重建虚拟绘制块在时间方向上的时域失真的步骤包括:
步骤S141,获取参考块BCVS(i,j,t)在之前时刻所对应的前向参考块BCVS(i,j,t-k),其中i表示块位置横向坐标,j表示块位置纵向位置坐标,t表示时刻,k表示时刻索引,k>0。
步骤S142,获取重建虚拟绘制块在之前时刻所对应的前向重建绘制块
步骤S143,计算参考块BCVS(i,j,t)和前向参考块BCVS(i,j,t-k)不同像素位置的第一亮度像素差异其中ii,jj为像素位置索引值,0≤ii≤M-1,0≤jj≤N-1,M表示参考块的水平宽度,N表示参考块的竖直高度。
具体的,可根据需要自定义第一亮度像素差异的计算公式。如通过直接将参考块BCVS(i,j,t)和前向参考块BCVS(i,j,t-k)对应位置像素值相减得到各个像素点的差异像素值作为第一亮度像素差异,或再将差异像素值进行平方计算得到第一亮度像素差异。
步骤S144,计算重建虚拟绘制块和前向重建绘制块不同像素位置的第二亮度像素差异
具体的,可根据需要自定义第二亮度像素差异的计算公式。如通过直接将重建虚拟绘制块和前向重建绘制块对应位置像素值相减得到各个像素点的差异像素值作为第二亮度像素差异,或再将差异像素值进行平方计算得到第二亮度像素差异。
步骤S145,在参考块的像素范围内计算所述第一亮度像素差异和对应的第二亮度像素差异的变化平均值得到所述时域失真。
具体的,可自定义变化平均值的计算公式,如直接将第一亮度像素差异和对应的第二亮度像素差异的差值的绝对值在块的范围内相加,再除以块的面积得到时域失真,或者将差值的绝对值进行平方计算再在块的范围内相加再除以块的面积得到时域失真。
在一个实施例中,由公式计算得到所述时域失真其中IVS(i+ii,j+jj,t)为参考块BCVS(i,j,t)在像素位置(i+ii,j+jj)的亮度像素值,IVS(i+ii,j+jj,t-k)为前向参考块BCVS(i,j,t-k)在像素位置(i+ii,j+jj)的亮度像素值,为重建虚拟绘制块在像素位置(i+ii,j+jj)的亮度像素值,为前向重建虚拟绘制块在像素位置(i+ii,j+jj)的亮度像素值。
步骤S150,载入B视频帧的拉格朗日乘子,获取编码后的B视频块的预编码比特数,根据绘制失真、拉格朗日乘子和预编码比特数计算得到率失真代价。
具体的,不具体限定率失真代价的具体计算方法,只要计算率失真代价时使用了绘制失真DVS(i,j)都在本方法的保护范围内。在一个实施例中,率失真代价的计算公式为其中λ(n,t)为载入的n视点t时刻的B视频帧对应的拉格朗日乘子,为B视频块B(i,j)预编码后的比特数,J为B视频块B(i,j)的率失真代价。
步骤S160,遍历所有编码模式重复步骤S120至步骤S150,比较率失真代价,将率失真代价最小的编码模式作为B视频块的最佳编码模式。
具体的,对B视频块遍历所有的编码模式,得到不同编码模式下的重建虚拟绘制块,重复步骤S120至步骤S150,选择率失真代价最小的模式为B视频块的最佳编码模式。
步骤S170,获取下一个B视频块重复步骤S110至步骤S160,直到待编码B视频帧包含的所有B视频块编码完成。
本实施例中,通过获取由B视频块和对应的已编码或未编码A视频块进行虚拟绘制得到的虚拟绘制块或获取所述B视频块对应的虚拟视点图像块,将虚拟绘制块或虚拟视点图像块作为参考块,将B视频块在当前编码模式下进行编码得到预编码B视频块,获取由预编码B视频块和对应的已编码或未编码A视频块进行虚拟绘制得到的重建虚拟绘制块,计算参考块和重建虚拟绘制块在空间方向上的空域失真,计算参考块和重建虚拟绘制块在时间方向上的时域失真,将空域失真和时域失真进行融合得到绘制失真,载入B视频帧的拉格朗日乘子,获取编码后的B视频块的预编码比特数,根据绘制失真、拉格朗日乘子和预编码比特数计算得到率失真代价,遍历所有编码模式重复编码,比较率失真代价,将率失真代价最小的编码模式作为B视频块的最佳编码模式,获取下一个B视频块重复编码,直到待编码B视频帧包含的所有B视频块编码完成。在编码过程中,率失真代价的计算考虑了绘制失真,更好地符合人眼视觉系统的3D感知效果,使编码器得到更准确的最佳编码模式进行编码,能提高编码后的虚拟视点视频图像质量,能提高三维编码视频的主、客观质量从而提高三维视频的编码效率。
在一个实施例中,如图4所示,步骤S150之前还包括:
步骤S210,获取所述B视频帧之前时刻所对应的前向A视频帧和前向B视频帧,并进行绘制得到虚拟绘制帧。
具体的,若t为B视频帧所在时刻,则t′<t表示B视频帧之前的时刻,将t′时刻对应的前向A视频帧Fa(n,t′)和前向B视频帧Fb(n,t′)进行绘制得到的虚拟绘制帧FVS(n,t′)。优选的,可取前一帧所在时刻。
步骤S220,获取B视频帧之前时刻所对应的前向重建A视频帧和前向重建B视频帧,并进行绘制得到重建虚拟绘制帧。
具体的,获取B视频帧之前时刻所对应的前向重建A视频帧和前向重建B视频帧将前向重建A视频帧和前向重建B视频帧进行绘制得到的重建虚拟绘制帧
步骤S230,计算虚拟绘制帧和重建虚拟绘制帧在空间方向上的帧空域失真,计算虚拟绘制帧和重建虚拟绘制帧在时间方向上的帧时域失真,将帧空域失真和帧时域失真进行融合得到帧绘制失真。
具体的,根据虚拟绘制帧FVS(n,t′)和重建虚拟绘制帧分别计算帧空域失真φ1(n,t′)和帧时域失真φ2(n,t′),然后将帧空域失真φ1(n,t′)和帧时域失真φ2(n,t′)进行融合得到帧绘制失真QVS(n,t′)。计算公式如下:
QVS(n,t′)=(1-ω)·φ1(n,t′)+ω·φ2(n,t′)
φ 1 ( n , t ′ ) = f 2 ′ ( F V S ( n , t ′ ) , F ^ V S ( n , t ′ ) )
φ 2 ( n , t ′ ) = f 3 ′ ( F V S ( n , t ′ ) , F ^ V S ( n , t ′ ) )
其中f2′(·)为空域失真计算函数,f3′(·)为时域失真计算函数,ω为加权系数,其取值范围为0≤ω≤1。可以理解的是,空域失真计算函数和时域失真计算函数可以根据需要自行设计。
在一个实施例中, φ 1 ( n , t ′ ) = 1 W × H Σ x = 0 W - 1 Σ y = 0 H - 1 [ I ^ V S ( x , y ) - I V S ( x , y ) ] 2 φ 2 ( n , t ′ ) = 1 W × H Σ x = 0 W - 1 Σ y = 0 H - 1 [ ▿ I ^ V S ( x , y ) - ▿ I V S ( x , y ) ] 2 ▿ I ( x , y ) = I t ′ ( x , y ) - I t ′ - 1 ( x , y ) , 其中IVS(x,y)为虚拟绘制帧FVS(n,t′)在像素位置(x,y)的像素值(亮度Y分量),为重建虚拟绘制帧在像素位置(x,y)的像素值(亮度Y分量),其中It′(x,y)表示t′时刻视频帧像素位置为(x,y)的像素值(亮度Y分量),It′-1(x,y)表示t′-1时刻视频帧像素位置为(x,y)的像素值(亮度Y分量),W表示当前编码帧的水平分辨率,H表示当前视频帧的竖直分辨率,其中x,y为像素位置索引值,0≤x≤W-1,0≤y≤H-1。
在一个实施例中,将空域失真和时域失真进行融合得到绘制失真的步骤为:通过计算得到绘制失真DVS(i,j),其中表示空域失真,表示时域失真,ω为加权系数,其中0≤ω≤1。将帧空域失真和帧时域失真进行融合得到帧绘制失真的步骤为:将绘制失真以帧为单位相加得到帧绘制失真。
步骤S240,通过公式计算得到B视频帧的拉格朗日乘子λ(n,t),其中R(n,t′)为B视频帧之前时刻的前向B视频帧F(n,t′)编码后的比特数,φ1(n,t′)为所述帧空域失真,QVS(n,t′)为所述帧绘制失真,n表示视点索引,t′表示B视频帧之前的时刻。
具体的,在计算拉格朗日乘子时考虑帧绘制失真QVS(n,t′),其中R(n,t′)为当前B视频帧之前的帧F(n,t′)编码后的比特数。其中,为传统基于视点合成优化(VSO)技术的深度编码器所采用的拉格朗日乘子。
在一个实施例中,如图5所示,步骤S150之前还包括:
步骤S310,计算前向A视频帧和对应的前向重建A视频帧在空间方向上的前向编码失真Q′(n,t′)。
具体的,根据公式计算前向编码失真Q′(n,t′),其中f1(·)为传统的空间方向上编码失真计算函数,Fa(n,t′)为前向A视频帧,为前向重建A视频帧。
步骤S320,将前向编码失真Q′(n,t′)和帧绘制失真QVS(n,t′)通过公式Q(n,t′)=(1-α)·Q′(n,t′)+α·QVS(n,t′)得到帧编码失真Q(n,t′),其中0≤α≤1。
步骤S330,通过公式计算得到拉格朗日乘子,其中R(n,t′)为B视频帧之前时刻的前向B视频帧F(n,t′)编码后的比特数,n表示视点索引,t′表示时刻,其中,为传统视频编码器所采用的拉格朗日乘子。
在一个实施例中,在待编码三维视频包括的多视点彩色视频和多视点深度视频编码完成后,在所有视点和所有时刻范围内,如图6所示,所述方法还包括:
步骤S410,依次获取彩色视频帧和深度视频帧进行绘制得到第n个视点和t时刻对应的虚拟视频绘制帧FVS(n,t)或依次获取第n个视点和t时刻的B视频帧对应的虚拟视点图像帧CVS(n,t),将虚拟视频绘制帧FVS(n,t)或虚拟视点图像帧CVS(i,j)作为参考帧FCVS(n,t),其中0<n<N-1,0<t<T-1。
具体的,依次获取第n个视点和t时刻所对应的彩色视频帧Fc(n,t)和深度视频帧Fd(n,t)进行绘制得到第n个视点和t时刻所对应的虚拟视频绘制帧FVS(n,t),虚拟视点图像帧是虚拟视点视频中的图像帧,依次获取第n个视点和t时刻的B视频帧对应的虚拟视点图像帧CVS(n,t),其中0<n<N-1,0<t<T-1,N表示当前编码视频总视点数,T表示当前编码视频总帧数,将虚拟视频绘制帧FVS(n,t)或虚拟视点图像帧CVS(i,j)作为参考帧FCVS(n,t)。
步骤S420,依次获取重建彩色视频帧和重建深度视频帧进行绘制得到第n个视点和t时刻的重建虚拟视频绘制帧
具体的,依次获取第n个视点和t时刻所对应的重建彩色视频帧和重建深度视频帧进行绘制得到第n个视点和t时刻所对应的已编码虚拟视频绘制帧其中0<n<N-1,0<t<T-1。
步骤S430,依次计算参考帧和重建虚拟视频绘制帧在时间方向上第n个视点和t时刻的时域失真φ1(n,t),依次计算参考帧和重建虚拟视频绘制帧在空间方向上第n个视点和t时刻对应的空域失真φ2(n,t),依次将时域失真φ1(n,t)和空域失真φ2(n,t)进行加权得到第n个视点和t时刻的视频绘制失真QVS(n,t)。
具体的,计算公式如下:
QVS(n,t)=(1-ω)·φ1(n,t)+ω·φ2(n,t)
φ 1 ( n , t ) = f 2 ( FC V S ( n , t ) , F ^ V S ( n , t ) )
φ 2 ( n , t ) = f 3 ( FC V S ( n , t ) , F ^ V S ( n , t ) )
其中f2(·)为空域失真计算函数,f3(·)为时域失真计算函数,ω为加权系数,其取值范围为0≤ω≤1。可以理解的是,空域失真计算函数和时域失真计算函数可以根据需要自行设计。
在一个实施例中, Q V S ( n , t ) = ( 1 - ω ) × φ 1 ( n , t ) + ω × φ 2 ( n , t ) φ 1 ( n , t ) = 1 W × H Σ x = 0 W - 1 Σ y = 0 H - 1 [ I ^ V S ( x , y ) - I V S ( x , y ) ] γ φ 2 ( n , t ) = 1 W × H Σ x = 0 W - 1 Σ y = 0 H - 1 [ ▿ I ^ V S ( x , y ) - ▿ I V S ( x , y ) ] γ ▿ I ( x , y ) = 1 k Σ τ = 0 k I t ( x , y ) - I t - τ ( x , y ) , 其中IVS(x,y)为参考帧FCVS(n,t)在像素位置(x,y)的像素值(亮度Y分量),为重建虚拟绘制帧在像素位置(x,y)的像素值(亮度Y分量),其中It(x,y)表示当前t时刻视频帧像素位置为(x,y)的像素值(亮度Y分量),It-τ(x,y)表示t-τ时刻视频帧像素位置为(x,y)的像素值(亮度Y分量),k为常数,γ∈{1,2},W表示当前视频帧的水平分辨率,H表示当前视频帧的竖直分辨率。其中x,y为像素位置索引值,0≤x≤W-1,0≤y≤H-1。
步骤S440,依次分别计算A视频帧和重建A视频帧在空间方向上第n个视点和t时刻的视频编码失真Q′(n,t)。
具体的,根据第n个视点和t时刻的A视频帧Fa(n,t)和重建A视频帧公式计算得到视频编码失真Q′(n,t),其中f1(·)为传统在空间方向上计算视频编码失真的计算函数,其中0<n<N-1,0<t<T-1,N表示当前编码视频总视点数,T表示当前编码视频总帧数对应的总时刻数。
在一个实施例中, Q ′ ( n , t ) = 1 W × H Σ i = 0 W - 1 Σ j = 0 H - 1 [ I ^ ′ ( x , y ) - I ′ ( x , y ) ] γ , γ ∈ { 1 , 2 } . 其中I′(x,y)为A视频帧Fa(n,t)在像素位置(x,y)的像素值(亮度Y分量),为重建A视频帧在像素位置(x,y)的像素值(亮度Y分量)。
步骤S450,依次将视频绘制失真QVS(n,t)和视频编码失真Q′(n,t)进行融合得到第n个视点和t时刻的视频失真Q(n,t),根据公式计算得到三维视频编码失真
具体的,根据公式Q(n,t)=(1-β)·Q′(n,t)+β·QVS(n,t)得到第n个视点和t时刻的视频失真Q(n,t),然后进行累加得到三维视频编码失真 其中β为加权系数,0<β<1。
在一个实施例中,定义虚拟视频质量模型(SVQM)来衡量处理后的多视点彩色视频和多视点深度视频的质量,记为
在一个实施例中,如图7所示,提供了一种三维视频编码装置,待编码三维视频包括多视点彩色视频和多视点深度视频,多视点彩色视频包括多个视点不同时刻的彩色视频帧,多视点深度视频包括多个视点不同时刻的深度视频帧,将深度视频帧和彩色视频帧分为A视频帧和B视频帧,同一视点同一时刻的彩色视频帧和深度视频帧中先编码的视频帧为A视频帧,后编码的视频帧为B视频帧,将A视频帧分割得到A视频块后进行编码得到已编码A视频块,将待编码B视频帧按照和A视频帧相同的分割方式得到B视频块为待编码块,包括:
参考块获取模块510,用于获取由B视频块和对应的已编码或未编码A视频块进行虚拟绘制得到的虚拟绘制块或获取所述B视频块对应的虚拟视点图像块,将虚拟绘制块或虚拟视点图像块作为参考块。
预编码模块520,用于将B视频块在当前编码模式下进行编码得到预编码B视频块。
重建虚拟绘制块获取模块530,用于获取由预编码B视频块和对应的已编码或未编码A视频块进行虚拟绘制得到的重建虚拟绘制块。
绘制失真模块540,用于计算参考块和重建虚拟绘制块在空间方向上的空域失真,计算参考块和重建虚拟绘制块在时间方向上的时域失真,将空域失真和时域失真进行融合得到绘制失真。
率失真代价计算模块550,用于载入B视频帧的拉格朗日乘子,获取编码后的B视频块的预编码比特数,根据绘制失真、拉格朗日乘子和预编码比特数计算得到率失真代价。
最佳编码模式得到模块560,用于遍历所有编码模式重复进入预编码模块至率失真代价计算模块,比较率失真代价,将率失真代价最小的编码模式作为B视频块的最佳编码模式。
重复编码模块570,用于获取下一个B视频块,重复进入参考块获取模块至最佳编码模式得到模块,直到待编码B视频帧包含的所有B视频块编码完成。
在一个实施例中,绘制失真模块540包括:
前向参考块获取单元541,用于获取所述参考块BCVS(i,j,t)在之前时刻所对应的前向参考块BCVS(i,j,t-k),其中i表示块位置横向坐标,j表示块位置纵向位置坐标,t表示时刻,k表示时刻索引,k>0。
前向重建绘制块获取单元542,用于获取所述重建虚拟绘制块在之前时刻所对应的前向重建绘制块
第一亮度像素差异计算单元543,用于计算所述参考块BCVS(i,j,t)和前向参考块BCVS(i,j,t-k)不同像素位置的第一亮度像素差异其中ii,jj为像素位置索引值,0≤ii≤M-1,0≤jj≤N-1,M表示参考块的水平宽度,N表示参考块的竖直高度。
第二亮度像素差异计算单元544,用于计算所述重建虚拟绘制块和前向重建绘制块不同像素位置的第二亮度像素差异
时域失真计算单元545,用于在参考块的像素范围内计算所述第一亮度像素差异和对应的第二亮度像素差异的变化平均值得到所述时域失真。
在一个实施例中,绘制失真模块540还用于根据公式计算得到时域失真其中IVS(i+ii,j+jj,t)为参考块BVS(i,j,t)在像素位置(i+ii,j+jj)的亮度像素值,IVS(i+ii,j+jj,t-k)为前向参考块BCVS(i,j,t-k)在像素位置(i+ii,j+jj)的亮度像素值,为重建虚拟绘制块在像素位置(i+ii,j+jj)的亮度像素值,为前向重建虚拟绘制块在像素位置(i+ii,j+jj)的亮度像素值。
在一个实施例中,所述装置还包括:拉格朗日乘子计算模块,用于获取B视频帧之前时刻所对应的前向A视频帧和前向B视频帧,并进行绘制得到虚拟绘制帧,获取B视频帧之前时刻所对应的前向重建A视频帧和前向重建B视频帧,并进行绘制得到重建虚拟绘制帧,计算虚拟绘制帧和重建虚拟绘制帧在空间方向上的帧空域失真,计算虚拟绘制帧和重建虚拟绘制帧在时间方向上的帧时域失真,将帧空域失真和帧时域失真进行融合得到帧绘制失真,通过公式计算得到B视频帧的拉格朗日乘子λ(n,t),其中R(n,t′)为B视频帧之前时刻的前向B视频帧F(n,t′)编码后的比特数,φ1(n,t′)为所述帧空域失真,QVS(n,t′)为所述帧绘制失真,n表示视点索引,t′表示B视频帧之前的时刻。
在一个实施例中,绘制失真模块540还用于通过计算得到绘制失真DVS(i,j),其中表示空域失真,表示时域失真,ω为加权系数,其中0≤ω≤1,拉格朗日乘子计算模块580还用于将绘制失真以帧为单位相加得到帧绘制失真。
在一个实施例中,拉格朗日乘子计算模块580还用于计算前向A视频帧和对应的前向重建A视频帧在空间方向上的前向编码失真Q′(n,t′),将前向编码失真Q′(n,t′)和帧绘制失真QVS(n,t′)通过公式Q(n,t′)=(1-α)·Q′(n,t′)+α·QVS(n,t′)得到帧编码失真Q(n,t′),其中0≤α≤1,通过公式计算得到拉格朗日乘子,其中R(n,t′)为B视频帧之前时刻的前向B视频帧F(n,t′)编码后的比特数,n表示视点索引,t′表示时刻。
在一个实施例中,如图9所示,所述装置还包括:三维视频质量评价模块580,用于在待编码三维视频包括的多视点彩色视频和多视点深度视频编码完成后,在所有视点和所有时刻范围内依次获取彩色视频帧和深度视频帧进行绘制得到第n个视点和t时刻对应的虚拟视频绘制帧FVS(n,t)或依次获取第n个视点和t时刻的B视频帧对应的虚拟视点图像帧CVS(n,t),将虚拟视频绘制帧FVS(n,t)或虚拟视点图像帧CVS(i,j)作为参考帧FCVS(n,t),其中0<n<N-1,0<t<T-1,依次获取重建彩色视频帧和重建深度视频帧进行绘制得到第n个视点和t时刻的重建虚拟视频绘制帧依次计算参考帧和重建虚拟视频绘制帧在时间方向上第n个视点和t时刻的时域失真φ1(n,t),依次计算参考帧和重建虚拟视频绘制帧在空间方向上第n个视点和t时刻对应的空域失真φ2(n,t),依次将时域失真φ1(n,t)和空域失真φ2(n,t)进行加权得到第n个视点和t时刻的视频绘制失真QVS(n,t),依次分别计算A视频帧和重建A视频帧在空间方向上第n个视点和t时刻的视频编码失真Q′(n,t),依次将视频绘制失真QVS(n,t)和视频编码失真Q′(n,t)进行融合得到第n个视点和t时刻的视频失真Q(n,t),根据公式计算得到三维视频编码失真
具体的,在一个实施例中,实验采用JVT-3V所推荐实验平台HTM-11.0,主要配置说明如表1所示。测试序列从主观实验测试序列中选择GhostTownFly、Newspaper、PoznanHall2、BookArriaval、PoznanStreet和PoznanCarPark六个序列作为测试。原始HTM-11.0和本发明方法的编码实验在同一台计算机上进行,计算机配置为DELL OPTIPLEX GX620系列台式电脑,Intel(R)Xero(R)双核2.40GHz E5620CPU,内存容量48GB,Microsoft Windows 7专业版64位操作系统。原始HTM-11.0平台编码方法标记为“Org_HTM”,本发明方法标记为“Proposed”,测试结果采用绘制视频的SVQM作为编码深度视频的质量评估,类似BDBR(Bjontegaard Delta Bit Rate)和BDPSNR(Bjontegaard Delta PSNR),采用BDBR(Bjontegaard Delta Bit Rate)来衡量相同SVQM条件下的码率增益,BDSVQM(Bjontegaard Delta SVQM)来衡量相同码率条件的SVQM增益。
表1 3D-HTM主要配置说明
GOP 4 I帧周期 16
视点间编码结构 P-I-P 输入序列 两个视点加深度
时域编码结构 IPPP EarlyVSOSkip OFF
RDOQ ON 绘制算法 1D fast VSRS
VSO ON Texture QP 25,30,35,40
VSD OFF Depth QP 34,39,42,45
表2表示Org_HTM和Proposed两种三维视频编码方法下的实验测试结果,从表2可知,本发明方法Proposed相对于Org_HTM算法性能有显著地提升,其中平均BDBR和平均BDSVQM分别为-22.6%和0.49dB。
图10表示各序列在不同三维视频编码方法(Org_HTM和Proposed)下的RD性能曲线,从图中可以看出,本发明方法具有更好的RD性能曲线。
表2 各深度编码框架的实验结果
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种三维视频编码方法,待编码三维视频包括多视点彩色视频和多视点深度视频,多视点彩色视频包括多个视点不同时刻的彩色视频帧,多视点深度视频包括多个视点不同时刻的深度视频帧,将深度视频帧和彩色视频帧分为A视频帧和B视频帧,同一视点同一时刻的彩色视频帧和深度视频帧中先编码的视频帧为A视频帧,后编码的视频帧为B视频帧,将A视频帧分割得到A视频块后进行编码得到已编码A视频块,将待编码B视频帧按照和A视频帧相同的分割方式得到B视频块为待编码块,所述方法包括:
步骤S110:获取由所述B视频块和对应的已编码或未编码A视频块进行虚拟绘制得到的虚拟绘制块或获取所述B视频块对应的虚拟视点图像块,将所述虚拟绘制块或虚拟视点图像块作为参考块;
步骤S120:将所述B视频块在当前编码模式下进行编码得到预编码B视频块;
步骤S130:获取由所述预编码B视频块和对应的已编码或未编码A视频块进行虚拟绘制得到的重建虚拟绘制块;
步骤S140:计算所述参考块和重建虚拟绘制块在空间方向上的空域失真,计算所述参考块和重建虚拟绘制块在时间方向上的时域失真,将空域失真和时域失真进行融合得到绘制失真;
步骤S150:载入B视频帧的拉格朗日乘子,获取编码后的B视频块的预编码比特数,根据所述绘制失真、拉格朗日乘子和预编码比特数计算得到率失真代价;
步骤S160:遍历所有编码模式重复步骤S120至步骤S150,比较率失真代价,将率失真代价最小的编码模式作为所述B视频块的最佳编码模式;
获取下一个B视频块重复步骤S110至步骤S160,直到待编码B视频帧包含的所有B视频块编码完成。
2.根据权利要求1所述的方法,其特征在于,所述计算所述参考块和重建虚拟绘制块在时间方向上的时域失真的步骤包括:
获取所述参考块BCVS(i,j,t)在之前时刻所对应的前向参考块BCVS(i,j,t-k),其中i表示块位置横向坐标,j表示块位置纵向位置坐标,t表示时刻,k表示时刻索引,k>0;
获取所述重建虚拟绘制块在之前时刻所对应的前向重建绘制块
计算所述参考块BCVS(i,j,t)和前向参考块BCVS(i,j,t-k)不同像素位置的第一亮度像素差异▽IVS(i+ii,j+jj),其中ii,jj为像素位置索引值,0≤ii≤M-1,0≤jj≤N-1,M表示参考块的水平宽度,N表示参考块的竖直高度;
计算所述重建虚拟绘制块和前向重建绘制块不同像素位置的第二亮度像素差异
在参考块的像素范围内计算所述第一亮度像素差异▽IVS(i+ii,j+jj)和对应的第二亮度像素差异的变化平均值得到所述时域失真。
3.根据权利要求2所述的方法,其特征在于,所述计算所述参考块和重建虚拟绘制块在时间方向上的时域失真的步骤包括:
根据公式▽IVS(i+ii,j+jj)=IVS(i+ii,j+jj,t)-IVS(i+ii,j+jj,t-k)计算得到所述
▿ I ^ V S ( i + i i , j + j j ) = I ^ V S ( i + i i , j + j j , t ) - I ^ V S ( i + i i , j + j j , t - k )
时域失真其中IVS(i+ii,j+jj,t)为参考块BCVS(i,j,t)在像素位置(i+ii,j+jj)的亮度像素值,IVS(i+ii,j+jj,t-k)为前向参考块BCVS(i,j,t-k)在像素位置(i+ii,j+jj)的亮度像素值,为重建虚拟绘制块在像素位置(i+ii,j+jj)的亮度像素值,为前向重建虚拟绘制块在像素位置(i+ii,j+jj)的亮度像素值。
4.根据权利要求1所述的方法,其特征在于,在所述载入B视频帧的拉格朗日乘子的步骤之前包括:
获取所述B视频帧之前时刻所对应的前向A视频帧和前向B视频帧,并进行绘制得到虚拟绘制帧;
获取所述B视频帧之前时刻所对应的前向重建A视频帧和前向重建B视频帧,并进行绘制得到重建虚拟绘制帧;
计算所述虚拟绘制帧和重建虚拟绘制帧在空间方向上的帧空域失真,计算所述虚拟绘制帧和重建虚拟绘制帧在时间方向上的帧时域失真,将帧空域失真和帧时域失真进行融合得到帧绘制失真;
通过公式计算得到B视频帧的拉格朗日乘子λ(n,t),其中R(n,t′)为B视频帧之前时刻的前向B视频帧F(n,t′)编码后的比特数,φ1(n,t′)为所述帧空域失真,QVS(n,t′)为所述帧绘制失真,n表示视点索引,t′表示B视频帧之前的时刻。
5.根据权利要求4所述的方法,其特征在于,所述将空域失真和时域失真进行融合得到绘制失真的步骤为:
通过计算得到绘制失真DVS(i,j),其中表示空域失真,表示时域失真,ω为加权系数,其中0≤ω≤1;
所述将帧空域失真和帧时域失真进行融合得到帧绘制失真的步骤为:
将所述绘制失真以帧为单位相加得到帧绘制失真。
6.根据权利要求4所述的方法,其特征在于,在所述载入B视频帧的拉格朗日乘子的步骤之前包括步骤之前,还包括:
计算所述前向A视频帧和对应的前向重建A视频帧在空间方向上的前向编码失真Q′(n,t′);
将前向编码失真Q′(n,t′)和帧绘制失真QVS(n,t′)通过公式Q(n,t′)=(1-α)·Q′(n,t′)+α·QVS(n,t′)得到帧编码失真Q(n,t′),其中0≤α≤1;
通过公式计算得到拉格朗日乘子,其中R(n,t′)为B视频帧之前时刻的前向B视频帧F(n,t′)编码后的比特数,n表示视点索引,t′表示时刻。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在待编码三维视频包括的多视点彩色视频和多视点深度视频编码完成后,在所有视点和所有时刻范围内,进行以下步骤:
依次获取彩色视频帧和深度视频帧进行绘制得到第n个视点和t时刻对应的虚拟视频绘制帧FVS(n,t)或依次获取第n个视点和t时刻的B视频帧对应的虚拟视点图像帧CVS(n,t),将虚拟视频绘制帧FVS(n,t)或虚拟视点图像帧CVS(i,j)作为参考帧FCVS(n,t),其中0<n<N-1,0<t<T-1;
依次获取重建彩色视频帧和重建深度视频帧进行绘制得到第n个视点和t时刻的重建虚拟视频绘制帧
依次计算所述参考帧和重建虚拟视频绘制帧在时间方向上第n个视点和t时刻的时域失真φ1(n,t);
依次计算所述参考帧和重建虚拟视频绘制帧在空间方向上第n个视点和t时刻对应的空域失真φ2(n,t);
依次将时域失真φ1(n,t)和空域失真φ2(n,t)进行加权得到第n个视点和t时刻的视频绘制失真QVS(n,t);
依次分别计算A视频帧和重建A视频帧在空间方向上第n个视点和t时刻的视频编码失真Q′(n,t);
依次将视频绘制失真QVS(n,t)和视频编码失真Q′(n,t)进行融合得到第n个视点和t时刻的视频失真Q(n,t);
根据公式计算得到三维视频编码失真
8.一种三维视频编码装置,待编码三维视频包括多视点彩色视频和多视点深度视频,多视点彩色视频包括多个视点不同时刻的彩色视频帧,多视点深度视频包括多个视点不同时刻的深度视频帧,将深度视频帧和彩色视频帧分为A视频帧和B视频帧,同一视点同一时刻的彩色视频帧和深度视频帧中先编码的视频帧为A视频帧,后编码的视频帧为B视频帧,将A视频帧分割得到A视频块后进行编码得到已编码A视频块,将待编码B视频帧按照和A视频帧相同的分割方式得到B视频块为待编码块,其特征在于,所述装置包括:
参考块获取模块,用于获取由所述B视频块和对应的已编码或未编码A视频块进行虚拟绘制得到的虚拟绘制块或获取所述B视频块对应的虚拟视点图像块,将所述虚拟绘制块或虚拟视点图像块作为参考块;
预编码模块,用于将所述B视频块在当前编码模式下进行编码得到预编码B视频块;
重建虚拟绘制块获取模块,用于获取由所述预编码B视频块和对应的已编码或未编码A视频块进行虚拟绘制得到的重建虚拟绘制块;
绘制失真模块,用于计算所述参考块和重建虚拟绘制块在空间方向上的空域失真,计算所述参考块和重建虚拟绘制块在时间方向上的时域失真,将空域失真和时域失真进行融合得到绘制失真;
率失真代价计算模块,用于载入B视频帧的拉格朗日乘子,获取编码后的B视频块的预编码比特数,根据所述绘制失真、拉格朗日乘子和预编码比特数计算得到率失真代价;
最佳编码模式得到模块,用于遍历所有编码模式重复进入预编码模块至率失真代价计算模块,比较率失真代价,将率失真代价最小的编码模式作为所述B视频块的最佳编码模式;
重复编码模块,用于获取下一个B视频块,重复进入参考块获取模块至最佳编码模式得到模块,直到待编码B视频帧包含的所有B视频块编码完成。
9.根据权利要求8所述的装置,其特征在于,所述绘制失真模块包括:
前向参考块获取单元,用于获取所述参考块BVS(i,j,t)在之前时刻所对应的前向参考块BVS(i,j,t-k),其中i表示块位置横向坐标,j表示块位置纵向位置坐标,t表示时刻,k表示时刻索引,k>0;
前向重建绘制块获取单元,用于获取所述重建虚拟绘制块在之前时刻所对应的前向重建绘制块
第一亮度像素差异计算单元,用于计算所述参考块BVS(i,j,t)和前向参考块BVS(i,j,t-k)不同像素位置的第一亮度像素差异▽IVS(i+ii,j+jj),其中ii,jj为像素位置索引值,0≤ii≤M-1,0≤jj≤N-1,M表示参考块的水平宽度,N表示参考块的竖直高度;
第二亮度像素差异计算单元,用于计算所述重建虚拟绘制块和前向重建绘制块不同像素位置的第二亮度像素差异
时域失真计算单元,用于在参考块的像素范围内计算所述第一亮度像素差异▽IVS(i+ii,j+jj)和对应的第二亮度像素差异的变化平均值得到所述时域失真。
10.根据权利要求8所述的装置,其特征在于,所述装置还包括:
三维视频质量评价模块,用于在待编码三维视频包括的多视点彩色视频和多视点深度视频编码完成后,在所有视点和所有时刻范围内,依次获取彩色视频帧和深度视频帧进行绘制得到第n个视点和t时刻对应的虚拟视频绘制帧FVS(n,t)或依次获取第n个视点和t时刻的B视频帧对应的虚拟视点图像帧CVS(n,t),将虚拟视频绘制帧FVS(n,t)或虚拟视点图像帧CVS(i,j)作为参考帧FCVS(n,t),其中0<n<N-1,0<t<T-1,依次获取重建彩色视频帧和重建深度视频帧进行绘制得到第n个视点和t时刻的重建虚拟视频绘制帧依次计算所述参考帧和重建虚拟视频绘制帧在时间方向上第n个视点和t时刻的时域失真φ1(n,t),依次计算所述参考帧和重建虚拟视频绘制帧在空间方向上第n个视点和t时刻对应的空域失真φ2(n,t),依次将时域失真φ1(n,t)和空域失真φ2(n,t)进行加权得到第n个视点和t时刻的视频绘制失真QVS(n,t),依次分别计算A视频帧和重建A视频帧在空间方向上第n个视点和t时刻的视频编码失真Q′(n,t),依次将视频绘制失真QVS(n,t)和视频编码失真Q′(n,t)进行融合得到第n个视点和t时刻的视频失真Q(n,t),根据公式计算得到三维视频编码失真
CN201510310586.6A 2015-06-08 2015-06-08 三维视频编码方法和装置 Active CN106303547B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510310586.6A CN106303547B (zh) 2015-06-08 2015-06-08 三维视频编码方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510310586.6A CN106303547B (zh) 2015-06-08 2015-06-08 三维视频编码方法和装置

Publications (2)

Publication Number Publication Date
CN106303547A true CN106303547A (zh) 2017-01-04
CN106303547B CN106303547B (zh) 2019-01-01

Family

ID=57659779

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510310586.6A Active CN106303547B (zh) 2015-06-08 2015-06-08 三维视频编码方法和装置

Country Status (1)

Country Link
CN (1) CN106303547B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106791835A (zh) * 2017-03-01 2017-05-31 北京大学 一种参考图像管理方法
WO2020098751A1 (zh) * 2018-11-14 2020-05-22 深圳市中兴微电子技术有限公司 一种视频数据的编码处理方法和计算机存储介质
CN115604477A (zh) * 2022-12-14 2023-01-13 广州波视信息科技股份有限公司(Cn) 一种超高清视频失真优化编码方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101404766A (zh) * 2008-11-05 2009-04-08 宁波大学 一种多视点视频信号的编码方法
CN101729891A (zh) * 2009-11-05 2010-06-09 宁波大学 一种多视点深度视频的编码方法
CN102065296A (zh) * 2011-01-06 2011-05-18 宁波大学 一种三维立体视频编码方法
CN102413353A (zh) * 2011-12-28 2012-04-11 清华大学 立体视频编码过程的多视点视频和深度图的码率分配方法
CN103220532A (zh) * 2013-05-02 2013-07-24 清华大学 立体视频的联合预测编码方法及系统
CN103338370A (zh) * 2013-06-05 2013-10-02 宁波大学 一种多视点深度视频快速编码方法
CN104244008A (zh) * 2014-09-12 2014-12-24 宁波大学 一种深度视频编码方法
CN104469336A (zh) * 2013-09-25 2015-03-25 中国科学院深圳先进技术研究院 多视点深度视频信号的编码方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101404766A (zh) * 2008-11-05 2009-04-08 宁波大学 一种多视点视频信号的编码方法
CN101729891A (zh) * 2009-11-05 2010-06-09 宁波大学 一种多视点深度视频的编码方法
CN102065296A (zh) * 2011-01-06 2011-05-18 宁波大学 一种三维立体视频编码方法
CN102413353A (zh) * 2011-12-28 2012-04-11 清华大学 立体视频编码过程的多视点视频和深度图的码率分配方法
CN103220532A (zh) * 2013-05-02 2013-07-24 清华大学 立体视频的联合预测编码方法及系统
CN103338370A (zh) * 2013-06-05 2013-10-02 宁波大学 一种多视点深度视频快速编码方法
CN104469336A (zh) * 2013-09-25 2015-03-25 中国科学院深圳先进技术研究院 多视点深度视频信号的编码方法
CN104244008A (zh) * 2014-09-12 2014-12-24 宁波大学 一种深度视频编码方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106791835A (zh) * 2017-03-01 2017-05-31 北京大学 一种参考图像管理方法
CN106791835B (zh) * 2017-03-01 2019-12-10 北京大学 一种参考图像管理方法
WO2020098751A1 (zh) * 2018-11-14 2020-05-22 深圳市中兴微电子技术有限公司 一种视频数据的编码处理方法和计算机存储介质
CN115604477A (zh) * 2022-12-14 2023-01-13 广州波视信息科技股份有限公司(Cn) 一种超高清视频失真优化编码方法

Also Published As

Publication number Publication date
CN106303547B (zh) 2019-01-01

Similar Documents

Publication Publication Date Title
CN101374243B (zh) 一种应用于3dtv与ftv系统的深度图编码压缩方法
CN101888566B (zh) 立体视频编码率失真性能估计方法
CN101990100B (zh) 一种解码方法以及编码方法
CN111527752B (zh) 图像编码和解码的方法和装置以及存储比特流的记录介质
CN101729891B (zh) 一种多视点深度视频的编码方法
CN101103632A (zh) 利用动态地基于法向流的量化步长来处理视频信号的方法
US9883200B2 (en) Method of acquiring neighboring disparity vectors for multi-texture and multi-depth video
CN102970529B (zh) 一种基于对象的多视点视频分形编码压缩与解压缩方法
CN102413353B (zh) 立体视频编码过程的多视点视频和深度图的码率分配方法
CN108347611B (zh) 用于经纬图的编码块级拉格朗日乘子的优化方法
CN104620583A (zh) 基于支持信息的残差数据的编码和重构
CN102158712A (zh) 一种基于视觉的多视点视频信号编码方法
CN101404766B (zh) 一种多视点视频信号的编码方法
CN104756489A (zh) 一种虚拟视点合成方法及系统
Liu et al. 3D holoscopic image coding scheme using HEVC with Gaussian process regression
CN104715496A (zh) 云环境下基于三维点云模型的图像预测方法、系统及装置
CN106303547A (zh) 三维视频编码方法和装置
CN102065296A (zh) 一种三维立体视频编码方法
CN103716643A (zh) 用于使用内容信息改进视频编码的系统和方法
Shao et al. No-reference view synthesis quality prediction for 3-D videos based on color–depth interactions
CN113784129A (zh) 点云质量评估方法、编码器、解码器及存储介质
CN106664415A (zh) 使用深度块的多层视频编码方法和多层视频解码方法
CN105721866A (zh) 一种编码单元划分方法及装置
US9609361B2 (en) Method for fast 3D video coding for HEVC
CN105898331A (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