一种室内场景的渲染方法及其装置的制造方法

文档序号:10553642阅读:204来源:国知局
一种室内场景的渲染方法及其装置的制造方法
【专利摘要】本发明提供一种室内场景的渲染方法及其装置,该方法包括:遍历场景中的3D对象;对所述3D对象进行可见性检测以获取所述3D对象的室内可见模型;对所述3D对象进行过滤以将所述室内可见模型进行序列化转换为数据交换文件;将所述数据交换文件发送至渲染服务器。综上,本发明具有如下有益效果:提高渲染效率,减少服务器资源浪费,缩短渲染时间;可渲染透明门窗另外一侧的物品,给用户真实的感受。
【专利说明】
一种室内场景的渲染方法及其装置
技术领域
[0001]本发明涉及图片渲染及通信技术领域,特别涉及一种室内场景的渲染方法及其装置。
【背景技术】
[0002]在线渲染是指用户终端把3D模型场景放到远程的高性能服务器中渲染。这种情况下,用户终端先构建场景与模型,然后通过互联网接入渲染资源,并向远程渲染服务器发出渲染指令。渲染服务器根据指令执行对应的渲染任务,并将渲染图像结果传送回用户终端中加以显示。
[0003]渲染服务器是在线渲染的重要角色,其对任务处理的吞吐量是衡量渲染性能的关键指标。由于渲染本身会消耗大量的计算,所以为了提升渲染任务吞吐量,一方面渲染服务器在硬件配置上需要具备强大的计算能力,另一方面软件优化,提高效率。
[0004]而当前现有技术通用的做法是,将整个3D房屋模型场景的数据传送到渲染服务器,渲染任务完成后会将整个场景的图像返回到用户终端,用户终端会根据用户设置的摄像机坐标截取场景图像,显示最后的图像结果。故当前的现有技术存在以下缺点:
[0005]1、渲染效果图的数据量大,需要计算整个户型的数据,消耗非常大的计算资源,且耗时较长;
[0006]2、效率低,每次传送整个户型的数据,但真正使用到的数据占比却很小;
[0007]3、缺失对户型中房间信息的识别,无法针对不同房间类型进行差异化处理,以及透过门窗的物品的渲染。

【发明内容】

[0008]本发明要解决的技术问题在于针对现有技术中渲染效果图的数据量大,消耗非常大的计算资源,耗时较长,效率低,缺失对户型中房间信息的识别,无法针对不同房间类型进行差异化处理,以及透过门窗的物品的渲染的缺陷,提供一种室内场景的渲染方法及其
目.ο
[0009]本发明解决技术问题采用的技术手段是提供一种室内场景的渲染方法,包括:
[0010]遍历场景中的3D对象;
[0011]对所述3D对象进行可见性检测以获取所述3D对象的室内可见模型;
[0012]对所述3D对象进行过滤以将所述室内可见模型进行序列化转换为数据交换文件;
[0013]将所述数据交换文件发送至渲染服务器。
[0014]在本发明所述的渲染方法中,所述对所述3D对象进行可见性检测以获取所述3D对象的室内可见模型的步骤包括:
[0015]S21、遍历所述3D对象中的房间模型;
[0016]S22、检测所述房间模型是否在拍摄装置所拍摄的视角内,若是,转至步骤S23,若否,转至步骤S26 ;
[0017]S23、检测所述拍摄装置与所述房间模型是否处于同一房间,若是,转至步骤S25,若否,转至步骤S24;
[0018]S24、检测所述拍摄装置所拍摄的视角内的墙面是否包括门窗,若是,转至步骤S25,若否,转至步骤S26 ;
[0019]S25、将透过所述门窗的场景视为室内可见模型,并将所述室内可见模型的3D对象加入待序列化数据表;
[0020]S26、判断所述3D对象是否为最后一个遍历对象,若否,转至步骤S21。
[0021]在本发明所述的渲染方法中,所述对所述3D对象进行过滤以将所述室内可见模型进行序列化转换为数据交换文件的步骤中:
[0022]将所述待序列化数据表中的3D对象进行过滤以将所述室内可见模型进行序列化转换为数据交换文件。
[0023]在本发明所述的渲染方法中,还包括:
[0024]设置所述拍摄装置的位置及视角。
[0025]在本发明所述的渲染方法中,所述遍历场景中的3D对象的步骤还包括:
[0026]显示所遍历的场景。
[0027]另一方面,提供一种室内场景的渲染装置,包括:
[0028]3D场景遍历模块,用于遍历场景中的3D对象;
[0029]可见性检测模块,其通过系统总线连接至所述3D场景遍历模块,所述可见性检测模块用于对所述3D对象进行可见性检测以获取所述3D对象的室内可见模型;
[0030]序列化模块,其通过系统总线连接至所述可见性检测模块,所述序列化模块用于对所述3D对象进行过滤以将所述室内可见模型进行序列化转换为数据交换文件;
[0031]通信模块,其通过系统总线连接至所述序列化模块并通信连接至渲染服务器,所述通信模块用于将所述数据交换文件发送至所述渲染服务器。
[0032]在本发明所述的渲染装置中,所述可见性检测模块包括:
[0033]房间遍历子模块,用于遍历所述3D对象中的房间模型;
[0034]第一检测子模块,用于检测所述房间模型是否在拍摄装置所拍摄的视角内;
[0035]第二检测子模块,用于检测所述拍摄装置与所述房间模型是否处于同一房间;
[0036]第三检测子模块,用于检测所述拍摄装置所拍摄的视角内的墙面是否包括门窗;
[0037]可见性归类子模块,用于将透过所述门窗的场景视为室内可见模型,并将所述室内可见模型的3D对象加入待序列化数据表;
[0038]判断子模块,用于判断所述3D对象是否为最后一个遍历对象。
[0039]在本发明所述的渲染装置中,所述序列化模块还用于将所述待序列化数据表中的3D对象进行过滤以将所述室内可见模型进行序列化转换为数据交换文件。
[0040]在本发明所述的渲染装置中,还包括:
[0041]渲染设置模块,其通过系统总线连接至所述可见性检测模块,所述渲染设置模块用于设置所述拍摄装置的位置及视角。
[0042]在本发明所述的渲染装置中,所述3D场景遍历模块还用于显示所遍历的场景。
[0043]实施本发明中的一种室内场景的渲染方法及其装置具有以下有益效果:提高渲染效率,减少服务器资源浪费,缩短渲染时间;可渲染透明门窗另外一侧的物品,给用户真实的感受。
【附图说明】
[0044]图1是本发明第一实施例提供的一种室内场景的渲染方法的流程图;
[0045]图2是本发明提供的可见性检测的流程图;
[0046]图3是本发明第二实施例提供的一种室内场景的渲染方法的流程图;
[0047]图4是本发明提供的一种室内场景的渲染装置的结构框图。
【具体实施方式】
[0048]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0049]本发明提供的一种室内场景的渲染方法及其装置,其目的在于,根据场景中相机视锥体对场景中的3D对象进行可见性检测。在渲染时,依据可见性检测结果,仅将可见的3D模型信息传至云渲染服务器渲染。针对室内设计的渲染场景,结合在线渲染特点,对渲染目标区域进行可视范围信息的预处理,剔除了无用或者影响很小的冗余信息,提高场景模型数据的利用率,更进一步,通过结构化的房间信息管理,实现智能化的单房间设计效果图渲染优化,从而在保证室内设计效果图质量的前提下,大幅度降低在线渲染的计算时间,明显提升用户的在线渲染体验。通过选择性上传渲染任务,解决渲染效率低耗时长,数据利用率低的问题;通过可见性检测,解决无法隔着门窗进行渲染的问题。
[0050]参见图1,图1是本发明第一实施例提供的一种室内场景的渲染方法的流程图,该室内场景的渲染方法包括:
[0051]S1、遍历场景中的3D对象并显示所遍历的场景;即管理及显示基本三维场景效果,并与用户进行交互。
[0052]S2、对所述3D对象进行可见性检测以获取所述3D对象的室内可见模型;例如,利用渲染相机对场景中的3D显示对象进行可见性检测。参见图2,图2是本发明提供的可见性检测的流程图,该步骤S2包括以下子步骤:
[0053]S21、遍历所述3D对象中的房间模型;
[0054]S22、检测所述房间模型是否在拍摄装置所拍摄的视角内,若是,转至步骤S23,若否,转至步骤S26 ;
[0055]S23、检测所述拍摄装置与所述房间模型是否处于同一房间,若是,转至步骤S25,若否,转至步骤S24;
[0056]S24、检测所述拍摄装置所拍摄的视角内的墙面是否包括门窗,若是,转至步骤S25,若否,转至步骤S26 ;
[0057]S25、将透过所述门窗的场景视为室内可见模型,并将所述室内可见模型的3D对象加入待序列化数据表;
[0058]S26、判断所述3D对象是否为最后一个遍历对象,若否,转至步骤S21。
[0059]综合上述步骤S2,本发明针对隔着门窗实现渲染的技术方案为:首先检测相机视角中的墙面是否包含门窗;如果有门窗,对于处理相机视角中,但不在相机所在房间的模型也认为可见;如果没有门窗,则判定不在相机视角范围内模型不可见。在相机视角范围内,但不跟相机在同一房间中的模型也判定为不可见(被墙面遮挡即遮挡裁剪)。
[0060]S3、对所述3D对象进行过滤以将所述室内可见模型进行序列化转换为数据交换文件;例如,根据可见性检测结果,对3D场景中的模型进行过滤,仅将可见的模型信息序列化成Json文件,并发送到渲染服务器后端进行渲染。针对步骤S25,将所述待序列化数据表中的3D对象进行过滤以将所述室内可见模型进行序列化转换为数据交换文件。
[0061]S4、将所述数据交换文件发送至渲染服务器。渲染服务器对该数据交换文件进行渲染。
[0062]此外,该方法还包括:
[0063]S0、设置所述拍摄装置的位置及视角。即根据用户输入确定渲染相机的位置,旋转及视角(FieldOfView)。
[0064]参见图3,图3是本发明第二实施例提供的一种室内场景的渲染方法的流程图,该实施例不同于图1所示实施例之处在于,增加遍历对象的判定,具体的,该室内场景的渲染方法包括以下步骤:
[0065]S101、遍历场景中的3D对象并显示所遍历的场景。
[0066]S102、检测所述3D对象是否可见,若是,转至步骤S103,若否,转至步骤S104。
[0067]S103、将可见的3D对象加入待序列化数据表。
[0068]S104、判断所遍历的3D对象是否为最后一个3D对象,若是,转至步骤S105,若否,转至步骤SlOl。
[0069]S105、将所述待序列化数据表中的3D对象进行过滤以将所述室内可见模型进行序列化转换为数据交换文件。
[0070]S106、将所述数据交换文件发送至渲染服务器。
[0071]参见图4,图4是本发明提供的一种室内场景的渲染装置的结构框图,该室内场景的渲染装置包括3D场景遍历模块1、可见性检测模块2、序列化模块3、通信模块4及渲染设置模块5。
[0072]其中,3D场景遍历模块1,用于遍历场景中的3D对象并显示所遍历的场景。即管理及显示基本三维场景效果,并与用户进行交互。
[0073]可见性检测模块2,其通过系统总线连接至所述3D场景遍历模块I,所述可见性检测模块2用于对所述3D对象进行可见性检测以获取所述3D对象的室内可见模型;例如,利用渲染相机对场景中的3D显示对象进行可见性检测。
[0074]序列化模块3,其通过系统总线连接至所述可见性检测模块2,所述序列化模块3用于对所述3D对象进行过滤以将所述室内可见模型进行序列化转换为数据交换文件;例如,根据可见性检测结果,对3D场景中的模型进行过滤,仅将可见的模型信息序列化成Json文件(即数据交换文件),并发送到渲染服务器后端进行渲染。
[0075]通信模块4,其通过系统总线连接至所述序列化模块3并通信连接至渲染服务器,所述通信模块4用于将所述数据交换文件发送至所述渲染服务器。
[0076]渲染设置模块5,其通过系统总线连接至所述可见性检测模块2,所述渲染设置模块5用于设置所述拍摄装置的位置及视角。即根据用户输入确定渲染相机的位置,旋转及视角(FieldOfView)。
[0077]所述可见性检测模块2包括:
[0078]房间遍历子模块,用于遍历所述3D对象中的房间模型;
[0079]第一检测子模块,用于检测所述房间模型是否在拍摄装置所拍摄的视角内;
[0080]第二检测子模块,用于检测所述拍摄装置与所述房间模型是否处于同一房间;
[0081]第三检测子模块,用于检测所述拍摄装置所拍摄的视角内的墙面是否包括门窗;
[0082]可见性归类子模块,用于将透过所述门窗的场景视为室内可见模型,并将所述室内可见模型的3D对象加入待序列化数据表;针对该模块,所述序列化模块3还用于将所述待序列化数据表中的3D对象进行过滤以将所述室内可见模型进行序列化转换为数据交换文件。
[0083]判断子模块,用于判断所述3D对象是否为最后一个遍历对象。
[0084]总之,本发明的发明点至少包括以下几个方面:
[0085]1、基于相机视野中的渲染技术,高效渲染效果图;
[0086]2、隔着具有一定透明度物品进行物品渲染的技术。
[0087]3、对户型中房间信息的识别。
[0088]上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的【具体实施方式】,上述的【具体实施方式】仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
【主权项】
1.一种室内场景的渲染方法,其特征在于,包括: 遍历场景中的3D对象; 对所述3D对象进行可见性检测以获取所述3D对象的室内可见模型; 对所述3D对象进行过滤以将所述室内可见模型进行序列化转换为数据交换文件; 将所述数据交换文件发送至渲染服务器。2.根据权利要求1所述的渲染方法,其特征在于,所述对所述3D对象进行可见性检测以获取所述3D对象的室内可见模型的步骤包括: 521、遍历所述3D对象中的房间模型; 522、检测所述房间模型是否在拍摄装置所拍摄的视角内,若是,转至步骤S23,若否,转至步骤S26 ; 523、检测所述拍摄装置与所述房间模型是否处于同一房间,若是,转至步骤S25,若否,转至步骤S24 ; 524、检测所述拍摄装置所拍摄的视角内的墙面是否包括门窗,若是,转至步骤S25,若否,转至步骤S26 ; 525、将透过所述门窗的场景视为室内可见模型,并将所述室内可见模型的3D对象加入待序列化数据表; 526、判断所述3D对象是否为最后一个遍历对象,若否,转至步骤S21。3.根据权利要求2所述的渲染方法,其特征在于,所述对所述3D对象进行过滤以将所述室内可见模型进行序列化转换为数据交换文件的步骤中: 将所述待序列化数据表中的3D对象进行过滤以将所述室内可见模型进行序列化转换为数据交换文件。4.根据权利要求2所述的渲染方法,其特征在于,还包括: 设置所述拍摄装置的位置及视角。5.根据权利要求1所述的渲染方法,其特征在于,所述遍历场景中的3D对象的步骤还包括: 显示所遍历的场景。6.一种室内场景的渲染装置,其特征在于,包括: 3D场景遍历模块,用于遍历场景中的3D对象; 可见性检测模块,其通过系统总线连接至所述3D场景遍历模块,所述可见性检测模块用于对所述3D对象进行可见性检测以获取所述3D对象的室内可见模型; 序列化模块,其通过系统总线连接至所述可见性检测模块,所述序列化模块用于对所述3D对象进行过滤以将所述室内可见模型进行序列化转换为数据交换文件; 通信模块,其通过系统总线连接至所述序列化模块并通信连接至渲染服务器,所述通信模块用于将所述数据交换文件发送至所述渲染服务器。7.根据权利要求6所述的渲染装置,其特征在于,所述可见性检测模块包括: 房间遍历子模块,用于遍历所述3D对象中的房间模型; 第一检测子模块,用于检测所述房间模型是否在拍摄装置所拍摄的视角内; 第二检测子模块,用于检测所述拍摄装置与所述房间模型是否处于同一房间; 第三检测子模块,用于检测所述拍摄装置所拍摄的视角内的墙面是否包括门窗; 可见性归类子模块,用于将透过所述门窗的场景视为室内可见模型,并将所述室内可见模型的3D对象加入待序列化数据表; 判断子模块,用于判断所述3D对象是否为最后一个遍历对象。8.根据权利要求7所述的渲染系统,其特征在于,所述序列化模块还用于将所述待序列化数据表中的3D对象进行过滤以将所述室内可见模型进行序列化转换为数据交换文件。9.根据权利要求7所述的渲染系统,其特征在于,还包括: 渲染设置模块,其通过系统总线连接至所述可见性检测模块,所述渲染设置模块用于设置所述拍摄装置的位置及视角。10.根据权利要求6所述的渲染系统,其特征在于,所述3D场景遍历模块还用于显示所遍历的场景。
【文档编号】G06T15/00GK105913472SQ201510542485
【公开日】2016年8月31日
【申请日】2015年8月28日
【发明人】王国彬
【申请人】深圳市彬讯科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1