一种筛选图像的方法及装置

文档序号:30708996发布日期:2022-07-10 02:34阅读:67来源:国知局
一种筛选图像的方法及装置

1.本发明专利属于子块图像处理领域,具体涉及一种完整图像或多视点子块拼接图像在进行目标图像渲染前,进行子块图像或处理单元筛选的方法和装置。


背景技术:

[0002]“沉浸感”作为一种主观评价,是指观看者对多媒体系统建立、显示出来的虚拟场景的感知代入感。随着采集设备和显示设备的能力逐年增强,沉浸式媒体作为一种能够带给观看者强沉浸感的视觉多媒体,其编码、传输和渲染已经成为了工业界和科学界的研究热点。
[0003]
随着沉浸式媒体支持观看自由度的增加,其带给观看者的视觉沉浸感得到明显增强。在三维空间下,观看者的观看自由度最多支持6个自由度,包括沿三维空间x,y,z轴平移和分别绕三个轴旋转。目前,观看者可以在限定空间(平移自由度受限)中任意移动位置、改变朝向来观看场景,从而获得交互感和运动视差,形成更强的视觉沉浸感。
[0004]
为了支持有限空间的6自由度观看场景,沉浸式媒体需要渲染限定空间中任意位置、任意朝向的目标内容。多视点图像加深度信息是一种有效的沉浸式媒体表达方式,它由多个视点的纹理图像以及各纹理图像对应的深度图像组成。利用基于深度图像的视点合成技术,该表达方式可以根据目标图像的相机参数以及目标视点和已有视点的位置关系渲染得到目标视点的图像。但是由于多个视点之间一般存在较大的信息冗余,编码传输所有多视点源图像会造成编解码的代价很大。
[0005]
多视点子块拼接图像有效地解决了上述问题。在编解码之前,通过分析多个视点之间的几何纹理关系,利用主视点(多视点图像中的某些包含完整视点信息的图像)图像尽可能剔除其他视点的冗余信息,因此除了主视点外的其他视点图像只保留特有的有效信息。考虑到编码效率,子图有效信息的保留一般用矩形区域表示,这样就形成多个矩形子块图像,最后将多个子块图像拼接成多视点子块拼接图像,如图1所示。经过上述操作后,需要编码传输的图像数据量能大大减少。
[0006]
对于解码端,利用解码得到的子块图像信息,从解码得到的多视点子块拼接图像中提取所有子块图像。其中,所述的子块图像信息至少包括:子块图像的宽度、高度、子块图像的左上角像素在多视点拼接图像中的位置和子块图像的左上角像素在源视点图像中的位置。
[0007]
目标图像合成是以子块图像为单位进行投影计算的。对于每个子块图像,利用子块图像所属单视点图像的相机参数和目标图像的相机参数关系,进行目标图像渲染,其中相机参数中的相机内参包括焦距、主点坐标和坐标轴倾斜参数,这些参数包含在下式的内参矩阵中。任意两个视点v1,v2间对应像素的视点间位置关系如下公式所示:
[0008][0009]
其中,u
target
,v
target
是目标视点v1中像素点的坐标位置,
[0010]uref
,v
ref
是参考视点v2中像素点的坐标位置,
[0011]
是目标视点v1的相机内参矩阵,
[0012]
是参考视点v2的相机内参矩阵,
[0013]
r和t表示参考视点v2处的相机坐标与目标视点v1处的相机坐标旋转平移关系,
[0014]zref
是参考视点v2中像素点对应的深度值,
[0015]ztarget
是目标视点v1中像素点对应的深度值,
[0016]
最后对所有投影到目标图像的子块纹理信息进行融合处理,合成目标图像。与传输完整数量的多视点源图像相比,在相同码率下,目标图像的合成质量能得到显著的提升。
[0017]
在实际的图像处理系统中,解码端的处理时间是衡量该系统是否可行的关键参数。而目前基于子块图像的目标图像合成依然有可改进优化的空间。多视点子块拼接图像中所有的子块图像联合描述了整个场景信息。而在观看者观看视角域有限的约束下,观看的每帧目标图像只覆盖部分的全部视角场景内容,这就会出现某个子块图像对于合成目标图像完全无信息贡献,如图2所示,子块图像2的内容渲染后与目标图像完全没有区域覆盖,这些对目标视点无贡献子块图像的逐像素投影计算增加了无效的计算负担。


技术实现要素:

[0018]
为了解决上述技术问题,本发明提出了一种筛选图像的方法及装置。在每个子块图像或处理单元进行目标图像渲染前,添加预筛选过程,在目标视点观看位置和已有视点偏离距离和角度不大,子块图像或处理单元的大小所占视角范围不大,水平竖直一般小于90度,目标图像为非全景、有限视野范围的图像的前提下,用子块图像内的一定数量的代表点以及深度范围来描述子块图像或处理单元包含的场景范围,通过这些代表点落在目标图像上的情况来判决是否使用该子块图像或处理单元进行图像渲染,只对有效的子块图像或处理单元进行预渲染。这样节省了进行图像渲染的子块图像或处理单元数量,在不改变目标图像的合成质量的同时,降低了渲染计算时间。
[0019]
已有技术在图像投影格式为球面投影的使用情况下,由于球体的表面外凸,所以子块图像边界顶点在空间中最远深度位置的两点连线是弦所在的面非球切面,如图4所示如果恰好仅仅球凸面落在目标视野范围而弦所在面处于视野不可见区域时会被错误当做该子块图像完全不可见,因此被误删从而造成目标图像质量退化,影响视觉效果。
[0020]
本发明的第一目的是提供一种筛选图像的方法,包括如下内容:
[0021]
对于多视点子块拼接图像中的至少一个图像,获取该图像的宽度信息width、高度信息height、该图像在多视点子块拼接图像中的位置信息、该图像在源视点图像中的位置信息和该图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参;
[0022]
获取目标图像的宽度信息width_o、高度信息height_o和相机参数;
[0023]
获得所述图像的两个深度参数:最近深度参数z_near_new和最远深度参数z_far_new,其中z_near_new≤z_far_new;
[0024]
利用所述图像的最远深度参数z_far_new以及图像信息和所属源视点图像的相机参数算得所述图像的修正最远深度参数:z_far_modified,其中z_far_new≤z_far_modified;
[0025]
利用所述源视点图像的相机参数和目标图像的相机参数,对图像四个边界顶点结合最近深度参数z_near_new和修正最远深度参数z_far_modified所得n个空间代表点(xi,yi,zi)从源视点向目标视点投影,得到目标图像中的n个代表点;其中,n为代表点的数量,i为0到n_1的整数;
[0026]
根据所得到的目标图像中的n个代表点的位置坐标(xoi,yoi),预判决该图像与目标图像是否存在区域重叠;
[0027]
如果存在区域重叠,使用图像中的像素进行渲染得到部分的目标图像,否则,不使用该图像进行渲染。
[0028]
进一步的,所述图像的宽度信息width、高度信息height、该图像在多视点子块拼接图像中的位置信息、该图像在源视点图像中的位置信息确定方法为以下方法之一种:
[0029]
(1)从码流中直接解码获得;
[0030]
(2)从码流中获得所述图像对应信息传输单元的宽度w和高度h,计算该处理单元的宽度信息和高度信息;从码流中获取所述信息传输单元在多视点子块拼接图像中的位置信息、所述信息传输单元在源视点图像中的位置信息,结合所述图像在所述信息传输单元的位置,计算所述图像在多视点子块拼接图像中的位置信息、所述图像在源视点图像中的位置信息。
[0031]
进一步的,满足以下任一条件,则预判决图像与目标图像存在区域重叠:
[0032]
(1)投影到目标图像的n个代表点都在目标图像左边界左侧;
[0033]
(2)投影到目标图像的n个代表点都在目标图像右边界右侧;
[0034]
(3)投影到目标图像的n个代表点都在目标图像上边界上侧;
[0035]
(4)投影到目标图像的n个代表点都在目标图像下边界下侧。
[0036]
进一步的,所述图像的两个深度参数z_near_new和z_far_new的确定方法为以下方法之一种:
[0037]
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述图像的z_near_new等于z_near,所述图像的z_far_new等于z_far;
[0038]
(2)从码流中直接解码得到所述图像的最近深度值和最远深度值,所述图像的z_near_new等于该图像的最近深度值,所述图像的z_far_new等于该图像的最远深度值;
[0039]
(3)在解码重构的深度图像中,所述图像的所有像素中距离该图像所属的源视点最近的像素的深度值为所述图像的最近深度值z_near_new;所述图像的所有像素中距离该
图像所属的源视点最远的像素的深度值为所述图像的最远深度值z_far_new。
[0040]
进一步的,所述图像的修正最远深度参数z_far_modified的确定方法为:
[0041]
根据图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得图像在所属源视点图像相机的经度跨度和纬度跨度δθ,利用以下公式计算修正最远深度参数z_far_modified:
[0042][0043]
其中,x
mod
=z_far_new
[0044][0045][0046]
本发明的第二目的是提供一种筛选图像的装置,包括:
[0047]
图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个图像信息,信息包括:图像的宽度信息width、高度信息height、该图像在多视点子块拼接图像中的位置信息、该图像在源视点图像中的位置信息和该图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参;
[0048]
目标图像相关信息获取模块,用于获取目标图像的宽度信息width_o、高度信息height_o和相机参数;
[0049]
图像深度参数获取模块,用于获取两个深度参数z_near_new和z_far_new,其中z_near_new≤z_far_new;
[0050]
图像修正深度参数计算模块,用于利用所述图像的最远深度参数z_far_new以及图像信息和所属源视点图像的相机参数计算修正最远深度参数z_far_modified,其中z_far_new≤z_far_modified;
[0051]
图像判决模块,用于利用所述源视点图像的相机参数和目标图像的相机参数,对图像四个边界顶点结合最近深度参数z_near_new和修正最远深度参数z_far_modified所得n个空间代表点(xi,yi,zi)从源视点向目标视点投影,得到目标图像中的n个代表点;其中n为空间代表点的数量,i为0到n-1的整数;根据所得到的目标图像中的n个代表点的位置坐标(xoi,yoi),预判决该图像与目标图像是否存在区域重叠;如果存在区域重叠,使用图像中的像素进行渲染得到部分的目标图像,否则,不使用该图像进行渲染。
[0052]
进一步的,所述图像的宽度信息width、高度信息height、该图像在多视点子块拼接图像中的位置信息、该图像在源视点图像中的位置信息确定方法为以下方法之一种:
[0053]
(1)从码流中直接解码获得;
[0054]
(2)从码流中获得所述图像对应信息传输单元的宽度w和高度h,计算该处理单元的宽度信息和高度信息;从码流中获取所述信息传输单元在多视点子块拼接图像中的位置信息、所述信息传输单元在源视点图像中的位置信息,结合所述图像在所述信息传输单元的位置,计算所述图像在多视点子块拼接图像中的位置信息、所述图像在源视点图像中的位置信息。
[0055]
进一步的,满足以下任一条件,则预判决图像与目标图像不存在区域重叠:
[0056]
(1)投影到目标图像的n个代表点都在目标图像左边界左侧;
[0057]
(2)投影到目标图像的n个代表点都在目标图像右边界右侧;
[0058]
(3)投影到目标图像的n个代表点都在目标图像上边界上侧;
[0059]
(4)投影到目标图像的n个代表点都在目标图像下边界下侧。
[0060]
进一步的,所述图像的两个深度参数z_near_new和z_far_new由以下方法之一种:得到
[0061]
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述图像的z_near_new等于z_near,所述图像的z_far_new等于z_far;
[0062]
(2)从码流中直接解码得到所述图像的最近深度值和最远深度值,所述图像的z_near_new等于该图像的最近深度值,所述图像的z_far_new等于该图像的最远深度值;
[0063]
(3)在解码重构的深度图像中,所述图像的所有像素中距离该图像所属的源视点最近的像素的深度值为所述图像的最近深度值z_near_new;所述图像的所有像素中距离该图像所属的源视点最远的像素的深度值为所述图像的最远深度值z_far_new。
[0064]
进一步的,所述图像的修正最远深度参数z_far_modified的确定方法为:
[0065]
根据图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得图像在所属源视点图像相机的经度跨度和纬度跨度δθ,利用以下公式计算修正最远深度参数z_far_modified:
[0066][0067]
其中,x
mod
=z_far_new
[0068][0069][0070]
本发明由于采用以上技术方案,其具有以下优点:
[0071]
在目标全景图像中,有效视角域只会占其中一小部分。通过对子块图像或处理单元少量代表点的判断除去无效视角域的子块图像或处理单元,只对有效的子块图像或处理单元进行预渲染,这样能减少进行图像渲染的子块图像或处理单元数量,因此可以在不改变目标图像的合成质量的同时,降低了渲染计算时间。选取子块图像或处理单元四个边界顶点作为子块图像或处理单元的代表点,结合深度参数两个深度参数确定八个空间代表点,特别需要说明的是已有技术在图像投影格式为球面投影的使用情况下,由于球体的表面外凸,所以子块图像或处理单元边界顶点在空间中最远深度位置的两点连线是弦所在的面非球切面,如果恰好仅仅球凸面落在目标视野范围而弦所在面处于视野不可见区域时会被错误当做该子块图像或处理单元完全不可见,因此被误删从而造成目标图像质量退化,影响视觉效果。本发明修正了最远深度参数以克服上述问题,以能包围住球体的棱台近似代替子块图像或处理单元的空间范围以简化复杂模型,算法简单易实现,这样进行快速预筛选确保减少的是非有效视角域的子块图像或处理单元而不会存在过度删除的情况,确保不改变目标图像的合成质量,而且保留了本身方法的简洁性。
附图说明
[0072]
结合附图,本发明的其他特点和优点可从下面通过举例来对本发明的原理进行解释的优选实施方式的说明中变得更清楚。
[0073]
此处所说明的附图用来提供对本发明的进一步理解,构成本技术的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0074]
图1是多视点子块拼接图像的生成示意图。
[0075]
图2是多视点子块拼接图像中的子块图像映射到三维空间后与目标图像区域覆盖的示意图。
[0076]
图3是子块图像四个边界顶点,以及该四顶点结合z_near_new和z_far_new所得的八个空间代表点示意图。
[0077]
图4是已有方法误删情况示意图。
[0078]
图5是球面投影坐标系示意图。
[0079]
图6是子块图像在球面投影格式下的空间示意图。
[0080]
图7是修正最远深度参数示意图。
[0081]
图8是可能存在的保留不可见子块图像的示例图。
[0082]
图9是本发明装置实施例流程图。
[0083]
图10是多视点子块拼接图像、信息传输单元和处理单元关系示意图。
[0084]
图11是当多视点子块拼接图像为主视图时,默认划分为多个子图示意图。
具体实施方式
[0085]
为了进一步理解本发明,下面结合实施例对本发明的优选实施方案进行描述,但是应当理解,这些描述只是为进一步说明本发明的特征和优点,而不是对本发明权利要求的限制。
[0086]
实施例1
[0087]
一种筛选子块图像方法,具体包括:
[0088]
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的信息,包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
[0089]
从码流中获取多视点子块拼接图像,根据子块图像的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
[0090]
对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:包括子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new比如为0.12米和z_far_new比如为0.19米,其中子块图像深度覆盖范围的最近、最远深度值和源视点图像深度参数中的最近深度值z_near和最远深度值z_far关系为z_near<=z_near_new<=z_far_new<=z_far。
[0091]
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远
深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0092]
(a0,b0)=(xs,ys)=(0,0),
[0093]
(a1,b1)=(xs+width,ys)=(128,0),
[0094]
(a2,b2)=(xs,ys+height)=(0,64),
[0095]
(a3,b3)=(xs+width,ys+height)=(128,64).
[0096]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0097]
(x0,y0,z0)=(a0,b0,z_near_new)
[0098]
(x1,y1,z1)=(a1,b1,z_near_new)
[0099]
(x2,y2,z2)=(a2,b2,z_near_new)
[0100]
(x3,y3,z3)=(a3,b3,z_near_new)
[0101]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0102]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0103]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0104]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0105]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
[0106]
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xo
min
,xo
max
分别为八个(xoi,yoi)横坐标的最小最大值,yo
min
,yo
max
分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
[0107]
(1)xo
max
<0
[0108]
(2)xo
min
>width_o
[0109]
(3)yo
max
<0
[0110]
(4)yo
min
>height_o,
[0111]
比如xo
max
=-2或xo
min
=2050或yo
max
=-30或yo
min
=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
[0112]
实施例2
[0113]
一种筛选子块图像方法,具体包括:
[0114]
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的信息,包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
[0115]
从码流中获取多视点子块拼接图像,根据子块图像的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视
点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
[0116]
对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:包括子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new等于z_near比如为0.1米和z_far_new等于z_far比如为0.2米,
[0117]
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0118]
(a0,b0)=(xs,ys)=(0,0),
[0119]
(a1,b1)=(xs,ys+height)=(0,64)
[0120]
(a2,b2)=(xs+width,ys)=(128,0),,
[0121]
(a3,b3)=(xs+width,ys+height)=(128,64).
[0122]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0123]
(x0,y0,z0)=(a0,b0,z_near_new)
[0124]
(x1,y1,z1)=(a1,b1,z_near_new)
[0125]
(x2,y2,z2)=(a2,b2,z_near_new)
[0126]
(x3,y3,z3)=(a3,b3,z_near_new)
[0127]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0128]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0129]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0130]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0131]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
[0132]
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xo
min
,xo
max
分别为八个(xoi,yoi)横坐标的最小最大值,yo
min
,yo
max
分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
[0133]
(1)xo
max
<0
[0134]
(2)xo
min
>width_o
[0135]
(3)yo
max
<0
[0136]
(4)yo
min
>height_o,
[0137]
比如xo
max
=-2或xo
min
=2050或yo
max
=-30或yo
min
=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
[0138]
实施例3
[0139]
一种筛选子块图像方法,具体包括:
[0140]
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的信
息,包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
[0141]
从码流中获取多视点子块拼接图像,根据子块图像的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
[0142]
对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:包括子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new等于子块图像内深度范围的深度最小值比如为0.13米和z_far_new等于子块图像内深度范围的深度最大值比如为0.18米,
[0143]
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0144]
(a0,b0)=(xs,ys)=(0,0),
[0145]
(a1,b1)=(xs+width,ys)=(128,0),
[0146]
(a2,b2)=(xs,ys+height)=(0,64),
[0147]
(a0,b0)=(xs+width,ys+height)=(128,64).
[0148]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0149]
(x0,y0,z0)=(a0,b0,z_near_new)
[0150]
(x1,y1,z1)=(a1,b1,z_near_new)
[0151]
(x2,y2,z2)=(a2,b2,z_near_new)
[0152]
(x3,y3,z3)=(a3,b3,z_near_new)
[0153]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0154]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0155]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0156]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0157]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
[0158]
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xo
min
,xo
max
分别为八个(xoi,yoi)横坐标的最小最大值,yo
min
,yo
max
分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
[0159]
(1)xo
max
<0
[0160]
(2)xo
min
>width_o
[0161]
(3)yo
max
<0
[0162]
(4)yo
min
>height_o,
[0163]
比如xo
max
=-2或xo
min
=2050或yo
max
=-30或yo
min
=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
[0164]
实施例4
[0165]
一种筛选子块图像方法,具体包括:
[0166]
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的信息,包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
[0167]
从码流中获取多视点子块拼接图像,根据子块图像的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
[0168]
对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:包括子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new等于子块图像内深度范围的深度最小值比如为0.13米和z_far_new等于子块图像内深度范围的深度最大值比如为0.18米,子块图像的最近深度和子块图像的最远深度可以通过从码流中直接解码得到;
[0169]
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0170]
(a0,b0)=(xs,ys)=(0,0),
[0171]
(a1,b1)=(xs+width,ys)=(128,0),
[0172]
(a2,b2)=(xs,ys+height)=(0,64),
[0173]
(a3,b3)=(xs+width,ys+height)=(128,64).
[0174]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0175]
(x0,y0,z0)=(a0,b0,z_near_new)
[0176]
(x1,y1,z1)=(a1,b1,z_near_new)
[0177]
(x2,y2,z2)=(a2,b2,z_near_new)
[0178]
(x3,y3,z3)=(a3,b3,z_near_new)
[0179]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0180]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0181]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0182]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0183]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
[0184]
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xo
min
,xo
max
分别为八个(xoi,yoi)横坐标的最小最大值,yo
min
,yo
max
分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
[0185]
(1)xo
max
<0
[0186]
(2)xo
min
>width_o
[0187]
(3)yo
max
<0
[0188]
(4)yo
min
>height_0,
[0189]
比如xo
max
=-2或xo
min
=2050或yo
max
=-30或yo
min
=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
[0190]
实施例5
[0191]
如图4所示,一种筛选子块图像装置,具体包括:
[0192]
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块图像信息,信息包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
[0193]
子块图像提取模块,输入为多视点子块拼接图像码流和子块图像信息,输出为至少一个子块图像,从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
[0194]
目标图像相关信息获取模块,用于获取目标图像的宽度信息width_o、高度信息height_o和相机参数;
[0195]
子块图像深度参数获取模块,用于获取两个深度参数z_near_new和z_far_new,其中z_near_new≤z_far_new;
[0196]
子块图像判决模块,输入为子块图像信息、子块图像、目标图像的相关信息,码流信息为可选项,输出为使用子块图像中的像素进行渲染得到部分的目标图像。,对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:包括子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new比如为0.12米和z_far_new比如为0.19米,其中子块图像深度覆盖范围的最近、最远深度值和源视点图像深度参数中的最近深度值z_near和最远深度值z_far关系为z_near<=z_near_new<=z_far_new<=z_far,
[0197]
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代
表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0198]
(a0,b0)=(xs,ys)=(0,0),
[0199]
(a1,b1)=(xs+width,ys)=(128,0),
[0200]
(a2,b2)=(xs,ys+height)=(0,64),
[0201]
(a3,b3)=(xs+width,ys+height)=(128,64).
[0202]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0203]
(x0,y0,z0)=(a0,b0,z_near_new)
[0204]
(x1,y1,z1)=(a1,b1,z_near_new)
[0205]
(x2,y2,z2)=(a2,b2,z_near_new)
[0206]
(x3,y3,z3)=(a3,b3,z_near_new)
[0207]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0208]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0209]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0210]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0211]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
[0212]
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xo
min
,xo
max
分别为八个(xoi,yoi)横坐标的最小最大值,yo
min
,yo
max
分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
[0213]
(1)xo
max
<0
[0214]
(2)xo
min
>width_o
[0215]
(3)yo
max
<0
[0216]
(4)yo
min
>height_o,
[0217]
比如xo
max
=-2或xo
min
=2050或yo
max
=-30或yo
min
=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
[0218]
实施例6
[0219]
一种筛选子块图像装置,具体包括:
[0220]
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块图像信息,信息包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
[0221]
子块图像提取模块,输入为多视点子块拼接图像码流和子块图像信息,输出为至
少一个子块图像,从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块,该子块即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
[0222]
子块图像判决模块,输入为子块图像信息、子块图像、目标图像的相关信息,码流信息为可选项,输出为使用子块图像中的像素进行渲染得到部分的目标图像。对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:包括子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new等于z_near比如为0.1米和z_far_new等于z_far比如为0.2米,
[0223]
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0224]
(a0,b0)=(xs,ys)=(0,0),
[0225]
(a1,b1)=(xs,ys+height)=(0,64)
[0226]
(a2,b2)=(xs+width,ys)=(128,0),,
[0227]
(a3,b3)=(xs+width,ys+height)=(128,64).
[0228]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0229]
(x0,y0,z0)=(a0,b0,z_near_new)
[0230]
(x1,y1,z1)=(a1,b1,z_near_new)
[0231]
(x2,y2,z2)=(a2,b2,z_near_new)
[0232]
(x3,y3,z3)=(a3,b3,z_near_new)
[0233]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0234]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0235]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0236]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0237]
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xo
min
,xo
max
分别为八个(xoi,yoi)横坐标的最小最大值,yo
min
,yo
max
分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
[0238]
(1)xo
max
<0
[0239]
(2)xo
min
>width_o
[0240]
(3)yo
max
<0
[0241]
(4)yo
min
>height_0,
[0242]
比如xo
max
=-2或xo
min
=2050或yo
max
=-30或yo
min
=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
[0243]
实施例7
[0244]
一种筛选子块图像装置,具体包括:
[0245]
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块
图像信息,信息包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
[0246]
子块图像提取模块,输入为多视点子块拼接图像码流和子块图像信息,输出为至少一个子块图像,从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
[0247]
子块图像判决模块,输入为子块图像信息、子块图像、目标图像的相关信息,码流信息为可选项,输出为使用子块图像中的像素进行渲染得到部分的目标图像。对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:包括子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new等于子块图像内深度范围的深度最小值比如为0.13米和z_far_new等于子块图像内深度范围的深度最大值比如为0.18米,
[0248]
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0249]
(a0,b0)=(xs,ys)=(0,0),
[0250]
(a1,b1)=(xs+width,ys)=(128,0),
[0251]
(a2,b2)=(xs,ys+height)=(0,64),
[0252]
(a0,b0)=(xs+width,ys+height)=(128,64).
[0253]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0254]
(x0,y0,z0)=(a0,b0,z_near_new)
[0255]
(x1,y1,z1)=(a1,b1,z_near_new)
[0256]
(x2,y2,z2)=(a2,b2,z_near_new)
[0257]
(x3,y3,z3)=(a3,b3,z_near_new)
[0258]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0259]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0260]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0261]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0262]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
[0263]
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xo
min
,xo
max
分别为八个(xoi,yoi)横坐标的最小最大值,yo
min
,yo
max
分别为八个(xoi,
yoi)纵坐标的最小最大值,若满足以下任一条件:
[0264]
(1)xo
max
<0
[0265]
(2)xo
min
>width_o
[0266]
(3)yo
max
<0
[0267]
(4)yo
min
>height_o,
[0268]
比如xo
max
=-2或xo
min
=2050或yo
max
=-30或yo
min
=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
[0269]
实施例8
[0270]
一种筛选子块图像装置,具体包括:
[0271]
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块图像信息,信息包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
[0272]
子块图像提取模块,输入为多视点子块拼接图像码流和子块图像信息,输出为至少一个子块图像,从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
[0273]
子块图像判决模块,输入为子块图像信息、子块图像、目标图像的相关信息,码流信息为可选项,输出为使用子块图像中的像素进行渲染得到部分的目标图像。对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:包括子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new等于子块图像内深度范围的深度最小值比如为0.13米和z_far_new等于子块图像内深度范围的深度最大值比如为0.18米,子块图像的最近深度和子块图像的最远深度可以通过从码流中直接解码得到;
[0274]
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0275]
(a0,b0)=(xs,ys)=(0,0),
[0276]
(a1,b1)=(xs+width,ys)=(128,0),
[0277]
(a2,b2)=(xs,ys+height)=(0,64),
[0278]
(a3,b3)=(xs+width,ys+height)=(128,64).
[0279]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0280]
(x0,y0,z0)=(a0,b0,z_near_new)
[0281]
(x1,y1,z1)=(a1,b1,z_near_new)
[0282]
(x2,y2,z2)=(a2,b2,z_near_new)
[0283]
(x3,y3,z3)=(a3,b3,z_near_new)
[0284]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0285]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0286]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0287]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0288]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
[0289]
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xo
min
,xo
max
分别为八个(xoi,yoi)横坐标的最小最大值,yo
min
,yo
max
分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
[0290]
(1)xo
max
<0
[0291]
(2)xo
min
>width_o
[0292]
(3)yo
max
<0
[0293]
(4)yo
min
>height_o,
[0294]
比如xo
max
=-2或xo
min
=2050或yo
max
=-30或yo
min
=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
[0295]
实施例9
[0296]
一种筛选子块图像方法,具体包括:
[0297]
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的信息,包括:宽度信息width、高度信息height、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near和最远深度z_far;
[0298]
从码流中获取多视点子块拼接图像,根据子块图像的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
[0299]
对于目标图像,获取其相关的信息,包括:宽度信息width_o、高度信息height_o、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new等于源视点图像的最近深度z_near,z_far_new等于源视点图像的最远深度z_far,
[0300]
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0301]
(a0,b0)=(xs,ys),
[0302]
(a1,b1)=(xs+width,ys),
[0303]
(a2,b2)=(xs,ys+height),
[0304]
(a0,b0)=(xs+width,ys+height).
[0305]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0306]
(x0,y0,z0)=(a0,b0,z_near_new)
[0307]
(x1,y1,z1)=(a1,b1,z_near_new)
[0308]
(x2,y2,z2)=(a2,b2,z_near_new)
[0309]
(x3,y3,z3)=(a3,b3,z_near_new)
[0310]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0311]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0312]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0313]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0314]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
[0315]
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xo
min
,xo
max
分别为八个(xoi,yoi)横坐标的最小最大值,yo
min
,yo
max
分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
[0316]
(1)xo
max
<0
[0317]
(2)xo
min
>width_o
[0318]
(3)yo
max
<0
[0319]
(4)yo
min
>height_o,
[0320]
则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
[0321]
将上述方法用于mpeg测试序列中的全景视频technicolormuseum,测试渲染生成不同路径的视窗(posetrace)的结果如下,表格中数值为32帧的平均值。
[0322]
表1 posetrace1像素节省率
[0323] 0-31 frame32-63 frame64-96 frame预筛选后保留像素数/(个)286822429157762918528总像素数/(个)309811230474243047424节省率7.42%4.32%4.23%
[0324]
表2 posetrace2像素节省率
[0325] 0-31 frame32-63 frame64-96 frame预筛选后保留像素数/(个)297760028442242837248总像素数/(个)309811230474243047424节省率3.89%6.67%6.90%
[0326]
实施例10
[0327]
一种筛选子块图像方法,具体包括:
[0328]
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的信
息,包括:宽度信息width、高度信息height、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near和最远深度z_far;
[0329]
从码流中获取多视点子块拼接图像,根据子块图像的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
[0330]
对于目标图像,获取其相关的信息,包括:宽度信息width_o、高度信息height_o、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new等于子块图像的最近深度,z_far_new等于子块图像的最远深度,
[0331]
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0332]
(a0,b0)=(xs,ys),
[0333]
(a1,b1)=(xs,ys+height),
[0334]
(a2,b2)=(xs+width,ys),
[0335]
(a0,b0)=(xs+width,ys+height).
[0336]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0337]
(x0,y0,z0)=(a0,b0,z_near_new)
[0338]
(x1,y1,z1)=(a1,b1,z_near_new)
[0339]
(x2,y2,z2)=(a2,b2,z_near_new)
[0340]
(x3,y3,z3)=(a3,b3,z_near_new)
[0341]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0342]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0343]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0344]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0345]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
[0346]
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xo
min
,xo
max
分别为八个(xoi,yoi)横坐标的最小最大值,yo
min
,yo
max
分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
[0347]
(1)xo
max
<0
[0348]
(2)xo
min
>width_o
[0349]
(3)yo
max
<0
[0350]
(4)yo
min
>height_o,
[0351]
则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
[0352]
将上述方法用于mpeg测试序列中的全景视频technicolormuseum,测试渲染生成不同路径的视窗(posetrace)的结果如下,表格中数值为32帧的平均值。
[0353]
表3 posetrace1像素节省率
[0354] 0-31 frame32-63 frame64-96 frame预筛选后保留像素数/(个)277758628265922855040总像素数/(个)309811230474243047424节省率10.3%8.13%6.31%
[0355]
表4 posetrace2像素节省率
[0356][0357][0358]
买施例11
[0359]
一种筛选子块图像方法,具体包括:
[0360]
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参;其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
[0361]
获取目标图像的宽度信息width_o、高度信息height_o和相机参数;
[0362]
获得所述子块图像的两个深度参数:z_near_new和z_far_new,其中两参数值的关系满足z_near_new≤z_far_new;
[0363]
利用所述子块图像的最远深度参数z_far_new以及子块图像信息和所属源视点图像的相机参数等算得所述子块图像的修正最远深度参数:z_far_modified,其中z_far_new≤z_far_modified;
[0364]
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj)(j为0到3的整数),具体如下:
[0365]
(a0,b0)=(xs,ys),
[0366]
(a1,b1)=(xs,ys+height),
[0367]
(a2,b2)=(xs+width,ys),
[0368]
(a0,b0)=(xs+width,ys+height).
[0369]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0370]
(x0,y0,z0)=(a0,b0,z_near_new)
[0371]
(x1,y1,z1)=(a1,b1,z_near_new)
[0372]
(x2,y2,z2)=(a2,b2,z_near_new)
[0373]
(x3,y3,z3)=(a3,b3,z_near_new)
[0374]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0375]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0376]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0377]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0378]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,
[0379]
根据所得到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠;如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
[0380]
实施例12
[0381]
一种筛选子块图像方法,具体包括:
[0382]
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参;其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
[0383]
获取目标图像的宽度信息width_o、高度信息height_o和相机参数;
[0384]
获得所述子块图像的两个深度参数:z_near_new和z_far_new,其中两参数值的关系满足z_near_new≤z_far_new;
[0385]
利用所述子块图像的最远深度参数z_far_new以及子块图像信息和所属源视点图像的相机参数等算得所述子块图像的修正最远深度参数:z_far_modified,其中z_far_new≤z_far_modified;
[0386]
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0387]
(a0,b0)=(xs,ys),
[0388]
(a1,b1)=(xs,ys+height),
[0389]
(a2,b2)=(xs+width,ys),
[0390]
(a0,b0)=(xs+width,ys+height).
[0391]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0392]
(x0,y0,z0)=(a0,b0,z_near_new)
[0393]
(x1,y1,z1)=(a1,b1,z_near_new)
[0394]
(x2,y2,z2)=(a2,b2,z_near_new)
[0395]
(x3,y3,z3)=(a3,b3,z_near_new)
[0396]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0397]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0398]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0399]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0400]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,
[0401]
根据所得到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠,若满足以下任一条件,则预判决子块图像与目标图像存在区域重叠:
[0402]
(1)投影到目标图像的八个代表点都在目标图像左边界左侧;
[0403]
(2)投影到目标图像的八个代表点都在目标图像右边界右侧;
[0404]
(3)投影到目标图像的八个代表点都在目标图像上边界上侧;
[0405]
(4)投影到目标图像的八个代表点都在目标图像下边界下侧;
[0406]
具体地,当目标图像位置坐标的原点坐标(0,0)为图像左上角,则若满足以下任一条件,则预判决子块图像与目标图像存在区域重叠:
[0407]
(1)xo
max
<0:
[0408]
(2)xo
min
>width_o;
[0409]
(3)yo
max
<0;
[0410]
(4)yo
min
>height_o,其中xo
min
为xoi中的最小值、xo
max
为xoi中的最大值,yo
min
为yoi中的最小值yo
max
为yoi中的最大值,其中i为0到7的整数,当目标图像位置坐标的原点坐标在图像非左上角的其他位置,也可类似推导得到判决公式;
[0411]
如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
[0412]
实施例13
[0413]
一种筛选子块图像方法,具体包括:
[0414]
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参;其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
[0415]
获取目标图像的宽度信息width_o、高度信息height_o和相机参数;
[0416]
获得所述子块图像的两个深度参数:z_near_new和z_far_new,其中两参数值的关系满足z_near_new≤z_far_new,子块图像的两个深度参数z_near_new和z_far_new的确定方法为以下方法之一种:
[0417]
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述子块图像的z_near_new等于z_near,所述子块图像的z_far_new等于z_far;
[0418]
(2)所述子块图像的z_near_new等于该子块图像的最近深度值,所述子块图像的z_far_new等于该子块图像的最远深度值;
[0419]
利用所述子块图像的最远深度参数z_far_new以及子块图像信息和所属源视点图像的相机参数等算得所述子块图像的修正最远深度参数:z_far_modified。所述子块图像的最远深度参数修正值z_far_modified的确定方法为:
[0420]
子块图像所属源视点图像的相机投影格式为平面投影时,所述子块图像的z_far_modified等于z_far_new;
[0421]
子块图像所属源视点图像的相机投影格式为球面投影时,计算所述子块图像的修正z_far_modified的方法如下:
[0422]
根据子块图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得子块图像在所属源视点图像相机的经度跨度和纬度跨度δθ,利用以下公式计算z_far_modified:
[0423]
x
mod
=z_far_new
[0424][0425][0426][0427]
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0428]
(a0,b0)=(xs,ys),
[0429]
(a1,b1)=(xs,ys+height),
[0430]
(a2,b2)=(xs+width,ys),
[0431]
(a0,b0)=(xs+width,ys+height).
[0432]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0433]
(x0,y0,z0)=(a0,b0,z_near_new)
[0434]
(x1,y1,z1)=(a1,b1,z_near_new)
[0435]
(x2,y2,z2)=(a2,b2,z_near_new)
[0436]
(x3,y3,z3)=(a3,b3,z_near_new)
[0437]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0438]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0439]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0440]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0441]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,
[0442]
实施例14
[0443]
一种筛选子块图像方法,具体包括:
[0444]
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块
图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参;其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
[0445]
获取目标图像的宽度信息width_o、高度信息height_o和相机参数;
[0446]
获得所述子块图像的两个深度参数:z_near_new和z_far_new,其中两参数值的关系满足z_near_new≤z_far_new,子块图像的两个深度参数z_near_new和z_far_new的确定方法为以下方法之一种:
[0447]
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述子块图像的z_near_new等于z_near,所述子块图像的z_far_new等于z_far;
[0448]
(2)所述子块图像的z_near_new等于该子块图像的最近深度值,所述子块图像的z_far_new等于该子块图像的最远深度值,子块图像的最近深度值和所述子块图像的最远深度值的确定方法为以下一种:
[0449]
(1)从码流中直接解码得到所述子块图像的最近深度值和最远深度值;
[0450]
(2)在解码重构的深度图像中,所述子块图像的所有像素中距离该子块所属的源视点最近的像素的深度值为所述子块的最近深度值;所述子块图像的所有像素中距离该子块所属的源视点最远的像素的深度值为所述子块的最远深度值;
[0451]
利用所述子块图像的最远深度参数z_far_new以及子块图像信息和所属源视点图像的相机参数等算得所述子块图像的修正最远深度参数:z_far_modified。所述子块图像的最远深度参数修正值z_far_modified的确定方法为:
[0452]
子块图像所属源视点图像的相机投影格式为平面投影时,所述子块图像的z_far_modified等于z_far_new;
[0453]
子块图像所属源视点图像的相机投影格式为球面投影时,计算所述子块图像的修正z_far_modified的方法如下:
[0454]
根据子块图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得子块图像在所属源视点图像相机的经度跨度和纬度跨度δθ,利用以下公式计算z_far_modified:
[0455]
x
mod
=z_far_new
[0456][0457][0458][0459]
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0460]
(a0,b0)=(xs,ys),
[0461]
(a1,b1)=(xs,ys+height),
[0462]
(a2,b2)=(xs+width,ys),
[0463]
(a0,b0)=(xs+width,ys+height).
[0464]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0465]
(x0,y0,z0)=(a0,b0,z_near_new)
[0466]
(x1,y1,z1)=(a1,b1,z_near_new)
[0467]
(x2,y2,z2)=(a2,b2,z_near_new)
[0468]
(x3,y3,z3)=(a3,b3,z_near_new)
[0469]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0470]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0471]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0472]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0473]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,
[0474]
根据所得到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠;如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
[0475]
实施例15
[0476]
一种筛选子块图像方法,具体包括:
[0477]
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参;其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
[0478]
获取目标图像的宽度信息width_o、高度信息height_o和相机参数;
[0479]
获得所述子块图像的两个深度参数:z_near_new和z_far_new,其中两参数值的关系满足z_near_new≤z_far_new,子块图像的两个深度参数z_near_new和z_far_new的确定方法为以下方法之一种:
[0480]
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述子块图像的z_near_new等于z_near,所述子块图像的z_far_new等于z_far;
[0481]
(2)所述子块图像的z_near_new等于该子块图像的最近深度值,所述子块图像的z_far_new等于该子块图像的最远深度值,子块图像的最近深度值和所述子块图像的最远深度值的确定方法为以下一种:
[0482]
(1)从码流中直接解码得到所述子块图像的最近深度值和最远深度值;
[0483]
(2)在解码重构的深度图像中,所述子块图像的所有像素中距离该子块所属的源视点最近的像素的深度值为所述子块的最近深度值;所述子块图像的所有像素中距离该子块所属的源视点最远的像素的深度值为所述子块的最远深度值;
[0484]
利用所述子块图像的最远深度参数z_far_new以及子块图像信息和所属源视点图
像的相机参数等算得所述子块图像的修正最远深度参数:z_far_modified。所述子块图像的最远深度参数修正值z_far_modified的确定方法为:
[0485]
子块图像所属源视点图像的相机投影格式为平面投影时,所述子块图像的z_far_modified等于z_far_new;
[0486]
子块图像所属源视点图像的相机投影格式为球面投影时,计算所述子块图像的修正z_far_modified的方法如下:
[0487]
根据子块图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得子块图像在所属源视点图像相机的经度跨度和纬度跨度δθ,利用以下公式计算z_far_modified:
[0488]
x
mod
=z_far_new
[0489][0490][0491][0492]
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0493]
(a0,b0)=(xs,ys),
[0494]
(a1,b1)=(xs,ys+height),
[0495]
(a2,b2)=(xs+width,ys),
[0496]
(a0,b0)=(xs+width,ys+height).
[0497]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0498]
(x0,y0,z0)=(a0,b0,z_near_new)
[0499]
(x1,y1,z1)=(a1,b1,z_near_new)
[0500]
(x2,y2,z2)=(a2,b2,z_near_new)
[0501]
(x3,y3,z3)=(a3,b3,z_near_new)
[0502]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0503]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0504]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0505]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0506]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,
[0507]
根据所得到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠,若满足以下任一条件,则预判决子块图像与目标图像存在区域重叠:
[0508]
(1)投影到目标图像的八个代表点都在目标图像左边界左侧;
[0509]
(2)投影到目标图像的八个代表点都在目标图像右边界右侧;
[0510]
(3)投影到目标图像的八个代表点都在目标图像上边界上侧;
[0511]
(4)投影到目标图像的八个代表点都在目标图像下边界下侧;
[0512]
具体地,当目标图像位置坐标的原点坐标(0,0)为图像左上角,则若满足以下任一条件,则预判决子块图像与目标图像存在区域重叠:
[0513]
(1)xo
max
<0;
[0514]
(2)xo
min
>width_o;
[0515]
(3)yo
max
<0;
[0516]
(4)yo
min
>height_o;
[0517]
其中xo
min
为xoi中的最小值、xo
max
为xoi中的最大值,yo
min
为yoi中的最小值yo
max
为yoi中的最大值,其中i为0到7的整数,当目标图像位置坐标的原点坐标在图像非左上角的其他位置,也可类似推导得到判决公式;
[0518]
如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
[0519]
实施例16
[0520]
一种筛选子块图像装置,具体包括:
[0521]
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块图像信息,信息包括:子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
[0522]
子块图像判决模块,输入为子块图像信息、目标图像的相关信息以及子块图像的代表性深度参数,输出为使用子块图像中的像素进行渲染得到部分的目标图像。对于目标图像,获取其相关的信息,包括:宽度信息width_o、高度信息height_o和相机参数;获得所述子块图像的两个深度参数:z_near_new和z_far_new,其中两参数值的关系满足z_near_new≤z_far_new;利用所述子块图像的最远深度参数z_far_new以及子块图像信息和所属源视点图像的相机参数等算得所述子块图像的修正最远深度参数:z_far_modified,其中z_far_new≤z_far_modified;
[0523]
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0524]
(a0,b0)=(xs,ys),
[0525]
(a1,b1)=(xs,ys+height),
[0526]
(a2,b2)=(xs+width,ys),
[0527]
(a0,b0)=(xs+width,ys+height).
[0528]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0529]
(x0,y0,z0)=(a0,b0,z_near_new)
[0530]
(x1,y1,z1)=(a1,b1,z_near_new)
[0531]
(x2,y2,z2)=(a2,b2,z_near_new)
[0532]
(x3,y3,z3)=(a3,b3,z_near_new)
[0533]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0534]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0535]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0536]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0537]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数;
[0538]
根据所得到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠;如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
[0539]
实施例17
[0540]
一种筛选子块图像装置,具体包括:
[0541]
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块图像信息,信息包括:子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
[0542]
子块图像判决模块,输入为子块图像信息、目标图像的相关信息以及子块图像的代表性深度参数,输出为使用子块图像中的像素进行渲染得到部分的目标图像。对于目标图像,获取其相关的信息,包括:宽度信息width_o、高度信息height_o和相机参数;获得所述子块图像的两个深度参数:z_near_new和z_far_new,其中两参数值的关系满足z_near_new≤z_far_new;利用所述子块图像的最远深度参数z_far_new以及子块图像信息和所属源视点图像的相机参数等算得所述子块图像的修正最远深度参数:z_far_modified,其中z_far_new≤z_far_modified;
[0543]
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0544]
(a0,b0)=(xs,ys),
[0545]
(a1,b1)=(xs,ys+height),
[0546]
(a2,b2)=(xs+width,ys),
[0547]
(a0,b0)=(xs+width,ys+height).
[0548]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0549]
(x0,y0,z0)=(a0,b0,z_near_new)
[0550]
(x1,y1,z1)=(a1,b1,z_near_new)
[0551]
(x2,y2,z2)=(a2,b2,z_near_new)
[0552]
(x3,y3,z3)=(a3,b3,z_near_new)
[0553]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0554]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0555]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0556]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0557]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,
[0558]
根据所得到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠若满足以下任一条件,则预判决子块图像与目标图像存在区域重叠:
[0559]
(1)投影到目标图像的八个代表点都在目标图像左边界左侧;
[0560]
(2)投影到目标图像的八个代表点都在目标图像右边界右侧;
[0561]
(3)投影到目标图像的八个代表点都在目标图像上边界上侧;
[0562]
(4)投影到目标图像的八个代表点都在目标图像下边界下侧;
[0563]
具体地,当目标图像位置坐标的原点坐标(0,0)为图像左上角,则若满足以下任一条件,则预判决子块图像与目标图像存在区域重叠:
[0564]
(1)xo
max
<0;
[0565]
(2)xo
min
>width_o;
[0566]
(3)yo
max
<0;
[0567]
(4)yo
min
>height_o,
[0568]
其中xo
min
为xoi中的最小值、xo
max
为xoi中的最大值,yo
min
为yoi中的最小值yo
max
为yoi中的最大值,其中i为0到7的整数,当目标图像位置坐标的原点坐标在图像非左上角的其他位置,也可类似推导得到判决公式;
[0569]
如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
[0570]
实施例18
[0571]
一种筛选子块图像装置,具体包括:
[0572]
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块图像信息,信息包括:子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
[0573]
子块图像判决模块,输入为子块图像信息、目标图像的相关信息以及子块图像的代表性深度参数,输出为使用子块图像中的像素进行渲染得到部分的目标图像。对于目标图像,获取其相关的信息,包括:宽度信息width_o、高度信息height_o和相机参数;获得所述子块图像的两个深度参数:z_near_new和z_far_new,其中两参数值的关系满足z_near_new≤z_far_new,子块图像的两个深度参数z_near_new和z_far_new的确定方法为以下方法之一种:
[0574]
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述子块图像的z_near_new等于z_near,所述子块图像的z_far_new等于z_far;
[0575]
(2)所述子块图像的z_near_new等于该子块图像的最近深度值,所述子块图像的z_far_new等于该子块图像的最远深度值;
[0576]
利用所述子块图像的最远深度参数z_far_new以及子块图像信息和所属源视点图像的相机参数等算得所述子块图像的修正最远深度参数:z_far_modified。所述子块图像的最远深度参数修正值z_far_modified的确定方法为:
[0577]
子块图像所属源视点图像的相机投影格式为平面投影时,所述子块图像的z_far_modified等于z_far_new;
[0578]
子块图像所属源视点图像的相机投影格式为球面投影时,计算所述子块图像的修正z_far_modified的方法如下:
[0579]
根据子块图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得子块图像在所属源视点图像相机的经度跨度和纬度跨度δθ,利用以下公式计算z_far_modified:
[0580]
x
mod
=z_far_new
[0581][0582][0583][0584]
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0585]
(a0,b0)=(xs,ys),
[0586]
(a1,b1)=(xs,ys+height),
[0587]
(a2,b2)=(xs+width,ys),
[0588]
(a0,b0)=(xs+width,ys+height).
[0589]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0590]
(x0,y0,z0)=(a0,b0,z_near_new)
[0591]
(x1,y1,z1)=(a1,b1,z_near_new)
[0592]
(x2,y2,z2)=(a2,b2,z_near_new)
[0593]
(x3,y3,z3)=(a3,b3,z_near_new)
[0594]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0595]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0596]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0597]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0598]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数;根据所得
到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠;如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
[0599]
实施例19
[0600]
一种筛选子块图像装置,具体包括:
[0601]
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块图像信息,信息包括:子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
[0602]
子块图像判决模块,输入为子块图像信息、目标图像的相关信息以及子块图像的代表性深度参数,输出为使用子块图像中的像素进行渲染得到部分的目标图像。对于目标图像,获取其相关的信息,包括:宽度信息width_o、高度信息height_o和相机参数;获得所述子块图像的两个深度参数:z_near_new和z_far_new,其中两参数值的关系满足z_near_new≤z_far_new,子块图像的两个深度参数z_near_new和z_far_new的确定方法为以下方法之一种:
[0603]
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述子块图像的z_near_new等于z_near,所述子块图像的z_far_new等于z_far;
[0604]
(2)所述子块图像的z_near_new等于该子块图像的最近深度值,所述子块图像的z_far_new等于该子块图像的最远深度值,子块图像的最近深度值和所述子块图像的最远深度值的确定方法为以下一种:
[0605]
(1)从码流中直接解码得到所述子块图像的最近深度值和最远深度值;
[0606]
(2)在解码重构的深度图像中,所述子块图像的所有像素中距离该子块所属的源视点最近的像素的深度值为所述子块的最近深度值;所述子块图像的所有像素中距离该子块所属的源视点最远的像素的深度值为所述子块的最远深度值;
[0607]
利用所述子块图像的最远深度参数z_far_new以及子块图像信息和所属源视点图像的相机参数等算得所述子块图像的修正最远深度参数:z_far_modified。所述子块图像的最远深度参数修正值z_far_modified的确定方法为:
[0608]
子块图像所属源视点图像的相机投影格式为平面投影时,所述子块图像的z_far_modified等于z_far_new;
[0609]
子块图像所属源视点图像的相机投影格式为球面投影时,计算所述子块图像的修正z_far_modified的方法如下:
[0610]
根据子块图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得子块图像在所属源视点图像相机的经度跨度和纬度跨度δθ,利用以下公式计算z_far_modified:
[0611]
x
mod
=z_far_new
[0612]
[0613][0614][0615]
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0616]
(a0,b0)=(xs,ys),
[0617]
(a1,b1)=(xs,ys+height),
[0618]
(a2,b2)=(xs+width,ys),
[0619]
(a0,b0)=(xs+width,ys+height).
[0620]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0621]
(x0,y0,z0)=(a0,b0,z_near_new)
[0622]
(x1,y1,z1)=(a1,b1,z_near_new)
[0623]
(x2,y2,z2)=(a2,b2,z_near_new)
[0624]
(x3,y3,z3)=(a3,b3,z_near_new)
[0625]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0626]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0627]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0628]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0629]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数;根据所得到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠;如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
[0630]
实施例20
[0631]
一种筛选子块图像装置,具体包括:
[0632]
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块图像信息,信息包括:子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
[0633]
子块图像判决模块,输入为子块图像信息、目标图像的相关信息以及子块图像的代表性深度参数,输出为使用子块图像中的像素进行渲染得到部分的目标图像。对于目标图像,获取其相关的信息,包括:宽度信息width_o、高度信息height_o和相机参数;获得所述子块图像的两个深度参数:z_near_new和z_far_new,其中两参数值的关系满足z_near_new≤z_far_new,子块图像的两个深度参数z_near_new和z_far_new的确定方法为以下方
法之一种:
[0634]
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述子块图像的z_near_new等于z_near,所述子块图像的z_far_new等于z_far;
[0635]
(2)所述子块图像的z_near_new等于该子块图像的最近深度值,所述子块图像的z_far_new等于该子块图像的最远深度值,子块图像的最近深度值和所述子块图像的最远深度值的确定方法为以下一种:
[0636]
(1)从码流中直接解码得到所述子块图像的最近深度值和最远深度值;
[0637]
(2)在解码重构的深度图像中,所述子块图像的所有像素中距离该子块所属的源视点最近的像素的深度值为所述子块的最近深度值;所述子块图像的所有像素中距离该子块所属的源视点最远的像素的深度值为所述子块的最远深度值;
[0638]
利用所述子块图像的最远深度参数z_far_new以及子块图像信息和所属源视点图像的相机参数等算得所述子块图像的修正最远深度参数:z_far_modified。所述子块图像的最远深度参数修正值z_far_modified的确定方法为:
[0639]
子块图像所属源视点图像的相机投影格式为平面投影时,所述子块图像的z_far_modified等于z_far_new;
[0640]
子块图像所属源视点图像的相机投影格式为球面投影时,计算所述子块图像的修正z_far_modified的方法如下:
[0641]
根据子块图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得子块图像在所属源视点图像相机的经度跨度和纬度跨度δθ,利用以下公式计算z_far_modified:
[0642]
x
mod
=z_far_new
[0643][0644][0645][0646]
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0647]
(a0,b0)=(xs,ys),
[0648]
(a1,b1)=(xs,ys+height),
[0649]
(a2,b2)=(xs+width,ys),
[0650]
(a0,b0)=(xs+width,ys+height).
[0651]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0652]
(x0,y0,z0)=(a0,b0,z_near_new)
[0653]
(x1,y1,z1)=(a1,b1,z_near_new)
[0654]
(x2,y2,z2)=(a2,b2,z_near_new)
[0655]
(x3,y3,z3)=(a3,b3,z_near_new)
[0656]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0657]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0658]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0659]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0660]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数;根据所得到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠若满足以下任一条件,则预判决子块图像与目标图像存在区域重叠:
[0661]
(1)投影到目标图像的八个代表点都在目标图像左边界左侧;
[0662]
(2)投影到目标图像的八个代表点都在目标图像右边界右侧;
[0663]
(3)投影到目标图像的八个代表点都在目标图像上边界上侧;
[0664]
(4)投影到目标图像的八个代表点都在目标图像下边界下侧;
[0665]
具体地,当目标图像位置坐标的原点坐标(0,0)为图像左上角,则若满足以下任一条件,则预判决子块图像与目标图像存在区域重叠:
[0666]
(1)xo
max
<0:
[0667]
(2)xo
min
>width_o;
[0668]
(3)yo
max
<0;
[0669]
(4)yo
min
>height_o;
[0670]
其中xo
min
为xoi中的最小值、xo
max
为xoi中的最大值,yo
min
为yoi中的最小值yo
max
为yoi中的最大值,其中i为0到7的整数,当目标图像位置坐标的原点坐标在图像非左上角的其他位置,也可类似推导得到判决公式;
[0671]
如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
[0672]
实施例21
[0673]
一种筛选处理单元的方法,具体包括:
[0674]
对于多视点子块拼接图像中的至少一个处理单元,根据码流中所述处理单元对应的信息传输单元的宽度w比如为512和高度h比如为256,计算该处理单元的宽度信息width和高度信息height,方法如下:
[0675]
width=min{w0,w-δw}=min{64,512-128}=64;
[0676]
height=min{h0,h-δh}=min{32,256-192}=32;
[0677]
其中,{w0=64,h0=32}分别是处理单元的默认宽度和高度,{δw=128,δh=192}分别是所述处理单元相对于所述信息传输单元的位置偏移量;
[0678]
根据所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xp1,yp1),比如为(256,64)、所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xs1,ys1),比如为(128,32)和所述处理单元位置相对于所述信息传输单元位置的偏移量{δw,δh}={128,192},计算所述处理单元在多视点子块拼接图像中的位置信息(xp,yp)、所述处理单元在源视点图像中的位置信息(xs,ys),计算方法如下:
[0679]
xp=xp1+δw=256+128=374;
[0680]
yp=yp1+δh=64+192=256;
[0681]
xs=xs1+δw=128+128=256;
[0682]
ys=ys1+δh=32+192=224;
[0683]
从码流中获取处理单元所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
[0684]
从码流中获取多视点子块拼接图像,根据处理单元的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的处理单元,该处理单元即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的处理单元;
[0685]
对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数;
[0686]
对所述的处理单元,确定四个边界顶点的深度覆盖范围:包括处理单元的代表性深度参数:z_near_new和z_far_new,z_near_new比如为0.12米和z_far_new比如为0.19米,其中处理单元深度覆盖范围的最近、最远深度值和源视点图像深度参数中的最近深度值z_near和最远深度值z_far关系为z_near<=z_near_new<=z_far_new<=z_far,
[0687]
计算所述处理单元修正后的最远深度值z_far_modified,所述处理单元的空间代表点即为所述处理单元的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0688]
(a0,b0)=(xs,ys)=(256,224),
[0689]
(a1,b1)=(xs+width,ys)=(320,224),
[0690]
(a2,b2)=(xs,ys+height)=(256,256),
[0691]
(a3,b3)=(xs+width,ys+height)=(320,256).
[0692]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0693]
(x0,y0,z0)=(a0,b0,z_near_new)
[0694]
(x1,y1,z1)=(a1,b1,z_near_new)
[0695]
(x2,y2,z2)=(a2,b2,z_near_new)
[0696]
(x3,y3,z3)=(a3,b3,z_near_new)
[0697]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0698]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0699]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0700]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0701]
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xo
min
,xo
max
分别为八个(xoi,yoi)横坐标的最小最大值,yo
min
,yo
max
分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
[0702]
(1)xo
max
<0
[0703]
(2)xo
min
>width_o
[0704]
(3)yo
max
<0
[0705]
(4)yo
min
>height_o,
[0706]
比如xo
max
=-2或xo
min
=2050或yo
max
=-30或yo
min
=3000,则判定该处理单元与目
标图像没有区域重叠,就不使用该处理单元用于后续渲染目标图像,否则该处理单元被用于后续渲染目标图像。
[0707]
实施例22
[0708]
一种筛选处理单元的方法,具体包括:
[0709]
对于多视点子块拼接图像中的至少一个处理单元,根据码流中所述处理单元对应的信息传输单元的宽度w比如为300和高度h比如为220,计算该处理单元的宽度信息width和高度信息height,方法如下:
[0710]
width=min{w0,w-δw}=min{64,300-256}=44;
[0711]
height=min{h0,h-δh}=min{32,220-192}=28;
[0712]
其中,{w0=64,h0=32}分别是处理单元的默认宽度和高度,{δw=256,δh=192}分别是所述处理单元相对于所述信息传输单元的位置偏移量;
[0713]
根据所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xp1,yp1),比如为(0,20)、所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xs1,ys1),比如为(10,24)和所述处理单元位置相对于所述信息传输单元位置的偏移量{δw,δh}={256,192},计算所述处理单元在多视点子块拼接图像中的位置信息(xp,yp)、所述处理单元在源视点图像中的位置信息(xs,ys),计算方法如下:
[0714]
xp=xp1+δw=0+256=256;
[0715]
yp=yp1+δh=20+192=212;
[0716]
xs=xs1+δw=10+256=266;
[0717]
ys=ys1+δh=24+192=216;
[0718]
从码流中获取处理单元所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
[0719]
从码流中获取多视点子块拼接图像,根据处理单元的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的处理单元,该处理单元即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的处理单元;
[0720]
对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数;
[0721]
对所述的处理单元,确定四个边界顶点的深度覆盖范围:包括处理单元的代表性深度参数:z_near_new和z_far_new,z_near_new比如为0.12米和z_far_new比如为0.19米,其中处理单元深度覆盖范围的最近、最远深度值和源视点图像深度参数中的最近深度值z_near和最远深度值z_far关系为z_near<=z_near_new<=z_far_new<=z_far,
[0722]
计算所述处理单元修正后的最远深度值z_far_modified,所述处理单元的空间代表点即为所述处理单元的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0723]
(a0,b0)=(xs,ys)=(266,216),
[0724]
(a1,b1)=(xs+width,ys)=(310,216),
[0725]
(a2,b2)=(xs,ys+height)=(266,244),
[0726]
(a3,b3)=(xs+width,ys+height)=(310,244).
[0727]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0728]
(x0,y0,z0)=(a0,b0,z_near_new)
[0729]
(x1,y1,z1)=(a1,b1,z_near_new)
[0730]
(x2,y2,z2)=(a2,b2,z_near_new)
[0731]
(x3,y3,z3)=(a3,b3,z_near_new)
[0732]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0733]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0734]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0735]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0736]
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xo
min
,xo
max
分别为八个(xoi,yoi)横坐标的最小最大值,yo
min
,yo
max
分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
[0737]
(1)xo
max
<0
[0738]
(2)xo
min
>width_o
[0739]
(3)yo
max
<0
[0740]
(4)yo
min
>height_o,
[0741]
比如xo
max
=-2或xo
min
=2050或yo
max
=-30或yo
min
=3000,则判定该处理单元与目标图像没有区域重叠,就不使用该处理单元用于后续渲染目标图像,否则该处理单元被用于后续渲染目标图像。
[0742]
实施例23
[0743]
一种筛选处理单元的方法,具体包括:
[0744]
对于多视点子块拼接图像中的至少一个处理单元,根据码流中所述处理单元对应的信息传输单元的宽度w比如为300和高度h比如为220,计算该处理单元的宽度信息width和高度信息height,方法如下:
[0745]
width=min{w0,w-δw}=min{64,300-256}=44;
[0746]
height=min{h0,h-δh}=min{32,220-192}=28;
[0747]
其中,{w0=64,h0=32}分别是处理单元的默认宽度和高度,{δw=256,δh=192}分别是所述处理单元相对于所述信息传输单元的位置偏移量;
[0748]
根据所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xp1,yp1),比如为(0,20)、所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xs1,ys1),比如为(10,24)和所述处理单元位置相对于所述信息传输单元位置的偏移量{δw,δh}={256,192},计算所述处理单元在多视点子块拼接图像中的位置信息(xp,yp)、所述处理单元在源视点图像中的位置信息(xs,ys),计算方法如下:
[0749]
xp=xp1+δw=0+256=256;
[0750]
yp=yp1+δh=20+192=212;
[0751]
xs=xs1+δw=10+256=266;
[0752]
ys=ys1+δh=24+192=216;
[0753]
从码流中获取处理单元所属源视点图像的相机参数和深度参数,其中相机参数包
括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
[0754]
从码流中获取多视点子块拼接图像,根据处理单元的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的处理单元,该处理单元即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的处理单元;
[0755]
对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数;
[0756]
对所述的处理单元,确定四个边界顶点的深度覆盖范围:包括处理单元的代表性深度参数:z_near_new和z_far_new,z_near_new比如为0.12米和z_far_new比如为0.19米,其中处理单元深度覆盖范围的最近、最远深度值和源视点图像深度参数中的最近深度值z_near和最远深度值z_far关系为z_near<=z_near_new<=z_far_new<=z_far,
[0757]
子计算所述处理单元修正后的最远深度值z_far_modified,所述处理单元的空间代表点即为所述处理单元的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0758]
(a0,b0)=(xs,ys)=(256,224),
[0759]
(a1,b1)=(xs+width,ys)=(320,224),
[0760]
(a2,b2)=(xs,ys+height)=(256,256),
[0761]
(a3,b3)=(xs+width,ys+height)=(320,256).
[0762]
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
[0763]
(x0,y0,z0)=(a0,b0,z_near_new)
[0764]
(x1,y1,z1)=(a1,b1,z_near_new)
[0765]
(x2,y2,z2)=(a2,b2,z_near_new)
[0766]
(x3,y3,z3)=(a3,b3,z_near_new)
[0767]
(x4,y4,z4)=(a0,b0,z_far_modified)
[0768]
(x5,y5,z5)=(a1,b1,z_far_modified)
[0769]
(x6,y6,z6)=(a2,b2,z_far_modified)
[0770]
(x7,y7,z7)=(a3,b3,z_far_modified)
[0771]
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xo
min
,xo
max
分别为八个(xoi,yoi)横坐标的最小最大值,yo
min
,yo
max
分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
[0772]
(1)xo
max
<0
[0773]
(2)xo
min
>width_o
[0774]
(3)yo
max
<0
[0775]
(4)yo
min
>height_o,
[0776]
比如xo
max
=50或xo
min
=10或yo
max
=5或yo
min
=512,则判定该处理单元与目标图像有区域重叠,使用该处理单元用于后续渲染目标图像。
[0777]
实施例24
[0778]
一种筛选处理单元的方法,具体包括:
[0779]
如图5所示,对于多视点子块拼接图像中的两个处理单元,根据码流中两个处理单元共同对应的信息传输单元的宽度w比如为300和高度h比如为220,分别计算处理单元a的宽度信息width_a、高度信息height_a和处理单元b的宽度信息width_b、高度信息height_b,方法如下:
[0780]
width_a=min{wo,w-δw_a}=min{64,300-128}=64;
[0781]
height_a=min{h0,h-δh_a}=min{32,220-160}=32;
[0782]
width_b=min{w0,w-δw_b}=min{64,300-256}=44;
[0783]
height_b=min{h0,h-δh_b}=min{32,220-192}=28;
[0784]
其中,{w0=64,h0=32}分别是处理单元a和b的默认宽度和高度,{δw_a=128,δh_a=160}分别是所述处理单元a相对于所述信息传输单元的位置偏移量,{δw_b=256,δh_b=192}分别是所述处理单元b相对于所述信息传输单元的位置偏移量;
[0785]
根据所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xp1,yp1),比如为(0,20)、所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xs1,ys1),比如为(10,24)、所述处理单元a位置相对于所述信息传输单元位置的偏移量{δw_a,δh_a}={128,160}和所述处理单元b位置相对于所述信息传输单元位置的偏移量{δw_b,δh_b}={256,192},计算所述处理单元a在多视点子块拼接图像中的位置信息(xp_a,yp_a)、所述处理单元a在源视点图像中的位置信息(xs_a,ys_a)、所述处理单元b在多视点子块拼接图像中的位置信息(xp_b,yp_b)、所述处理单元b在源视点图像中的位置信息(xs_b,ys_b),计算方法如下:
[0786]
xp_a=xp1+δw_a=0+128=128;
[0787]
yp_a=yp1+δh_a=20+160=180;
[0788]
xs_a=xs1+δw_a=10+128=138;
[0789]
ys_a=ys1+δh_a=24+160=184;
[0790]
xp_b=xp1+δw_b=0+256=56;
[0791]
yp_b=yp1+δh_b=20+192=212;
[0792]
xs_b=xs1+δw_b=10+256=266;
[0793]
ys_b=ys1+δh_b=24+192=216;
[0794]
从码流中获取处理单元a和b共同所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
[0795]
从码流中获取多视点子块拼接图像,根据处理单元a的信息从多视点子块拼接图像的(xp_a,yp_a)位置开始,提取宽度为width_a、高度为height_a的处理单元,该处理单元即对应源视点图像中从位置(xs_a,ys_a)开始的、宽度为width_a、高度为height_a的处理单元a;
[0796]
从码流中获取多视点子块拼接图像,根据处理单元b的信息从多视点子块拼接图像的(xp_b,yp_b)位置开始,提取宽度为width_b、高度为height_b的处理单元,该处理单元即对应源视点图像中从位置(xs_b,ys_b)开始的、宽度为width_b、高度为height_b的处理单元b;
[0797]
对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息
height_o比如为2048、目标图像的相机参数;
[0798]
对所述的处理单元a,确定四个边界顶点的深度覆盖范围:包括处理单元的代表性深度参数:z_near_new和z_far_new,z_near_new比如为0.12米和z_far_new比如为0.19米,其中处理单元深度覆盖范围的最近、最远深度值和源视点图像深度参数中的最近深度值z_near和最远深度值z_far关系为z_near<=z_near_new<=z_far_new<=z_far,计算所述处理单元修正后的最远深度值z_far_modified,所述处理单元的空间代表点即为所述处理单元的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。,因此四个边界顶点对应八个空间代表点(a_xi,a_yi,a_zi),i为0到7的整数,利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(a_xoi,a_yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决处理单元是否用于生成目标图像,判决条件如下:
[0799]
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(a_xoi,a_yoi),a_xo
min
,a_xo
max
分别为八个(a_xoi,a_yoi)横坐标的最小最大值,a_yo
min
,a_yo
max
分别为八个(a_xoi,a_yoi)纵坐标的最小最大值,若满足以下任一条件:
[0800]
(1)a_xo
max
<0
[0801]
(2)a_xo
min
>width_o
[0802]
(3)a_yo
max
<0
[0803]
(4)a_yo
min
>height_o,
[0804]
比如a_xo
max
=50或a_xo
min
=10或a_yo
max
=5或a_yo
min
=512,则判定该处理单元a与目标图像有区域重叠,使用该处理单元用于后续渲染目标图像;
[0805]
对所述的处理单元b,确定四个边界顶点的深度覆盖范围:包括处理单元的代表性深度参数:z_near_new和z_far_new,z_near_new比如为0.12米和z_far_new比如为0.19米,其中处理单元深度覆盖范围的最近、最远深度值和源视点图像深度参数中的最近深度值z_near和最远深度值z_far关系为z_near<=z_near_new<=z_far_new<=z_far,计算所述处理单元修正后的最远深度值z_far_modified,所述处理单元的空间代表点即为所述处理单元的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点对应八个空间代表点(b_xi,b_yi,b_zi),i为0到7的整数,利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(b_xoi,b_yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决处理单元是否用于生成目标图像,判决条件如下:
[0806]
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(b_xoi,b_yoi),b_xo
min
,b_xo
max
分别为八个(b_xoi,b_yoi)横坐标的最小最大值,b_yo
min
,b_yo
max
分别为八个(b_xoi,b_yoi)纵坐标的最小最大值,若满足以下任一条件:
[0807]
(1)b_xo
max
<0
[0808]
(2)b_xo
min
>width_o
[0809]
(3)b_yo
max
<0
[0810]
(4)b_yo
min
>height_0,
[0811]
比如b_xo
max
=-2或b_xo
min
=2058或b_yo
max
=-30或b_yo
min
=3000,则判定该处理单元b与目标图像无区域重叠,就不使用该处理单元用于后续渲染目标图像。
[0812]
实施例25
[0813]
一种筛选处理单元的方法,具体包括:
[0814]
对于多视点子块拼接图像中的一个信息传输单元,从码流中获取宽度w比如为300、高度h比如为220、左上角像素在多视点子块拼接图像中的位置信息(xp1,yp1),比如为(0,20)、所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xs1,ys1),比如为(10,24);
[0815]
所述信息传输单元可以分割为多个处理单元,如图6所示,其中对于处理单元a和处理单元b,根据信息传输单元的宽度、高度h,分别计算处理单元a的宽度信息width_a、高度信息height_a和处理单元b的宽度信息width_b、高度信息height_b,方法如下:
[0816]
width_a=min{w0,w-δw_a}=min{64,300-128}=64;
[0817]
height_a=min{h0,h-δh_a}=min{32,220-160}=32;
[0818]
width_b=min{w0,w-δw_b}=min{64,300-256}=44;
[0819]
height_b=min{h0,h-δh_b}=min{32,220-192}=28;
[0820]
其中,{w0=64,h0=32}分别是处理单元a和b的默认宽度和高度,{δw_a=128,δh_a=160}分别是所述处理单元a相对于所述信息传输单元的位置偏移量,{δw_b=256,δh_b=192}分别是所述处理单元b相对于所述信息传输单元的位置偏移量;
[0821]
根据所述信息传输单元的、所述处理单元a位置相对于所述信息传输单元位置的偏移量{δw_a,δh_a}={128,160}和所述处理单元b位置相对于所述信息传输单元位置的偏移量{δw_b,δh_b}={256,192},计算所述处理单元a在多视点子块拼接图像中的位置信息(xp_a,yp_a)、所述处理单元a在源视点图像中的位置信息(xs_a,ys_a)、所述处理单元b在多视点子块拼接图像中的位置信息(xp_b,yp_b)、所述处理单元b在源视点图像中的位置信息(xs_b,ys_b),计算方法如下:
[0822]
xp_a=xp1+δw_a=0+128=128;
[0823]
yp_a=yp1+δh_a=20+160=180;
[0824]
xs_a=xs1+δw_a=10+128=138;
[0825]
ys_a=ys1+δh_a=24+160=184;
[0826]
xp_b=xp1+δw_b=0+256=56;
[0827]
yp_b=yp1+δh_b=20+192=212;
[0828]
xs_b=xs1+δw_b=10+256=266;
[0829]
ys_b=ys1+δh_b=24+192=216;
[0830]
从码流中获取处理单元a和b共同所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
[0831]
从码流中获取多视点子块拼接图像,根据处理单元a的信息从多视点子块拼接图像的(xp_a,yp_a)位置开始,提取宽度为width_a、高度为height_a的处理单元,该处理单元即对应源视点图像中从位置(xs_a,ys_a)开始的、宽度为width_a、高度为height_a的处理单元a;
[0832]
从码流中获取多视点子块拼接图像,根据处理单元b的信息从多视点子块拼接图像的(xp_b,yp_b)位置开始,提取宽度为width_b、高度为height_b的处理单元,该处理单元即对应源视点图像中从位置(xs_b,ys_b)开始的、宽度为width_b、高度为height_b的处理单元b;
[0833]
对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数;
[0834]
对所述的处理单元a,确定四个边界顶点的深度覆盖范围:包括处理单元的代表性深度参数:z_near_new和z_far_new,z_near_new比如为0.12米和z_far_new比如为0.19米,其中处理单元深度覆盖范围的最近、最远深度值和源视点图像深度参数中的最近深度值z_near和最远深度值z_far关系为z_near<=z_near_new<=z_far_new<=z_far,计算所述处理单元修正后的最远深度值z_far_modified,所述处理单元的空间代表点即为所述处理单元的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点对应八个空间代表点(a_xi,a_yi,a_zi),i为0到7的整数,利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(a_xoi,a_yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决处理单元是否用于生成目标图像,判决条件如下:
[0835]
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(a_xoi,a_yoi),a_xo
min
,a_xo
max
分别为八个(a_xoi,a_yoi)横坐标的最小最大值,a_yo
min
,a_yo
max
分别为八个(a_xoi,a_yoi)纵坐标的最小最大值,若满足以下任一条件:
[0836]
(1)a_xo
max
<0
[0837]
(2)a_xo
min
>width_o
[0838]
(3)a_yo
max
<0
[0839]
(4)a_yo
min
>height_o,
[0840]
比如a_xo
max
=50或a_xo
min
=10或a_yo
max
=5或a_yo
min
=512,则判定该处理单元a与目标图像有区域重叠,使用该处理单元用于后续渲染目标图像;
[0841]
对所述的处理单元b,确定四个边界顶点的深度覆盖范围:包括处理单元的代表性深度参数:z_near_new和z_far_new,z_near_new比如为0.12米和z_far_new比如为0.19米,其中处理单元深度覆盖范围的最近、最远深度值和源视点图像深度参数中的最近深度值z_near和最远深度值z_far关系为z_near《=z_near_new<=z_far_new<=z_far,计算所述处理单元修正后的最远深度值z_far_modified,所述处理单元的空间代表点即为所述处理单元的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点对应八个空间代表点(b_xi,b_yi,b_zi),i为0到7的整数,利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(b_xoi,b_yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决处理单元是否用于生成目标图像,判决条件如下:
[0842]
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(b_xoi,b_yoi),b_xo
min
,b_xo
max
分别为八个(b_xoi,b_yoi)横坐标的最小最大值,b_yo
min
,b_
yo
max
分别为八个(b_xoi,b_yoi)纵坐标的最小最大值,若满足以下任一条件:
[0843]
(1)b_xo
max
<0
[0844]
(2)b_xo
min
>width_o
[0845]
(3)b_yo
max
<0
[0846]
(4)b_yo
min
>height_o,
[0847]
比如b_xo
max
=-2或b_xo
min
=2058或b_yo
max
=-30或b_yo
min
=3000,则判定该处理单元b与目标图像无区域重叠,就不使用该处理单元用于后续渲染目标图像。
[0848]
实施例26
[0849]
一种筛选处理单元的方法,具体包括:
[0850]
对于多视点子块拼接图像中c的一个信息传输单元,从码流中获取宽度w比如为300、高度h比如为220、左上角像素在多视点子块拼接图像中的位置信息(xp1,yp1),比如为(0,20)、所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xs1,ys1),比如为(10,24);
[0851]
所述信息传输单元可以分割为多个处理单元,其中对于处理单元a和处理单元b,根据信息传输单元的宽度、高度h,分别计算处理单元a的宽度信息width_a、高度信息height_a和处理单元b的宽度信息width_b、高度信息height_b,方法如下:
[0852]
width_a=min{w0,w-δw_a}=min{64,300-128}=64;
[0853]
height_a=min{h0,h-δh_a}=min{32,220-160}=32;
[0854]
width_b=min{w0,w-δw_b}=min{64,300-256}=44;
[0855]
height_b=min{h0,h-δh_b}=min{32,220-192}=28;
[0856]
其中,{w0=64,h0=32}分别是处理单元a和b的默认宽度和高度,{δw_a=128,δh_a=160}分别是所述处理单元a相对于所述信息传输单元的位置偏移量,{δw_b=256,δh_b=192}分别是所述处理单元b相对于所述信息传输单元的位置偏移量;
[0857]
根据所述信息传输单元的、所述处理单元a位置相对于所述信息传输单元位置的偏移量{δw_a,δh_a}={128,160}和所述处理单元b位置相对于所述信息传输单元位置的偏移量{δw_b,δh_b}={256,192},计算所述处理单元a在多视点子块拼接图像中的位置信息(xp_a,yp_a)、所述处理单元a在源视点图像中的位置信息(xs_a,ys_a)、所述处理单元b在多视点子块拼接图像中的位置信息(xp_b,yp_b)、所述处理单元b在源视点图像中的位置信息(xs_b,ys_b),计算方法如下:
[0858]
xp_a=xp1+δw_a=0+128=128;
[0859]
yp_a=yp1+δh_a=20+160=180;
[0860]
xs_a=xs1+δw_a=10+128=138;
[0861]
ys_a=ys1+δh_a=24+160=184;
[0862]
xp_b=xp1+δw_b=0+256=56;
[0863]
yp_b=yp1+δh_b=20+192=212;
[0864]
xs_b=xs1+δw_b=10+256=266;
[0865]
ys_b=ys1+δh_b=24+192=216;
[0866]
从码流中获取处理单元a和b共同所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如
为0.1米和最远深度z_far比如为0.2米;
[0867]
从码流中获取多视点子块拼接图像,根据处理单元a的信息从多视点子块拼接图像的(xp_a,yp_a)位置开始,提取宽度为width_a、高度为height_a的处理单元,该处理单元即对应源视点图像中从位置(xs_a,ys_a)开始的、宽度为width_a、高度为height_a的处理单元a;
[0868]
从码流中获取多视点子块拼接图像,根据处理单元b的信息从多视点子块拼接图像的(xp_b,yp_b)位置开始,提取宽度为width_b、高度为height_b的处理单元,该处理单元即对应源视点图像中从位置(xs_b,ys_b)开始的、宽度为width_b、高度为height_b的处理单元b;
[0869]
对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数;
[0870]
对所述的处理单元a,确定四个边界顶点的深度覆盖范围:包括处理单元的代表性深度参数:z_near_new和z_far_new,z_near_new比如为0.12米和z_far_new比如为0.19米,其中处理单元深度覆盖范围的最近、最远深度值和源视点图像深度参数中的最近深度值z_near和最远深度值z_far关系为z_near<=z_near_new<=z_far_new<=z_far,计算所述处理单元修正后的最远深度值z_far_modified,所述处理单元的空间代表点即为所述处理单元的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点对应八个空间代表点(a_xi,a_yi,a_zi),i为0到7的整数,利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(a_xoi,a_yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决处理单元是否用于生成目标图像,判决条件如下:
[0871]
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(a_xoi,a_yoi),a_xo
min
,a_xo
max
分别为八个(a_xoi,a_yoi)横坐标的最小最大值,a_yo
min
,a_yo
max
分别为八个(a_xoi,a_yoi)纵坐标的最小最大值,若满足以下任一条件:
[0872]
(1)a_xo
max
<0
[0873]
(2)a_xo
min
>width_o
[0874]
(3)a_yo
max
<0
[0875]
(4)a_yo
min
>height_o,
[0876]
比如a_xo
max
=50或a_xo
min
=10或a_yo
max
=5或a_yo
min
=512,则判定该处理单元a与目标图像有区域重叠,使用该处理单元用于后续渲染目标图像;
[0877]
对所述的处理单元b,确定四个边界顶点的深度覆盖范围:包括处理单元的代表性深度参数:z_near_new和z_far_new,z_near_new比如为0.12米和z_far_new比如为0.19米,其中处理单元深度覆盖范围的最近、最远深度值和源视点图像深度参数中的最近深度值z_near和最远深度值z_far关系为z_near<=z_neap_new<=z_far_new<=z_far,计算所述处理单元修正后的最远深度值z_far_modified,所述处理单元的空间代表点即为所述处理单元的每个代表点结合子块图像的最近深度值z_neap和修正后的最远深度值z_far_modified。因此四个边界顶点对应八个空间代表点(b_xi,b_yi,b_zi),i为0到7的整数,利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图
像位置,投影到目标图像位置的坐标为(b_xoi,b_yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决处理单元是否用于生成目标图像,判决条件如下:
[0878]
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(b_xoi,b_yoi),b_xo
min
,b_xo
max
分别为八个(b_xoi,b_yoi)横坐标的最小最大值,b_yo
min
,b_yo
max
分别为八个(b_xoi,b_yoi)纵坐标的最小最大值,若满足以下任一条件:
[0879]
(1)b_xo
max
<0
[0880]
(2)b_xo
min
>width_o
[0881]
(3)b_yo
max
<0
[0882]
(4)b_yo
min
>height_0,
[0883]
比如b_xo
max
=-2或b_xo
min
=2058或b_yo
max
=-30或b_yo
min
=3000,则判定该处理单元b与目标图像无区域重叠,就不使用该处理单元用于后续渲染目标图像;
[0884]
对于多视点子块拼接图像c中的至少一个子块图像,从码流中获取该子块图像的信息,包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
[0885]
从码流中获取多视点子块拼接图像,根据子块图像的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
[0886]
对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:包括子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new比如为0.12米和z_far_new比如为0.19米,其中子块图像深度覆盖范围的最近、最远深度值和源视点图像深度参数中的最近深度值z_near和最远深度值z_far关系为z_near<=z_near_new<=z_far_new<=z_far,计算所述处理单元修正后的最远深度值z_far_modified,所述处理单元的空间代表点即为所述处理单元的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点对应八个空间代表点(xi,yi,zi),i为0到7的整数,利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
[0887]
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xo
min
,xo
max
分别为八个(xoi,yoi)横坐标的最小最大值,yo
min
,yo
max
分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
[0888]
(1)xo
max
<0
[0889]
(2)xo
min
>width_o
[0890]
(3)yo
max
<0
[0891]
(4)yo
min
>height_o,
[0892]
比如xo
max
=-2或xo
min
=2050或yo
max
=-30或yo
min
=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
[0893]
实施例27
[0894]
一种筛选子块图像方法,具体包括:
[0895]
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的信息,包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_hear比如为0.1米和最远深度z_far比如为0.2米;
[0896]
从码流中获取多视点子块拼接图像,根据子块图像的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
[0897]
对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:包括子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new比如为0.13米和z_far_new比如为0.19米,其中子块图像深度覆盖范围的最近、最远深度值和源视点图像深度参数中的最近深度值z_near和最远深度值z_far关系为z_near<=z_near_new<=z_far_new<=z_far,计算所述处理单元修正后的最远深度值z_far_modified。子块图像的每个代表点结合深度覆盖范围的最近深度值z_near_new、修正后的最远深度值z_far_modified,和中心深度值z_mid=0.5*(z_near_new+z_far_modified)=0.16米就有三个空间代表点。
[0898]
因此,四个边界顶点(aj,bj),j为0到3的整数,具体如下:
[0899]
(a0,b0)=(xs,ys)=(0,0),
[0900]
(a1,b1)=(xs+width,ys)=(128,0),
[0901]
(a2,b2)=(xs,ys+height)=(0,64),
[0902]
(a3,b3)=(xs+width,ys+height)=(128,64).
[0903]
对应12个空间代表点(xi,yi,zi),i为0到11的整数,具体如下:
[0904]
(x0,y0,z0)=(a0,b0,z_near_new)=(0,0,0.12),
[0905]
(x1,y1,z1)=(a1,b1,z_near_new)=(128,0,0.12),
[0906]
(x2,y2,z2)=(a2,b2,z_near_new)=(0,64,0.12),
[0907]
(x3,y3,z3)=(a3,b3,z_near_new)=(128,64,0.12),
[0908]
(x4,y4,z4)=(a0,b0,z_far_modified)=(0,0,0.19),
[0909]
(x5,y5,z5)=(a1,b1,z_far_modified)=(128,0,0.19),
[0910]
(x6,y6,z6)=(a2,b2,z_far_modified)=(0,64,0.19),
[0911]
(x7,y7,z7)=(a3,b3,z_far_modified)=(128,64,0.19),
[0912]
(x8,y8,z8)=(a0,b0,z_mid)=(0,0,0.16),
[0913]
(x9,y9,z9)=(a1,b1,z_mid)=(128,0,0.16),
[0914]
(x
1o
,y
10
,z
10
)=(a2,b2,z_mid)=(0,64,0.16),
[0915]
(x
11
,y
11
,z
11
)=(a3,b3,z_mid)=(128,64,0.16),
[0916]
利用所述源视点图像的相机参数和目标图像的相机参数关系,将12个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到11的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
[0917]
子块图像对应的12个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xo
min
,xo
max
分别为12个(xoi,yoi)横坐标的最小最大值,yo
min
,yo
max
分别为2个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
[0918]
(1)xo
max
<0
[0919]
(2)xo
min
>width_o
[0920]
(3)yo
max
<0
[0921]
(4)yo
min
>height_o,
[0922]
比如xo
max
=-2或xo
min
=2050或yo
max
=-30或yo
min
=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1