一种深度图像和纹理图像码流分配的方法转让专利

申请号 : CN200810161596.8

文献号 : CN101365141B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 许士芳刘济林

申请人 : 浙江大学

摘要 :

本发明公开了一种深度图像和纹理图像码流分配的方法。它包括如下步骤:1)计算深度图像中每个像素点的边缘强度值,然后根据象素点的边缘强度值计算每个宏块的边缘强度值;2)把深度图像中的所有宏块分为强边缘宏块、中等边缘宏块和弱边缘宏块三类;3)对强边缘宏块设置较小量化参数,对中等边缘宏块设置中等量化参数,对弱边缘宏块设置较大量化参数;4)根据设置的量化参数对深度图像中的所有宏块,运用视频编码技术对深度图像进行编码。本发明对强边缘宏块设置小的量化参数,从而有效地保护深度图像的边缘信息,提高用户端自由视点图像绘制的质量。

权利要求 :

1.一种深度图像和纹理图像码流分配的方法,其特征在于包括如下步骤:

1)根据深度图象中相邻象素之间亮度差异平方的均值以及亮度差异均值的平方,计算深度图象复杂度;

2)根据纹理图象中相邻象素之间亮度差异平方的均值以及亮度差异均值的平方,计算纹理图象复杂度;

3)根据深度图象复杂度和纹理图象复杂度,计算分配给深度图像的码流大小和分配给纹理图像的码流大小;

所述的根据深度图象中相邻象素之间亮度差异平方的均值以及亮度差异均值的平方,计算深度图象复杂度步骤:

a)根据下列式子,计算深度图象中相邻象素之间亮度差异平方的均值:

E[DepthDiff2]=(SqrDiff_W+SqrDiff_H)/(2×W×H-W-H);

SqrDiff_W=Σh=0H-1Σw=0W-2(DepthPxl(w+1,h)-DepthPxl(w,h))2;SqrDiff_H=Σh=0H-2Σw=0W-1(DepthPxl(w,h+1)-DepthPxl(w,h))2;其中,SqrDiff_W是横向方向上相邻象素之间亮度差异的平方和,SqrDiff_H是纵向方向上相邻象素之间亮度差异的平方和,DepthPxl(w,h)是深度图像中图像坐标(w,h)处象素点的亮度值,W深度图象的图像宽度,H是深度图象的图像宽度,E[DepthDiff2]是深度图象中相邻象素之间亮度差异平方的均值;

b)根据下列式子,计算深度图象中相邻象素之间亮度差异平方的均值:

E[DepthDiff]2=((Diff_W+Diff_H)/(2×W×H-W-H))2;

Diff_W=Σh=0H-1Σw=0W-2(DepthPxl(h,w+1)-DepthPxl(h,w))2;Diff_H=Σh=0H-2Σw=0W-1(DepthPxl(h+1,w)-DepthPxl(h,w))2;其中,Diff_W是横向方向上相邻象素之间亮度差异的和,Diff_H是纵向方向上相邻象素之间亮度差异的和,DepthPxl(w,h)是深度图像中图像坐标(w,h)处象素点的亮度值,W是深度图象的图像宽度,H是深度图象的图像宽度,E[DepthDiff]2是深度图象中相邻象素之间亮度差异均值的平方;

c)根据下列式子,计算深度图象复杂度:

DepthCmp=E[DepthDiff2]-E[DepthDiff]2;

其中,E[DepthDiff2]是深度图象中相邻象素之间亮度差异平方的均值,E[DepthDiff]2是深度图象中相邻象素之间亮度差异均值的平方,DepthCmp是深度图像复杂度;

所述的根据纹理图象中相邻象素之间亮度差异平方的均值以及亮度差异均值的平方,计算纹理图象复杂度步骤:

d)根据下列式子,计算纹理图象中相邻象素之间亮度差异平方的均值:

E[ColorDiff2]=(SqrDiff_W+SqrDiff_H)/(2×W×H-W-H);

SqrDiff_W=Σh=0H-1Σw=0W-2(ColorPxl(w+1,h)-ColorPxl(w,h))2;SqrDiff_H=Σh=0H-2Σw=0W-1(ColorPxl(w,h+1)-ColorPxl(w,h))2;其中,SqrDiff_W是横向方向上相邻象素之间亮度差异的平方和,SqrDiff_H是纵向方向上相邻象素之间亮度差异的平方和,ColorPxl(w,h)是纹理图像中图像坐标(w,h)处象素点的亮度值,W纹理图象的图像宽度,H是纹理图象的图像宽度,E[ColorDiff2]是纹理图象中相邻象素之间亮度差异平方的均值;

e)根据下列式子,计算纹理图象中相邻象素之间亮度差异平方的均值:

E[ColorDiff]2=((Diff_W+Diff_H)/(2×W×H-W-H))2;

Diff_W=Σh=0H-1Σw=0W-2(ColorPxl(h,w+1)-ColorPxl(h,w))2;Diff_H=Σh=0H-2Σw=0W-1(ColorPxl(h+1,w)-ColorPxl(h,w))2;其中,Diff_W是横向方向上相邻象素之间亮度差异的和,Diff_H是纵向方向上相邻象素之间亮度差异的和,ColorPxl(w,h)是纹理图像中图像坐标(w,h)处象素点的亮度值,W是纹理图象的图像宽度,H是纹理图象的图像宽度,E[ColorDiff]2是纹理图象中相邻象素之间亮度差异均值的平方;

f)根据下列式子,计算纹理图象复杂度:

ColorCmp=E[ColorDiff2]-E[ColorDiff]2;

其中,E[ColorDiff2]是纹理图象中相邻象素之间亮度差异平方的均值,E[ColorDiff]2是纹理图象中相邻象素之间亮度差异均值的平方,ColorCmp是纹理图像复杂度;

所述的根据深度图象复杂度和纹理图象复杂度,计算分配给深度图像的码流大小和分配给纹理图像的码流大小步骤:

g)根据下列式子,计算分配给深度图像的码流大小:

DepthBitRate=TotalBitRate×DepthCmp/(DepthCmp+ColorCmp);

h)根据下列式子,计算分配给纹理图像的码流大小:

ColorBitRate=TotalBitRate×ColorCmp/(DepthCmp+ColorCmp)。

说明书 :

技术领域

本发明涉及数字图像处理技术,特别地,涉及一种立体电视系统中虚拟视点图像绘制的方法

背景技术

随着数字视频技术的快速发展和广泛应用,人们对视频质量和形式的要求越来越高,传统的二维平面视频已满足不了人们对场景的真实和自然再现的需求,因此能够提供立体感和交互操作功能的立体/多视点视频技术越来越受到业界的重视。立体/多视点视频与单目视频相比,增加了景物深度信息表征,在立体电视、虚拟视点电视、具有临场感的可视会议、虚拟现实等领域具有广泛应用前景(见侯春萍,杨蕾,宋晓炜,戴居丰.立体电视技术综述.信号处理.2007.23-5)。
立体电视系统用户端的设计应该满足复杂度低、功能实现简单、制造成本低的要求。因为用户端的计算能力、存储能力有限,在用户端应该选择低计算量、低存储容量的虚拟视点图像绘制算法。欧洲的先进立体电视系统技术(ATTEST)计划提出了基于深度相机的立体场景生成方法,并以此为基础给出设计了立体电视系统。编码端将压缩后的深度图像传送给用户端,用户端用接收到的图像信息进行虚拟视点图像绘制。
深度图像和纹理图像码流分配是立体电视系统中的需要解决的技术之一。如果分配给深度图像的码流太少,会引起虚拟视点图像中物体边缘形变,影响虚拟视点图像绘制的质量;如果分配给纹理图像的码流太少,会引起虚拟视点图像中物体表面纹理模糊,影响虚拟视点图像绘制的质量。本发明根据深度图像复杂度和纹理图像复杂度自适应分配码流,提高用户端所虚拟视点图像绘制的质量。

发明内容

本发明的目的是提供一种深度图像和纹理图像码流分配的方法。本发明根据深度图像复杂度和纹理图像复杂度自适应分配码流,提高用户端所虚拟视点图像绘制的质量。它包括如下步骤:
1)根据深度图象中相邻象素之间亮度差异平方的均值以及亮度差异均值的平方,计算深度图象复杂度;
2)根据纹理图象中相邻象素之间亮度差异平方的均值以及亮度差异均值的平方,计算纹理图象复杂度;
3)根据深度图象复杂度和纹理图象复杂度,计算分配给深度图像的码流大小和分配给纹理图像的码流大小。
所述的根据深度图象中相邻象素之间亮度差异平方的均值以及亮度差异均值的平方,计算深度图象复杂度步骤:
a)根据下列式子,计算深度图象中相邻象素之间亮度差异平方的均值:
E[DepthDiff2]=(SqrDiff_W+SqrDiff_H)/(2×W×H-W-H);
SqrDiff_W=Σh=0H-1Σw=0W-2(DepthPxl(w+1,h)-DepthPxl(w,h))2;
SqrDiff_H=Σh=0H-2Σw=0W-1(DepthPxl(w,h+1)-DepthPxl(w,h))2;
其中,SqrDiff_W是横向方向上相邻象素之间亮度差异的平方和,SqrDiff_H是纵向方向上相邻象素之间亮度差异的平方和,DepthPxl(w,h)是深度图像中图像坐标(w,h)处象素点的亮度值,W深度图象的图像宽度,H是深度图象的图像宽度,E[DepthDiff2]是深度图象中相邻象素之间亮度差异平方的均值;
b)根据下列式子,计算深度图象中相邻象素之间亮度差异平方的均值:
E[DepthDiff]2=((Diff_W+Diff_H)/(2×W×H-W-H))2;
Diff_W=Σh=0H-1Σw=0W-2(DepthPxl(h,w+1)-DepthPxl(h,w))2;
Diff_H=Σh=0H-2Σw=0W-1(DepthPxl(h+1,w)-DepthPxl(h,w))2;
其中,Diff_W是横向方向上相邻象素之间亮度差异的和,Diff_H是纵向方向上相邻象素之间亮度差异的和,DepthPxl(w,h)是深度图像中图像坐标(w,h)处象素点的亮度值,W是深度图象的图像宽度,H是深度图象的图像宽度,E[DepthDiff]2是深度图象中相邻象素之间亮度差异均值的平方;
c)根据下列式子,计算深度图象复杂度:
DepthCmp=E[DepthDiff2]-E[DepthDiff]2;
其中,E[DepthDiff2]是深度图象中相邻象素之间亮度差异平方的均值,E[DepthDiff]2是深度图象中相邻象素之间亮度差异均值的平方,DepthCmp是深度图像复杂度;
所述的根据纹理图象中相邻象素之间亮度差异平方的均值以及亮度差异均值的平方,计算纹理图象复杂度步骤:
d)根据下列式子,计算纹理图象中相邻象素之间亮度差异平方的均值:
E[ColorDiff2]=(SqrDiff_W+SqrDiff_H)/(2×W×H-W-H);
SqrDiff_W=Σh=0H-1Σw=0W-2(ColorPxl(w+1,h)-ColorPxl(w,h))2;
SqrDiff_H=Σh=0H-2Σw=0W-1(ColorPxl(w,h+1)-ColorPxl(w,h))2;
其中,SqrDiff_W是横向方向上相邻象素之间亮度差异的平方和,SqrDiff_H是纵向方向上相邻象素之间亮度差异的平方和,ColorPxl(w,h)是纹理图像中图像坐标(w,h)处象素点的亮度值,W纹理图象的图像宽度,H是纹理图象的图像宽度,E[ColorDiff2]是纹理图象中相邻象素之间亮度差异平方的均值;
e)根据下列式子,计算纹理图象中相邻象素之间亮度差异平方的均值:
E[ColorDiff]2=((Diff_W+Diff_H)/(2×W×H-W-H))2;
Diff_W=Σh=0H-1Σw=0W-2(ColorPxl(h,w+1)-ColorPxl(h,w))2;
Diff_H=Σh=0H-2Σw=0W-1(ColorPxl(h+1,w)-ColorPxl(h,w))2;
其中,Diff_W是横向方向上相邻象素之间亮度差异的和,Diff_H是纵向方向上相邻象素之间亮度差异的和,ColorPxl(w,h)是纹理图像中图像坐标(w,h)处象素点的亮度值,W是纹理图象的图像宽度,H是纹理图象的图像宽度,E[ColorDiff]2是纹理图象中相邻象素之间亮度差异均值的平方;
f)根据下列式子,计算纹理图象复杂度:
ColorCmp=E[ColorDiff2]-E[ColorDiff]2;
其中,E[ColorDiff2]是纹理图象中相邻象素之间亮度差异平方的均值,E[ColorDiff]2是纹理图象中相邻象素之间亮度差异均值的平方,ColorCmp是纹理图像复杂度;
所述的根据深度图象复杂度和纹理图象复杂度,计算分配给深度图像的码流大小和分配给纹理图像的码流大小步骤:
g)根据下列式子,计算分配给深度图像的码流大小:
DepthBitRate=TotalBitRate×DepthCmp/(DepthCmp+ColorCmp);
h)根据下列式子,计算分配给纹理图像的码流大小:
ColorBitRate=TotalBitRate×ColorCmp/(DepthCmp+ColorCmp);
本发明对强边缘宏块设置小的量化参数,从而有效地保护深度图像的边缘信息,提高用户端自由视点图像绘制的质量。

附图说明

图1是深度图像和纹理图像码流分配的方法示意图;
图2是本发明方法所得到的压缩后的深度图像;
图3是本发明方法所得到的压缩后的纹理图像。

具体实施方式

图1给出了本发明的结构示意图。本发明提供了一种深度图像和纹理图像码流分配的方法。它包括如下步骤:
步骤1,根据深度图象中相邻象素之间亮度差异平方的均值以及亮度差异均值的平方,计算深度图象复杂度步骤:
a)根据下列式子,计算深度图象中相邻象素之间亮度差异平方的均值:
E[DepthDiff2]=(SqrDiff_W+SqrDiff_H)/(2×W×H-W-H);
SqrDiff_W=Σh=0H-1Σw=0W-2(DepthPxl(w+1,h)-DepthPxl(w,h))2;
SqrDiff_H=Σh=0H-2Σw=0W-1(DepthPxl(w,h+1)-DepthPxl(w,h))2;
其中,SqrDiff_W是横向方向上相邻象素之间亮度差异的平方和,SqrDiff_H是纵向方向上相邻象素之间亮度差异的平方和,DepthPxl(w,h)是深度图像中图像坐标(w,h)处象素点的亮度值,W深度图象的图像宽度,H是深度图象的图像宽度,E[DepthDiff2]是深度图象中相邻象素之间亮度差异平方的均值;
b)根据下列式子,计算深度图象中相邻象素之间亮度差异平方的均值:
E[DepthDiff]2=((Diff_W+Diff_H)/(2×W×H-W-H))2;
Diff_W=Σh=0H-1Σw=0W-2(DepthPxl(h,w+1)-DepthPxl(h,w))2;
Diff_H=Σh=0H-2Σw=0W-1(DepthPxl(h+1,w)-DepthPxl(h,w))2;
其中,Diff_W是横向方向上相邻象素之间亮度差异的和,Diff_H是纵向方向上相邻象素之间亮度差异的和,DepthPxl(w,h)是深度图像中图像坐标(w,h)处象素点的亮度值,W是深度图象的图像宽度,H是深度图象的图像宽度,E[DepthDiff]2是深度图象中相邻象素之间亮度差异均值的平方;
c)根据下列式子,计算深度图象复杂度:
DepthCmp=E[DepthDiff2]-E[DepthDiff]2;
其中,E[DepthDiff2]是深度图象中相邻象素之间亮度差异平方的均值,E[DepthDiff]2是深度图象中相邻象素之间亮度差异均值的平方,DepthCmp是深度图像复杂度;
步骤2,根据纹理图象中相邻象素之间亮度差异平方的均值以及亮度差异均值的平方,计算纹理图象复杂度步骤:
d)根据下列式子,计算纹理图象中相邻象素之间亮度差异平方的均值:
E[ColorDiff2]=(SqrDiff_W+SqrDiff_H)/(2×W×H-W-H);
SqrDiff_W=Σh=0H-1Σw=0W-2(ColorPxl(w+1,h)-ColorPxl(w,h))2;
SqrDiff_H=Σh=0H-2Σw=0W-1(ColorPxl(w,h+1)-ColorPxl(w,h))2;
其中,SqrDiff_W是横向方向上相邻象素之间亮度差异的平方和,SqrDiff_H是纵向方向上相邻象素之间亮度差异的平方和,ColorPxl(w,h)是纹理图像中图像坐标(w,h)处象素点的亮度值,W纹理图象的图像宽度,H是纹理图象的图像宽度,E[ColorDiff2]是纹理图象中相邻象素之间亮度差异平方的均值;
e)根据下列式子,计算纹理图象中相邻象素之间亮度差异平方的均值:
E[ColorDiff]2=((Diff_W+Diff_H)/(2×W×H-W-H))2;
Diff_W=Σh=0H-1Σw=0W-2(ColorPxl(h,w+1)-ColorPxl(h,w))2;
Diff_H=Σh=0H-2Σw=0W-1(ColorPxl(h+1,w)-ColorPxl(h,w))2;
其中,Diff_W是横向方向上相邻象素之间亮度差异的和,Diff_H是纵向方向上相邻象素之间亮度差异的和,ColorPxl(w,h)是纹理图像中图像坐标(w,h)处象素点的亮度值,W是纹理图象的图像宽度,H是纹理图象的图像宽度,E[ColorDiff]2是纹理图象中相邻象素之间亮度差异均值的平方;
f)根据下列式子,计算纹理图象复杂度:
ColorCmp=E[ColorDiff2]一E[ColorDiff]2;
其中,E[ColorDiff2]是纹理图象中相邻象素之间亮度差异平方的均值,E[ColorDiff]2是纹理图象中相邻象素之间亮度差异均值的平方,ColorCmp是纹理图像复杂度;
步骤3,根据深度图象复杂度和纹理图象复杂度,计算分配给深度图像的码流大小和分配给纹理图像的码流大小步骤:
g)根据下列式子,计算分配给深度图像的码流大小:
DepthBitRate=TotalBitRate×DepthCmp/(DepthCmp+ColorCmp);
h)根据下列式子,计算分配给纹理图像的码流大小:
ColorBitRate=TotalBitRate×ColorCmp/(DepthCmp+ColorCmp);
本发明方法所得到的压缩后的深度图像如图2所示,发明方法所得到的压缩后的纹理图像如图3所示。