CN104346769B - 三维建模对象的压缩 - Google Patents

三维建模对象的压缩 Download PDF

Info

Publication number
CN104346769B
CN104346769B CN201410502444.5A CN201410502444A CN104346769B CN 104346769 B CN104346769 B CN 104346769B CN 201410502444 A CN201410502444 A CN 201410502444A CN 104346769 B CN104346769 B CN 104346769B
Authority
CN
China
Prior art keywords
vertex
grid
modeling object
dimensional
computer implemented
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410502444.5A
Other languages
English (en)
Other versions
CN104346769A (zh
Inventor
J·蒂弗罗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dassault Systemes of America Corp
Original Assignee
Dassault Systemes of America Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dassault Systemes of America Corp filed Critical Dassault Systemes of America Corp
Publication of CN104346769A publication Critical patent/CN104346769A/zh
Application granted granted Critical
Publication of CN104346769B publication Critical patent/CN104346769B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • G06T17/205Re-meshing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)
  • Architecture (AREA)

Abstract

提出计算机实现的方法,用于压缩三维建模对象。该方法包括:‑提供(S10)三维建模对象的网格;‑在二维平面中对网格进行参数化(u,v),对网格的参数化产生具有二维坐标的顶点的集合;‑提供二维平面上的栅格;并且‑通过将一个顶点分配给栅格的一个交叉点,来修改每个顶点的二维坐标。这样的压缩方法是无损的,完全可逆的,适合于有效地减小CAD文件的存储大小。

Description

三维建模对象的压缩
技术领域
本发明涉及计算机程序和系统领域,并且更具体而言,涉及用于压缩/解压缩三维建模的方法、系统和程序。
背景技术
市场上提供了许多系统和程序,用于对象的设计、工程和制造。CAD是计算机辅助设计的首字母缩略词,例如,它涉及用于设计对象的软件解决方案。CAE是计算机辅助工程的首字母缩略词,例如,它涉及用于对未来产品的物理行为进行仿真的软件解决方案。CAM是计算机辅助制造的首字母缩略词,例如,它涉及用于定义制造过程和操作的软件解决方案。在这样的计算机辅助设计系统中,图形用户界面在技术的效率方面起着重要的作用。这些技术可以被嵌入到产品生命周期管理(PLM)系统中。PLM是指经营战略,所述经营战略有助于企业共享产品数据、应用通用过程并且在扩展企业的概念中充分利用(leverage)公司知识,用于从概念到其生命尽头的产品开发。
由Dassault Systemes(隶属于商标CATIA、ENOVIA和DELMIA)提供的PLM解决方案提供了组织产品工程知识的工程中心、管理制造工程知识的制造中心,以及使得企业能够集成和连接到工程和制造中心二者的企业中心。总之,系统交付链接产品、过程、资源的开放的对象模型,使得能够进行动态的、基于知识的产品创造以及驱动优化的产品定义、制造准备、生产和服务的决策支持。
在计算机图形学领域中,3D物体的表面经常由三角形的集合(或者更一般地由多边形的集合)在3D空间中表示。这些多边形连接拥有不同属性的顶点。在这些不同的属性中,每个顶点至少具有空间(x,y和z)中的明确的位置。这样的表示被称为多边形网格(mesh)。如果该表示仅包含三角形,则其也被称为三角形网格。多边形网格可以被分为两种类型的数据:(i)几何数据,包括用于每个顶点的位置的整个集合和其他属性,以及(ii)连通性数据,包括由每个多边形接合的顶点的索引。
3D物体和3D物体的表面几何形状可以以简单的实现(即,没有压缩)被存储在持久的支持物上。这样的直接的存储(即,没有压缩)特别用于CATIA和其他CAD软件中。有了这样的存储,该存储是无损的。实际上,定义模型的数据在存储之前未被修改,并且可能因此没有任何数据损失。该存储还是稳定的。实际上,当重新打开模型时,定义模型的数据未被改变,因为数据未被压缩。然而,这样的方法不能优化CAD模型的存储大小。
为了这个目的,已经开发出多个压缩方案。重新网格化(remeshing)是可以用于存储3D物体同时需要存储设备上相当少的存储空间的技术中的一个。表面几何形状经常利用不规则的三角形网格来进行建模。重新网格化的过程是指使用具有(半)规则连通性的网格来逼近这样的几何形状。
Xiangfeng Gu、Steven Gortler和Hugues Hoppe(Geometry images.InProceedings of the 29th annual conference on Computer graphics andinteractive techniques,第355-361页,ACM出版社,2002)介绍了被称为几何图像的另一种表示以及将3D模型多边形网格转换成被称为几何图像的图像的过程。几何图像是完全规则的结构,其中3D物体的表面由顶点的栅格(grid)表示。每个顶点连接到四个相邻顶点,除了在栅格的边界。因此,几何图像可以被设想为顶点的2D阵列,类似于是彩色像素的二维阵列的光栅图像。进行进一步的比较,几何图像可以被视为二维图像,其中每个像素在其颜色通道(红、绿、蓝)中保持三维物体表面上的采样点的位置x、y和z。为了使几何图像序列化,人们仅仅需要存储每个顶点的属性(几何数据),因为连通性是隐含的(在几何图像中顶点被连接到它的四个相邻顶点)。
几何图像表示有时在一些在线虚拟世界中被称为裁切的棱柱(sculpted prims)。由于易于利用它进行操作(建模)以及通过网络将其压缩并且传送的效率,几何图像尤其适合于这种类型的应用。这样的表示也由一些建模器所识别。
用于将多边形网格转换成几何图像的过程被称为重新网格化。它包括找到用于由多边形网格表示的物体表面的方便的2D参数化,并且然后对在2D参数化的空间中规则分隔的该表面上的新点进行采样。根据建造过程,这些新的点形成规则的栅格,它是几何图像表示。重新网格化过程的结果是:
-不保证新的采样点与初始多边形网格的那些点相匹配,并且它几乎从不发生;
-初始网格的连通性数据完全丢失,并且通过观察所得到的几何图像没有方法知道初始顶点是如何连接的;
-取决于2D参数化和两个采样点之间的距离,在初始多边形网格中的一些细节可能在所得到的几何图像中消失。另外,由于该建造过程,通过接合规则采样点所做出的表面可能与最初的表面略有差异。如果采样点的数量增加,则此影响可能被削弱,但这也增大了几何图像的大小。
另一个限制是模型在过程的开始可能要求附加的计算来找出方便的2D参数化,所述模型不是无懈可击的,具有高拓扑类(genus)或不是簇(manifold)。这可能导致在几何图像中与在初始多边形网格中相比需要更多的顶点,用于正确地描述相同的表面。在更坏的情况下,这甚至可能导致无法找到解决方案。
归纳起来,重新网格化的过程从某种意义而言是不可逆的,它不可能从几何图像中恢复初始的多边形网格。至多,从几何图像获得的表示与初始多边形网格非常相似,但是这两种表示未必以Hausdorff距离的形式相匹配。另外,几何图像表示接近初始网格但总是有一些错误的表面:小细节的丢失、失真......此外,不是无懈可击的的初始网格可能导致几何图像与多边形网格相比需要更多的数据用于描述物体。
在此上下文中,仍然需要改进的压缩方法,该压缩方法是无损的并且完全可逆的,并且其适于高效地减少CAD文件的存储大小。
发明内容
根据一个方面,本发明因此提供了用于压缩三维建模对象的计算机实现的方法。该方法包括:
-提供三维建模对象的网格;
-在二维平面中对网格进行参数化(u,v),网格的参数化产生具有二维坐标的顶点的集合;
-在二维平面上提供栅格;以及
-通过将一个顶点分配到栅格的一个交叉点来修改每个顶点的二维坐标。
该方法可以包括下面中的一个或多个:
-在提供三维建模对象的网格之后:存储三维建模对象的网格的连通性数据;
-将一个顶点分配给栅格的一个交叉点是由将每个顶点相互推离的排斥技术执行的;
-排斥技术包括:将两个顶点之间的距离与栅格单元对角线的长度相比较;并且如果两者之间的距离小于长度(L),则推离两个顶点;
-执行排斥技术的几次迭代,直到栅格的四个交叉点之间至多只有一个顶点;
-执行排斥技术之后,执行消除顶点之间的空交叉点的张驰技术;
-栅格的大小是可扩展的;
-具有修改的二维坐标的顶点的集合形成了光栅图像,其中集合中的每个顶点是光栅图像的像素,并且集合中的每个顶点的坐标(x,y,z)被存储在光栅图像的颜色通道红/蓝/绿中;
-集合中的顶点的补充属性被存储在附加的颜色通道中;
-光栅图像被再构造以用于减小光栅图像的大小;
-在具有修改的二维坐标的顶点的集合上应用下面的压缩方案中的一个:-离散余弦变换;-小波变换;
-压缩三维建模对象的网格的连通性数据。
本发明进一步提出计算机实现的方法,用于解压缩根据上述方法压缩的三维建模。该方法包括:
-提供具有修改的二维坐标的顶点的集合;
-从提供的顶点的集合中提取顶点;
-将顶点与连通性数据连接。
本发明进一步提出计算机辅助设计系统,包括:
-数据库,存储三维建模对象的网格;
-单元,用于根据上述压缩方法来压缩三维建模对象和/或用于根据上述解压缩方法来解压缩三维建模。
本发明进一步提出计算机程序,包括用于由计算机执行的指令,所述指令包括用于执行上述压缩方法和/或解压缩方法的单元。
本发明进一步提出计算机可读存储介质,其具有在其上记录的上述计算机程序。
附图说明
现在将通过非限制的示例的方式并且参考附图来描述本发明的实施例,其中:
-图1示出了方法的示例的流程图;
-图2示出了现有技术中使用的采样的示例;
-图3示出了捕捉具有一个交叉点的顶点的示例;
-图4示出了根据本发明被重新网格化的多边形网格的示例;
-图5示出了在二维平面中进行参数化(u,v)的图4的多边形网格的顶点的示例;
-图6示出了在图5的(u,v)平面内提供的规则栅格的示例;
-图7示出了捕捉到图6的规则栅格的交叉点的图5的顶点的示例;
-图8至图10示出了将每个顶点相互推离的排斥技术的示例;
-图11和图12示出了消除顶点之间空单元的张驰技术的示例;
-图13示出了CAD系统的图形用户界面的示例;
-图14示出了CAD系统的示例。
具体实施方式
参考图1的流程图,提出用于压缩三维(3D)建模对象的计算机实现的方法。该方法包括提供三维建模对象的网格。然后,在二维(2D)平面中对网格进行参数化(u,v)。这由对具有2D坐标的顶点集合的网格进行参数化产生。接下来,在二维平面上提供栅格。然后,修改每个顶点的2D坐标。通过向栅格的一个交叉点分配一个顶点来执行对2D坐标的修改。
这样的方法稍微地修改了在几何图像的定义,所述几何图像在Xianfeng Gu、Steven J.Gortler和Hugues Hoppe(Geometry images.In Proceedings of the29thannual conference on Computer graphics and interactive techniques,第355-361页,ACM出版社,2002)中进行了公开,并且提供了多边形网格到2D图像表示的改进的转换。即,本方法改善了3D建模对象的压缩。
出于解释的原因,应当提醒本领域中公知的几何图像是从3D建模对象的任意表面变换到静态网格而作为2D图像中获得的,这是对3D建模对象的初始几何形状的完全规则的重新网格化,并且其支持反向变换。几何图像提供了将几何形状捕捉为量化点的简单2D阵列的完全规则的结构。使用相同的隐含表面参数化,类似法线和颜色的表面信号被存储在相似的2D阵列中——不存在纹理坐标。
本方法的结果是位于3D对象的表面上的顶点的二维阵列,但是,不是以规则的时间间隔对对象的表面上的新点进行采样以得到点的栅格,初始顶点被保持远离三角形网格。这有利地提供了由顶点的二维阵列保持的任何顶点精确地匹配来自初始多边形网格的顶点。相反,来自初始多边形网格的任何顶点精确地匹配几何图像的顶点。因此,它引起顶点的二维阵列的任何顶点都具有多边形网格中的一个精确对应的顶点,并且因此将多边形网格转换成几何图像的过程是完全可逆的。这涉及利用本方法进行压缩的3D建模对象可以在不损失小细节的情况下来进行解压缩,因为转换是无损的。事实上,初始多边形网格的任何细节可以在所得到的顶点的二维阵列中消失,因为本压缩方法不依赖于对参数化的网格的采样。通过这种方式,不需要增加采样点的数量,而增加采样点的数量增大了几何图像的大小。因此,本发明有利地允许了改善3D建模对象的网格的压缩率,所述3D建模对象包含使用Xianfeng Gu、Steven J.Gortler和Hugues Hoppe公开的几何图像而将会丢失的细节。另外,可以转换任何3D建模对象,因为本方法不需要3D建模对象的网格的闭合和拓扑的任何条件。本发明的进一步的优点将出现在说明书中。
该方法是计算机实现的。这意味着该方法的步骤(或基本上所有的步骤)由至少一个计算机执行。在示例中,可以通过用户-计算机交互来执行对该方法的至少一些步骤的触发。所需的用户-计算机交互的水平可以取决于预见或保持用于实现用户愿望的需求的平衡的自动化水平。在示例中,该水平可以是用户定义的和/或预先定义的。
例如,提供3D建模对象的网格的步骤可以基于用户动作来执行。例如,用户可以将3D建模对象选择到专门的菜单或特征树中,例如,图中的数据2500。
该方法的计算机实施方式的典型示例是利用系统(例如,CAD系统)来执行该方法,所述系统包括存储3D建模对象或至少3D建模对象的网格的存储器。存储数据库的存储器仅仅是适于这样的存储的任何硬件。所述系统可以进一步包括图形用户界面(GUI)。GUI与存储器和处理器相耦合。GUI可以适应于显示所提供的3D建模对象的网格。所述系统进一步包括用于根据上述方法压缩三维建模对象的单元。所述系统可以进一步包括用于对根据上述方法压缩的三维建模进行解压缩的单元。这样的系统允许对具有少量存储器资源的3D建模对象进行建模。实际上,随着系统根据上面提出的高效压缩方法来对3D建模对象进行压缩,与其他系统相比,更多的对象可以以压缩的形式存储在系统的数据库中。另外,这样的系统改善了设计的整个过程,因为当对所述压缩的3D建模对象进行解压缩时,详细的3D建模对象可以在不丢失信息的情况下来进行压缩。
图形用户界面可以允许用户命令对对象进行建模的数据的压缩或对对象进行建模的数据的解压缩。对象可以是一部分,因而由CAD文件进行建模。因此,系统可以以压缩的形式存储CAD文件,并且当设计者需要在该部分上工作时,例如通过图形用户界面的手段来将其解压缩。
就“数据库”而言,它是指组织用于搜索和检索的数据(即,信息)的任何集合。当存储在存储器上时,数据库允许由计算机进行快速搜索和检索。数据库确实是结构化的,以有助于结合各种数据处理操作来对数据进行存储、检索、修改和删除。数据库可以由文件或可以被分解成记录的文件的集合组成,每个记录由一个或多个字段组成。字段是数据存储的基本单元。用户主要可以通过查询来检索数据。使用关键字和排序命令,用户可以迅速搜索、重新布置、分组,并且选择许多记录中的字段,以根据正在使用的数据库管理系统的规则来检索或创建数据的特定的聚集。
在该方法的情况下,数据库可以存储3D建模对象或至少3D建模对象网格的数据表示。
该方法一般操作3D建模对象的网格。建模对象是由存储在数据库中的数据所定义的任何对象。广义而言,表达式“建模对象”指数据本身。根据系统的类型,建模对象可以由不同种类的数据来进行定义。
系统实际上可以是CAD系统、CAE系统、CAM系统、PDM和/或PLM系统的任何组合。在这些不同的系统中,建模对象由相对应的数据定义。人们可以因此谈及CAD对象、PLM对象、CAE对象、CAM对象、CAD数据、PLM数据、CAM数据、CAE数据。然而,这些系统不排斥其他中的一个,因为建模对象可以由与这些系统的任何组合相对应的数据来定义。系统因此可以很好地是CAD和PLM系统,这将在下面提供的这样的系统的定义中显而易见。
就CAD系统而言,它是指至少适合于基于建模对象的图形表示来设计建模对象的任何系统,例如,CATIA。在这种情况下,定义建模对象的数据包括允许建模对象的表示的数据。CAD系统例如可以使用边或线,在某些情况下利用面或曲面,来提供CAD建模对象的表示。可以以各种方式来表示线、边或曲面,例如,非均匀有理数B样条(NURBS)。具体地,CAD文件包含可以根据其来生成几何形状的规范,所述规范继而允许生成表示。建模对象的规范可以存储在单个CAD文件或多个中。表示CAD系统中建模对象的文件的典型大小在每部件一兆字节的范围内。而建模对象通常可以是成千个部件的组件。
在CAD的上下文中,建模对象通常可以是3D建模对象,例如,表示产品(例如,部件或部件的组件),或者可能是产品的组件。就产品而言,它是指进行物理制造的物品。就“3D建模对象”而言,它是指由允许其3D表示的数据来进行建模的任何对象。3D表示允许从所有角度对部件进行观看。例如,当3D建模对象进行3D表示时,可以处理所述3D建模对象并且使其绕它的任意轴转动,或者围绕显示了所述表示的显示屏中的任何轴转动。这尤其不包括2D图标,2D图标不是3D建模的。3D表示的显示有助于设计(即,加快了设计者统计地完成其任务的速度)。这加快了产业的制造过程,因为产品的设计是制造过程的一部分。
CAD系统可以是基于历史的。在这样的情况下,建模对象进一步由包括几何特征的历史的数据所定义。建模对象实际上可以由自然人(即,设计者/用户)使用标准的建模特征(例如,拉伸、外卷、裁剪和/或弯曲等)和/或标准的曲面特征(例如,扫描、混和、放样、填充、变形、平滑和/或等)来进行设计。支持这样的建模功能的许多CAD系统是基于历史的系统。这意味着设计特征的创建历史通常通过非循环的数据流所保存,所述非循环的数据流通过输入和输出链路将所述几何特征链接起来。基于历史的建模范例从80年代初就是众所周知的。建模对象由两个持久的数据表示描述:历史和B-rep(即边界表示)。B-rep是在历史中定义的计算的结果。当表示建模对象时,在计算机的屏幕上显示的部分的形状是(棋盘形铺嵌的)B-rep。该部分的历史是设计意图。基本上,历史收集关于建模对象所经历的操作的信息。B-rep可以连同历史一起被保存,以便其更易于显示复杂的部件。历史可以连同B-rep一起被保存,以便根据设计意图允许部件的设计变化。实践中,部件的(B-rep)是描述几何模型到网格生成器的单元,所述网格生成器输出所显示的网格。
就CAE(计算机辅助工程)解决方案而言,它是指适合于建模对象的物理行为的分析的任何解决方案、软件或硬件。众所周知的和广泛使用的CAE技术是有限元法(FEM),其通常涉及将建模对象划分成可以通过方程式来对其物理行为进行计算和仿真的元件。这样的CAE解决方案由隶属于商标的Dassault Systèmes提供。另一个成长的CAE技术涉及来自不具有CAD几何数据的不同的物理字段的多个部件组成的复杂系统的建模和分析。CAE解决方案允许对产品进行仿真,并且因此最优化、改善和验证,从而进行制造。这样的CAE解决方案由隶属于商标的Dassault Systèmes提供。
就CAM(计算机辅助制造)解决方案而言,它是指适合于管理产品的制造数据的任何解决方案、软件或硬件。制造数据通常包括与要制造的产品、制造过程及所需资源有关的数据。CAM解决方案用于计划和优化产品的整个制造过程。例如,它可以为CAM用户提供关于可行性、制造过程的持续时间或资源(例如,可以用于制造过程的特定步骤中的具体的机器人)数量的信息;并且因此允许关于管理或所需投资的决策。CAM是CAD过程和潜在的CAE过程的后续过程。这样的CAM解决方案由隶属于商标的Dassault Systèmes提供。
就PDM(产品数据管理)解决方案而言,它是指适合于管理与特定的产品相关的所有类型的数据的任何解决方案、软件或硬件。PDM解决方案可以由产品的整个生命周期中涉及的所有动作者使用:主要是工程师,还包括项目经理、财务人员、销售人员和购买者。PDM解决方案通常基于面向产品的数据库。它允许行动者共享关于他们的产品的一致的数据,并且因此防止动作者使用不同的数据。这样的PDM解决方案由隶属于商标的Dassault Systèmes提供。
图13示出了系统的GUI的示例,其中该系统是CAD系统。
GUI 2100可以是典型的类似CAD的界面,其具有标准的菜单栏2110、2120以及底部和侧栏2140、2150。这样的菜单栏和工具栏包含用户可选择的图标的集合,每个图标与一个或多个操作或功能相关联,正如本领域已知的。这些图标中的一些与软件工具相关联,适用于在GUI 2100中显示的3D建模对象2000上编辑和/或工作。软件工具可以被分组为工作台。每个工作台包括软件工具的子集。特别地,工作台中的一个是编辑工作台,其适合于编辑建模产品2000的几何特征。在操作中,设计者例如可以预先选择对象2000的一部分,并且然后通过选择适当的图标来启动操作(例如,改变尺寸、颜色等),或编辑几何约束。例如,典型的CAD操作是对显示在屏幕上的3D建模对象的冲切或折叠进行建模。
GUI例如可以显示与所显示的产品2000相关的数据2500。在图2的示例中,数据2500被显示为“特征树”并且其3D表示2000属于包括制动钳和盘的制动组件。GUI可以进一步示出各种类型的图形工具2130、2070、2080,例如用于有助于对象的3D定位,用于触发所编辑的产品的操作的仿真,或者表示所显示的产品2000的各种属性。光标2060可以由触觉设备控制,以允许用户与图形工具进行交互。
图14示出了计算机系统,例如,CAD系统。
客户端计算机包括连接到内部通信总线1000的中央处理单元(CPU)1010、同样连接到该总线的随机存取存储器(RAM)1070。客户端计算机进一步被提供有图形处理单元(GPU)1110,所述图形处理单元1110与连接到总线的视频随机存取存储器1100相关联。视频RAM 1100在本领域中还被公知为帧缓冲器。大容量存储设备控制器1020管理对大容量存储设备(例如,硬盘驱动器1030)的访问。适合于有形地体现计算机程序指令和数据的大容量存储设备包括所有形式的非易失性存储器,例如包括半导体存储器件,例如,EPROM、EEPROM和闪存存储设备;磁盘,例如,内部硬盘和可移动盘;磁光盘;以及CD-ROM盘1040。前述中的任何设备都可以由专门设计的ASIC(专用集成电路)来进行补充或者合并到其中。网络适配器1050管理对网络1060的访问。客户端计算机还可以包括触觉设备1090,例如,光标控制设备、键盘等。光标控制设备用于客户端计算机中,以允许用户在显示器1080上任何希望的位置处选择性地定位光标,正如参考图13所述。另外,光标控制设备允许用户选择各种命令,并且输入控制信号。光标控制设备包括许多用于向系统输入控制信号的信号生成设备。通常,光标控制设备可以是鼠标,鼠标的按钮用于生成信号。作为另一个示例,显示器1080可以是敏感的触摸显示器,并且可以基于在触摸敏感的显示器上的用户动作(例如,触摸)来执行光标控制。
计算机程序可以包括通过计算机的指令,所述指令包括用于使上述系统执行上述方法的单元。本发明可以例如实现在数字电子电路中,或者计算机硬件、固件、软件或其组合中。本发明的装置可以实现在计算机程序产品中,所述计算机程序产品有形地体现在用于由可编程处理器执行的机器可读存储设备中;并且本发明的方法步骤可以由可编程处理器执行,所述可编程处理器通过对输入数据进行操作并且生成输出,来执行程序的指令以实现本发明的功能。
本发明可以有利地实现在一个或多个计算机程序中,所述一个或多个计算机程序在包括至少一个可编程处理器的可编程系统上执行,所述至少一个可编程处理器被耦合以从数据存储系统、至少一个输入设备以及至少一个输出设备接收数据和指令,并且向数据存储系统、至少一个输入设备以及至少一个输出设备发送数据和指令。该应用程序可以以高级过程或面向对象的编程语言或者如果需要则以汇编或机器语言来实现;并且在任何情况下,语言可以是编译的或解释的语言。
返回来参考图1,现在论述本发明的方法的示例。
在步骤S10,其提供3D建模对象的网格。这可以基于用户动作(例如,用户选择可能存储在存储器上的3D建模对象)来执行。这还可以由执行该方法的计算机系统自动完成。提供对计算机系统而言可用的3D建模对象的网格的单元,即,该系统可以访问与网格相关的数据。通常,一旦对系统而言可用,计算机系统就可以显示3D建模对象的网格,例如由图4所呈现的,图4示出了对雕像进行建模的3D建模对象的网格。
然后,在步骤S20,存储网格的连通性数据。例如,连通性数据可以存储在存储3D网格的存储器上。连通性数据包括由网格的每个多边形接合的顶点的索引。连通性数据因此针对网格的每个顶点来识别连接到网格的所述每个顶点的相邻顶点(或多个顶点)。保持多边形网格的连通性数据有利地有助于对接近于在物体的表面的顶点的识别,因为顶点现在在二维阵列中不必靠近,正如下面所解释的。
将理解的是:步骤S20可以是可选的,因为在步骤S10提供的多边形网格可能已经被划分为几何数据和连通性数据。因此,在这样的情况下,存储器存储几何数据和连通性数据,并且因此连通性数据对于进一步的步骤而言可用。
接下来,在步骤S30,所提供的3D建模对象的网格在二维平面中被参数化(u,v)。在二维平面中对网格进行参数化是指确定具有2D空间中3D建模对象的规范所必需的参数。在实践中,参数化包括对2D平面中的网格的每个顶点的有效坐标(u,v)的完整集合的识别。正如本领域公知地来执行参数化,例如,可以使用ABF++参数化算法。例如,可以这样做,使得整个网格可以在二维平面中较少失真地展开,或者使得被切成少量图表的网格可以在二维平面中较少失真地展开。
图5示出了已在2D平面中被参数化的图4的网格。网格的参数化产生具有2D平面中的二维坐标(u,v)的顶点的集合。令人感兴趣的是,3D建模对象的初始网格的每个顶点由2D平面中的一个顶点表示。
返回参考图1,在步骤S40,在2D平面上提供栅格。在实践中,例如通过计算机系统自动提供栅格。在2D平面上提供栅格是指在2D平面上定义彼此交叉的线的集合。所述线相交,从而在2D平面上提供了交叉点的集合。在实践中,所述线是均匀间隔的水平和垂直线,使得在2D平面上规则地放置交叉点。这有利地允许改善二维阵列的结构,正如将在下面的步骤中所描述的。将理解的是,可以使用线的任何配置。
栅格的交叉点的数量至少等于参数化的网格的顶点的数量。在实践中,交叉点的数量比网格的顶点的数量稍微多一些。
令人感兴趣的是,栅格的大小可以是可扩展的。扩展栅格是指彼此交叉的线的数量可以增加,从而增加栅格的交叉点的数量。在实践中,通过在网格的边缘添加新的线来执行对栅格的扩展。另一方面,栅格的顶点的密度不增加。相反,栅格的大小可以被缩短,也就是说,可以移除栅格的一条或多条线。
在实践中,在3D建模对象的网格的参数化完成之前可以执行步骤S40。通常,在2D平面上添加栅格,然后执行参数化。然后,在网格的参数化发生之后,可以响应于参数化的结果来动态地改变(例如,扩展)栅格的大小:实际上,它通常由所得到的顶点集的非均匀分布的网格的参数化生成。例如,线可以添加在接近2D平面的区域的栅格边上,其中参数化的网格的顶点的密度是最重要的。这可以有利地改善接下来进一步的S50的效率。
在2D平面上的每个交叉点还具有2D平面中的坐标(u,v)。可以通过使用与网格的参数化步骤中所使用的参考标记相比相同的参考标记来定义交叉点的坐标。
图6示出了在其上添加栅格的图5的参数化的2D平面。在此示例中,选择均匀间隔的水平和垂直线的数量,使得交叉点的数量比参数化的网格的顶点的数量大。
接下来,在步骤S50,修改每个顶点的二维坐标(u,v)。通过向栅格的一个交叉点分配一个顶点来完成该修改。这意味着只有一个顶点可以被放置在一个交叉点上。因而,两个顶点不可能被分配给一个交叉点。向一个交义点分配一个顶点可以被称为捕捉:一个交叉点担当对一个顶点进行捕捉的作用。
分配是指一个顶点被附连到一个交叉点,并且这通过使交叉点的2D平面中的坐标取代顶点的2D平面中的坐标来执行。
应当理解的是,参数化的网格的顶点在执行步骤S50之前可以具有与交叉点相同的坐标。在这种情况下,顶点的坐标保持不变。
在步骤S50结束时,获得2D平面中的栅格,其中初始网格的任何顶点都被分配给一个不同的交叉点。栅格因此等同于顶点的2D阵列。
现在参考图3,它示出了捕捉的示例。参数化的网格(此处具有三角形30的形状)的三个顶点中的每一个被分配给一个交叉点32、34、36。对每一个顶点的坐标的修改都可以被设想为由箭头表示的所述顶点的位移。
令人感兴趣的是,即使参数化的网格很小(例如,表示初始3D建模对象的小细节的三角形38),也将以用于三角形30的任何类似的方式来执行对三角形38的坐标的修改。因此,初始多边形网格的任何细节可能都没有在所得到的顶点的二维阵列中消失,因为本压缩方法不依赖于对现有技术的参数化的网格的采样。这样的采样方法示于图2中:三角形20被采样几次(由黑点表示),而小三角形22未被采样,因为采样间隔过大。因此,小细节丢失。
另外,本发明降低了将被存储的数据的量,因为只有其上被分配了顶点的交叉点的坐标才被保持在存储器中。相反,基于采样的方法需要存储更多的点。
图7示出了在每个顶点都被分配给栅格的一个不同的交叉点之后对每个顶点的2D坐标(u,v)的修改结果。以现在形成二维阵列的方式来对参数化的网格的顶点进行重新排序。
参数化的网格的每个顶点都具有参数化的空间中的坐标(u,v),而栅格的交叉点也是如此。在所述参数化的空间中,一些顶点可以被集中在具体的区域(在栅格的4个交叉点之间超过1个顶点)中,使得栅格的其他区域具有更少的顶点。特别是,当栅格的每个单元存在多于一个顶点时,单元是包含在栅格的4个交叉点之间的区域,集中可能是有问题的。相反,2D平面的一些部分可以具有更小的顶点密度(在栅格的4个交叉点之间少于1个顶点)。应当注意,栅格交叉点的数量已经被选择为接近(并且稍大于)顶点的数量。
图8示出了栅格,其中栅格的每个单元的顶点(或多个顶点)的数量不同。
为了能够容易地向栅格的一个交叉点分配一个顶点,可能需要对顶点(u,v)坐标的修改,使得在四个交叉点之间存在不超过一个顶点,也就是说,栅格的每个单元不超过一个顶点。如果遵守这个条件,则可能向定义栅格的单元的四个交叉点中的一个分配每个顶点。
在顶点位于两个单元之间的边缘上的事件中(即顶点被放置在连接两个单元的两个公共的交叉点的公共边上),可以根据预定的规则来执行向两个单元的一个或另一个分配顶点的决定。例如,该规则可以确定位于边缘上的顶点被分配给具有更少顶点的单元。
在顶点已经位于栅格的交叉点的事件中,顶点的2D坐标与交叉点的坐标相同,并且在此情况下顶点未被移动。另一方面,当执行步骤S50时,位于交叉点上的顶点的2D坐标未被修改。
图9示出了图8所示的顶点的坐标(u,v),所述坐标已被修改,使得栅格的四个交叉点之间只有一个顶点。因此,栅格的每个单元的每个顶点都可以被分配到左上交叉点(在围绕它的4个之间)。因此,保证每个顶点都被分配给不同的交叉点,如图10所示。
现在参考图1,现在论述到栅格的一个交叉点的一个顶点的属性的示例,结果每个顶点的2D坐标都被修改。在这个示例中,使用排斥技术将一个顶点分配给栅格的一个交叉点,该排斥技术根据标准将每个顶点互相推离。排斥技术依赖于粒子排斥,其模拟参数化空间中的顶点之间的排斥力。该标准可能涉及所述力。
在步骤S500,两个顶点(即Vx和Vy)之间的距离(DVxVy),与栅格单元对角线的长度(L)进行比较。应当理解,形成栅格的线是均匀间隔的水平和垂直线,使得交叉点被规则地放置在2D平面上,并且栅格的所有单元都具有相同的单元对角线长度(L)。
术语距离是指顶点相隔多远的数值描述。距离通常可以是Euclidien距离。可以使用其他类型的距离,例如,Manhattan距离或Chebyshev距离。栅格的单元是被包括在栅格的4个交叉点之间的区域。
在两个顶点之间的估计距离小于栅格单元对角线的长度(L)的事件中,在步骤 520,两个顶点被相互推离。被应用于推离两个顶点的距离可以被如下定义。被注释为A的顶 点在其距离di的相邻区域中具有n个顶点Bi,距离di小于栅格单元对角线的长度(L)。每个顶 点Bi添加贡献ci,用于推离点A。贡献由关系ci=(L-di)×ui定义,其中ui是提供了从B到A的 方向的单位向量,即顶点A被推得远离顶点Bi的方向。顶点A被推得远离顶点B的距离其中:
-λ是从0开始并且针对每次迭代逐步提高到1的因子。因子λ有利地提供算法的稳定性,并且避免了顶点的分散;
-η是在过大的事件中限制M大小的因子。η有利地避免了一个顶点在一次迭代中从单元跳到太远的另一个单元。
在两个顶点之间的距离大于栅格单元对角线的长度(L)的事件中,两个顶点未被隔开。
执行排斥技术的若干个迭代,直到在栅格的四个交叉点之间至多只存在一个顶点,也就是说,每个单元一个顶点。这意味着,对于给定的顶点,检查与其相邻点之间的距离是否大于长度(L)。在实践中,在顶点所在的单元中选择相邻点,并且然后针对围绕该顶点所在单元的单元中的顶点来执行距离检查。围绕单元的单元是与该单元共享公共边的单元。
用于扫描单元的顶点之间的距离并且移动顶点的伪算法的示例如下:While存在包括两个或多个顶点的单元
根据所发现的碰撞的数量以及该算法的迭代的数量,λ的值增加到值1对于冲突中涉及的每一个顶点A
{
计算距离M的值
顶点A在2D平面中移动M(可能地,并且这就是所寻找的,顶点A改变单元
如果作为它们的位移的结果顶点在栅格的外部,则增大栅格的大小(例如通过在栅格的边缘添加行和列)
}
}
因此,在步骤S530,使用采用迭代执行的排斥技术将参数化的网格的一个顶点分配给栅格的交叉点。执行排斥技术的迭代,直到在栅格的四个交叉点之间至多只存在一个顶点。迭代有利地允许有限制地减少将执行的比较的总数量。另外,迭代保证在栅格的四个交叉点之间至多只有一个顶点,并且该步骤之前在参数化空间中邻近的两个顶点现在仍然邻近:它们仅由包含它们之间的顶点的单元或不包含顶点的单元来进行分隔。
正如参考步骤S40所论述的,网格的大小可以动态地改变(例如,扩展)。它可以响应于排斥技术的结果而改变:实际上,它通常由排斥技术产生,栅格的边缘附近的点被推出到栅格外。在这种情况下,新的线可以被添加到接近栅格的边缘,使得所推出的顶点(多个顶点)总是被包括在栅格的四个交叉点之间。作为另一个示例,栅格可以具有包括一个或多个交义点的隐藏的容限:隐藏的交叉点是不隐藏的,而所推离的顶点可以被分配给不隐藏的交叉点。
在步骤S50结束时,通过将参数化的网格的一个顶点分配给栅格的一个交叉点,来修改3D建模的参数化网格的所有顶点的2D坐标。作为步骤S10至S50的结果,获得了顶点的2D阵列。所述阵列包含全部在3d建模对象的初始多边形网格中的顶点。如果初始连通性数据等于它,则该阵列等价于初始多边形网格。具有该阵列和连通性数据,可能取回初始多边形网格。因此重新网格化的过程是完全可逆的过程。
在步骤S60,顶点之间的空交叉点被消除。空交叉点是不包括任何顶点的交叉点。可以使用张驰技术来执行对空交叉点的消除,如图11和图12所示。
通常在粒子排斥步骤S500-S530之后执行张驰步骤。所述张驰步骤可以使用细缝裁切(seam carving),细缝裁切是源自图像处理的方法。细缝裁切是用于对图像大小进行重新调整的算法:它通过建立许多细缝而起作用,所述细缝是顶点的2D阵列中最不重要的路径。该算法自动移除细缝,并且因此有利地减小了顶点的2D阵列的大小。细缝裁切还可以允许手动地定义在其中不可以修改像素的区域。
细缝裁切迭代地移除2D阵列的空栅格交叉点的细缝,使得在对象模型上邻近并且细缝去除之前在栅格上邻近的顶点在细缝去除之后保持邻近。
现在参考图11,其示出了细缝裁切操作的一个迭代,其中在作为步骤S10至S50的结果获得的顶点的2D阵列中确定了空交叉点的集合。白色顶点和黑色顶点由空交叉点的细缝分隔。
现在参考图12,其示出了其中细缝已被移除的图11的顶点的2D阵列。因此减小了2D阵列的大小。应当理解的是,一些空交叉点仍然可能在2D阵列中,甚至在执行过张驰步骤的所有迭代之后。
应当理解的是,可以利用能够识别空交叉点的任何算法来执行张驰步骤。更可取地,该算法应该能够保持在参数化的网格中邻近的邻近顶点。
步骤S60的输出因而是3D建模的参数化网格的顶点的2D阵列,与接受作为输入的2D阵列相比,其具有减小的大小。
在步骤S50和S60二者中,具有修改的2D坐标的顶点的集合形成光栅图像,其中集合中的每个顶点都是光栅图像的像素,而集合中的每个顶点的坐标(x,y,z)存储在光栅图像的颜色通道红/绿/蓝(RGB)中。光栅图像是指表示一般为像素的矩形栅格的点阵数据结构,例如,顶点的矩形2D阵列。RGB颜色模型是添加的颜色模型,其中以各种方式共同添加了红色、绿色和蓝色光以再现广泛的颜色阵列,正如本领域中已知的。
令人感兴趣的是,补充顶点属性(类似于每个顶点的法线、纹理坐标......)也可以存储在附加的颜色通道中。因此,光栅图像可能包括3D建模的初始网格的所有属性,应当理解与每个顶点一起存储的属性的数量由颜色通道的数量所限制。
可选择地,光栅图像可以被再构造,以用于减小光栅图像的大小。这被执行,正如本领域中公知的。
接下来,在步骤S80,压缩方案被应用在光栅图像和连通性数据上。压缩方案可以基于但不限于,诸如JPEG格式之类的离散余弦变换、诸如JPEG2000格式之类的小波变换。实际上,可以使用可能应用在光栅图像上的所有压缩方案。令人感兴趣的是,因为已经建立了顶点光栅图像的2D阵列,使得栅格中邻近的顶点通常在初始对象的表面上邻近,2D阵列中的相邻顶点的x、y和z坐标强烈相关;因此这些压缩方案将取得丰硕的成果。
可以利用压缩方案来压缩连通性数据,所述压缩方案适于用作存储与连通性数据相关的信息的格式。例如,连通性数据可以存储在文本文件中,而压缩方案可以是但不限于,ZIP压缩、RAR压缩。
专用于图像处理(压缩、视频压缩、数字水印、变形......)的工具和操作可以应用到所获得的光栅图像上。尽管存在连通性数据,但与使用几何图像的已知的解决方案相比,本发明的总体压缩率得到了提高。实际上,需要存储更少的信息,因为本发明的重新网格化独立于许多采样点的采样点。
可以使用以下步骤来解压缩根据本发明压缩的三维建模。
首先,它提供了具有修改的二维坐标的顶点的集合。例如,作为步骤S50或S60的结果所获得的顶点的2D阵列,作为步骤S70的结果所获得的光栅图像,步骤S80的压缩的光栅图像。
接下来,从所提供的顶点的集合中提取顶点。通常可以通过识别2D阵列的交叉点来执行该提取。例如,识别光栅图像的像素。
然后,根据连通性数据连接所提取的顶点。所提取的顶点被放置在3D空间中。可以从光栅图像的颜色通道RGB中获得所提取的顶点的坐标。
已经描述了本发明的优选的实施例。将理解的是,可以做出各种修改而不脱离本发明的精神和范围。因此,其它实施方式在下列权利要求的范围之内。

Claims (14)

1.一种用于压缩三维建模对象的计算机实现的方法,包括:
-提供(S10)所述三维建模对象的网格;
-存储所述三维建模对象的网格的连通性数据;
-在二维平面中对所述网格进行参数化(u,v),对所述网格的参数化产生具有二维坐标的顶点的集合;
-提供所述二维平面上的栅格;
-通过将一个顶点分配给所述栅格的一个交叉点,来修改每个顶点的二维坐标,具有修改的坐标的顶点的所述集合形成顶点的2D阵列;并且
-在所述顶点的2D阵列上应用压缩方案。
2.如权利要求1所述的计算机实现的方法,其中,将一个顶点分配给所述栅格的一个交叉点由将每个顶点相互推离的排斥技术来执行。
3.如权利要求2所述的计算机实现的方法,其中,所述排斥技术包括:
-将两个顶点之间的距离和栅格单元对角线的长度相比较;并且
-如果所述两个顶点之间的距离小于所述长度(L),则推离所述两个顶点。
4.如权利要求2至3中的任何一项所述的计算机实现的方法,其中,执行所述排斥技术的若干次迭代,直到所述栅格的四个交叉点之间至多只存在一个顶点。
5.如权利要求2至3中的任何一项所述的计算机实现的方法,还包括,在执行排斥技术之后,执行消除顶点之间的空交叉点的张驰技术。
6.如权利要求1至3中的任何一项所述的计算机实现的方法,其中,所述栅格的大小是能够扩展的。
7.如权利要求1至3中的任何一项所述的计算机实现的方法,其中,形成所述顶点的2D阵列的修改的顶点的所述集合形成光栅图像,其中,所述集合的每个顶点都是所述光栅图像的像素,并且所述集合的每个顶点的坐标(x,y,z)都存储在所述光栅图像的颜色通道红/蓝/绿中。
8.如权利要求7的所述的计算机实现的方法,其中,所述集合的顶点的补充属性存储在附加的颜色通道中。
9.如权利要求7所述的计算机实现的方法,其中,所述光栅图像被再构造,以用于减小所述光栅图像的大小。
10.如权利要求1至3中的任何一项所述的计算机实现的方法,其中,于在所述顶点的2D阵列上应用压缩方案的步骤中使用下列压缩方案中的一个:
-离散余弦变换;
-小波变换。
11.如权利要求1所述的计算机实现的方法,其中,所述三维建模对象的网格的连通性数据被压缩。
12.一种用于解压缩根据权利要求1至11中的一项所述的方法压缩的三维建模的计算机实现的方法,所述方法包括:
-提供所述顶点的2D阵列并且提供所述网格的连通性数据;
-从所提供的顶点的2D阵列中提取所述顶点;
-将所述顶点与所提供的所述网格的连通性数据相连接。
13.一种计算机辅助设计系统,包括:
-数据库,其存储三维建模对象的网格;
-用于根据权利要求1-11中的任何一项所述的方法来压缩三维建模对象和/或根据权利要求12所述的方法来解压缩三维建模的单元。
14.一种具有指令的计算机可读存储介质,所述指令在被处理器执行时,使所述处理器执行如权利要求1-12中的任何一项所述的方法。
CN201410502444.5A 2013-07-30 2014-07-29 三维建模对象的压缩 Active CN104346769B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP13306101.0 2013-07-30
EP13306101.0A EP2833326B1 (en) 2013-07-30 2013-07-30 Lossless compression of a 3D mesh including transforming of the mesh to a image

Publications (2)

Publication Number Publication Date
CN104346769A CN104346769A (zh) 2015-02-11
CN104346769B true CN104346769B (zh) 2019-06-28

Family

ID=48979690

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410502444.5A Active CN104346769B (zh) 2013-07-30 2014-07-29 三维建模对象的压缩

Country Status (6)

Country Link
US (2) US9536349B2 (zh)
EP (1) EP2833326B1 (zh)
JP (1) JP6469987B2 (zh)
KR (1) KR102246170B1 (zh)
CN (1) CN104346769B (zh)
CA (1) CA2857832A1 (zh)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2833326B1 (en) 2013-07-30 2016-04-06 Dassault Systèmes Lossless compression of a 3D mesh including transforming of the mesh to a image
FR3028990B1 (fr) * 2014-11-21 2018-01-19 Institut National Des Sciences Appliquees De Lyon Procedes de compression et de decompression de donnees representatives d’un objet tridimensionnel numerique et support d'enregistrement d'informations contenant ces donnees
EP3163536B1 (en) * 2015-10-30 2021-12-08 Dassault Systèmes Compression of a three-dimensional modeled object
JP6910130B2 (ja) 2015-11-06 2021-07-28 三星電子株式会社Samsung Electronics Co.,Ltd. 3dレンダリング方法及び3dレンダリング装置
US10891759B2 (en) * 2016-03-23 2021-01-12 Amar Phatak Method for lossless compression and regeneration of digital design data
US10242654B2 (en) 2017-01-25 2019-03-26 Microsoft Technology Licensing, Llc No miss cache structure for real-time image transformations
US9978118B1 (en) 2017-01-25 2018-05-22 Microsoft Technology Licensing, Llc No miss cache structure for real-time image transformations with data compression
US10514753B2 (en) 2017-03-27 2019-12-24 Microsoft Technology Licensing, Llc Selectively applying reprojection processing to multi-layer scenes for optimizing late stage reprojection power
US10410349B2 (en) 2017-03-27 2019-09-10 Microsoft Technology Licensing, Llc Selective application of reprojection processing on layer sub-regions for optimizing late stage reprojection power
US10255891B2 (en) 2017-04-12 2019-04-09 Microsoft Technology Licensing, Llc No miss cache structure for real-time image transformations with multiple LSR processing engines
US10891788B2 (en) * 2017-12-13 2021-01-12 Dassault Systemes Simulia Corp. Systems and methods for finite element mesh repair
WO2019145048A1 (en) * 2018-01-29 2019-08-01 Siemens Industry Software Limited A method of operating a cad system model for modelling an article to be manufactured
KR20190129539A (ko) * 2018-05-11 2019-11-20 서울대학교산학협력단 곡면을 가지는 3차원 구조체의 표면에 부착하는 전자 기기 및 이의 제조 방법
CN109189725B (zh) * 2018-07-23 2020-09-18 广州都市圈网络科技有限公司 面向规则建筑物的obj文件无损压缩方法
CN109190157B (zh) * 2018-07-26 2023-05-23 中国核电工程有限公司 一种用于Autodesk AutoCAD P&ID的对象位置信息的刷新方法
KR102228314B1 (ko) * 2019-02-28 2021-03-16 (주) 토탈소프트뱅크 심혈관 형상변형 시뮬레이션 시스템
GB2583513B (en) * 2019-05-02 2022-04-13 Sony Interactive Entertainment Inc Apparatus, system and method for data generation
US10922884B2 (en) * 2019-07-18 2021-02-16 Sony Corporation Shape-refinement of triangular three-dimensional mesh using a modified shape from shading (SFS) scheme
US11348285B2 (en) * 2019-12-10 2022-05-31 Sony Group Corporation Mesh compression via point cloud representation
US20230068178A1 (en) * 2020-01-02 2023-03-02 Nokia Technologies Oy A method, an apparatus and a computer program product for volumetric video encoding and decoding
US11593992B2 (en) * 2020-11-20 2023-02-28 Adobe Inc. Rendering three-dimensional objects utilizing sharp tessellation
US11270507B1 (en) 2020-11-20 2022-03-08 Adobe Inc. Rendering textures utilizing sharp displacement mapping
CN113920275B (zh) * 2021-09-30 2023-04-04 广州极飞科技股份有限公司 三角网格构建方法、装置、电子设备及可读存储介质
KR102495861B1 (ko) * 2021-10-27 2023-02-06 주식회사 스탠스 가상 객체를 처리하는 장치, 방법 및 컴퓨터 프로그램
CN114329668B (zh) * 2021-12-31 2024-01-16 西安交通大学 一种基于cad模型的rar网格优化方法及系统
US20230306649A1 (en) * 2022-03-25 2023-09-28 Tencent America LLC Predictive coding of boundary uv2xyz index for mesh compression
US20230308669A1 (en) * 2022-03-25 2023-09-28 Tencent America LLC Predictive coding of boundary uv information for mesh compression

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5808617A (en) * 1995-08-04 1998-09-15 Microsoft Corporation Method and system for depth complexity reduction in a graphics rendering system
CN101872485A (zh) * 2009-04-27 2010-10-27 鸿富锦精密工业(深圳)有限公司 曲面坐标值转换方法
CN102930597A (zh) * 2012-09-28 2013-02-13 中国科学院自动化研究所 一种外存三维模型的处理方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6970171B2 (en) * 2001-05-10 2005-11-29 Pixar Global intersection analysis for determining intesections of objects in computer animation
JP4847841B2 (ja) * 2006-10-24 2011-12-28 株式会社日立製作所 解析用六面体メッシュ生成装置
JP2009042811A (ja) * 2007-08-06 2009-02-26 Univ Of Tokyo 3次元形状展開装置、3次元形状展開方法、および3次元形状展開用プログラム
EP2833326B1 (en) 2013-07-30 2016-04-06 Dassault Systèmes Lossless compression of a 3D mesh including transforming of the mesh to a image

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5808617A (en) * 1995-08-04 1998-09-15 Microsoft Corporation Method and system for depth complexity reduction in a graphics rendering system
CN101872485A (zh) * 2009-04-27 2010-10-27 鸿富锦精密工业(深圳)有限公司 曲面坐标值转换方法
CN102930597A (zh) * 2012-09-28 2013-02-13 中国科学院自动化研究所 一种外存三维模型的处理方法

Also Published As

Publication number Publication date
JP2015028782A (ja) 2015-02-12
EP2833326A1 (en) 2015-02-04
US10275942B2 (en) 2019-04-30
KR20150014883A (ko) 2015-02-09
US20150035826A1 (en) 2015-02-05
KR102246170B1 (ko) 2021-04-28
US9536349B2 (en) 2017-01-03
CA2857832A1 (en) 2015-01-30
EP2833326B1 (en) 2016-04-06
US20170091997A1 (en) 2017-03-30
JP6469987B2 (ja) 2019-02-13
CN104346769A (zh) 2015-02-11

Similar Documents

Publication Publication Date Title
CN104346769B (zh) 三维建模对象的压缩
CN102779358B (zh) 用于设计几何三维建模对象的方法及设备
CN105761303B (zh) 在3d建模组件上创建包围盒
US9881388B2 (en) Compression and decompression of a 3D modeled object
JP7343963B2 (ja) 画像を入力とする関数を学習するためのデータセット
CN108228987A (zh) 副本选择
KR101520649B1 (ko) 3차원 메쉬 모델에서의 임의 접근 가능한 메쉬 데이터의압축 및 복원 방법 및 시스템
US10210668B2 (en) Technique for extruding a 3D object into a plane
JP6673905B2 (ja) ネットワーク転送およびリアルタイムレンダリング用に3dテクスチャモデルを自動的に最適化するシステム、方法、およびコンピュータプログラム製品
KR102356044B1 (ko) 웹브라우저 및 가상/증강현실 기기 활용을 위한 bim 데이터 변환/추출 방법
US20160107388A1 (en) Conversion of stereolithographic model into logical subcomponents
US11450078B2 (en) Generating height maps from normal maps based on virtual boundaries
CA2916256A1 (en) Selection of a viewpoint of a set of objects
CN113724401A (zh) 一种三维模型切割方法、装置、计算机设备和存储介质
CN107016732A (zh) 使用描述符的3d对象定位
CN109684656B (zh) 一种基于SolidWorks的装配约束继承方法
CN107066926A (zh) 使用描述符的3d对象定位
Liu et al. Parameterized freeform shape design and deformation
Abbasinejad Patchmaker: Geometric tools for 3d sketching interfaces

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant