CN114727084B - 一种筛选图像的方法及装置 - Google Patents
一种筛选图像的方法及装置 Download PDFInfo
- Publication number
- CN114727084B CN114727084B CN202110433491.9A CN202110433491A CN114727084B CN 114727084 B CN114727084 B CN 114727084B CN 202110433491 A CN202110433491 A CN 202110433491A CN 114727084 B CN114727084 B CN 114727084B
- Authority
- CN
- China
- Prior art keywords
- image
- sub
- block
- far
- new
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/122—Improving the 3D impression of stereoscopic images by modifying image signal contents, e.g. by filtering or adding monoscopic depth cues
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/128—Adjusting depth or disparity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/275—Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/363—Image reproducers using image projection screens
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种筛选图像的方法及装置。该发明用于多媒体领域中,从多视点子块拼接图像的码流中解码提取子块图像或处理单元,对子块图像或处理单元进行筛选,通过提取子块图像或处理单元相关信息和目标图像相关信息,判决该子块图像或处理单元与目标图像是否存在区域重叠,如果存在区域重叠,就使用子块图像或处理单元中的像素进行渲染得到部分的目标图像,否则,不进行渲染。本发明给出的方法能够有效解决已有算法存在的误删问题且保证算法的简洁性,在不降低渲染目标图像的质量下,可以有效降低渲染计算时间。本发明在提出一种筛选子块图像或处理单元的方法的同时,还提出了相应的装置。
Description
技术领域
本发明专利属于子块图像处理领域,具体涉及一种完整图像或多视点子块拼接图像在进行目标图像渲染前,进行子块图像或处理单元筛选的方法和装置。
背景技术
“沉浸感”作为一种主观评价,是指观看者对多媒体系统建立、显示出来的虚拟场景的感知代入感。随着采集设备和显示设备的能力逐年增强,沉浸式媒体作为一种能够带给观看者强沉浸感的视觉多媒体,其编码、传输和渲染已经成为了工业界和科学界的研究热点。
随着沉浸式媒体支持观看自由度的增加,其带给观看者的视觉沉浸感得到明显增强。在三维空间下,观看者的观看自由度最多支持6个自由度,包括沿三维空间X,Y,Z轴平移和分别绕三个轴旋转。目前,观看者可以在限定空间(平移自由度受限)中任意移动位置、改变朝向来观看场景,从而获得交互感和运动视差,形成更强的视觉沉浸感。
为了支持有限空间的6自由度观看场景,沉浸式媒体需要渲染限定空间中任意位置、任意朝向的目标内容。多视点图像加深度信息是一种有效的沉浸式媒体表达方式,它由多个视点的纹理图像以及各纹理图像对应的深度图像组成。利用基于深度图像的视点合成技术,该表达方式可以根据目标图像的相机参数以及目标视点和已有视点的位置关系渲染得到目标视点的图像。但是由于多个视点之间一般存在较大的信息冗余,编码传输所有多视点源图像会造成编解码的代价很大。
多视点子块拼接图像有效地解决了上述问题。在编解码之前,通过分析多个视点之间的几何纹理关系,利用主视点(多视点图像中的某些包含完整视点信息的图像)图像尽可能剔除其他视点的冗余信息,因此除了主视点外的其他视点图像只保留特有的有效信息。考虑到编码效率,子图有效信息的保留一般用矩形区域表示,这样就形成多个矩形子块图像,最后将多个子块图像拼接成多视点子块拼接图像,如图1所示。经过上述操作后,需要编码传输的图像数据量能大大减少。
对于解码端,利用解码得到的子块图像信息,从解码得到的多视点子块拼接图像中提取所有子块图像。其中,所述的子块图像信息至少包括:子块图像的宽度、高度、子块图像的左上角像素在多视点拼接图像中的位置和子块图像的左上角像素在源视点图像中的位置。
目标图像合成是以子块图像为单位进行投影计算的。对于每个子块图像,利用子块图像所属单视点图像的相机参数和目标图像的相机参数关系,进行目标图像渲染,其中相机参数中的相机内参包括焦距、主点坐标和坐标轴倾斜参数,这些参数包含在下式的内参矩阵中。任意两个视点V1,V2间对应像素的视点间位置关系如下公式所示:
其中,utarget,vtarget是目标视点V1中像素点的坐标位置,
uref,vref是参考视点V2中像素点的坐标位置,
是目标视点V1的相机内参矩阵,
是参考视点V2的相机内参矩阵,
R和t表示参考视点V2处的相机坐标与目标视点V1处的相机坐标旋转平移关系,
zref是参考视点V2中像素点对应的深度值,
ztarget是目标视点V1中像素点对应的深度值,
最后对所有投影到目标图像的子块纹理信息进行融合处理,合成目标图像。与传输完整数量的多视点源图像相比,在相同码率下,目标图像的合成质量能得到显著的提升。
在实际的图像处理系统中,解码端的处理时间是衡量该系统是否可行的关键参数。而目前基于子块图像的目标图像合成依然有可改进优化的空间。多视点子块拼接图像中所有的子块图像联合描述了整个场景信息。而在观看者观看视角域有限的约束下,观看的每帧目标图像只覆盖部分的全部视角场景内容,这就会出现某个子块图像对于合成目标图像完全无信息贡献,如图2所示,子块图像2的内容渲染后与目标图像完全没有区域覆盖,这些对目标视点无贡献子块图像的逐像素投影计算增加了无效的计算负担。
发明内容
为了解决上述技术问题,本发明提出了一种筛选图像的方法及装置。在每个子块图像或处理单元进行目标图像渲染前,添加预筛选过程,在目标视点观看位置和已有视点偏离距离和角度不大,子块图像或处理单元的大小所占视角范围不大,水平竖直一般小于90度,目标图像为非全景、有限视野范围的图像的前提下,用子块图像内的一定数量的代表点以及深度范围来描述子块图像或处理单元包含的场景范围,通过这些代表点落在目标图像上的情况来判决是否使用该子块图像或处理单元进行图像渲染,只对有效的子块图像或处理单元进行预渲染。这样节省了进行图像渲染的子块图像或处理单元数量,在不改变目标图像的合成质量的同时,降低了渲染计算时间。
已有技术在图像投影格式为球面投影的使用情况下,由于球体的表面外凸,所以子块图像边界顶点在空间中最远深度位置的两点连线是弦所在的面非球切面,如图4所示如果恰好仅仅球凸面落在目标视野范围而弦所在面处于视野不可见区域时会被错误当做该子块图像完全不可见,因此被误删从而造成目标图像质量退化,影响视觉效果。
本发明的第一目的是提供一种筛选图像的方法,包括如下内容:
对于多视点子块拼接图像中的至少一个图像,获取该图像的宽度信息width、高度信息height、该图像在多视点子块拼接图像中的位置信息、该图像在源视点图像中的位置信息和该图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参;
获取目标图像的宽度信息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;
利用所述源视点图像的相机参数和目标图像的相机参数,对图像四个边界顶点结合最近深度参数z_near_new和修正最远深度参数z_far_modified所得N个空间代表点(xi,yi,zi)从源视点向目标视点投影,得到目标图像中的N个代表点;其中,N为代表点的数量,i为0到N_1的整数;
根据所得到的目标图像中的N个代表点的位置坐标(xoi,yoi),预判决该图像与目标图像是否存在区域重叠;
如果存在区域重叠,使用图像中的像素进行渲染得到部分的目标图像,否则,不使用该图像进行渲染。
进一步的,所述图像的宽度信息width、高度信息height、该图像在多视点子块拼接图像中的位置信息、该图像在源视点图像中的位置信息确定方法为以下方法之一种:
(1)从码流中直接解码获得;
(2)从码流中获得所述图像对应信息传输单元的宽度W和高度H,计算该处理单元的宽度信息和高度信息;从码流中获取所述信息传输单元在多视点子块拼接图像中的位置信息、所述信息传输单元在源视点图像中的位置信息,结合所述图像在所述信息传输单元的位置,计算所述图像在多视点子块拼接图像中的位置信息、所述图像在源视点图像中的位置信息。
进一步的,满足以下任一条件,则预判决图像与目标图像存在区域重叠:
(1)投影到目标图像的N个代表点都在目标图像左边界左侧;
(2)投影到目标图像的N个代表点都在目标图像右边界右侧;
(3)投影到目标图像的N个代表点都在目标图像上边界上侧;
(4)投影到目标图像的N个代表点都在目标图像下边界下侧。
进一步的,所述图像的两个深度参数z_near_new和z_far_new的确定方法为以下方法之一种:
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述图像的z_near_new等于z_near,所述图像的z_far_new等于z_far;
(2)从码流中直接解码得到所述图像的最近深度值和最远深度值,所述图像的z_near_new等于该图像的最近深度值,所述图像的z_far_new等于该图像的最远深度值;
(3)在解码重构的深度图像中,所述图像的所有像素中距离该图像所属的源视点最近的像素的深度值为所述图像的最近深度值z_near_new;所述图像的所有像素中距离该图像所属的源视点最远的像素的深度值为所述图像的最远深度值z_far_new。
进一步的,所述图像的修正最远深度参数z_far_modified的确定方法为:
根据图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得图像在所属源视点图像相机的经度跨度和纬度跨度Δθ,利用以下公式计算修正最远深度参数z_far_modified:
其中,Xmod=z_far_new
本发明的第二目的是提供一种筛选图像的装置,包括:
图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个图像信息,信息包括:图像的宽度信息width、高度信息height、该图像在多视点子块拼接图像中的位置信息、该图像在源视点图像中的位置信息和该图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参;
目标图像相关信息获取模块,用于获取目标图像的宽度信息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;
图像判决模块,用于利用所述源视点图像的相机参数和目标图像的相机参数,对图像四个边界顶点结合最近深度参数z_near_new和修正最远深度参数z_far_modified所得N个空间代表点(xi,yi,zi)从源视点向目标视点投影,得到目标图像中的N个代表点;其中N为空间代表点的数量,i为0到N-1的整数;根据所得到的目标图像中的N个代表点的位置坐标(xoi,yoi),预判决该图像与目标图像是否存在区域重叠;如果存在区域重叠,使用图像中的像素进行渲染得到部分的目标图像,否则,不使用该图像进行渲染。
进一步的,所述图像的宽度信息width、高度信息height、该图像在多视点子块拼接图像中的位置信息、该图像在源视点图像中的位置信息确定方法为以下方法之一种:
(1)从码流中直接解码获得;
(2)从码流中获得所述图像对应信息传输单元的宽度W和高度H,计算该处理单元的宽度信息和高度信息;从码流中获取所述信息传输单元在多视点子块拼接图像中的位置信息、所述信息传输单元在源视点图像中的位置信息,结合所述图像在所述信息传输单元的位置,计算所述图像在多视点子块拼接图像中的位置信息、所述图像在源视点图像中的位置信息。
进一步的,满足以下任一条件,则预判决图像与目标图像不存在区域重叠:
(1)投影到目标图像的N个代表点都在目标图像左边界左侧;
(2)投影到目标图像的N个代表点都在目标图像右边界右侧;
(3)投影到目标图像的N个代表点都在目标图像上边界上侧;
(4)投影到目标图像的N个代表点都在目标图像下边界下侧。
进一步的,所述图像的两个深度参数z_near_new和z_far_new由以下方法之一种:得到
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述图像的z_near_new等于z_near,所述图像的z_far_new等于z_far;
(2)从码流中直接解码得到所述图像的最近深度值和最远深度值,所述图像的z_near_new等于该图像的最近深度值,所述图像的z_far_new等于该图像的最远深度值;
(3)在解码重构的深度图像中,所述图像的所有像素中距离该图像所属的源视点最近的像素的深度值为所述图像的最近深度值z_near_new;所述图像的所有像素中距离该图像所属的源视点最远的像素的深度值为所述图像的最远深度值z_far_new。
进一步的,所述图像的修正最远深度参数z_far_modified的确定方法为:
根据图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得图像在所属源视点图像相机的经度跨度和纬度跨度Δθ,利用以下公式计算修正最远深度参数z_far_modified:
其中,Xmod=z_far_new
本发明由于采用以上技术方案,其具有以下优点:
在目标全景图像中,有效视角域只会占其中一小部分。通过对子块图像或处理单元少量代表点的判断除去无效视角域的子块图像或处理单元,只对有效的子块图像或处理单元进行预渲染,这样能减少进行图像渲染的子块图像或处理单元数量,因此可以在不改变目标图像的合成质量的同时,降低了渲染计算时间。选取子块图像或处理单元四个边界顶点作为子块图像或处理单元的代表点,结合深度参数两个深度参数确定八个空间代表点,特别需要说明的是已有技术在图像投影格式为球面投影的使用情况下,由于球体的表面外凸,所以子块图像或处理单元边界顶点在空间中最远深度位置的两点连线是弦所在的面非球切面,如果恰好仅仅球凸面落在目标视野范围而弦所在面处于视野不可见区域时会被错误当做该子块图像或处理单元完全不可见,因此被误删从而造成目标图像质量退化,影响视觉效果。本发明修正了最远深度参数以克服上述问题,以能包围住球体的棱台近似代替子块图像或处理单元的空间范围以简化复杂模型,算法简单易实现,这样进行快速预筛选确保减少的是非有效视角域的子块图像或处理单元而不会存在过度删除的情况,确保不改变目标图像的合成质量,而且保留了本身方法的简洁性。
附图说明
结合附图,本发明的其他特点和优点可从下面通过举例来对本发明的原理进行解释的优选实施方式的说明中变得更清楚。
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是多视点子块拼接图像的生成示意图。
图2是多视点子块拼接图像中的子块图像映射到三维空间后与目标图像区域覆盖的示意图。
图3是子块图像四个边界顶点,以及该四顶点结合z_near_new和z_far_new所得的八个空间代表点示意图。
图4是已有方法误删情况示意图。
图5是球面投影坐标系示意图。
图6是子块图像在球面投影格式下的空间示意图。
图7是修正最远深度参数示意图。
图8是可能存在的保留不可见子块图像的示例图。
图9是本发明装置实施例流程图。
图10是多视点子块拼接图像、信息传输单元和处理单元关系示意图。
图11是当多视点子块拼接图像为主视图时,默认划分为多个子图示意图。
具体实施方式
为了进一步理解本发明,下面结合实施例对本发明的优选实施方案进行描述,但是应当理解,这些描述只是为进一步说明本发明的特征和优点,而不是对本发明权利要求的限制。
实施例1
一种筛选子块图像方法,具体包括:
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的信息,包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
从码流中获取多视点子块拼接图像,根据子块图像的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
对于目标图像,获取其相关的信息,包括:宽度信息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。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys)=(0,0),
(a1,b1)=(xs+width,ys)=(128,0),
(a2,b2)=(xs,ys+height)=(0,64),
(a3,b3)=(xs+width,ys+height)=(128,64).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xomin,xomax分别为八个(xoi,yoi)横坐标的最小最大值,yomin,yomax分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)xomax<0
(2)xomin>width_o
(3)yomax<0
(4)yomin>height_o,
比如xomax=-2或xomin=2050或yomax=-30或yomin=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
实施例2
一种筛选子块图像方法,具体包括:
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的信息,包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
从码流中获取多视点子块拼接图像,根据子块图像的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
对于目标图像,获取其相关的信息,包括:宽度信息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米,
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys)=(0,0),
(a1,b1)=(xs,ys+height)=(0,64)
(a2,b2)=(xs+width,ys)=(128,0),,
(a3,b3)=(xs+width,ys+height)=(128,64).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xomin,xomax分别为八个(xoi,yoi)横坐标的最小最大值,yomin,yomax分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)xomax<0
(2)xomin>width_o
(3)yomax<0
(4)yomin>height_o,
比如xomax=-2或xomin=2050或yomax=-30或yomin=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
实施例3
一种筛选子块图像方法,具体包括:
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的信息,包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
从码流中获取多视点子块拼接图像,根据子块图像的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:包括子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new等于子块图像内深度范围的深度最小值比如为0.13米和z_far_new等于子块图像内深度范围的深度最大值比如为0.18米,
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys)=(0,0),
(a1,b1)=(xs+width,ys)=(128,0),
(a2,b2)=(xs,ys+height)=(0,64),
(a0,b0)=(xs+width,ys+height)=(128,64).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xomin,xomax分别为八个(xoi,yoi)横坐标的最小最大值,yomin,yomax分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)xomax<0
(2)xomin>width_o
(3)yomax<0
(4)yomin>height_o,
比如xomax=-2或xomin=2050或yomax=-30或yomin=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
实施例4
一种筛选子块图像方法,具体包括:
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的信息,包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
从码流中获取多视点子块拼接图像,根据子块图像的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:包括子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new等于子块图像内深度范围的深度最小值比如为0.13米和z_far_new等于子块图像内深度范围的深度最大值比如为0.18米,子块图像的最近深度和子块图像的最远深度可以通过从码流中直接解码得到;
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys)=(0,0),
(a1,b1)=(xs+width,ys)=(128,0),
(a2,b2)=(xs,ys+height)=(0,64),
(a3,b3)=(xs+width,ys+height)=(128,64).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xomin,xomax分别为八个(xoi,yoi)横坐标的最小最大值,yomin,yomax分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)xomax<0
(2)xomin>width_o
(3)yomax<0
(4)yomin>height_0,
比如xomax=-2或xomin=2050或yomax=-30或yomin=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
实施例5
如图4所示,一种筛选子块图像装置,具体包括:
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块图像信息,信息包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
子块图像提取模块,输入为多视点子块拼接图像码流和子块图像信息,输出为至少一个子块图像,从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
目标图像相关信息获取模块,用于获取目标图像的宽度信息width_o、高度信息height_o和相机参数;
子块图像深度参数获取模块,用于获取两个深度参数z_near_new和z_far_new,其中z_near_new≤z_far_new;
子块图像判决模块,输入为子块图像信息、子块图像、目标图像的相关信息,码流信息为可选项,输出为使用子块图像中的像素进行渲染得到部分的目标图像。,对于目标图像,获取其相关的信息,包括:宽度信息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。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys)=(0,0),
(a1,b1)=(xs+width,ys)=(128,0),
(a2,b2)=(xs,ys+height)=(0,64),
(a3,b3)=(xs+width,ys+height)=(128,64).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xomin,xomax分别为八个(xoi,yoi)横坐标的最小最大值,yomin,yomax分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)xomax<0
(2)xomin>width_o
(3)yomax<0
(4)yomin>height_o,
比如xomax=-2或xomin=2050或yomax=-30或yomin=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
实施例6
一种筛选子块图像装置,具体包括:
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块图像信息,信息包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
子块图像提取模块,输入为多视点子块拼接图像码流和子块图像信息,输出为至少一个子块图像,从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块,该子块即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
子块图像判决模块,输入为子块图像信息、子块图像、目标图像的相关信息,码流信息为可选项,输出为使用子块图像中的像素进行渲染得到部分的目标图像。对于目标图像,获取其相关的信息,包括:宽度信息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米,
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys)=(0,0),
(a1,b1)=(xs,ys+height)=(0,64)
(a2,b2)=(xs+width,ys)=(128,0),,
(a3,b3)=(xs+width,ys+height)=(128,64).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xomin,xomax分别为八个(xoi,yoi)横坐标的最小最大值,yomin,yomax分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)xomax<0
(2)xomin>width_o
(3)yomax<0
(4)yomin>height_0,
比如xomax=-2或xomin=2050或yomax=-30或yomin=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
实施例7
一种筛选子块图像装置,具体包括:
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块图像信息,信息包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
子块图像提取模块,输入为多视点子块拼接图像码流和子块图像信息,输出为至少一个子块图像,从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
子块图像判决模块,输入为子块图像信息、子块图像、目标图像的相关信息,码流信息为可选项,输出为使用子块图像中的像素进行渲染得到部分的目标图像。对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:包括子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new等于子块图像内深度范围的深度最小值比如为0.13米和z_far_new等于子块图像内深度范围的深度最大值比如为0.18米,
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys)=(0,0),
(a1,b1)=(xs+width,ys)=(128,0),
(a2,b2)=(xs,ys+height)=(0,64),
(a0,b0)=(xs+width,ys+height)=(128,64).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xomin,xomax分别为八个(xoi,yoi)横坐标的最小最大值,yomin,yomax分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)xomax<0
(2)xomin>width_o
(3)yomax<0
(4)yomin>height_o,
比如xomax=-2或xomin=2050或yomax=-30或yomin=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
实施例8
一种筛选子块图像装置,具体包括:
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块图像信息,信息包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
子块图像提取模块,输入为多视点子块拼接图像码流和子块图像信息,输出为至少一个子块图像,从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
子块图像判决模块,输入为子块图像信息、子块图像、目标图像的相关信息,码流信息为可选项,输出为使用子块图像中的像素进行渲染得到部分的目标图像。对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:包括子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new等于子块图像内深度范围的深度最小值比如为0.13米和z_far_new等于子块图像内深度范围的深度最大值比如为0.18米,子块图像的最近深度和子块图像的最远深度可以通过从码流中直接解码得到;
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys)=(0,0),
(a1,b1)=(xs+width,ys)=(128,0),
(a2,b2)=(xs,ys+height)=(0,64),
(a3,b3)=(xs+width,ys+height)=(128,64).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xomin,xomax分别为八个(xoi,yoi)横坐标的最小最大值,yomin,yomax分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)xomax<0
(2)xomin>width_o
(3)yomax<0
(4)yomin>height_o,
比如xomax=-2或xomin=2050或yomax=-30或yomin=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
实施例9
一种筛选子块图像方法,具体包括:
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的信息,包括:宽度信息width、高度信息height、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near和最远深度z_far;
从码流中获取多视点子块拼接图像,根据子块图像的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
对于目标图像,获取其相关的信息,包括:宽度信息width_o、高度信息height_o、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new等于源视点图像的最近深度z_near,z_far_new等于源视点图像的最远深度z_far,
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys),
(a1,b1)=(xs+width,ys),
(a2,b2)=(xs,ys+height),
(a0,b0)=(xs+width,ys+height).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xomin,xomax分别为八个(xoi,yoi)横坐标的最小最大值,yomin,yomax分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)xomax<0
(2)xomin>width_o
(3)yomax<0
(4)yomin>height_o,
则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
将上述方法用于MPEG测试序列中的全景视频Technicolormuseum,测试渲染生成不同路径的视窗(Posetrace)的结果如下,表格中数值为32帧的平均值。
表1 Posetrace1像素节省率
0-31 Frame | 32-63 Frame | 64-96 Frame | |
预筛选后保留像素数/(个) | 2868224 | 2915776 | 2918528 |
总像素数/(个) | 3098112 | 3047424 | 3047424 |
节省率 | 7.42% | 4.32% | 4.23% |
表2 Posetrace2像素节省率
0-31 Frame | 32-63 Frame | 64-96 Frame | |
预筛选后保留像素数/(个) | 2977600 | 2844224 | 2837248 |
总像素数/(个) | 3098112 | 3047424 | 3047424 |
节省率 | 3.89% | 6.67% | 6.90% |
实施例10
一种筛选子块图像方法,具体包括:
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的信息,包括:宽度信息width、高度信息height、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near和最远深度z_far;
从码流中获取多视点子块拼接图像,根据子块图像的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
对于目标图像,获取其相关的信息,包括:宽度信息width_o、高度信息height_o、目标图像的相机参数,对所述的子块图像,确定四个边界顶点的深度覆盖范围:子块图像的代表性深度参数:z_near_new和z_far_new,z_near_new等于子块图像的最近深度,z_far_new等于子块图像的最远深度,
计算所述子块图像修正后的最远深度值z_far_modified,所述子块图像的空间代表点即为所述子块图像的每个代表点结合子块图像的最近深度值z_near和修正后的最远深度值z_far_modified。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys),
(a1,b1)=(xs,ys+height),
(a2,b2)=(xs+width,ys),
(a0,b0)=(xs+width,ys+height).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xomin,xomax分别为八个(xoi,yoi)横坐标的最小最大值,yomin,yomax分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)xomax<0
(2)xomin>width_o
(3)yomax<0
(4)yomin>height_o,
则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
将上述方法用于MPEG测试序列中的全景视频Technicolormuseum,测试渲染生成不同路径的视窗(Posetrace)的结果如下,表格中数值为32帧的平均值。
表3 Posetrace1像素节省率
0-31 Frame | 32-63 Frame | 64-96 Frame | |
预筛选后保留像素数/(个) | 2777586 | 2826592 | 2855040 |
总像素数/(个) | 3098112 | 3047424 | 3047424 |
节省率 | 10.3% | 8.13% | 6.31% |
表4 Posetrace2像素节省率
买施例11
一种筛选子块图像方法,具体包括:
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参;其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
获取目标图像的宽度信息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;
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj)(j为0到3的整数),具体如下:
(a0,b0)=(xs,ys),
(a1,b1)=(xs,ys+height),
(a2,b2)=(xs+width,ys),
(a0,b0)=(xs+width,ys+height).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,
根据所得到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠;如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
实施例12
一种筛选子块图像方法,具体包括:
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参;其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
获取目标图像的宽度信息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;
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys),
(a1,b1)=(xs,ys+height),
(a2,b2)=(xs+width,ys),
(a0,b0)=(xs+width,ys+height).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,
根据所得到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠,若满足以下任一条件,则预判决子块图像与目标图像存在区域重叠:
(1)投影到目标图像的八个代表点都在目标图像左边界左侧;
(2)投影到目标图像的八个代表点都在目标图像右边界右侧;
(3)投影到目标图像的八个代表点都在目标图像上边界上侧;
(4)投影到目标图像的八个代表点都在目标图像下边界下侧;
具体地,当目标图像位置坐标的原点坐标(0,0)为图像左上角,则若满足以下任一条件,则预判决子块图像与目标图像存在区域重叠:
(1)xomax<0:
(2)xomin>width_o;
(3)yomax<0;
(4)yomin>height_o,其中xomin为xoi中的最小值、xomax为xoi中的最大值,yomin为yoi中的最小值yomax为yoi中的最大值,其中i为0到7的整数,当目标图像位置坐标的原点坐标在图像非左上角的其他位置,也可类似推导得到判决公式;
如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
实施例13
一种筛选子块图像方法,具体包括:
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参;其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
获取目标图像的宽度信息width_o、高度信息height_o和相机参数;
获得所述子块图像的两个深度参数:z_near_new和z_far_new,其中两参数值的关系满足z_near_new≤z_far_new,子块图像的两个深度参数z_near_new和z_far_new的确定方法为以下方法之一种:
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述子块图像的z_near_new等于z_near,所述子块图像的z_far_new等于z_far;
(2)所述子块图像的z_near_new等于该子块图像的最近深度值,所述子块图像的z_far_new等于该子块图像的最远深度值;
利用所述子块图像的最远深度参数z_far_new以及子块图像信息和所属源视点图像的相机参数等算得所述子块图像的修正最远深度参数:z_far_modified。所述子块图像的最远深度参数修正值z_far_modified的确定方法为:
子块图像所属源视点图像的相机投影格式为平面投影时,所述子块图像的z_far_modified等于z_far_new;
子块图像所属源视点图像的相机投影格式为球面投影时,计算所述子块图像的修正z_far_modified的方法如下:
根据子块图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得子块图像在所属源视点图像相机的经度跨度和纬度跨度Δθ,利用以下公式计算z_far_modified:
Xmod=z_far_new
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys),
(a1,b1)=(xs,ys+height),
(a2,b2)=(xs+width,ys),
(a0,b0)=(xs+width,ys+height).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,
实施例14
一种筛选子块图像方法,具体包括:
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参;其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
获取目标图像的宽度信息width_o、高度信息height_o和相机参数;
获得所述子块图像的两个深度参数:z_near_new和z_far_new,其中两参数值的关系满足z_near_new≤z_far_new,子块图像的两个深度参数z_near_new和z_far_new的确定方法为以下方法之一种:
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述子块图像的z_near_new等于z_near,所述子块图像的z_far_new等于z_far;
(2)所述子块图像的z_near_new等于该子块图像的最近深度值,所述子块图像的z_far_new等于该子块图像的最远深度值,子块图像的最近深度值和所述子块图像的最远深度值的确定方法为以下一种:
(1)从码流中直接解码得到所述子块图像的最近深度值和最远深度值;
(2)在解码重构的深度图像中,所述子块图像的所有像素中距离该子块所属的源视点最近的像素的深度值为所述子块的最近深度值;所述子块图像的所有像素中距离该子块所属的源视点最远的像素的深度值为所述子块的最远深度值;
利用所述子块图像的最远深度参数z_far_new以及子块图像信息和所属源视点图像的相机参数等算得所述子块图像的修正最远深度参数:z_far_modified。所述子块图像的最远深度参数修正值z_far_modified的确定方法为:
子块图像所属源视点图像的相机投影格式为平面投影时,所述子块图像的z_far_modified等于z_far_new;
子块图像所属源视点图像的相机投影格式为球面投影时,计算所述子块图像的修正z_far_modified的方法如下:
根据子块图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得子块图像在所属源视点图像相机的经度跨度和纬度跨度Δθ,利用以下公式计算z_far_modified:
Xmod=z_far_new
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys),
(a1,b1)=(xs,ys+height),
(a2,b2)=(xs+width,ys),
(a0,b0)=(xs+width,ys+height).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,
根据所得到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠;如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
实施例15
一种筛选子块图像方法,具体包括:
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参;其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
获取目标图像的宽度信息width_o、高度信息height_o和相机参数;
获得所述子块图像的两个深度参数:z_near_new和z_far_new,其中两参数值的关系满足z_near_new≤z_far_new,子块图像的两个深度参数z_near_new和z_far_new的确定方法为以下方法之一种:
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述子块图像的z_near_new等于z_near,所述子块图像的z_far_new等于z_far;
(2)所述子块图像的z_near_new等于该子块图像的最近深度值,所述子块图像的z_far_new等于该子块图像的最远深度值,子块图像的最近深度值和所述子块图像的最远深度值的确定方法为以下一种:
(1)从码流中直接解码得到所述子块图像的最近深度值和最远深度值;
(2)在解码重构的深度图像中,所述子块图像的所有像素中距离该子块所属的源视点最近的像素的深度值为所述子块的最近深度值;所述子块图像的所有像素中距离该子块所属的源视点最远的像素的深度值为所述子块的最远深度值;
利用所述子块图像的最远深度参数z_far_new以及子块图像信息和所属源视点图像的相机参数等算得所述子块图像的修正最远深度参数:z_far_modified。所述子块图像的最远深度参数修正值z_far_modified的确定方法为:
子块图像所属源视点图像的相机投影格式为平面投影时,所述子块图像的z_far_modified等于z_far_new;
子块图像所属源视点图像的相机投影格式为球面投影时,计算所述子块图像的修正z_far_modified的方法如下:
根据子块图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得子块图像在所属源视点图像相机的经度跨度和纬度跨度Δθ,利用以下公式计算z_far_modified:
Xmod=z_far_new
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys),
(a1,b1)=(xs,ys+height),
(a2,b2)=(xs+width,ys),
(a0,b0)=(xs+width,ys+height).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,
根据所得到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠,若满足以下任一条件,则预判决子块图像与目标图像存在区域重叠:
(1)投影到目标图像的八个代表点都在目标图像左边界左侧;
(2)投影到目标图像的八个代表点都在目标图像右边界右侧;
(3)投影到目标图像的八个代表点都在目标图像上边界上侧;
(4)投影到目标图像的八个代表点都在目标图像下边界下侧;
具体地,当目标图像位置坐标的原点坐标(0,0)为图像左上角,则若满足以下任一条件,则预判决子块图像与目标图像存在区域重叠:
(1)xomax<0;
(2)xomin>width_o;
(3)yomax<0;
(4)yomin>height_o;
其中xomin为xoi中的最小值、xomax为xoi中的最大值,yomin为yoi中的最小值yomax为yoi中的最大值,其中i为0到7的整数,当目标图像位置坐标的原点坐标在图像非左上角的其他位置,也可类似推导得到判决公式;
如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
实施例16
一种筛选子块图像装置,具体包括:
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块图像信息,信息包括:子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
子块图像判决模块,输入为子块图像信息、目标图像的相关信息以及子块图像的代表性深度参数,输出为使用子块图像中的像素进行渲染得到部分的目标图像。对于目标图像,获取其相关的信息,包括:宽度信息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;
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys),
(a1,b1)=(xs,ys+height),
(a2,b2)=(xs+width,ys),
(a0,b0)=(xs+width,ys+height).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数;
根据所得到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠;如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
实施例17
一种筛选子块图像装置,具体包括:
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块图像信息,信息包括:子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
子块图像判决模块,输入为子块图像信息、目标图像的相关信息以及子块图像的代表性深度参数,输出为使用子块图像中的像素进行渲染得到部分的目标图像。对于目标图像,获取其相关的信息,包括:宽度信息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;
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys),
(a1,b1)=(xs,ys+height),
(a2,b2)=(xs+width,ys),
(a0,b0)=(xs+width,ys+height).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数,
根据所得到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠若满足以下任一条件,则预判决子块图像与目标图像存在区域重叠:
(1)投影到目标图像的八个代表点都在目标图像左边界左侧;
(2)投影到目标图像的八个代表点都在目标图像右边界右侧;
(3)投影到目标图像的八个代表点都在目标图像上边界上侧;
(4)投影到目标图像的八个代表点都在目标图像下边界下侧;
具体地,当目标图像位置坐标的原点坐标(0,0)为图像左上角,则若满足以下任一条件,则预判决子块图像与目标图像存在区域重叠:
(1)xomax<0;
(2)xomin>width_o;
(3)yomax<0;
(4)yomin>height_o,
其中xomin为xoi中的最小值、xomax为xoi中的最大值,yomin为yoi中的最小值yomax为yoi中的最大值,其中i为0到7的整数,当目标图像位置坐标的原点坐标在图像非左上角的其他位置,也可类似推导得到判决公式;
如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
实施例18
一种筛选子块图像装置,具体包括:
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块图像信息,信息包括:子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
子块图像判决模块,输入为子块图像信息、目标图像的相关信息以及子块图像的代表性深度参数,输出为使用子块图像中的像素进行渲染得到部分的目标图像。对于目标图像,获取其相关的信息,包括:宽度信息width_o、高度信息height_o和相机参数;获得所述子块图像的两个深度参数:z_near_new和z_far_new,其中两参数值的关系满足z_near_new≤z_far_new,子块图像的两个深度参数z_near_new和z_far_new的确定方法为以下方法之一种:
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述子块图像的z_near_new等于z_near,所述子块图像的z_far_new等于z_far;
(2)所述子块图像的z_near_new等于该子块图像的最近深度值,所述子块图像的z_far_new等于该子块图像的最远深度值;
利用所述子块图像的最远深度参数z_far_new以及子块图像信息和所属源视点图像的相机参数等算得所述子块图像的修正最远深度参数:z_far_modified。所述子块图像的最远深度参数修正值z_far_modified的确定方法为:
子块图像所属源视点图像的相机投影格式为平面投影时,所述子块图像的z_far_modified等于z_far_new;
子块图像所属源视点图像的相机投影格式为球面投影时,计算所述子块图像的修正z_far_modified的方法如下:
根据子块图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得子块图像在所属源视点图像相机的经度跨度和纬度跨度Δθ,利用以下公式计算z_far_modified:
Xmod=z_far_new
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys),
(a1,b1)=(xs,ys+height),
(a2,b2)=(xs+width,ys),
(a0,b0)=(xs+width,ys+height).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数;根据所得到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠;如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
实施例19
一种筛选子块图像装置,具体包括:
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块图像信息,信息包括:子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
子块图像判决模块,输入为子块图像信息、目标图像的相关信息以及子块图像的代表性深度参数,输出为使用子块图像中的像素进行渲染得到部分的目标图像。对于目标图像,获取其相关的信息,包括:宽度信息width_o、高度信息height_o和相机参数;获得所述子块图像的两个深度参数:z_near_new和z_far_new,其中两参数值的关系满足z_near_new≤z_far_new,子块图像的两个深度参数z_near_new和z_far_new的确定方法为以下方法之一种:
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述子块图像的z_near_new等于z_near,所述子块图像的z_far_new等于z_far;
(2)所述子块图像的z_near_new等于该子块图像的最近深度值,所述子块图像的z_far_new等于该子块图像的最远深度值,子块图像的最近深度值和所述子块图像的最远深度值的确定方法为以下一种:
(1)从码流中直接解码得到所述子块图像的最近深度值和最远深度值;
(2)在解码重构的深度图像中,所述子块图像的所有像素中距离该子块所属的源视点最近的像素的深度值为所述子块的最近深度值;所述子块图像的所有像素中距离该子块所属的源视点最远的像素的深度值为所述子块的最远深度值;
利用所述子块图像的最远深度参数z_far_new以及子块图像信息和所属源视点图像的相机参数等算得所述子块图像的修正最远深度参数:z_far_modified。所述子块图像的最远深度参数修正值z_far_modified的确定方法为:
子块图像所属源视点图像的相机投影格式为平面投影时,所述子块图像的z_far_modified等于z_far_new;
子块图像所属源视点图像的相机投影格式为球面投影时,计算所述子块图像的修正z_far_modified的方法如下:
根据子块图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得子块图像在所属源视点图像相机的经度跨度和纬度跨度Δθ,利用以下公式计算z_far_modified:
Xmod=z_far_new
/>
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys),
(a1,b1)=(xs,ys+height),
(a2,b2)=(xs+width,ys),
(a0,b0)=(xs+width,ys+height).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数;根据所得到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠;如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
实施例20
一种筛选子块图像装置,具体包括:
子块图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个子块图像信息,信息包括:子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,其中子块图像在多视点子块拼接图像中、源视点图像的位置信息可由子块图像的任一像素位置和对应在多视点子块拼接图像、源视点图像中的位置确定,比如子块图像的左上、右上、左下、右下、左上右1位置处像素在多视点子块拼接图像中的位置点信息;
子块图像判决模块,输入为子块图像信息、目标图像的相关信息以及子块图像的代表性深度参数,输出为使用子块图像中的像素进行渲染得到部分的目标图像。对于目标图像,获取其相关的信息,包括:宽度信息width_o、高度信息height_o和相机参数;获得所述子块图像的两个深度参数:z_near_new和z_far_new,其中两参数值的关系满足z_near_new≤z_far_new,子块图像的两个深度参数z_near_new和z_far_new的确定方法为以下方法之一种:
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述子块图像的z_near_new等于z_near,所述子块图像的z_far_new等于z_far;
(2)所述子块图像的z_near_new等于该子块图像的最近深度值,所述子块图像的z_far_new等于该子块图像的最远深度值,子块图像的最近深度值和所述子块图像的最远深度值的确定方法为以下一种:
(1)从码流中直接解码得到所述子块图像的最近深度值和最远深度值;
(2)在解码重构的深度图像中,所述子块图像的所有像素中距离该子块所属的源视点最近的像素的深度值为所述子块的最近深度值;所述子块图像的所有像素中距离该子块所属的源视点最远的像素的深度值为所述子块的最远深度值;
利用所述子块图像的最远深度参数z_far_new以及子块图像信息和所属源视点图像的相机参数等算得所述子块图像的修正最远深度参数:z_far_modified。所述子块图像的最远深度参数修正值z_far_modified的确定方法为:
子块图像所属源视点图像的相机投影格式为平面投影时,所述子块图像的z_far_modified等于z_far_new;
子块图像所属源视点图像的相机投影格式为球面投影时,计算所述子块图像的修正z_far_modified的方法如下:
根据子块图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得子块图像在所属源视点图像相机的经度跨度和纬度跨度Δθ,利用以下公式计算z_far_modified:
Xmod=z_far_new
利用所述源视点图像的相机参数和目标图像的相机参数,对四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys),
(a1,b1)=(xs,ys+height),
(a2,b2)=(xs+width,ys),
(a0,b0)=(xs+width,ys+height).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
利用所述源视点图像的相机参数和目标图像的相机参数关系,将八个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到7的整数;根据所得到的目标图像中的八个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠若满足以下任一条件,则预判决子块图像与目标图像存在区域重叠:
(1)投影到目标图像的八个代表点都在目标图像左边界左侧;
(2)投影到目标图像的八个代表点都在目标图像右边界右侧;
(3)投影到目标图像的八个代表点都在目标图像上边界上侧;
(4)投影到目标图像的八个代表点都在目标图像下边界下侧;
具体地,当目标图像位置坐标的原点坐标(0,0)为图像左上角,则若满足以下任一条件,则预判决子块图像与目标图像存在区域重叠:
(1)xomax<0:
(2)xomin>width_o;
(3)yomax<0;
(4)yomin>height_o;
其中xomin为xoi中的最小值、xomax为xoi中的最大值,yomin为yoi中的最小值yomax为yoi中的最大值,其中i为0到7的整数,当目标图像位置坐标的原点坐标在图像非左上角的其他位置,也可类似推导得到判决公式;
如果存在区域重叠,使用子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像的像素进行渲染得到部分的目标图像。
实施例21
一种筛选处理单元的方法,具体包括:
对于多视点子块拼接图像中的至少一个处理单元,根据码流中所述处理单元对应的信息传输单元的宽度W比如为512和高度H比如为256,计算该处理单元的宽度信息width和高度信息height,方法如下:
width=min{w0,W-Δw}=min{64,512-128}=64;
height=min{h0,H-Δh}=min{32,256-192}=32;
其中,{w0=64,h0=32}分别是处理单元的默认宽度和高度,{Δw=128,Δh=192}分别是所述处理单元相对于所述信息传输单元的位置偏移量;
根据所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xp1,yp1),比如为(256,64)、所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xs1,ys1),比如为(128,32)和所述处理单元位置相对于所述信息传输单元位置的偏移量{Δw,Δh}={128,192},计算所述处理单元在多视点子块拼接图像中的位置信息(xp,yp)、所述处理单元在源视点图像中的位置信息(xs,ys),计算方法如下:
xp=xp1+Δw=256+128=374;
yp=yp1+Δh=64+192=256;
xs=xs1+Δw=128+128=256;
ys=ys1+Δh=32+192=224;
从码流中获取处理单元所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
从码流中获取多视点子块拼接图像,根据处理单元的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的处理单元,该处理单元即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的处理单元;
对于目标图像,获取其相关的信息,包括:宽度信息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。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys)=(256,224),
(a1,b1)=(xs+width,ys)=(320,224),
(a2,b2)=(xs,ys+height)=(256,256),
(a3,b3)=(xs+width,ys+height)=(320,256).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xomin,xomax分别为八个(xoi,yoi)横坐标的最小最大值,yomin,yomax分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)xomax<0
(2)xomin>width_o
(3)yomax<0
(4)yomin>height_o,
比如xomax=-2或xomin=2050或yomax=-30或yomin=3000,则判定该处理单元与目标图像没有区域重叠,就不使用该处理单元用于后续渲染目标图像,否则该处理单元被用于后续渲染目标图像。
实施例22
一种筛选处理单元的方法,具体包括:
对于多视点子块拼接图像中的至少一个处理单元,根据码流中所述处理单元对应的信息传输单元的宽度W比如为300和高度H比如为220,计算该处理单元的宽度信息width和高度信息height,方法如下:
width=min{w0,W-Δw}=min{64,300-256}=44;
height=min{h0,H-Δh}=min{32,220-192}=28;
其中,{w0=64,h0=32}分别是处理单元的默认宽度和高度,{Δw=256,Δh=192}分别是所述处理单元相对于所述信息传输单元的位置偏移量;
根据所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xp1,yp1),比如为(0,20)、所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xs1,ys1),比如为(10,24)和所述处理单元位置相对于所述信息传输单元位置的偏移量{Δw,Δh}={256,192},计算所述处理单元在多视点子块拼接图像中的位置信息(xp,yp)、所述处理单元在源视点图像中的位置信息(xs,ys),计算方法如下:
xp=xp1+Δw=0+256=256;
yp=yp1+Δh=20+192=212;
xs=xs1+Δw=10+256=266;
ys=ys1+Δh=24+192=216;
从码流中获取处理单元所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
从码流中获取多视点子块拼接图像,根据处理单元的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的处理单元,该处理单元即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的处理单元;
对于目标图像,获取其相关的信息,包括:宽度信息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。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys)=(266,216),
(a1,b1)=(xs+width,ys)=(310,216),
(a2,b2)=(xs,ys+height)=(266,244),
(a3,b3)=(xs+width,ys+height)=(310,244).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xomin,xomax分别为八个(xoi,yoi)横坐标的最小最大值,yomin,yomax分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)xomax<0
(2)xomin>width_o
(3)yomax<0
(4)yomin>height_o,
比如xomax=-2或xomin=2050或yomax=-30或yomin=3000,则判定该处理单元与目标图像没有区域重叠,就不使用该处理单元用于后续渲染目标图像,否则该处理单元被用于后续渲染目标图像。
实施例23
一种筛选处理单元的方法,具体包括:
对于多视点子块拼接图像中的至少一个处理单元,根据码流中所述处理单元对应的信息传输单元的宽度W比如为300和高度H比如为220,计算该处理单元的宽度信息width和高度信息height,方法如下:
width=min{w0,W-Δw}=min{64,300-256}=44;
height=min{h0,H-Δh}=min{32,220-192}=28;
其中,{w0=64,h0=32}分别是处理单元的默认宽度和高度,{Δw=256,Δh=192}分别是所述处理单元相对于所述信息传输单元的位置偏移量;
根据所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xp1,yp1),比如为(0,20)、所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xs1,ys1),比如为(10,24)和所述处理单元位置相对于所述信息传输单元位置的偏移量{Δw,Δh}={256,192},计算所述处理单元在多视点子块拼接图像中的位置信息(xp,yp)、所述处理单元在源视点图像中的位置信息(xs,ys),计算方法如下:
xp=xp1+Δw=0+256=256;
yp=yp1+Δh=20+192=212;
xs=xs1+Δw=10+256=266;
ys=ys1+Δh=24+192=216;
从码流中获取处理单元所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
从码流中获取多视点子块拼接图像,根据处理单元的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的处理单元,该处理单元即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的处理单元;
对于目标图像,获取其相关的信息,包括:宽度信息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。因此四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys)=(256,224),
(a1,b1)=(xs+width,ys)=(320,224),
(a2,b2)=(xs,ys+height)=(256,256),
(a3,b3)=(xs+width,ys+height)=(320,256).
结合z_near和扩展后的修正z_far_modified得到对应八个空间代表点(xi,yi,zi),i为0到7的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)
(x1,y1,z1)=(a1,b1,z_near_new)
(x2,y2,z2)=(a2,b2,z_near_new)
(x3,y3,z3)=(a3,b3,z_near_new)
(x4,y4,z4)=(a0,b0,z_far_modified)
(x5,y5,z5)=(a1,b1,z_far_modified)
(x6,y6,z6)=(a2,b2,z_far_modified)
(x7,y7,z7)=(a3,b3,z_far_modified)
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xomin,xomax分别为八个(xoi,yoi)横坐标的最小最大值,yomin,yomax分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)xomax<0
(2)xomin>width_o
(3)yomax<0
(4)yomin>height_o,
比如xomax=50或xomin=10或yomax=5或yomin=512,则判定该处理单元与目标图像有区域重叠,使用该处理单元用于后续渲染目标图像。
实施例24
一种筛选处理单元的方法,具体包括:
如图5所示,对于多视点子块拼接图像中的两个处理单元,根据码流中两个处理单元共同对应的信息传输单元的宽度W比如为300和高度H比如为220,分别计算处理单元A的宽度信息width_A、高度信息height_A和处理单元B的宽度信息width_B、高度信息height_B,方法如下:
width_A=min{wo,W-Δw_A}=min{64,300-128}=64;
height_A=min{h0,H-Δh_A}=min{32,220-160}=32;
width_B=min{w0,W-Δw_B}=min{64,300-256}=44;
height_B=min{h0,H-Δh_B}=min{32,220-192}=28;
其中,{w0=64,h0=32}分别是处理单元A和B的默认宽度和高度,{Δw_A=128,Δh_A=160}分别是所述处理单元A相对于所述信息传输单元的位置偏移量,{Δw_B=256,Δh_B=192}分别是所述处理单元B相对于所述信息传输单元的位置偏移量;
根据所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(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),计算方法如下:
xp_A=xp1+Δw_A=0+128=128;
yp_A=yp1+Δh_A=20+160=180;
xs_A=xs1+Δw_A=10+128=138;
ys_A=ys1+Δh_A=24+160=184;
xp_B=xp1+Δw_B=0+256=56;
yp_B=yp1+Δh_B=20+192=212;
xs_B=xs1+Δw_B=10+256=266;
ys_B=ys1+Δh_B=24+192=216;
从码流中获取处理单元A和B共同所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
从码流中获取多视点子块拼接图像,根据处理单元A的信息从多视点子块拼接图像的(xp_A,yp_A)位置开始,提取宽度为width_A、高度为height_A的处理单元,该处理单元即对应源视点图像中从位置(xs_A,ys_A)开始的、宽度为width_A、高度为height_A的处理单元A;
从码流中获取多视点子块拼接图像,根据处理单元B的信息从多视点子块拼接图像的(xp_B,yp_B)位置开始,提取宽度为width_B、高度为height_B的处理单元,该处理单元即对应源视点图像中从位置(xs_B,ys_B)开始的、宽度为width_B、高度为height_B的处理单元B;
对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数;
对所述的处理单元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)为图像左上角,预判决处理单元是否用于生成目标图像,判决条件如下:
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(A_xoi,A_yoi),A_xomin,A_xomax分别为八个(A_xoi,A_yoi)横坐标的最小最大值,A_yomin,A_yomax分别为八个(A_xoi,A_yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)A_xomax<0
(2)A_xomin>width_o
(3)A_yomax<0
(4)A_yomin>height_o,
比如A_xomax=50或A_xomin=10或A_yomax=5或A_yomin=512,则判定该处理单元A与目标图像有区域重叠,使用该处理单元用于后续渲染目标图像;
对所述的处理单元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)为图像左上角,预判决处理单元是否用于生成目标图像,判决条件如下:
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(B_xoi,B_yoi),B_xomin,B_xomax分别为八个(B_xoi,B_yoi)横坐标的最小最大值,B_yomin,B_yomax分别为八个(B_xoi,B_yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)B_xomax<0
(2)B_xomin>width_o
(3)B_yomax<0
(4)B_yomin>height_0,
比如B_xomax=-2或B_xomin=2058或B_yomax=-30或B_yomin=3000,则判定该处理单元B与目标图像无区域重叠,就不使用该处理单元用于后续渲染目标图像。
实施例25
一种筛选处理单元的方法,具体包括:
对于多视点子块拼接图像中的一个信息传输单元,从码流中获取宽度W比如为300、高度H比如为220、左上角像素在多视点子块拼接图像中的位置信息(xp1,yp1),比如为(0,20)、所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xs1,ys1),比如为(10,24);
所述信息传输单元可以分割为多个处理单元,如图6所示,其中对于处理单元A和处理单元B,根据信息传输单元的宽度、高度H,分别计算处理单元A的宽度信息width_A、高度信息height_A和处理单元B的宽度信息width_B、高度信息height_B,方法如下:
width_A=min{w0,W-Δw_A}=min{64,300-128}=64;
height_A=min{h0,H-Δh_A}=min{32,220-160}=32;
width_B=min{w0,W-Δw_B}=min{64,300-256}=44;
height_B=min{h0,H-Δh_B}=min{32,220-192}=28;
其中,{w0=64,h0=32}分别是处理单元A和B的默认宽度和高度,{Δw_A=128,Δh_A=160}分别是所述处理单元A相对于所述信息传输单元的位置偏移量,{Δw_B=256,Δh_B=192}分别是所述处理单元B相对于所述信息传输单元的位置偏移量;
根据所述信息传输单元的、所述处理单元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),计算方法如下:
xp_A=xp1+Δw_A=0+128=128;
yp_A=yp1+Δh_A=20+160=180;
xs_A=xs1+Δw_A=10+128=138;
ys_A=ys1+Δh_A=24+160=184;
xp_B=xp1+Δw_B=0+256=56;
yp_B=yp1+Δh_B=20+192=212;
xs_B=xs1+Δw_B=10+256=266;
ys_B=ys1+Δh_B=24+192=216;
从码流中获取处理单元A和B共同所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
从码流中获取多视点子块拼接图像,根据处理单元A的信息从多视点子块拼接图像的(xp_A,yp_A)位置开始,提取宽度为width_A、高度为height_A的处理单元,该处理单元即对应源视点图像中从位置(xs_A,ys_A)开始的、宽度为width_A、高度为height_A的处理单元A;
从码流中获取多视点子块拼接图像,根据处理单元B的信息从多视点子块拼接图像的(xp_B,yp_B)位置开始,提取宽度为width_B、高度为height_B的处理单元,该处理单元即对应源视点图像中从位置(xs_B,ys_B)开始的、宽度为width_B、高度为height_B的处理单元B;
对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数;
对所述的处理单元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)为图像左上角,预判决处理单元是否用于生成目标图像,判决条件如下:
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(A_xoi,A_yoi),A_xomin,A_xomax分别为八个(A_xoi,A_yoi)横坐标的最小最大值,A_yomin,A_yomax分别为八个(A_xoi,A_yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)A_xomax<0
(2)A_xomin>width_o
(3)A_yomax<0
(4)A_yomin>height_o,
比如A_xomax=50或A_xomin=10或A_yomax=5或A_yomin=512,则判定该处理单元A与目标图像有区域重叠,使用该处理单元用于后续渲染目标图像;
对所述的处理单元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)为图像左上角,预判决处理单元是否用于生成目标图像,判决条件如下:
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(B_xoi,B_yoi),B_xomin,B_xomax分别为八个(B_xoi,B_yoi)横坐标的最小最大值,B_yomin,B_yomax分别为八个(B_xoi,B_yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)B_xomax<0
(2)B_xomin>width_o
(3)B_yomax<0
(4)B_yomin>height_o,
比如B_xomax=-2或B_xomin=2058或B_yomax=-30或B_yomin=3000,则判定该处理单元B与目标图像无区域重叠,就不使用该处理单元用于后续渲染目标图像。
实施例26
一种筛选处理单元的方法,具体包括:
对于多视点子块拼接图像中C的一个信息传输单元,从码流中获取宽度W比如为300、高度H比如为220、左上角像素在多视点子块拼接图像中的位置信息(xp1,yp1),比如为(0,20)、所述信息传输单元的左上角像素在多视点子块拼接图像中的位置信息(xs1,ys1),比如为(10,24);
所述信息传输单元可以分割为多个处理单元,其中对于处理单元A和处理单元B,根据信息传输单元的宽度、高度H,分别计算处理单元A的宽度信息width_A、高度信息height_A和处理单元B的宽度信息width_B、高度信息height_B,方法如下:
width_A=min{w0,W-Δw_A}=min{64,300-128}=64;
height_A=min{h0,H-Δh_A}=min{32,220-160}=32;
width_B=min{w0,W-Δw_B}=min{64,300-256}=44;
height_B=min{h0,H-Δh_B}=min{32,220-192}=28;
其中,{w0=64,h0=32}分别是处理单元A和B的默认宽度和高度,{Δw_A=128,Δh_A=160}分别是所述处理单元A相对于所述信息传输单元的位置偏移量,{Δw_B=256,Δh_B=192}分别是所述处理单元B相对于所述信息传输单元的位置偏移量;
根据所述信息传输单元的、所述处理单元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),计算方法如下:
xp_A=xp1+Δw_A=0+128=128;
yp_A=yp1+Δh_A=20+160=180;
xs_A=xs1+Δw_A=10+128=138;
ys_A=ys1+Δh_A=24+160=184;
xp_B=xp1+Δw_B=0+256=56;
yp_B=yp1+Δh_B=20+192=212;
xs_B=xs1+Δw_B=10+256=266;
ys_B=ys1+Δh_B=24+192=216;
从码流中获取处理单元A和B共同所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
从码流中获取多视点子块拼接图像,根据处理单元A的信息从多视点子块拼接图像的(xp_A,yp_A)位置开始,提取宽度为width_A、高度为height_A的处理单元,该处理单元即对应源视点图像中从位置(xs_A,ys_A)开始的、宽度为width_A、高度为height_A的处理单元A;
从码流中获取多视点子块拼接图像,根据处理单元B的信息从多视点子块拼接图像的(xp_B,yp_B)位置开始,提取宽度为width_B、高度为height_B的处理单元,该处理单元即对应源视点图像中从位置(xs_B,ys_B)开始的、宽度为width_B、高度为height_B的处理单元B;
对于目标图像,获取其相关的信息,包括:宽度信息width_o比如为2048、高度信息height_o比如为2048、目标图像的相机参数;
对所述的处理单元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)为图像左上角,预判决处理单元是否用于生成目标图像,判决条件如下:
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(A_xoi,A_yoi),A_xomin,A_xomax分别为八个(A_xoi,A_yoi)横坐标的最小最大值,A_yomin,A_yomax分别为八个(A_xoi,A_yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)A_xomax<0
(2)A_xomin>width_o
(3)A_yomax<0
(4)A_yomin>height_o,
比如A_xomax=50或A_xomin=10或A_yomax=5或A_yomin=512,则判定该处理单元A与目标图像有区域重叠,使用该处理单元用于后续渲染目标图像;
对所述的处理单元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)为图像左上角,预判决处理单元是否用于生成目标图像,判决条件如下:
处理单元对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(B_xoi,B_yoi),B_xomin,B_xomax分别为八个(B_xoi,B_yoi)横坐标的最小最大值,B_yomin,B_yomax分别为八个(B_xoi,B_yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)B_xomax<0
(2)B_xomin>width_o
(3)B_yomax<0
(4)B_yomin>height_0,
比如B_xomax=-2或B_xomin=2058或B_yomax=-30或B_yomin=3000,则判定该处理单元B与目标图像无区域重叠,就不使用该处理单元用于后续渲染目标图像;
对于多视点子块拼接图像C中的至少一个子块图像,从码流中获取该子块图像的信息,包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_near比如为0.1米和最远深度z_far比如为0.2米;
从码流中获取多视点子块拼接图像,根据子块图像的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
对于目标图像,获取其相关的信息,包括:宽度信息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)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
子块图像对应的八个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xomin,xomax分别为八个(xoi,yoi)横坐标的最小最大值,yomin,yomax分别为八个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)xomax<0
(2)xomin>width_o
(3)yomax<0
(4)yomin>height_o,
比如xomax=-2或xomin=2050或yomax=-30或yomin=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
实施例27
一种筛选子块图像方法,具体包括:
对于多视点子块拼接图像中的至少一个子块图像,从码流中获取该子块图像的信息,包括:宽度width比如为128、高度height比如为64、该子块图像的左上角像素在多视点子块拼接图像中的位置信息(xp,yp)比如为(256,64)、该子块图像的左上角像素在源视点图像中的位置信息(xs,ys)为(0,0)、子块图像所属源视点图像的相机参数和深度参数,其中相机参数包括相机朝向、相机位置坐标、相机内参,深度参数包括图像的最近深度z_hear比如为0.1米和最远深度z_far比如为0.2米;
从码流中获取多视点子块拼接图像,根据子块图像的信息从多视点子块拼接图像的(xp,yp)位置开始,提取宽度为width、高度为height的子块图像,该子块图像即对应源视点图像中从位置(xs,ys)开始的、宽度为width、高度为height的子块图像;
对于目标图像,获取其相关的信息,包括:宽度信息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米就有三个空间代表点。
因此,四个边界顶点(aj,bj),j为0到3的整数,具体如下:
(a0,b0)=(xs,ys)=(0,0),
(a1,b1)=(xs+width,ys)=(128,0),
(a2,b2)=(xs,ys+height)=(0,64),
(a3,b3)=(xs+width,ys+height)=(128,64).
对应12个空间代表点(xi,yi,zi),i为0到11的整数,具体如下:
(x0,y0,z0)=(a0,b0,z_near_new)=(0,0,0.12),
(x1,y1,z1)=(a1,b1,z_near_new)=(128,0,0.12),
(x2,y2,z2)=(a2,b2,z_near_new)=(0,64,0.12),
(x3,y3,z3)=(a3,b3,z_near_new)=(128,64,0.12),
(x4,y4,z4)=(a0,b0,z_far_modified)=(0,0,0.19),
(x5,y5,z5)=(a1,b1,z_far_modified)=(128,0,0.19),
(x6,y6,z6)=(a2,b2,z_far_modified)=(0,64,0.19),
(x7,y7,z7)=(a3,b3,z_far_modified)=(128,64,0.19),
(x8,y8,z8)=(a0,b0,z_mid)=(0,0,0.16),
(x9,y9,z9)=(a1,b1,z_mid)=(128,0,0.16),
(x1o,y10,z10)=(a2,b2,z_mid)=(0,64,0.16),
(x11,y11,z11)=(a3,b3,z_mid)=(128,64,0.16),
利用所述源视点图像的相机参数和目标图像的相机参数关系,将12个空间代表点投影到目标图像位置,投影到目标图像位置的坐标为(xoi,yoi),i为0到11的整数,其中目标图像位置坐标的原点坐标(0,0)为图像左上角,预判决子块图像是否用于生成目标图像,判决条件如下:
子块图像对应的12个空间代表点投影到目标视点图像所在平面的坐标位置(xoi,yoi),xomin,xomax分别为12个(xoi,yoi)横坐标的最小最大值,yomin,yomax分别为2个(xoi,yoi)纵坐标的最小最大值,若满足以下任一条件:
(1)xomax<0
(2)xomin>width_o
(3)yomax<0
(4)yomin>height_o,
比如xomax=-2或xomin=2050或yomax=-30或yomin=3000,则判定该子块图像与目标图像没有区域重叠,就不使用该子块图像用于后续渲染目标图像,否则该子块图像被用于后续渲染目标图像。
Claims (10)
1.一种筛选图像的方法,其特征在于,包括:
对于多视点子块拼接图像中的至少一个子块图像,获取该子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参;
获取目标图像的宽度信息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;
利用所述源视点图像的相机参数和目标图像的相机参数,对所述子块图像四个边界顶点结合最近深度参数z_near_new和修正最远深度参数z_far_modified所得N个空间代表点(xi,yi,zi)从源视点向目标视点投影,得到目标图像中的N个代表点;其中,N为代表点的数量,i为0到N-1的整数;
根据所得到的目标图像中的N个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠;
如果存在区域重叠,使用所述子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该子块图像进行渲染。
2.根据权利要求1所述的一种筛选图像的方法,其特征还在于,所述子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息确定方法为以下方法之一种:
(1)从码流中直接解码获得;
(2)从码流中获得所述子块图像对应信息传输单元的宽度W和高度H,计算该处理单元的宽度信息和高度信息;从码流中获取所述信息传输单元在多视点子块拼接图像中的位置信息、所述信息传输单元在源视点图像中的位置信息,结合所述子块图像在所述信息传输单元的位置,计算所述子块图像在多视点子块拼接图像中的位置信息、所述子块图像在源视点图像中的位置信息。
3.根据权利要求1或2所述的一种筛选图像的方法,其特征在于,满足以下任一条件,则预判决所述子块图像与目标图像存在区域重叠:
(1)投影到目标图像的N个代表点都在目标图像左边界左侧;
(2)投影到目标图像的N个代表点都在目标图像右边界右侧;
(3)投影到目标图像的N个代表点都在目标图像上边界上侧;
(4)投影到目标图像的N个代表点都在目标图像下边界下侧。
4.根据权利要求1所述的一种筛选图像的方法,其特征还在于,所述图像的两个深度参数z_near_new和z_far_new的确定方法为以下方法之一种:
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述子块图像的z_near_new等于z_near,所述图像的z_far_new等于z_far;
(2)从码流中直接解码得到所述子块图像的最近深度值和最远深度值,所述子块图像的z_near_new等于该子块图像的最近深度值,所述子块图像的z_far_new等于该子块图像的最远深度值;
(3)在解码重构的深度图像中,所述子块图像的所有像素中距离该子块图像所属的源视点最近的像素的深度值为所述子块图像的最近深度值z_near_new;所述子块图像的所有像素中距离该子块图像所属的源视点最远的像素的深度值为所述子块图像的最远深度值z_far_new。
5.根据权利要求1或4所述的一种筛选图像的方法,其特征在于,所述子块图像的修正最远深度参数z_far_modified的确定方法为:
根据所述子块图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得该子块图像在所属源视点图像相机的经度跨度和纬度跨度Δθ,利用以下公式计算修正最远深度参数z_far_modified:
其中,Xmod=z_far_new
6.一种筛选图像的装置,其特征在于,包括:
图像信息提取模块,输入为多视点子块拼接图像码流,输出为至少一个图像信息,图像信息包括:子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息和该子块图像所属源视点图像的相机参数,其中相机参数包括相机朝向、相机位置坐标、相机内参;
目标图像相关信息获取模块,用于获取目标图像的宽度信息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;
图像判决模块,用于利用所述源视点图像的相机参数和目标图像的相机参数,对子块图像四个边界顶点结合最近深度参数z_near_new和修正最远深度参数z_far_modified所得N个空间代表点(xi,yi,zi)从源视点向目标视点投影,得到目标图像中的N个代表点;其中N为空间代表点的数量,i为0到N-1的整数;根据所得到的目标图像中的N个代表点的位置坐标(xoi,yoi),预判决该子块图像与目标图像是否存在区域重叠;如果存在区域重叠,使用该子块图像中的像素进行渲染得到部分的目标图像,否则,不使用该图像进行渲染。
7.根据权利要求6所述的一种筛选图像的装置,其特征还在于,所述子块图像的宽度信息width、高度信息height、该子块图像在多视点子块拼接图像中的位置信息、该子块图像在源视点图像中的位置信息确定方法为以下方法之一种:
(1)从码流中直接解码获得;
(2)从码流中获得所述图像对应信息传输单元的宽度W和高度H,计算该处理单元的宽度信息和高度信息;从码流中获取所述信息传输单元在多视点子块拼接图像中的位置信息、所述信息传输单元在源视点图像中的位置信息,结合所述子块图像在所述信息传输单元的位置,计算所述子块图像在多视点子块拼接图像中的位置信息、所述子块图像在源视点图像中的位置信息。
8.根据权利要求6或7所述的一种筛选图像的装置,其特征在于,满足以下任一条件,则预判决子块图像与目标图像不存在区域重叠:
(1)投影到目标图像的N个代表点都在目标图像左边界左侧;
(2)投影到目标图像的N个代表点都在目标图像右边界右侧;
(3)投影到目标图像的N个代表点都在目标图像上边界上侧;
(4)投影到目标图像的N个代表点都在目标图像下边界下侧。
9.根据权利要求6所述的一种筛选图像的装置,其特征还在于,所述子块图像的两个深度参数z_near_new和z_far_new由以下方法之一种:得到
(1)从码流中解码得到源视点图像的最近深度值z_near和源视点图像的最远深度值z_far,所述子块图像的z_near_new等于z_near,所述子块图像的z_far_new等于z_far;
(2)从码流中直接解码得到所述子块图像的最近深度值和最远深度值,所述子块图像的z_near_new等于该子块图像的最近深度值,所述子块图像的z_far_new等于该子块图像的最远深度值;
(3)在解码重构的深度图像中,所述子块图像的所有像素中距离该子块图像所属的源视点最近的像素的深度值为所述子块图像的最近深度值z_near_new;所述子块图像的所有像素中距离该子块图像所属的源视点最远的像素的深度值为所述子块图像的最远深度值z_far_new。
10.根据权利要求6或9所述的一种筛选图像的装置,所述子块图像的修正最远深度参数z_far_modified的确定方法为:
根据所述子块图像的宽度信息width、高度信息height以及所属源视点图像的相机参数,算得所述子块图像在所属源视点图像相机的经度跨度和纬度跨度Δθ,利用以下公式计算修正最远深度参数z_far_modified:
其中,Xmod=z_far_new
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2021100029955 | 2021-01-04 | ||
CN202110002995 | 2021-01-04 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114727084A CN114727084A (zh) | 2022-07-08 |
CN114727084B true CN114727084B (zh) | 2023-10-03 |
Family
ID=82234070
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110433491.9A Active CN114727084B (zh) | 2021-01-04 | 2021-04-19 | 一种筛选图像的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114727084B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103002306A (zh) * | 2012-11-27 | 2013-03-27 | 宁波大学 | 一种深度图像编码方法 |
CN103581651A (zh) * | 2013-10-28 | 2014-02-12 | 西安交通大学 | 一种用于车载多目摄像机环视系统的虚拟视点合成方法 |
CN103716641A (zh) * | 2012-09-29 | 2014-04-09 | 浙江大学 | 预测图像生成方法和装置 |
CN110062219A (zh) * | 2019-03-12 | 2019-07-26 | 杭州电子科技大学 | 结合虚拟视点绘制3d-hevc整帧丢失错误隐藏方法 |
CN111726598A (zh) * | 2019-03-19 | 2020-09-29 | 华为技术有限公司 | 图像处理方法和装置 |
CN112598572A (zh) * | 2019-10-01 | 2021-04-02 | 浙江大学 | 一种筛选子块图像与处理单元的方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5858380B2 (ja) * | 2010-12-03 | 2016-02-10 | 国立大学法人名古屋大学 | 仮想視点画像合成方法及び仮想視点画像合成システム |
-
2021
- 2021-04-19 CN CN202110433491.9A patent/CN114727084B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103716641A (zh) * | 2012-09-29 | 2014-04-09 | 浙江大学 | 预测图像生成方法和装置 |
CN103002306A (zh) * | 2012-11-27 | 2013-03-27 | 宁波大学 | 一种深度图像编码方法 |
CN103581651A (zh) * | 2013-10-28 | 2014-02-12 | 西安交通大学 | 一种用于车载多目摄像机环视系统的虚拟视点合成方法 |
CN110062219A (zh) * | 2019-03-12 | 2019-07-26 | 杭州电子科技大学 | 结合虚拟视点绘制3d-hevc整帧丢失错误隐藏方法 |
CN111726598A (zh) * | 2019-03-19 | 2020-09-29 | 华为技术有限公司 | 图像处理方法和装置 |
CN112598572A (zh) * | 2019-10-01 | 2021-04-02 | 浙江大学 | 一种筛选子块图像与处理单元的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN114727084A (zh) | 2022-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11405643B2 (en) | Sequential encoding and decoding of volumetric video | |
US20140198182A1 (en) | Representation and Coding of Multi-View Images Using Tapestry Encoding | |
CN112598572B (zh) | 一种筛选子块图像与处理单元的方法及装置 | |
CN110383842B (zh) | 一种视频处理方法和装置 | |
ES2676055T3 (es) | Receptor de imagen eficaz para múltiples vistas | |
JP5243612B2 (ja) | 中間画像合成およびマルチビューデータ信号抽出 | |
KR20200065076A (ko) | 볼류메트릭 비디오 포맷을 위한 방법, 장치 및 스트림 | |
WO2018035721A1 (en) | System and method for improving efficiency in encoding/decoding a curved view video | |
KR20200051784A (ko) | 3 자유도 및 볼류메트릭 호환 가능한 비디오 스트림을 인코딩 및 디코딩하기 위한 방법들 및 디바이스들 | |
US11069026B2 (en) | Method for processing projection-based frame that includes projection faces packed in cube-based projection layout with padding | |
JP7344988B2 (ja) | ボリュメトリック映像の符号化および復号化のための方法、装置、およびコンピュータプログラム製品 | |
US11948268B2 (en) | Immersive video bitstream processing | |
CN114727084B (zh) | 一种筛选图像的方法及装置 | |
CN113347403B (zh) | 一种图像处理方法及装置 | |
WO2021136372A1 (en) | Video decoding method for decoding bitstream to generate projection-based frame with guard band type specified by syntax element signaling | |
US11263722B2 (en) | Video processing method for remapping sample locations in projection-based frame with hemisphere cubemap projection layout to locations on sphere and associated video processing apparatus | |
TWI782342B (zh) | 一種視訊解碼方法 | |
US20220122216A1 (en) | Generating and processing an image property pixel structure | |
US11064218B2 (en) | Method and apparatus for encoding/decoding image for virtual view synthesis | |
US20230345020A1 (en) | Method for processing video data stream, video decoding apparatus, and method for encoding data stream | |
US20220345681A1 (en) | Method and apparatus for encoding, transmitting and decoding volumetric video | |
CN116491121A (zh) | 视觉内容的信号通知 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |