一种基于形式化的复杂三维场景建模方法技术

技术编号:15438429 阅读:90 留言:0更新日期:2017-05-26 04:21
本发明专利技术提供了一种基于形式化的复杂三维场景建模描述方法,属于虚拟现实领域中场景建模技术。本方法包括:基于BNF(巴科斯范式)设计场景建模语法规则,将三维场景按照场景对象、场景对象模板和场景对象模板属性进行抽象;进行建模操作形成抽象建模结果;根据映射规则将抽象建模结果转化为以XML格式为标准的建模结果,以实现目标三维场景抽象建模。本发明专利技术所设计的场景建模语法规则更加严谨并且不存在二义性,所使用的三维场景抽象方法具有较强属性描述能力和良好的扩展性,可以应对各种类型的场景对象,能为界面化建模提供良好的支持,完成复杂三维场景抽象建模。

A formal method for complex 3D scene modeling

The invention provides a method for describing and modeling complex 3D scenes based on formalization, which belongs to the scene modeling technology in the virtual reality field. The method includes: Based on the BNF (Backus paradigm) design scene modeling of three dimensional scene in accordance with the rules of grammar, scene objects, scene object template and scene object template attribute abstraction; modeling operation form abstract modeling results; according to the mapping rules of abstract modeling results into the modeling results of a standard XML format, in order to achieve the abstract modeling the target 3D scene. Scene modeling grammar rules designed by the invention is more rigorous and there is no ambiguity of the two, 3D scene abstract method used has strong attribute description ability and good scalability, can handle all types of objects in the scene, can provide good support for interface modeling, the abstract modeling of complex 3D scene.

【技术实现步骤摘要】
一种基于形式化的复杂三维场景建模方法
本专利技术属于场景建模和应用软体系结构设计相结合的领域,涉及虚拟现实中的场景建模方法的应用,具体涉及一种基于形式化的复杂三维场景抽象建模方法。
技术介绍
随着虚拟现实、计算机网络、软件工程等技术的逐步发展,越来越多的软件选择更加直观、真实、交互友好的三维场景展示方式向用户提供信息,如:网络虚拟祭祀平台、虚拟试衣间平台、虚拟测试平台等。其中,场景建模作为虚拟现实相关应用程序开发中重要的环节,是必须要面对的问题。为了将这些三维场景展示出来,往往需要将目标三维场景信息通过文本的形式保存在文件中,再通过专门的商业引擎工具Unity3D、Unreal等对这些文件加以读取和解析,并最后形成三维场景。目前,随着业务需求的不断复杂化,目标三维场景的结构也变得愈加复杂,尤其体现在场景中对象结构的复杂化。因此要解决复杂三维场景的建模,实际上就是要解决复杂场景中对象的建模,虽然目前已经存在了一些场景建模方法,但它们普遍存在如下问题:①部分建模方法对复杂场景对象的属性和特征描述能力不足,具体表现在数据类型不足、构造新数据类型困难以及对数组、结构体等复杂类型描述困难等方面,因而在面对复杂场景描述时应用较为困难;②部分建模方法业务耦合性强,一方面没有总结出抽象的场景对象描述方法,另一方面经常局限于某一种具体的文本描述规则,因此导致其通用性不足;③大多数建模方法在设计时没有考虑到界面化建模支持,当目标场景的规模非常庞大时,直接人工编辑建模文本会降低工作效率,并提升因人为疏忽导致的文本编辑错误。在对当前现存的三维场景建模方法进行分析后发现,这些方法普遍难以应对构成粒度低、属性种类繁杂的复杂3D场景的建模需求,同时存在属性描述能力不足、通用性较差以及界面化建模支持程度低的问题。因此,如何解决复杂三维场景的抽象建模,同时兼具良好的属性描述能力、通用性以及界面化建模支持就成了需要解决的问题。
技术实现思路
本专利技术为了克服现有方法存在的缺陷,增强建模方法的描述能力、通用性以及界面化建模支持能力,并完成复杂三维场景抽象建模,提出了一种基于形式化的三维场景建模方法。本专利技术提供的基于形式化的复杂三维场景建模方法,包括:步骤1,将三维场景按照场景对象、场景对象模板和场景对象模板属性进行抽象,基于BNF(巴科斯范式)设计场景建模语法规则;所述场景对象表示构成三维场景的基本单位,所述场景对象模板是将具有相同特征的场景对象的属性进行提取所形成的一种抽象属性集合。步骤2,将场景建模语法规则文件与场景资源文件导入建模环境,并通过建模环境提供的操作对目标场景进行建模,形成抽象建模结果;步骤3,根据映射规则将抽象建模结果转化为以XML格式为标准的建模结果,完成目标三维场景抽象建模描述工作。本专利技术的优点与积极效果在于:(1)本专利技术借助形式化方法对虚拟三维场景的特征进行抽象分析,并基于BNF提出了了场景建模规则。相较于现有方法中的建模规则,本专利技术中的规则更加严谨并且不存在二义性,提升了建模方法的通用性的同时还能为界面化建模提供良好的支持;(2)本专利技术提出了场景对象模板的概念对场景对象进行抽象,并将场景对象模板进一步细化为场景对象模板属性的集合,从而增强了建模方法的属性描述能力。这些属性可以被归结为三种类型,分别是键值属性、序列属性和结构体属性,以应对不同类型的属性描述需求。采用这种抽象方法可以应对各种类型的场景对象,不论场景对象的构成有多复杂,都可以被最终分解成为多种属性类型的集合。除此之外这种抽象方法也具有良好的扩展性,当现有的属性语句无法解决场景对象的描述需求时,可以根据该对象的属性特征扩展出新的属性规则;(3)本专利技术在提出场景建模方法的同时还提出了对应的建模环境,通过该环境可以借助界面化的操作方法完成整个场景的建模工作。为了让场景建模方法支持界面化建模,在设计场景建模规则时融入了相关参数以提供界面化建模支持。附图说明图1为本专利技术提出的场景建模方法与现有建模方法的流程比对图;图2为本专利技术提出的场景建模方法中对虚拟场景的抽象层次结构图;图3为本专利技术方法所形成的抽象建模结果文本示意图;图4为本专利技术实施例中对抽象建模结果采用自动化映射规则转换的部分内容示意图。具体实施方式下面将结合附图和实施例对本专利技术作进一步的详细说明。本专利技术的三维场景建模方法,实现对复杂三维场景的抽象建模,从顺序关系来看,依次为基于BNF的场景建模规则、界面化建模环境与建模操作、抽象建模结果自动化映射方法。基于BNF的场景建模规则,结合场景建模环境通过界面化操作完成目标三维场景的抽象建模过程,并根据映射规则将抽象建模结果自动转化为渲染程序可以识别的XML文本格式,最终完成三维场景的展现。本专利技术方法的核心思想是:1)基于BNF设计场景建模规则确保其描述内容无二义性,语法更容易扩展,并且支持对建模结果进行静态语法错误分析;2)提出场景对象、场景对象模型及属性语句的概念,通过这套抽象方法可以增强建模方法对复杂场景对象属性和特征的描述能力,在有必要的情况下也可以通过扩展属性语句对更加复杂的模型进行兼容;3)通过界面化的手段完成场景的建模操作,避免了因为人工直接编辑建模文件可能导致的人为错误,同时也提升了建模效率;4)将抽象建模结果与业务应用时的数据格式进行分离,采用自动化映射方法将建模结果转化为目前应用广泛的XML文本格式,这种解耦合的方式能够提升建模方法的通用性,使得使用者可以根据业务需求制定合适的映射方式。通过以上几个关键设计思想实现的整套解决方案,提升了建模方法的属性描述能力和通用性并解决了针对复杂三维场景的建模需求,在此基础上还引入了界面化建模方法的模式,以降低人为错误、提高建模效率,总体实现了针对复杂三维场景进行抽象建模的一种方法。如图1所示,展示了本专利技术建模方法应用流程(实线)与现有建模方法应用流程(虚线)的对比。相较于现有建模方法直接对目标场景特征从零构造描述规则,通过人工编写和检查的方式生成场景描述文本这种方式而言,本专利技术提出的建模方法流程虽然复杂一些,但换取了更强的属性描述能力、界面建模支持特性以及场景的可复用性,其大体应用流程如下:第一,针对目标场景特征进行分析,基于BNF对建模语法规则进行扩充,形成用于描述目标场景的建模规则;第二,基于建模规则及场景资源文件,在界面化建模环境中通过调用建模规则编辑操作完成场景描述脚本的编辑生成工作;第三,依据XML转化规则将场景描述脚本转化为XML格式的描述信息,将XML文本输入到渲染程序中,完成解析和虚拟场景的生成工作。这样通过界面化操作的手段就可以对复杂三维场景进行分析、建模,并根据业务需求灵活的对抽象建模结果进行映射并生成所需文本格式的建模结果。下面将结合图1详细说明本专利技术的基于BNF的复杂三维场景抽象建模方法的实施流程。步骤1,对三维场景的特征进行总结和抽象形成场景对象模板、场景对象模板和属性等概念,并基于抽象结果和BNF设计场景建模语法规则。目前现存的场景建模方法普遍在属性描述能力和通用性上存在问题,很难针对具有复杂属性特征的一般场景进行描述。为了解决此问题,本专利技术中的场景建模规则基于BNF进行设计,其目的是为了解除建模规则与业务应用间的耦合,以抽象的、无二义性的规则去描述场景,同时增强规则本身的属本文档来自技高网
...
一种基于形式化的复杂三维场景建模方法

【技术保护点】
一种基于形式化的复杂三维场景建模方法,其特征在于,包括如下步骤:步骤1,将三维场景按照场景对象、场景对象模板和场景对象模板属性进行抽象,基于BNF设计场景建模语法规则;BNF为巴科斯范式;所述场景对象表示构成三维场景的基本单位,所述场景对象模板是将具有相同特征的场景对象的属性进行提取所形成的一种抽象属性集合;步骤2,将场景建模语法规则文件与场景资源文件导入建模环境,并通过建模环境提供的操作对目标场景进行建模,形成抽象建模结果;步骤3,根据映射规则将抽象建模结果转化为XML格式的建模结果。

【技术特征摘要】
1.一种基于形式化的复杂三维场景建模方法,其特征在于,包括如下步骤:步骤1,将三维场景按照场景对象、场景对象模板和场景对象模板属性进行抽象,基于BNF设计场景建模语法规则;BNF为巴科斯范式;所述场景对象表示构成三维场景的基本单位,所述场景对象模板是将具有相同特征的场景对象的属性进行提取所形成的一种抽象属性集合;步骤2,将场景建模语法规则文件与场景资源文件导入建模环境,并通过建模环境提供的操作对目标场景进行建模,形成抽象建模结果;步骤3,根据映射规则将抽象建模结果转化为XML格式的建模结果。2.根据权利要求1所述的复杂三维场景建模方法,其特征在于,所述的步骤1中,形成场景对象模板后,要保留每个场景对象特有的属性值,为每个模板匹配一个默认模板参数,如果场景对象某个属性的值与默认模板参数一致则不再保存。3.根据权利要求1所述的复杂三维场景建模方法,其特征在于,所述的步骤1中,所述场景对象模板属性包括键值属性、序列属性和结构体属性。4.根据权利要求1或3所述的复杂三维场景建模方法,其特征在于,所述的步骤2中,抽象建模结果是指场景建模脚本,脚本中包括变量定义区、场景对象模板定义区和场景构造脚本定义区;其中,场景对象模板定义区用于描述三维场景中涉及到的所有场景对象,该区域中的每一个模板通过唯一的标识区分,模板的内部包括键值属性语句、序列属性语句和结构体属性语句;场景构造脚本定义区将已经定义的场景对象模板进行实例化。5.根据权利要求4所述的复杂三维场景建模方法,...

【专利技术属性】
技术研发人员:吕舜吕江花吴继芳付鹏汪溁鹤汪帅马世龙
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1