一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于多对象图像α叠加的异构对象表征方法与流程

2022-12-07 16:50:52 来源:中国专利 TAG:

基于多对象图像
α
叠加的异构对象表征方法
技术领域
1.本发明涉及计算机图形学领域,更为具体的,涉及基于多对象图像α叠加的异构对象表征方法。


背景技术:

2.现在的自由视点视频、交互式、沉浸式视频等高新视频技术成为热点,目前的对象建模方法主要有:相机阵列、mesh建模、点云、神经渲染nerf等方法,这些方法在不同场景中各有优劣。
3.场景对象重建一般用渲染引擎把整个场景和里面所有的对象进行建模,这种方法通常因为对象多且复杂,光影、反射等均需要花费大量资源。在部分场景中,例如舞台演出或一些特定视角下的场景重建,通常这些场景不需要获得整个场景或所有对象的全方位信息,只需要在给定一个特定拍摄角度可视即可。因此需要有一种灵活、高兼容的场景表征方式,能够在控制足够低的制作成本的同时,满足最真实最生动的虚实结合画面呈现。


技术实现要素:

4.本发明的目的在于克服现有技术的不足,提供一种基于多对象图像α叠加的异构对象表征方法,能够减少因为多对象渲染而带来的复杂光影、反射、多视角等大量信息获取,并极大减少计算渲染资源等。
5.本发明的目的是通过以下方案实现的:一种基于多对象图像α叠加的异构对象表征方法,包括以下步骤:s1,建立虚拟建模环境坐标系,根据虚拟相机位置,标定计算相机参数,包括内参kc、外参rc,记录当前环境下的光源信息l
in
以及时刻tc;s2,针对当前虚拟建模环境下的对象模型进行分层渲染,输出在s1步骤中相机参数确定下的各自模型的对应渲染图层;s3,将场景内虚拟相机可视范围下的各类型对象,根据图层到虚拟相机的距离在α通道进行多图层叠加,完成异构对象表征。
6.进一步地,在步骤s2中,包括子步骤:s21,输入标定的kc、rc和记录的光源信息l
in
、时刻tc;s22,对不同模型对象进行相机参数确定下的部分渲染渲染;s23,在相机参数确定的情况下,根据当前相机视角和成像大小,输出虚拟环境内i个对象的rgbα图片,每张图片记录与焦平面距离d[i]。
[0007]
进一步地,在步骤s2中,所述对象模型包括nerf模型、mesh模型、点云模型。
[0008]
进一步地,在步骤s3中,所述各类型对象均为完全不透明的静态对象和动态对象。
[0009]
进一步地,在步骤s3中,所述在α通道进行多图层叠加包括步骤:nerf模型下的α输出、mesh模型下的α输出和点云模型下的α输出。
[0010]
进一步地,所述nerf模型下的α输出,包括步骤:
s301,nerf模型场景表达、模型输入、模型输出、模型渲染、视角渲染;其中,nerf的场景表达为,为nerf场景表达的映射函数,x为三维空间的位置信息,d为视角方向,x、d为已知量,c=(r,g,b)是视角相关的3d点颜色,为体素密度;模型输入为x和d,输出为c和;在模型渲染中,相机射线表达为, 为相机射线表达函数,o为射线原点,t为射线距离,t的近端和远端边界分别为tn和tf;射线颜色积分为;其中,t(t)为累计透明度函数,为相机射线的体素密度,为相机该方向相机射线的颜色,且,t(t)的阈值范围在(0~1),为 的离散信息,s为t上的离散点对象,且为完全非透明对象,即t(tw)的值为0,tw为光线在对象表面的点;在视角渲染中,虚拟相机拍摄视角、位置确定的情况下,即d确定,输出该视角下的渲染图像:;s302,α通道输出:将选定视角下渲染出的图像与透明通道α进行合成,输出该对象的透明通道α1。
[0011]
进一步地,在步骤s3中,所述mesh模型下的α输出,包括子步骤:s311,mesh的模型表达:定义m=(ti,ci),i的范围为1~n,n取正整数,m为组成对象的n个三角形的数据集合,t
i 为三角形的空间坐标,ti=(x
i1
, x
i2, x
i3, y
i1
, y
i2, y
i3, z
i1
, z
i2, z
i3
),其中xi,yi,zi分别为第i个三角形的三个顶点在x轴、y轴、z轴的空间坐标位置,x
i1
,y
i1
,z
i1
分别为第i个三角形的第1个顶点在在x轴、y轴、z轴的空间坐标位置,x
i2
,y
i2
,z
i2
分别为第i个三角形的第2个顶点在在x轴、y轴、z轴的空间坐标位置,x
i3
,y
i3
,z
i3
第i个三角形的第3个顶点在在x轴、y轴、z轴的空间坐标位置,ci为该三角形的颜色;s312,α通道输出:在相机视角及方位确定情况下,捕捉在该视角下的mesh二维图像信息im,im=(t
id
,c
id
),其中t
id
与c
id
为当前视角下可视三角形的位置信息与颜色信息,考虑到物体为非透明,被遮挡的三角形信息不在考虑范围;将mesh的特定视角下的二维图像与α通道进行合成,形成该对象的透明通道α2。
[0012]
进一步地,在步骤s3中,所述点云模型下的α输出,包括子步骤:s321,点云模型下的α输出:点云部分为空间内采样到的数个离散的点,模型为d=( xi,yi,zi),i=n,n为采样到的点的数量;对点云模型进行x、y、z方向上的颜色定义,生成带有颜色信息的点云模型dc=( xi,yi,zi,c),c为坐标系中x,y,z方向上的r、g、b值;
s322,α通道输出:输出特定视角下带有颜色信息的点云模型dc的二维图像,不考虑对象模型存在透明度,将图像可表达为dc=( x
id
,y
id
,z
id
,cd),x
id
,y
id
,z
id
为视角下的位置信息,cd为颜色信息,根据最终合成输出获得2d图片。
[0013]
进一步地,所述在α通道进行多图层叠加包括步骤:将背景、nerf模型、mesh模型和点云模型,四个对象在α通道进行叠加。
[0014]
进一步地,在步骤s22中,所述对不同模型对象进行相机参数确定下的部分渲染渲染,即仅渲染相机可拍摄范围内的模型部分。
[0015]
本发明的有益效果包括:本发明不需要场景对象把整个场景和里面所有的对象进行建模,只需要在观众视角形成2d图像,能够减少因为多对象渲染而带来的复杂光影、反射、多视角等大量信息获取,并极大减少计算渲染资源。同时本方法支持mesh建模、体素、点云、nerf深度学习等多种异构对象,不需要为适应本方法而重新进行对象设计和建模,可支持现阶段技术下存在的各类异构对象,具备很好的兼容性和可用性。
[0016]
本发明实施例的技术方案可以兼容mesh建模、体素、点云、nerf深度学习等多种异构对象,对象可以被设计、采集、重建、表征和渲染。不同的对象可采用不同的方法表征,如表面、体素、点云、深度学习等,各对象在统一场景的位姿、光照要求下,分别用自己的表征方法渲染,输出带通道的2d图。
附图说明
[0017]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0018]
图1为本发明实施例中对象分层渲染统一抽象的示意图;图2为本发明实施例中nerf的α输出的场景表达的示意图;图3为本发明实施例中nerf的α输出的视角渲染的示意图;图4为本发明实施例中mesh的α输出的mesh的模型表达的示意图;图5为本发明实施例中mesh的α输出的α通道输出的示意图;图6为本发明实施例中点云模型下的α输出的α通道输出的示意图;图7为本发明实施例中根据最终合成输出获得2d图片的示意图;图8为本发明实施例方法的步骤流程图。
具体实施方式
[0019]
本说明书中所有实施例公开的所有特征,或隐含公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合和/或扩展、替换。
[0020]
本发明实施例的技术方案可以兼容mesh建模、体素、点云、nerf深度学习等多种异构对象,对象可以被设计、采集、重建、表征和渲染。不同的对象可采用不同的方法表征,如表面、体素、点云、深度学习等,各对象在统一场景的位姿、光照要求下,分别用自己的表征方法渲染,输出带通道的2d图。
[0021]
本发明实施例提供一种基于多对象图像α叠加的异构对象表征方法,分为确定视点、分布渲染、α叠加三个步骤,如图8所示。
[0022]
步骤1,建立虚拟建模环境坐标系,根据虚拟相机位置,标定计算相机参数,确定视点,根据视点确定相机内参kc、外参rc、时刻tc、光源信息lin、内参kc为针对每个空间点x,y,z 以及水平θ、垂直φ角度输入,-1,0,1三值输出,累计达到x,y,z,θ,φ五维;步骤2,针对当前虚拟建模环境下的对象模型进行分层渲染,输出在步骤1中相机参数确定下的各自模型的对应渲染图层,如图1所示,具体包括:步骤1),输入相机参数(内参kc、外参rc、时刻tc)、光源信息lin、时刻t(动态对象有效)。
[0023]
步骤2),渲染。
[0024]
步骤3),输出,i张rgbα图片g[m],[n](相机像素坐标系)数组、每张图片记录与焦平面距离d[i]、有效可视角度flag标识有无“穿帮”。需要说明的是,在自由拍摄区域,理论上不会穿帮,如果在限制角度区域,需要判定有无穿帮。
[0025]
步骤3,将场景、各可视范围下的各类型对象(静态对象 动态对象)、阴影、映像进行多图层叠加,以nerf、mesh、点云为例:1)nerf的α输出:场景表达为,为nerf场景表达的映射函数,x为三维空间的位置信息,d为视角方向,x、d为已知量,c=(r,g,b)是视角相关的3d点颜色,为体素密度;模型输入为x和d,输出为c和,如图2所示。
[0026]
在模型渲染中,相机射线表达为,o为射线原点,t的近端和远端边界分别为tn和tf。射线颜色积分为。其中,t(t)为累计透明度函数:,t(t)的阈值范围在(0~1)。本发明实施例考虑对象为完全非透明对象,即t(tw)的值为0,为的离散信息,s为t上的离散点对象,且为完全非透明对象,即t(tw)的值为0,tw为光线在对象表面的点。
[0027]
在视角渲染中,在虚拟相机拍摄视角、位置确定的情况下,d确定,输出该视角下的渲染图像:;将特定视角下渲染出的图像与透明通道α进行合成,输出该对象的透明通道α1,如图3所示。
[0028]
2)mesh的α输出:mesh的模型表达,如图4所示。mesh(网格)是计算机图形学中用于为各种不规则物体建立模型的一种数据结构。定义m=(ti,ci),i=n(m为组成对象的n个三角形的数据集合,ti=(x
i1
, x
i2, x
i3, y
i1
, y
i2, y
i3, z
i1
, z
i2, z
i3
),其中xi,yi,zi,为每个三角形三个顶点的空间坐标位置,x
i1
,y
i1
,z
i1
分别为第i个三角形的第1个顶点在在x轴、y轴、z轴的空间坐标位置,x
i2
,y
i2
,z
i2
分别为第i个三角形的第2个顶点在在x轴、y轴、z轴的空间坐标位置,x
i3
,y
i3
,z
i3
第i个三角形的第3个顶点在在x轴、y轴、z轴的空间坐标位置,ci为该三角形的颜色。
[0029]
α通道输出,如图5所示,在相机视角及方位确定情况下,捕捉在该视角下的mesh二维图像信息im,im=(t
id
,c
id
),其中t
id
与c
id
为当前视角下可视三角形的位置信息与颜色信息,本发明实施例考虑到物体为非透明,所以被遮挡的三角形信息不在考虑范围。将mesh的特定视角下的二维图像与α通道进行合成,形成该对象的透明通道α2。
[0030]
3)点云模型下的α输出:如图6、图7所示,点云部分为空间内采样到的数个离散的点,模型为d=( xi,yi,zi),i=n,n为采样到的点的数量。由于点云生成的原始数据模型仅记录采样点的位置信息,需要对点云模型进行x、y、z方向上的颜色定义,生成带有颜色信息的点云模型dc=( xi,yi,zi,c),c为坐标系中x,y,z方向上的r、g、b值。
[0031]
α通道输出,输出特定视角下带有颜色信息的点云模型dc的二维图像。因不考虑对象模型存在透明度,图像可表达为dc=( x
id
,y
id
,z
id
,cd)(既该视角下的位置及颜色信息),根据最终合成输出获得2d图片。
[0032]
如图7所示,右方对象
①②③
分别代表不同模型类型,即nerf模型、mesh模型、点云模型(包括但不限于上述模型),

代表背景,四个对象在α通道进行叠加,形成左方的俯视图。
[0033]
实施例1一种基于多对象图像α叠加的异构对象表征方法,包括以下步骤:s1,建立虚拟建模环境坐标系,根据虚拟相机位置,标定计算相机参数,包括内参kc、外参rc,记录当前环境下的光源信息l
in
以及时刻tc;s2,针对当前虚拟建模环境下的对象模型进行分层渲染,输出在s1步骤中相机参数确定下的各自模型的对应渲染图层;s3,将场景内虚拟相机可视范围下的各类型对象,根据图层到虚拟相机的距离在α通道进行多图层叠加,完成异构对象表征。
[0034]
实施例2在实施例1的基础上,在步骤s2中,包括子步骤:s21,输入标定的kc、rc和记录的光源信息l
in
、时刻tc;s22,对不同模型对象进行相机参数确定下的部分渲染渲染;s23,在相机参数确定的情况下,根据当前相机视角和成像大小,输出虚拟环境内i个对象的rgbα图片,每张图片记录与焦平面距离d[i]。
[0035]
实施例3在实施例1的基础上,在步骤s2中,所述对象模型包括nerf模型、mesh模型、点云模型。
[0036]
实施例4
在实施例1的基础上,在步骤s3中,所述各类型对象均为完全不透明的静态对象和动态对象。
[0037]
实施例5在实施例1~实施例4的基础上,在步骤s3中,所述在α通道进行多图层叠加包括步骤:nerf模型下的α输出、mesh模型下的α输出和点云模型下的α输出。
[0038]
实施例6在实施例5的基础上,进一步地,所述nerf模型下的α输出,包括步骤:s301,nerf模型场景表达、模型输入、模型输出、模型渲染、视角渲染;其中,nerf的场景表达为, 为nerf场景表达的映射函数,x为三维空间的位置信息,d为视角方向,x、d为已知量,c=(r,g,b)是视角相关的3d点颜色,为体素密度;模型输入为x和d,输出为c和;在模型渲染中,相机射线表达为, 为相机射线表达函数,o为射线原点,t为射线距离,t的近端和远端边界分别为tn和tf;射线颜色积分为;其中,t(t)为累计透明度函数,为相机射线的体素密度,为相机该方向相机射线的颜色,且,t(t)的阈值范围在(0~1),为的离散信息,s为t上的离散点对象,且为完全非透明对象,即t(tw)的值为0,tw为光线在对象表面的点;在视角渲染中,虚拟相机拍摄视角、位置确定的情况下,即d确定,输出该视角下的渲染图像:;s302,α通道输出:将选定视角下渲染出的图像与透明通道α进行合成,输出该对象的透明通道α1。
[0039]
实施例7在实施例5的基础上,在步骤s3中,所述mesh模型下的α输出,包括子步骤:s311,mesh的模型表达:定义m=(ti,ci),i的范围为1~n,n取正整数,m为组成对象的n个三角形的数据集合,t
i 为三角形的空间坐标,ti=(x
i1
, x
i2, x
i3, y
i1
, y
i2, y
i3, z
i1
, z
i2, z
i3
),其中xi,yi,zi分别为第i个三角形的三个顶点在x轴、y轴、z轴的空间坐标位置,x
i1
,y
i1
,z
i1
分别为第i个三角形的第1个顶点在在x轴、y轴、z轴的空间坐标位置,x
i2
,y
i2
,z
i2
分别为第i个三角形的第2个顶点在在x轴、y轴、z轴的空间坐标位置,x
i3
,y
i3
,z
i3
第i个三角形的第3个顶点在在x轴、y轴、z轴的空间坐标位置,ci为该三角形的颜色;
s312,α通道输出:在相机视角及方位确定情况下,捕捉在该视角下的mesh二维图像信息im,im=(t
id
,c
id
),其中t
id
与c
id
为当前视角下可视三角形的位置信息与颜色信息,考虑到物体为非透明,被遮挡的三角形信息不在考虑范围;将mesh的特定视角下的二维图像与α通道进行合成,形成该对象的透明通道α2。
[0040]
实施例8在实施例5的基础上,在步骤s3中,所述点云模型下的α输出,包括子步骤:s321,点云模型下的α输出:点云部分为空间内采样到的数个离散的点,模型为d=( xi,yi,zi),i=n,n为采样到的点的数量;对点云模型进行x、y、z方向上的颜色定义,生成带有颜色信息的点云模型dc=( xi,yi,zi,c),c为坐标系中x,y,z方向上的r、g、b值;s322,α通道输出:输出特定视角下带有颜色信息的点云模型dc的二维图像,不考虑对象模型存在透明度,将图像可表达为dc=( x
id
,y
id
,z
id
,cd),x
id
,y
id
,z
id
为视角下的位置信息,cd为颜色信息,根据最终合成输出获得2d图片。
[0041]
实施例9在实施例5的基础上,所述在α通道进行多图层叠加包括步骤:将背景、nerf模型、mesh模型和点云模型,四个对象在α通道进行叠加。
[0042]
实施例10在实施例2的基础上,所述对不同模型对象进行相机参数确定下的部分渲染渲染,即仅渲染相机可拍摄范围内的模型部分。
[0043]
描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
[0044]
根据本技术的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的方法。
[0045]
作为另一方面,本技术还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。
[0046]
本发明未涉及部分均与现有技术相同或可采用现有技术加以实现。
[0047]
上述技术方案只是本发明的一种实施方式,对于本领域内的技术人员而言,在本发明公开了应用方法和原理的基础上,很容易做出各种类型的改进或变形,而不仅限于本发明上述具体实施方式所描述的方法,因此前面描述的方式只是优选的,而并不具有限制性的意义。
[0048]
除以上实例以外,本领域技术人员根据上述公开内容获得启示或利用相关领域的知识或技术进行改动获得其他实施例,各个实施例的特征可以互换或替换,本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献