CN117252979A - 用于将3d几何结构推断到2d草图上的方法 - Google Patents
用于将3d几何结构推断到2d草图上的方法 Download PDFInfo
- Publication number
- CN117252979A CN117252979A CN202310691724.4A CN202310691724A CN117252979A CN 117252979 A CN117252979 A CN 117252979A CN 202310691724 A CN202310691724 A CN 202310691724A CN 117252979 A CN117252979 A CN 117252979A
- Authority
- CN
- China
- Prior art keywords
- sketch
- bounding
- projection
- edge
- model
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 101000854862 Homo sapiens Vacuolar protein sorting-associated protein 35 Proteins 0.000 claims description 4
- 102100020822 Vacuolar protein sorting-associated protein 35 Human genes 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 4
- 238000013500 data storage Methods 0.000 claims description 2
- 238000013136 deep learning model Methods 0.000 claims 1
- 230000008569 process Effects 0.000 description 10
- 238000013461 design Methods 0.000 description 7
- 238000011960 computer-aided design Methods 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 239000013256 coordination polymer Substances 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000001125 extrusion Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 2
- 238000012938 design process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 101000666896 Homo sapiens V-type immunoglobulin domain-containing suppressor of T-cell activation Proteins 0.000 description 1
- 102100038282 V-type immunoglobulin domain-containing suppressor of T-cell activation Human genes 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- IJJVMEJXYNJXOJ-UHFFFAOYSA-N fluquinconazole Chemical compound C=1C=C(Cl)C=C(Cl)C=1N1C(=O)C2=CC(F)=CC=C2N=C1N1C=NC=N1 IJJVMEJXYNJXOJ-UHFFFAOYSA-N 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000004091 panning Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/12—Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/24—Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/12—Bounding box
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2004—Aligning objects, relative positioning of parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2016—Rotation, translation, scaling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2021—Shape modification
Abstract
本发明涉及一种用于在3D场景中设计至少一个3D模型的计算机实现的方法,包括以下步骤:a)接收用户的2D草图(1)并将其显示在平面上,所述2D草图(1)表示待设计的3D模型的视图;b)基于所述2D草图(1)推断3D图元(4),所述3D图元在所述3D场景中被定向和定位以便匹配所述视图;c)执行所述3D图元(4)在所述平面上的2D投影;d)将所述2D投影拟合到所述2D草图(1)上。
Description
技术领域
本发明涉及计算机程序和系统的领域,并且更具体地涉及用于在三维(3D)场景中设计3D建模对象的计算机实现的方法的领域。特别地,本发明属于草绘(sketching)领域。本发明可用于任何基于三维的CAD软件。
背景技术
2D草绘和3D建模是工业设计的两个主要步骤。通常首先进行草绘,因为它允许设计者快速且近似地表达他们的视觉。然后使用提供高精度和可编辑性的CAD工具将设计草图转换为用于下游工程和制造的3D模型。
然而,设计草绘和CAD建模通常由具有不同技能的不同专家执行,使得设计迭代繁琐、昂贵且耗时。实际上,从2D草图开始计算3D模型不是一项容易的任务。根据为输入的2D草图选择的视角和透视,可能难以找到用户想要的3D模型。
例如,矩形的2D草图可能是3D圆柱体(来自前视图)或长方体(来自任何规范视图)的表示。此外,2D草图(sketch)可能未被精确地绘制,因为其线条可能不平滑或不直,或者其透视可能不忠实于现实。这些不精确性使得这个问题更难解决。在现有技术中,不同的方法试图解决这个问题。
在“Sketch2CAD”(“Sketch2CAD:Sequential CAD Modeling by Sketching inContext”,ACM Trans.Graph.,Vol.39,No.6,Article 164.,December 2020)中,用户通过草绘期望的形状编辑来创建对象,这些形状编辑被自动转换为CAD操作。基于现有形状并基于与预定义操作符(operator)相对应的输入草图笔划,来产生经更新的模型。Sketch2CAD中支持的操作符如下:面挤压、角的斜切、正多面体的加/减、以及圆柱形的扫描。
使用操作符类型,经由优化过程来选择现有形状和曲线分割图的基面,基于该基面来拟合定义操作符的参数。然而,Sketch2CAD具有若干缺点。在能够推断经更新的模型之前,必须完全地绘制操作符的输入草图笔划:没有渐进的反馈。
因此,如果用户对经更新的模型不满意,则他只能通过对文本文件中操作符参数的繁琐编辑(例如,“AddSweepShape:<plane 1,length 0.23>)来校正经推断的CAD指令,这对于非专家用户来说可能是复杂的。此外,一些操作符(诸如右多面体的加/减)需要三维中的复杂输入草图笔划,这对于非专家用户来说可能不是快速可行的。
专利申请EP3958162A1公开了一种3D设计的方法,其中,神经网络将2D草图作为输入,并输出由2D草图表示的3D模型。由于神经网络是针对具有共同结构和/或功能特征的一类对象进行学习的,因此基于单个2D草图来推断(即,计算)3D模型。因此,不需要完全绘制草图。
2D草图被渲染在屏幕的平面上,并且经推断的3D模型被渲染在2D草图旁边的3D场景中(参见上述专利申请的图10、11和12)。
在推断过程期间,2D草图被连续裁剪和调整大小,使得神经网络的输入总是居中的并且具有256×256像素的恒定大小。因此,经推断的3D模型既不考虑2D草图的大小也不考虑其在3D场景中的位置。
因此,为了在同一屏幕上匹配2D草图和3D模型,将需要在3D场景中对3D模型调整大小和重新定位,并改变视点。这种处理不会使设计过程变得容易。
D1(Tsang等人的《A Suggestive Interface for Image Guided 3D Sketching》(用于图像引导的3D草绘的建议性界面))涉及用于草绘3D线框模型的图像引导的基于笔的建议性界面。通过从不同视点在正射构造平面上绘制2D轮廓曲线来创建3D模型。
D2(Bouagar等人的《On Aligning Shapes》(对准形状))涉及一种基于最小面积矩形的两个形状之间的形状对准方法。
因此,需要提供一种用于设计可被直接显示在用户的当前草图上的3D模型的用户友好的计算机实现的方法。
发明内容
本发明的一个目的是一种用于在3D场景中设计至少一个3D模型的计算机实现的方法,包括以下步骤:
a)接收用户的2D草图(1)并将其显示在平面上,所述2D草图(1)表示待设计的3D模型的视图;
b)基于所述2D草图(1)来推断3D图元(4),所述3D图元在所述3D场景中被定向和定位以便匹配所述视图;
c)执行所述3D图元(4)在所述平面上的2D投影;
d)将所述2D投影拟合到所述2D草图(1)上。
本发明还涉及:一种用于设计3D模型集合的方法、一种计算机程序产品、一种非暂时性计算机可读数据存储介质和一种计算机系统。
附图说明
根据结合附图进行的后续描述,本发明的附加特征和优点将变得显而易见:
图1A至1E示出了利用本发明的方法设计矩形长方体的示例。
图2A至2D示出了利用本发明的方法设计回转圆柱体的示例。
图3示出了通过使用限界正方形将3D图元的2D投影拟合到所述2D草图上的步骤。
图4示出了通过使用限界矩形将3D图元的2D投影拟合到所述2D草图上的步骤。
图5示出了通过使用二元掩模将3D图元的2D投影拟合到所述2D草图上的步骤。
图6示出了用2D投影的边替换2D草图的边的步骤。
图7示出了用于沿着边约束进行设计的方法的实施例。
图8示出了用于设计3D模型集合的方法的实施例。
图9示出了本发明的方法的流程图。
图10示出了用于执行本发明的方法的计算机。
图11是适于执行方法的计算机系统的方框图。
具体实施方式
关于图1A-1E公开了本发明的方法的第一示例。如图1A所示,用户通过鼠标、附件或任何合适的输入装置在诸如CAD工具的草绘环境中草绘笔划1(步骤a),图9)。
通过使用鼠标,用户拖动指针,即鼠标的位移和长按鼠标按键之一的组合。在触摸模式中,通过使用触摸屏,用户在触摸屏上移动附件(触控笔或手指),同时保持它们之间的接触。
在图1B中,用户继续用三个其他笔划来草绘。可以注意到,草图可以包含多个笔划。在本发明中,用户需要指示他何时开始绘制新形状,以便不使来自复杂绘图的不同部分的笔划混合。例如,用户可以在菜单中选择专用命令,或者他可以使用专用快捷方式。
用户的2D草图的一个或多个笔划在同一平面(即,视锥体的近平面)中被接收,并且表示来自用户的透视图的3D形状。用户的2D草图显示在计算机的屏幕上。该近平面与从视点起的用户的视线方向垂直。尽管草图可能是不完整的,但是可以基于该不完整草图的部分信息导出3D图元(primitive)(步骤b),图9),并将其显示在屏幕上。
在专利申请EP3958162A1中公开的卷积神经网络(CNN)编码器使用那些部分信息和经学习模式将2D草图编码成定义3D模型的数据。可以设想基于2D草图提供实时3D模型的其他解决方案。
例如,在图1C中,3D图元是平行六面体,其被定向和定位以便匹配3D形状的透视的视点。可以在每个笔划之后,即当释放附件和触摸屏之间的接触时,或者当释放鼠标按压时,计算推断。可替换地,可以周期性地计算推断。在两个实施例中,即使用户尚未完成草绘,也可以显示3D图元。
然后,将3D图元投影在近平面上(步骤c),图9),并拟合到2D草图上(步骤d),图9)。因此,用户在屏幕上接收3D图元的实时反馈,其被叠加在2D草图上,这有助于用户可视化和校正当前3D重建模型。
在专利申请EP3958162A1中公开的卷积神经网络(CNN)编码器推断实时3D图元,因此用户接收3D图元的实时反馈。使用本发明的方法,设计过程不会中断,并且用户可以在受到所提出的推断的引导的同时连续地进行草绘。
实际上,使用深度学习架构允许快速结果计算(小于一秒的计算时间),从而利用GPU加速。
在图1D中,由用户提供从2D草图的角之一开始的另一笔划。再次,基于新笔划推断3D图元,如图1E中可见。
可选地,将图元的2D投影的变换(图元的2D投影拟合到2D草图上的方式,例如通过平移和缩放)反映在3D图元上。可替换的,在用户的草图期间直接修改3D图元,使得在每个笔划之后计算的其投影拟合2D草图。然而,该替代方案更复杂,因为它需要可区分的渲染工具以便知道如何从2D误差修改3D参数。
被拟合到2D草图上的2D投影可以是3D图元在视锥体的近平面中的透视投影或正射投影(orthographic projection)。需要提醒的是,近平面是垂直于视线方向的平面。
在透视图中比在正射视图中更难以进行草绘,因此本发明在透视图中特别有用。此外,在根据透视图显示的照片上进行草绘的情况下,透视绘图是重要的。然而,本发明不限于透视图。新手用户倾向于根据正射视图绘制(例如,具有平行线并且没有消失点),并且在正射视图中草绘的情况下提供一些辅助也将是有帮助的。对透视图或正射视图的选择可以通过专用命令而留给用户,并且也可以默认设置。
图2A、2B、2C和2D示出了采用另一种图元的本发明的方法的另一个示例。在图2A中,用户草绘了扁平圆1,并且经推断的3D图元是半圆柱体4(图2B)。将用户的草图和经推断的3D图元叠加;因此,用户接收到他的草图的即时反馈。在图2C中,用户草绘了从扁平圆开始并在屏幕上垂直延伸的笔划。从图2D中可以看出,从扁平圆的草图和从扁平圆延伸的笔划推断出圆柱体。
可以从草图推断其他简单但随意的3D图元。所示示例公开了基于2D表面的挤出(extrusion)的3D图元,但是根据用户的需要和专业知识的领域,可以通过使用任意用户定义的图元训练神经网络来将这些形状扩展到新的图元。
例如,可以将新的图元模板添加到数据集,以便增强结果的相关性并节省时间。这种能力是特别令人感兴趣的,以便保持形状的可变性类似于用户过去创建的形状。
还可以用具有共同结构和/或功能特征的至少一组3D模型来训练深度学习架构。例如,如果用户已经创建了许多螺钉,则系统可以从第一笔划推断出某螺钉。
通过在草图的平面上执行3D图元的2D投影(步骤c)),并且通过将2D投影拟合到2D草图上(步骤d),来实现3D图元在2D草图上的叠加。
在另一实施例中,近平面与3D图元之间的距离可以基于深度学习架构的所述组中的3D模型的代表性大小来设定。这避免了一旦已经推断出3D图元,用户就在3D场景中进行放大或缩小。
考虑若干实施例以便将2D投影与2D草图拟合。
根据图3所示的第一实施例,将2D投影拟合到2D草图上的步骤d)包括计算2D投影的第一2D限界正方形5的第一子步骤(参见图3的中心部分)。
在第二子步骤中,计算2D草图1的第二2D限界正方形6(图3的左侧部分)。第二2D限界正方形是包围2D草图的最小正方形。可以同时计算第一2D限界正方形和第二2D限界正方形。
在优选实施例中,可以通过如下来完成将3D图元的2D投影拟合到2D草图上:在平面中平移第一2D限界正方形5以使得第一2D限界正方形5的中心和第二2D限界正方形6的中心重合,并且均匀地缩放第一2D限界正方形5以使得其边的长度拟合第二2D限界正方形6的边的长度,即,第一2D限界正方形5和第二2D限界正方形6的边长相等。
平移可以在均匀缩放之前操作,或者在均匀缩放之后操作,或者甚至同时操作。
可以注意到,可以仅一旦2D投影拟合到2D草图上就显示经推断的3D图元,使得用户立即看到3D图元和2D草图的叠加。
为了辅助用户,将经拟合的2D投影以透明(或部分透明)方式显示到他的当前草图上,以启发用户,并帮助他完成或校正他的绘图。
根据图4所示的第二实施例,计算2D投影的第一2D限界矩形7(参见图4的中心部分)。计算2D草图1的第二2D限界矩形8(图3的左侧部分)。第二2D限界矩形是包围2D草图的所有点的具有最小边的矩形。
将第一2D限界矩形7在平面中平移,使得其中心和第二2D限界矩形8的中心重合。均匀地缩放第一2D限界矩形7,使得其长边或短边中的一个的长度拟合第二2D限界矩形8的对应边的长度。就“对应边”而言,应当理解,进行缩放使第一2D限界矩形7的长边的长度等于第二2D限界矩形8的长边的长度,或者使第一2D限界矩形7的短边的长度等于第二2D限界矩形8的短边的长度。
平移可以在均匀缩放之前操作,或者在均匀缩放之后操作,或者甚至同时操作。
在图4中,限界矩形的边被垂直和水平地布置,因为3D图元和2D草图基本上垂直地延伸。可以考虑限界矩形的其他取向。
例如,对于第一2D限界矩形,取向可以是使2D限界矩形的面积最小的取向。接着,第二2D限界矩形的取向可以与第一2D限界矩形的取向相同。可替换地,可以首先确定第二2D限界矩形的取向。
可替换地,可以通过考虑边的长度最小的取向,来计算所述2D限界矩形中的一个的取向。
将两个限界正方形彼此拟合或将两个限界矩形彼此拟合不是耗时的过程,因此它与实时实现完全兼容。
在图5所示的另一实施例中,步骤d)包括计算2D草图1的包络的第一2D二元掩模9,以及计算3D图元的2D投影的第二2D二元掩模10,这些掩模可以一个接一个地或同时地计算。
可以通过使用2D草图和3D图元的2D投影的凸包或凹包,来计算二元掩模。如果2D草图是局部的,或者甚至是非常局部的,则优选使用凸包。如果2D草图完成,则使用凹包更好(与凸包相比,凹包具有更小的面积并且表示更自然的边界)。
当笔划集合具有至少一个不连续性时,将2D草图定义为是局部的或不完整的。
然后,通过在平面中平移第二2D二元掩模10并均匀地缩放第二2D二元掩模10,以便使第一2D二元掩模9和第二2D二元掩模10的重叠达到最大,来将3D图元的2D投影拟合到2D草图上。
在特定实施例中,使用下面定义的交并比(intersection over union)函数IoU(x,y,s)来确定二元掩模的重叠:
Mask1是第一2D二元掩模9,Mask2是第二2D二元掩模10,其沿着一个轴(例如,屏幕的水平轴)平移x和沿着另一个轴(例如,屏幕的垂直轴)平移y,并且根据关于第一2D二元掩模9的因子s而均匀地调整大小。
“+”、“-”和“*”是通过考虑包含两个二元掩模的图像具有相同的大小而进行的逐像素操作,分别是像素对像素加法、像素对像素减法和像素对像素乘法。
确定参数x、y和s以便具有趋向于1的交并比函数。
可以使用用于比较两个二元掩模的任何其他函数,例如广义并交比(GIoU)。
基于二元掩模的第三实施例可能比分别基于限界正方形和限界矩形的第一和第二实施例更耗时,但是由于误差最小化计算,它可以提供更好的结果。
第一或第二实施例可以与第三实施例组合。例如,当用户开始草绘第一笔划集合时,可以实施第一或第二实施例,以便快速提供被拟合到2D草图上的3D图元。例如,参考图1A-1E和2A-D,当用户分别草绘矩形或扁平圆时,可以实施第一或第二实施例。然后,当用户用第二笔划集合细化他的草图时,可以实施第三实施例。参考图1A-1E和2A-D,当用户开始绘制垂直笔划时,可以实施第三实施例。
如果用户认为3D图元相对于2D草图不够居中,则他可以从一个实施例切换到另一个实施例。
在图6所示的优选实施例中,用户可以通过使用3D图元的边11中的一个,来校正和/或完成他的2D草图。为此,用户提供用于选择边的输入,例如通过在边11上双击,或者通过按压鼠标的左键和右键,或者通过在触摸模式下在边11上长点击。
如果用户输入的位置靠近3D图元投影的边(例如,通过考虑低于预定阈值的距离),则将该边添加到2D草图。可替换地,至少部分地拟合到2D草图的边上的图元的边可以替换2D草图的边。
有利地,当用户将指针(鼠标指针或触摸模式中的附件)悬停在3D的图元投影的边中的一个边上方时,可以存在关于该边的视觉反馈,诸如该边的突出显示。
用户还可以选择已经预测的完整形状,并且因此用该完整的经推断形状的笔划替换所有当前用户笔划。这可以通过双击所显示的轮廓或甚至按钮以确认该结果来实现。由于2D投影和2D草图重叠,因此用户可以容易地从2D草图切换到3D图元,这有助于该方法的交互性。
根据图7所示的另一实施例,可以在草绘时引导用户。经推断的3D图元具有至少一个边。可以为给定边定义边约束,其充当用户草图的目标。边约束13拟合边14,例如通过与边14对准。因此,每个边可以表现得像无限尺子,不限于可见的投影边。
在图7中,用户已经草绘了扁平圆,因此已经推断出圆柱体。3D图元的参数之一,即圆柱体的高度,具有默认值。将边约束应用于与该参数相对应的边。
当在距2D投影的边小于预定阈值的距离处接收到用户的草图12时,边约束13“吸引”用户的草图。边约束13可以用作无限线约束,将用户的笔划引导和捕捉到边约束13。然后,基于沿着边约束的附加用户草图来计算3D图元的新推断。
因此,本发明的方法使得用户能够利用非常有限数量的输入甚至利用部分输入来快速设计3D形状。所有交互保持尽可能简单并且在二维中,并且3D的复杂性对于用户是不可见的。
用户可以通过重复用于设计一个3D模型的上述步骤,来设计3D模型的组件。如前所述,用户必须提供用于设计另一3D模型的特定输入;否则,它将被解释为对当前3D模型的校正,从而引起新的推断。
作为示例,通过图8示出的用于设计3D模型集合的方法包括通过使用上述方法设计第一3D模型2的第一步骤。然后,在第二步骤中,通过使用上述方法设计第二3D模型3。在第一3D模型2和第二3D模型3之间检测3D约束。在图8上,3D约束是第一3D模型2的上基部和第二3D模型3的下基部的共面性。基于所述3D约束来修改(捕捉)第二3D模型3的3D位置和/或取向,所述3D约束可以是例如共面性、接触、同轴性、平行性、对称性中的至少一个。
可以注意到,已经存在2D捕捉工具,以有利于例如两个笔划的2D垂直性。然而,在透视图中,垂直性或2D平行性的这些概念不再有效,因为三维中的平行线在透视图中的消失点处相遇。本发明的方法使得能够在透视图中捕捉,因为它直接与3D场景中的3D模型交互。
本发明的方法可以由适当编程的通用计算机或计算机系统来执行,该计算机或计算机系统可能包括计算机网络,以非易失性形式将合适的程序存储在诸如硬盘、固态盘或CD-ROM的计算机可读介质上,并使用其微处理器和存储器执行所述程序。
参考图10描述了适于执行根据本发明的示例性实施例的方法的计算机(更确切地说,计算机辅助设计站)。在图10中,计算机包括执行上述过程的中央处理单元CP。该过程可以作为可执行程序(即,计算机可读指令集)存储在诸如RAM MEM1或ROM MEM2的存储器中,或者存储在硬盘驱动器(HDD)MEM3、DVD/CD驱动器MEM4上,或者可以远程存储。根据本发明的方法的采用适合于由可执行程序处理的形式的3D模型数据库也可以存储在存储器设备MEM1至MEM4中的一个或多个上,或者远程地存储。
所要求保护的发明不受其上存储本发明过程的计算机可读指令的计算机可读介质的形式的限制。例如,指令和数据库可以存储在CD、DVD、闪存、RAM、ROM、PROM、EPROM、EEPROM、硬盘或与计算机辅助设计站通信的任何其他信息处理设备(诸如服务器或计算机)中。程序和数据库可以存储在相同的存储器设备上或不同的存储器设备上。
此外,适合于执行本发明的方法的计算机程序可以作为实用应用程序、后台守护进程或操作系统的部件或其组合来提供,结合CPU PR和操作系统(诸如Microsoft VISTA、Microsoft Windows 7、UNIX、Solaris、LINUX、Apple MAC-OS和本领域技术人员已知的其他系统)执行。
中央处理单元CP可以是来自美国Intel的Xenon处理器或来自美国AMD的Opteron处理器,或者可以是其他处理器类型,诸如来自美国Freescale公司的FreescaleColdFire、IMX或ARM处理器。可替换地,中央处理单元CP可以是诸如来自美国Intel公司的Core2 Duo的处理器,或者可以在FPGA、ASIC、PLD上或使用分立逻辑电路来实现,如本领域普通技术人员将认识到的。此外,CPU可以被实现为协同工作以执行上述发明过程的计算机可读指令的多个处理器。
图10中的计算机辅助设计站还包括网络接口NI,诸如来自美国Intel公司的IntelEthernet PRO网络接口卡,用于与诸如局域网(LAN)、广域网(WAN)、互联网等的网络接口连接。计算机辅助设计站还包括显示控制器DC,诸如来自美国NVIDIA公司的NVIDIA GeForceGTX图形适配器,用于与显示器DY(诸如Hewlett Packard HPL2445w LCD监视器或虚拟现实头显)接口连接。通用I/O接口IF与键盘KB和指示设备PD(诸如滚动球、鼠标、触摸板、虚拟现实系统的控制设备等)接口连接。显示器、键盘和指示设备与显示控制器和I/O接口一起形成图形用户接口。
本发明还可以以触摸模式实现,其中计算机系统包括用于显示3D场景并检测一个附件的交互的触敏显示器。
用户通过指示设备PD用触摸板草绘一个平面。可以在显示器DY上看到2D草图。
本发明还可以在沉浸式环境中实现。在这种情况下,计算机系统包括由用户佩戴的用于显示3D场景的虚拟现实头显。可以借助于控制设备来检测不同的用户交互,该控制设备可以配备有按钮以便检测轻击手势、拖动或保持手势。计算机系统还可以包括感测设备,诸如红外传感器,以便确定控制设备的位置。
磁盘控制器DKC将HDD MEM3和DVD/CD MEM4与通信总线CB连接,该通信总线CB可以是ISA、EISA、VESA、PCI等,用于互连计算机辅助设计站的所有部件。
计算机还包括其上记录有数据结构的存储器,所述数据结构包括卷积神经网络(CNN)编码器,所述卷积神经网络(CNN)编码器基于2D草图并基于经学习的模式来推断3D图元。对于编码器的示例性描述,本领域技术人员可以参考专利申请EP3958162A1。
所设计的3D模型或3D设计的模型的组件可以存储在CD、DVD、闪存、RAM、ROM、PROM、EPROM、EEPROM、硬盘或任何其他服务器或计算机上,以进一步用于计算机辅助设计。可以基于包含3D模型的文件来制造物理对象。可以将文件转换为用于制造过程的可读格式。
为了简洁起见,本文省略了对显示器、键盘、指示设备以及显示控制器、磁盘控制器、网络接口和I/O接口的一般特征和功能的描述,因为这些特征是已知的。
图11是适于执行根据本发明的不同示例性实施例的方法的计算机系统的方框图。
在图11中,服务器SC经由网络NW连接到管理员系统ADS和终端用户计算机EUC。
如可以理解的,网络NW可以是公共网络(诸如互联网)或专用网络(诸如LAN或WAN网络)或其任何组合,并且还可以包括PSTN或ISDN子网络。网络NW也可以是有线的,例如以太网,或者可以是无线的,例如包括EDGE、3G和4G无线蜂窝系统的蜂窝网络。无线网络还可以是Wi-Fi、蓝牙或已知的任何其他无线通信形式。因此,网络NW仅仅是示例性的,并且决不限制本进展的范围。
存储在终端用户计算机的存储器设备中并由终端用户计算机的CPU执行的客户端程序经由网络NW访问服务器上的3D模型数据库。
尽管仅示出了一个管理员系统ADS和一个终端用户系统EUX,但是系统可以不受限制地支持任何数量的管理员系统和/或终端用户系统。
本文描述的流程图中的任何过程、描述或框应当被理解为表示包括用于实现过程中的特定逻辑功能或步骤的一个或多个可执行指令的代码模块、代码段或代码部分,并且替代实施方式被包括在本发明的示例性实施例的范围内。
Claims (15)
1.一种用于在3D场景中设计至少一个3D模型的计算机实现的方法,包括以下步骤:
a)接收用户的2D草图(1)并将其显示在平面上,所述2D草图(1)表示待设计的3D模型的视图;
b)基于所述2D草图(1)推断3D图元(4),所述3D图元在所述3D场景中被定向和定位以便匹配所述视图;
其特征在于,所述方法还包括以下步骤:
c)执行所述3D图元(4)在所述平面上的2D投影;
d)将所述2D投影拟合到所述2D草图(1)上。
2.根据权利要求1所述的方法,其中,步骤d)包括:
-计算所述2D投影的第一2D限界正方形(5);
-计算所述2D草图(1)的第二2D限界正方形(6),
-在所述平面中平移所述第一2D限界正方形(5),使得所述第一2D限界正方形(5)的中心和所述第二2D限界正方形(6)的中心重合,
-均匀地缩放所述第一2D限界正方形(5),使得其边的长度拟合所述第二2D限界正方形(6)的边的长度。
3.根据权利要求1所述的方法,其中,步骤d)包括:
-计算所述2D投影的第一2D限界矩形(7);
-计算所述2D草图(1)的第二2D限界矩形(8);
-在所述平面中平移所述第一2D限界矩形(7),使得所述第一2D限界矩形(7)的中心和所述第二2D限界矩形(8)的中心重合,
-均匀地缩放所述第一2D限界矩形(7),使得所述第一2D限界矩形(7)的长边或短边中的一个的长度拟合所述第二2D限界矩形(8)的对应边的长度。
4.根据权利要求1所述的方法,其中,步骤d)包括:
-计算所述2D投影的所述2D草图的包络的第一2D二元掩模(9);
-计算所述2D投影的包络的第二2D二元掩模(10);
-在所述平面中平移所述第二2D二元掩模(10)并且均匀地缩放所述第二2D二元掩模(10),以便使所述第一2D二元掩模(9)和所述第二2D二元掩模(10)的重叠达到最大。
5.根据权利要求1至4所述的方法,其中,所述用户的2D草图至少包括第一笔划集合和第二笔划集合,其中,步骤d)包括:
-对于所述第一笔划集合,在所述平面中平移所述第一2D限界正方形(5),使得所述第一2D限界正方形(5)的中心和所述第二2D限界正方形(6)的中心重合,并且均匀地缩放所述第一2D限界正方形(5),使得所述第一2D限界正方形(5)的边的长度拟合所述第二2D限界正方形(6)的边的长度,或者
-对于所述第一笔划集合,在所述平面中平移所述第一2D限界矩形(7),使得所述第一2D限界矩形(7)的中心和所述第二2D限界矩形(8)的中心重合,并且均匀地缩放所述第一2D限界矩形(7),使得所述第一2D限界矩形(7)的长边或短边中的一个的长度拟合所述第二2D限界矩形(8)的对应边的长度;
-对于所述第二笔划集合,在所述平面中平移所述第二2D二元掩模(10)并且均匀地缩放所述第二2D二元掩模(10),以便使所述第一2D二元掩模(9)和所述第二2D二元掩模(10)的重叠达到最大。
6.根据前述权利要求中任一项所述的方法,其中,所述2D投影包括至少一个边(11),所述至少一个边(11)至少部分地拟合到所述2D草图(1)的边上,所述方法包括:
-接收包括选择所述2D投影的所述边的用户输入;
-用所述2D投影的所述边来替换所述2D草图(1)的所述边。
7.根据前述权利要求中任一项所述的方法,包括:
-提供与所述2D投影的边(14)拟合的边约束(13);
-在距所述2D投影的所述边小于预定阈值的距离处接收第二用户草图(12);
-将所述第二用户草图(12)捕捉到所述边约束(13)。
8.根据前述权利要求中任一项所述的方法,其中,所述2D草图包括多个笔划,在每个笔划之后重复步骤a)-d)。
9.根据前述权利要求中任一项所述的方法,其中,所述3D图元是通过使用深度学习模型来推断的,所述深度学习模型是利用具有共同结构和/或功能特征的至少一组3D模型来训练的。
10.根据权利要求9所述的方法,包括如下步骤:基于所述组中的3D模型的代表性尺寸来设置所述平面与所述3D图元之间的距离。
11.一种用于设计3D模型集合的方法,包括:
-通过使用根据前述权利要求中任一项所述的方法来设计第一3D模型(2);
-通过使用根据前述权利要求中任一项所述的方法来设计第二3D模型(3);
-检测所述第一3D模型(2)与所述第二3D模型(3)之间的3D约束;
-基于所述3D约束来修改所述第一3D模型(2)和所述第二3D模型(3)中的一个的3D位置和/或取向。
12.根据权利要求11所述的用于设计3D模型集合的方法,其中,所述3D约束是共面性、接触、同轴性、平行性、对称性中的至少一个。
13.一种计算机程序产品,包括计算机可执行指令,以使计算机系统执行根据前述权利要求中任一项所述的方法。
14.一种非暂时性计算机可读数据存储介质(MEM1、MEM2、MEM3、MEM4),包含计算机可执行指令以使计算机系统执行根据权利要求1至12中任一项所述的方法。
15.一种计算机系统,包括耦合到存储器(MEM1、MEM2、MEM3、MEM4)的处理器(CP),所述存储器存储计算机可执行指令以使所述计算机系统执行根据权利要求1至12中任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP22305878.5A EP4293627A1 (en) | 2022-06-16 | 2022-06-16 | Method for inferring a 3d geometry onto a 2d sketch |
EP22305878.5 | 2022-06-16 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117252979A true CN117252979A (zh) | 2023-12-19 |
Family
ID=82404449
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310691724.4A Pending CN117252979A (zh) | 2022-06-16 | 2023-06-12 | 用于将3d几何结构推断到2d草图上的方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230410452A1 (zh) |
EP (1) | EP4293627A1 (zh) |
JP (1) | JP2023184496A (zh) |
CN (1) | CN117252979A (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210358202A1 (en) * | 2020-05-13 | 2021-11-18 | Electronic Caregiver, Inc. | Room Labeling Drawing Interface for Activity Tracking and Detection |
EP3958182A1 (en) * | 2020-08-20 | 2022-02-23 | Dassault Systèmes | Variational auto-encoder for outputting a 3d model |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3958162A1 (en) | 2020-08-20 | 2022-02-23 | Dassault Systèmes | Neural network for outputting a parameterized 3d model |
-
2022
- 2022-06-16 EP EP22305878.5A patent/EP4293627A1/en active Pending
-
2023
- 2023-06-12 CN CN202310691724.4A patent/CN117252979A/zh active Pending
- 2023-06-16 JP JP2023098952A patent/JP2023184496A/ja active Pending
- 2023-06-16 US US18/336,455 patent/US20230410452A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
JP2023184496A (ja) | 2023-12-28 |
EP4293627A1 (en) | 2023-12-20 |
US20230410452A1 (en) | 2023-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230410452A1 (en) | Method for inferring a 3d geometry onto a 2d sketch | |
KR100954304B1 (ko) | Cad 시스템에서 오브젝트를 선택하고 핸들링하는 방법 | |
US7750911B2 (en) | Pen-based 3D drawing system with 3D mirror symmetric curve drawing | |
De Araùjo et al. | Mockup builder: direct 3D modeling on and above the surface in a continuous interaction space | |
WO2018040511A1 (zh) | 基于ar的二维图像转换至三维场景的实现方法 | |
JP4199663B2 (ja) | ヒューマン−コンピュータインターフェイスにおける視覚画像による触覚調整 | |
KR0125776B1 (ko) | 선요소 데이타의 3차원 변환 장치 및 방법 | |
KR20130004066A (ko) | 기하학적 3차원 모델링된 오브젝트를 디자인하는 방법 | |
CN102044084A (zh) | 三维图形的二维平面表现方法 | |
Nishino et al. | 3d object modeling using spatial and pictographic gestures | |
US11074747B2 (en) | Computer-aided techniques for designing detailed three-dimensional objects | |
JP2019121387A (ja) | 3dオブジェクトの設計のための描画平面を定義するための方法 | |
US11475651B2 (en) | Window-shaping virtual reality system | |
CN107704483A (zh) | 一种三维模型的加载方法 | |
CN115861547A (zh) | 一种基于投影的模型表面样条线生成方法 | |
Maghoumi et al. | Gemsketch: Interactive image-guided geometry extraction from point clouds | |
US20210090351A1 (en) | Computer-implemented method for assisting a positioning of a 3d object in a 3d scene | |
Araújo et al. | Combining Virtual Environments and Direct Manipulation for Architectural Modeling' | |
US11893314B2 (en) | Method for designing a 3D object by using a virtual 3D grid and hand drawn sketches | |
Qin et al. | Use of three-dimensional body motion to free-form surface design | |
CN113129362B (zh) | 一种三维坐标数据的获取方法及装置 | |
Kim et al. | Squidgets: Sketch-based Widget Design and Direct Manipulation of 3D Scene | |
Qin et al. | Incorporating 3D body motions into large-sized freeform surface conceptual design | |
CN117708942A (zh) | 一种建筑三维模型的图纸生成方法、装置、设备及介质 | |
Ma et al. | A 3d sketch-based modeling design system with paper-and-pencil interface |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |