基于GPU编程的地下管线自动精细建模方法转让专利

申请号 : CN201810843745.2

文献号 : CN109087389B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 汪宙峰

申请人 : 西南石油大学

摘要 :

本发明公开了一种基于GPU编程的地下管线自动精细建模方法,包括数据预处理:包括统一数据标准和模型数据简化;模型管段生成:通过GPU编程,结合GPU的顶点着色器、几何着色器生成管线片元数据;管段连接:对弯管连接处进行圆滑过渡连接,多连通管点处进行布尔切割运算,并在节点处重构管线三角网;模型渲染:调用GPU像素着色器,根据管线材质、管线类型进行管线表面文理映射,生成帧缓存。本发明利用GPU几何着色器自动生成管线的顶点数据并构建管线三角网能够进一步提高建模效率,该方法减轻CPU端的计算负载,并有效克服了目前基于OpenGL算法的局限,能够胜任各类地下管线的实时建模以及大规模地下管网系统的创建。

权利要求 :

1.一种基于GPU编程的地下管线自动精细建模方法,其特征在于:包括以下步骤:S1、数据预处理:包括统一数据标准和模型数据简化;

统一数据标准:参照与遵循国家标准和行业标准制定四位数据库;

模型数据简化:对模型连接件进行简化,将特征点使用模型库中模型导入,根据统一数据标准进行特征点的自动选型、位置确定、角度旋转和比例缩放;

S2、模型管段生成:通过GPU编程,结合GPU的顶点着色器、几何着色器生成管线片元数据;

A1、通过CPU向GPU传输管线中心顶点数据,包括管线中心的起点坐标、终点坐标和管径;

A2、调用GPU顶点着色器,实现顶点坐标数据变换,获得变换后的管线顶点数据,通过坐标数据变换,将管线顶点坐标由局部坐标系变换至世界坐标系中;

A3、调用GPU几何着色器,批量的进行管线顶点坐标计算,实现管线顶点数据自动生成,进行管线三角网络构建,生成管线几何图形数据;

A4、对管线几何图形数据进行光栅化,生成管线片元数据;

S3、管段连接:对弯管连接处进行圆滑过渡连接,多连通管点处进行布尔切割运算,并在节点处重构管线三角网;

S4、附属设施生成:根据管线属性的特征点数据,生成管线附属设施,并从全要素组件库中批量匹配相应的附属设施样式;

S5、模型渲染:调用GPU像素着色器,根据管线材质、管线类型对管片元数据、管线附属设施进行管线表面文理映射,生成帧缓存。

说明书 :

基于GPU编程的地下管线自动精细建模方法

技术领域

[0001] 本发明涉及建模方法,尤其涉及一种基于GPU编程的地下管线自动精细建模方法。

背景技术

[0002] 地下管线负责一个城市健康高效运行的“生命线”。近年来,频发的地下管线安全事故以及国家部委陆续颁发的各项关于地下管线安全监管的政策文件,使人们对地下管线的管理愈加重视。在全面建设“智慧城市”的热潮中,传统的二维图形已经很难满足时代需求,地下管线的三维建模由于其对管线的三维特征、空间关系的直观表达,已经成为智慧城市建设的重要组成部分。
[0003] 目前针对地下管线三维建模的研究主要通过三维建模软件(如Creator,3DMax等)和基于OpenGL(Open Graphics Library,是指定义了一个跨编程语言、跨平台的编程接口规格的专业的图形程序接口)建模实现。
[0004] 通过三维建模软件构建地下管线三维模型,虽然能够构造出较精细的管线模型,但数据结构复杂、数据量庞大且不支持三维场景中的交互实时建模。因此地下管线的实时三维建模成为一个研究热点,目前大部分的研究均基于OpenGL实现,主要的思路是采用连续四边形逼近管线模型,并采用合适的方法解决弯管和多连通管线问题,但该方法在模型显示效率、海量管线建模方面还存在明显缺陷。
[0005] 1、传统建模软件生成的三维管线模型主要靠手工完成,建模效率低,数据量大,作为外部导入的模型,并不能在三维场景中进行实时的编辑等操作。
[0006] 2、单纯基于OpenGL算法进行管线自动建模存在的局限主要有以下几点:
[0007] (1)由于管线模型采用分段构造连续四边形的方法拟合生成,其拟合逼真度的提高将使模型数据量增大降低显示速度;
[0008] (2)对于多连通管线节点的处理,很多研究采取建立管件模型库的方法,建模工作量大且不利于管线的实时建模;
[0009] (3)目前的地下管线三维实时建模方法均基于CPU(Central Processing Unit,即中央处理器,是一块超大规模的集成电路,是一台计算机的运算和控制核心,它的功能主要是解释计算机指令以及处理计算机软件中的数据)完成,在构建具有海量管线模型的管网系统时表现吃力。
[0010] (4)对管网中涉及阀门、三通、管井等附属设施等表现精度与逼真度不够。

发明内容

[0011] 本发明的目的就在于为了解决上述问题而提供一种基于GPU编程的地下管线自动精细建模方法。
[0012] 本发明通过以下技术方案来实现上述目的:
[0013] 一种基于GPU编程的地下管线自动精细建模方法,包括以下步骤:
[0014] S1、数据预处理:包括统一数据标准和模型数据简化;
[0015] 统一数据标准:参照与遵循国家标准和行业标准制定四位数据库;
[0016] 模型数据简化:对模型连接件进行简化,将特征点使用模型库中模型导入,根据统一数据标准进行特征点的自动选型、位置确定、角度旋转和比例缩放;
[0017] S2、模型管段生成:通过GPU编程,结合GPU的顶点着色器、几何着色器生成管线片元数据;
[0018] S3、管段连接:对弯管连接处进行圆滑过渡连接,多连通管点处进行布尔切割运算,并在节点处重构管线三角网;
[0019] S4、附属设施生成:根据管线属性的特征点数据,生成管线附属设施,并从全要素组件库中批量匹配相应的附属设施样式;
[0020] S5、模型渲染:调用GPU像素着色器,根据管线材质、管线类型对管片元数据、管线附属设施进行管线表面文理映射,生成帧缓存。
[0021] 具体地,上述步骤S2具体包括以下步骤:
[0022] A1、通过CPU向GPU传输管线中心顶点数据,包括管线中心的起点坐标、终点坐标和管径;
[0023] A2、调用GPU顶点着色器,实现顶点坐标数据变换,获得变换后的管线顶点数据,通过坐标数据变换,将管线顶点坐标由局部坐标系变换至世界坐标系中;
[0024] A3、调用GPU几何着色器,批量的进行管线顶点坐标计算,实现管线顶点数据自动生成,进行管线三角网络构建,生成管线几何图形数据;
[0025] A4、对管线几何图形数据进行光栅化,生成管线片元数据。
[0026] 本发明的有益效果在于:
[0027] 本发明基于GPU编程的地下管线自动精细建模方法利用GPU几何着色器自动生成管线的顶点数据并构建管线三角网能够进一步提高建模效率,该方法减轻CPU端的计算负载,并有效克服了目前基于OpenGL算法的局限,能够胜任各类地下管线的实时建模以及大规模地下管网系统的创建。

附图说明

[0028] 图1是本发明所述的基于GPU编程的地下管线自动精细建模方法的流程示意图;
[0029] 图2是本发明所述的模型管段生成方法流程示意图。

具体实施方式

[0030] 下面结合附图对本发明作进一步说明:
[0031] 如图1和图2所示,本发明一种基于GPU编程的地下管线自动精细建模方法,包括以下步骤:
[0032] 1、数据预处理:包括统一数据标准和模型数据简化;
[0033] 统一数据标准:参照与遵循国家标准和行业标准制定四位数据库;
[0034] 本方法采用的是四维数据库,即在三维数据库的基础上还具有版本控制的功能,数据标准的统一可以实现各专业地下管线信息的交互性和联通性,保证地下管线数据的建库、共享、应用和动态更新,发挥信息平台的整体和集成效应。
[0035] 本方法采用的标准化体系是应用系统科学的理论和方法,在参照与遵循国家标准、行业标准及相关规范和标准的基础上,结合当前的实际情况而制定,满足地下管线信息化建设和可持续发展的要求。
[0036] 本方法按照《城市综合地下管线信息系统技术规范》(CJJ/T269-2017)中的相关内容进行管线分类和编码,并在《城市综合地下管线信息系统技术规范》(CJJ/T269-2017)的基础上,统一管线数据结构。
[0037] 按照《城市综合地下管线信息系统技术规范》(CJJ/T269-2017)规定的管线点结构表(见表1)的基础上,增加缩放、旋转、平移等要素属性(见表2)。
[0038] 表1管线点表结构
[0039]
[0040]
[0041] 表2新增管线点属性
[0042]19 缩放 数值型 5,2 选填 附属物三维缩放
20 旋转X 数值型 12,3 选填 附属设施姿态调整
21 旋转Y 数值型 12,3 选填 附属设施姿态调整
22 旋转Z 数值型 12,3 选填 附属设施姿态调整
23 平移X 数值型 12,3 选填 附属设施位置调整
24 平移Y 数值型 12,3 选填 附属设施位置调整
25 平移Z 数值型 12,3 选填 附属设施位置调整
[0043] 按照《城市综合地下管线信息系统技术规范》(CJJ/T269-2017)规定的管线线结构表(见表3)的基础上,增加管道内径、外径等要素属性(见表4)。
[0044] 表3管线线表结构
[0045]
[0046] 表4新增管线属性
[0047]
[0048]
[0049] 本方法参考国家和其他地区的相关标准,规范了地下管线三维图形符号标准,以排水管线为例简要说明地下管线三维图形符号样式标准:包括三通、四通、变径点、弯头、转折点和边坡点。
[0050] 排水管线管井模型包括:污水井、雨水井、雨污合流井等。
[0051] 排水管线附属物包括:闸门、泵、排污装置、阀门、小室等。
[0052] 模型数据简化:对模型连接件进行简化,将特征点使用模型库中模型导入,根据统一数据标准进行特征点的自动选型、位置确定、角度旋转和比例缩放;
[0053] 传统的管网三维模型建模方法,在处理管道连接时,普遍使用求相贯线的方法,然后再进行曲线展开,不但计算复杂,而且精确度难以控制,稳定性差。为达到模型精度和模型效率的平衡优化,本方法对模型连接件进行了适度简化,即特征点三通、四通、弯管、阀门、管井等使用模型库中的模型导入,根据统一数据标准步骤后标准的管线属性,进行特征点的自动选型、位置确定、角度旋转、比例缩放。
[0054] 2、模型管段生成:通过GPU编程,结合GPU的顶点着色器、几何着色器生成管线片元数据;
[0055] 通过CPU向GPU传输管线中心顶点数据,包括管线中心的起点坐标、终点坐标和管径;调用GPU顶点着色器,实现顶点坐标数据变换,获得变换后的管线顶点数据;调用GPU几何着色器,批量的进行管线顶点作品计算,实现管线顶点数据自动生成,进行管线三角网络构建,生成管线几何图形数据;对管线几何图形数据进行光栅化,生成管线片元数据。
[0056] 3、管段连接:对弯管连接处进行圆滑过渡连接,多连通管点处进行布尔切割运算,并在节点处重构管线三角网以保证节点内部的连通性;
[0057] 4、附属设施生成:根据管线属性的特征点数据,生成管线附属设施,包括:阀门、管井、45°直径弯管管件、45°变径弯管管件、90°直径弯管管件、90°变径弯管管件、斜三连通管件、正三连通管件、斜四连通管件、正四连通管件、P型弯管管件等,并从全要素组件库中批量匹配相应的附属设施样式;
[0058] 5、模型渲染:调用GPU像素着色器,根据管线材质、管线类型对管片元数据、管线附属设施进行管线表面文理映射,生成帧缓存。
[0059] 至此,完成基于GPU编程的地下管线自动精细建模
[0060] 本发明的技术方案不限于上述具体实施例的限制,凡是根据本发明的技术方案做出的技术变形,均落入本发明的保护范围之内。