首页> 中国专利> 基于压平包围球的三维场景局部区域动态压平方法及装置

基于压平包围球的三维场景局部区域动态压平方法及装置

摘要

本发明公开一种基于压平包围球的三维场景局部区域动态压平方法,首先,在用户坐标系中定义压平包围球:根据待压平区域的位置和大小,定义一个球体作为压平包围球,使包围球紧密包含待压平区域,且球体的半径尽量小;其次,根据待压平区域的形态,确定与其底部紧密贴合的平面作为压平面;确定压平操作射影中心;然后,将压平面方程参数、压平包围球球心坐标、包围球半径、压平操作射影中心坐标传入GPU可编程流水线;最后,在GPU的顶点着色器中,判断压平包围球、压平面与顶点的空间关系,对顶点进行移位压平。本发明相对于传统的修模软件压平方法,无需专业用户,无需借助专业软件,不需要实际修改模型,可用性更强。

著录项

  • 公开/公告号CN112927351A

    专利类型发明专利

  • 公开/公告日2021-06-08

    原文格式PDF

  • 申请/专利权人 南京师范大学;

    申请/专利号CN202110200213.9

  • 发明设计人 张宇航;孙瑞;祝炜;胡斌;

    申请日2021-02-23

  • 分类号G06T17/00(20060101);

  • 代理机构32204 南京苏高专利商标事务所(普通合伙);

  • 代理人柏尚春

  • 地址 210024 江苏省南京市鼓楼区宁海路122号

  • 入库时间 2023-06-19 11:19:16

说明书

技术领域

本发明属于空间信息领域,具体涉及一种基于压平包围球的三维场景局部区域动态压平方法及装置。

背景技术

三维模型是三维应用的重要数据基础,其质量高低与应用中整个场景的视觉效果密切相关,高质量模型能提高场景的视觉效果,而低质量模型的存在则有碍观感甚至影响应用效果。高质量模型一般采用人工建模或lidar建模,但由于生产成本较高,在大规模模型的三维应用中一般只应用于重点目标建模。其余次重点模型一般采用倾斜摄影方法,倾斜摄影适合大场景的批量建模,其生产成本低,生产速度快,可以实现包含几何结构和纹理的三维重建,但是受目前技术的限制,对树木、电杆等细小零散目标的建模效果差,会造成局部模型悬空等问题。

可以采用专业建模软件移除悬空部分,以提高模型质量。移除操作本质上是对原有模型的二次编辑,需要重新采集数据(如纹理图像)才能实现对移除部分的修改。目前一些建模软件如MeshMixer,wish3D等提供了模型的局部压平功能,无需重新采集数据,直接将悬空模型(如电杆)压平到地面,间接实现移除低质量模型的要求。但该方法存在以下问题:(1)建模软件压平本质上是对三维模型的物理破坏,导致虚拟场景和实际场景新的不一致,由于其操作不可逆,在部分应用中是不可接受的行。(2)部分三维应用中要求能实现对三维场景局部区域的动态移除和恢复,使用软件编辑模型无法实现该要求。

发明内容

发明目的:本发明提出一种基于压平包围球的三维场景局部区域动态压平方法及装置,根据用户定义的包围球动态压平和可逆恢复局部区域,提高三维场景的可视化质量。

技术方案:本发明提出一种基于压平包围球的三维场景局部区域动态压平方法,具体包括以下步骤:

(1)在用户坐标系中定义压平包围球:根据待压平区域的位置和大小,定义一个球体作为压平包围球,使包围球紧密包含待压平区域,且球体的半径尽量小;记录压平包围球球心坐标O(x

(2)确定压平面位置和方程:在用户坐标系中,根据待压平区域的形态,确定与其底部紧密贴合的平面作为压平面;

(3)确定压平操作射影中心;

(4)将压平面方程参数、压平包围球球心坐标、包围球半径、压平操作射影中心坐标传入GPU可编程流水线;

(5)在GPU的顶点着色器中,判断压平包围球、压平面与顶点的空间关系,对顶点进行移位压平。

进一步地,所述步骤(3)实现过程如下:

在用户坐标系中,从压平包围球球心向压平面做垂线,延长并与球面相交于点B,作为压平操作射影中心;由压平面法向量

进一步地,所述步骤(5)包括以下步骤:

(51)计算顶点V(x

S1=(x

(52)若S1<=R

S2=f(x

(54)若S2>=0,表示该顶点需要进行压平,根据V与B连线的直线方程VB:

和压平面P的平面方程f(x,y,z)=0,两式联立求得交点坐标,设为V的新值;

(54)以重新设值后的V参加正常的渲染流程。

基于相同的发明构思,本发明还提供一种基于压平包围球的三维场景局部区域动态压平装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被加载至处理器时实现所述的基于压平包围球的三维场景局部区域动态压平方法。

有益效果:与现有技术相比,本发明的有益效果:本发明能根据用户定义的包围球动态压平和可逆恢复局部区域,提高三维场景的可视化质量;采用的包围球只需要少量参数(球心和半径)即可定义,交互式调整包围球和压平面操作简单;且在GPU着色器中,判断需要压平的顶点算法简单,计算效率高;相对于传统的修模软件压平方法,本发明无需专业用户,无需借助专业软件,且不需要实际修改模型,可用性更强。

附图说明

图1为本发明的流程图;

图2为定义包围球图;

图3为树木被压平后可视化效果图。

具体实施方式

下面结合附图对本发明作进一步详细说明。

本发明提供一种基于压平包围球的三维场景局部区域动态压平方法,如图1所示,具体包括以下步骤:

步骤1:在用户坐标系中定义压平包围球:根据待压平区域的位置和大小,定义一个球体作为压平包围球,使包围球紧密包含待压平区域,且球体的半径尽量小。

如图2所示,用屏幕取点方式选取一点作为球心绘制一个包围球,对包围球进行移动与缩放,使得包围球的大小与位置刚好包含待压平目标底部的压平区,如图中树木完全处于包围球中,然后借助于渲染相机视点下的视口矩阵、投影矩阵和视图矩阵,将此时球心的屏幕坐标变换到用户坐标系,记录此时压平包围球球心坐标O(x

步骤2:确定压平面位置和方程:在用户坐标系中,根据待压平区域的形态,确定与其底部紧密贴合的平面作为压平面。

在用户坐标系中,根据待压平区域的形态,确定与其底部紧密贴合的平面作为压平面。在待压平区域底部地面选取三个不共线的点A

根据点A

利用点法式,由法向量

f(x,y,z)=ax+by+cz+d=0。

步骤3:确定压平操作射影中心。

从压平包围球球心向压平面做垂线,延长并与球面相交于点B,作为压平操作射影中心;由压平面法向量

步骤4:将压平面方程参数、压平包围球球心坐标、包围球半径、压平操作射影中心坐标传入GPU可编程流水线。

步骤5:在GPU的顶点着色器中,判断压平包围球、压平面与顶点的空间关系,对处于包围球内部且位于压平面法线一侧的顶点进行移位压平。

(5.1)计算顶点V(x

S1=(x

(5.2)若S1<=R

S2=f(x

(5.3)若S2>=0,表示该顶点需要进行压平,根据V和B连线的直线方程:

和压平面P的平面方程f(x,y,z)=0,两式联立求得交点坐标,设为V的新值;

(5.4)以重新设值后的V参加正常的渲染流程。

基于以上步骤,整个场景渲染完成的效果如图3所示。

本发明还提供一种基于压平包围球的三维场景局部区域动态压平装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被加载至处理器时实现所述的基于压平包围球的三维场景局部区域动态压平方法。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号