CN104574515B - 一种三维物体重建的方法、装置和终端 - Google Patents

一种三维物体重建的方法、装置和终端 Download PDF

Info

Publication number
CN104574515B
CN104574515B CN201310468938.1A CN201310468938A CN104574515B CN 104574515 B CN104574515 B CN 104574515B CN 201310468938 A CN201310468938 A CN 201310468938A CN 104574515 B CN104574515 B CN 104574515B
Authority
CN
China
Prior art keywords
dimensional
line
face
line drawing
subgraph
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
CN201310468938.1A
Other languages
English (en)
Other versions
CN104574515A (zh
Inventor
刘健庄
鞠汶奇
许春景
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201310468938.1A priority Critical patent/CN104574515B/zh
Priority to PCT/CN2014/074590 priority patent/WO2015051624A1/zh
Priority to EP14852603.1A priority patent/EP3040944B1/en
Publication of CN104574515A publication Critical patent/CN104574515A/zh
Priority to US15/088,878 priority patent/US9898860B2/en
Application granted granted Critical
Publication of CN104574515B publication Critical patent/CN104574515B/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/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03543Mice or pucks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/206Drawing of charts or graphs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/543Depth or shape recovery from line drawings

Landscapes

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

Abstract

本发明实施例公开了一种三维物体重建的方法,其特征在于,所述方法包括:获取二维线画图信息;所述二维线画图信息,按照自由度分割所述二维线画图,得到至少一个线画图子图,所述自由度为确定一个由平面组成的三维物体的空间位置所需要知道的最少的顶点的个数;根据所述线画图子图重建三维子物体;组合全部的所述三维子物体得到三维物体。根据本发明实施例的三维物体重建的方法,可以根据二维线画图信息自动重建三维物体。本发明实施例还公开了一种三维物体重建的装置和终端。

Description

一种三维物体重建的方法、装置和终端
技术领域
本发明涉及图形图像处理技术,特别涉及一种三维物体重建的方法、装置和终端。
背景技术
三维模型是物体的三维多边形表示,通常用电脑或者其它影片设备进行显示。显示的物体可以是现实世界的实体,也可以是虚构的东西,既可以如原子般大小,也可以拥有很大的尺寸。任何自然界存在的东西都可以用三维模型表示。
三维模型经常用专门的三维建模工具软件生成,但是也可以用其它方法生成。作为点和其它信息集合的数据,三维模型可以手工生成,也可以按照一定的算法生成。尽管三维模型通常按照虚拟的方式存在于计算机或者计算机文件中,但是对于普通的用户而言,在纸或屏幕上通过随手勾画二维线画图来表示三维物体是更为贴近普通人表述三维物体的习惯、更为方便的三维物体、三维模型的表示方式。
三维模型有着极其广泛的应用。实际上,真实三维模型的应用要早于个人电脑的应用,个人电脑的普及使得通过电脑重现、控制的三维模型的应用普及到了各行各业、千家万户中。
现在,三维模型已经用于各种不同的领域。在医疗行业使用它们制作器官的精确模型;电影行业将它们用于活动的人物、物体以及现实电影;视频游戏产业将它们作为计算机与视频游戏中的资源;在科学领域将它们作为化合物的精确模型;建筑业将它们用来展示提议的建筑物或者风景;工程界将它们用于设计新设备、交通工具、结构等领域;在最近几十年,地球科学领域也开始构建三维地质模型;在不久的将来三维地图也将取代现在流行的平面地图成为普通人出行必备的向导工具。
传统的计算机辅助设计(CAD)***能够用来创建三维物体。利用CAD软件的三维物体建模的方式虽然可以精确绘制三维物体,但是由于它的专业性与繁琐性,需要人工全程参与,工作量非常大,耗时非常多。与之相比,二维线画图简单易画,很久以来一直是人们最习惯的表达三维物体的方式。但是现有的线画图重建三维物体的方法无法解决复杂三维物体重建过程中频繁出现的局部最优的问题,因此这些算法无法应用到重建复杂的三维物体商业应用中。
发明内容
有鉴于此,为解决上述问题,本发明的实施例提供了一种三维物体重建的方法,从而实现了对由平面组成的物体的线画图进行合理的分割和重建,且二维线画图的输入方式较为简便的效果。
本发明第一方面的实施例公开了一种三维物体重建的方法,所述方法包括:
获取三维物体的二维线画图信息,所述二维线画图信息包括二维线画图;
根据所述二维线画图信息,按照自由度分割所述二维线画图,得到至少一个线画图子图,其中,所述自由度为确定一个由平面组成的三维物体的空间位置所需要知道的最少的顶点的个数;
根据所述线画图子图重建三维子物体;
组合全部的所述三维子物体得到三维物体。
根据本发明实施例的三维物体重建的方法,可以对由平面组成的物体的线画图进行合理的分割和重建,且二维线画图的输入方式较为简便。
在本发明第一方面的第一实施例中,每一个线画图子图对应一个三维子物体;在全部所述线画图子图中,所述线画图子图所表示的所述三维子物体的最小的自由度为4。
结合本发明第一方面实施例或第一方面的第一实施例的本发明第一方面的第二实施例中,所述根据所述二维线画图信息,按照自由度分割所述二维线画图得到至少一个线画图子图包括:
根据所述二维线画图信息得到二维线画图的顶点坐标、顶点之间的线段信息,根据所述二维线画图的顶点坐标和所述顶点之间的线段信息得到二维线画图的面信息;
根据所述二维线画图的面信息,按照所述自由度分割所述二维线画图,得到至少一个所述线画图子图。
结合本发明第一方面第二实施例的本发明第一方面的第三实施例中,所述二维线画图的面信息包括二维线画图的面;
所述根据所述二维线画图的面信息,按照所述自由度分割所述二维线画图,得到至少一个所述线画图子图,具体包括:
在所述全部的二维线画图的面中选择任意一对还没有选择过的相邻的面,作为第一线画图面和第二线画图面;
设置第一集合为空集,将所述第一线画图面和所述第二线画图面标定为确定面并加入到所述第一集合中;
在全部的所述二维线画图的面中将除所述第一线画图面和所述第二线画图面的其它线画图面标定为不确定面;
在所述不确定面中选择第三线画图面,将所述第三线画图面标定为确定面并加入到所述第一集合中,重复本步骤直到遍历完全部的所述不确定面,其中,所述第三线画图面至少有三个不共线的顶点,且所述不共线的顶点是所述第一集合中的线画图面的顶点;
根据所述第一集合中的确定面得到一个对应的线画图子图;
重复以上步骤,直到所述全部的二维线画图的面中的所有相邻面对都被选择过一次。
结合本发明第一方面第三实施例的本发明第一方面的第四实施例中,如果所述第一集合中的确定面的数目不小于三,则所述方法还包括:
将所述第一集合所表示的线画图子图加入到第二集合中;
根据所述第二集合中所有的线画图子图得到共存关系图,其中,所述共存关系图的一个顶点表示一个所述线画图子图,所述线画图子图所具有的面的个数做为所述顶点的权值,如果两个所述线画图子图之间存在共存关系,则对应两个所述线画图子图的顶点之间有连线连接;所述共存关系图表示所述线画图子图所表示的物体之间的共存关系,所述共存关系是指所述两个线画图子图所表示的物体之间没有共享任何一个平面或者所述两个线画图子图所表示的物体之间的公共面只存在于同一个平面上;
在所述共存关系图中找到最大权值团,确定所述最大权值团的顶点对应的线画图子图,其中,团是一个拥有顶点和边的图,所述团中的任意两个顶点之间都有一条边连接,所述最大权值团是在所述共存关系图的所有团中权值之和最大的团。
结合上述任意之一实施例的本发明第一方面的第五实施例中,所述所述根据所述线画图子图重建三维子物体包括:
根据最小化目标函数得到所述线画图子图的顶点的深度值;获取所述线画图子图的顶点坐标;获取三维子物体的面;
根据所述线画图子图的顶点的深度值、所述线画图子图的顶点坐标和所述三维子物体的面得到所述三维子物体。
结合上述任意之一实施例的本发明第一方面的第六实施例中,所述组合全部的所述三维子物体得到所述三维物体,包括:通过部位结合的方式组合全部的所述三维子物体,得到所述三维物体,所述部位结合的方式包括下列至少之一的方式:点点结合、点线结合、点面结合、线线结合、线面结合、面面结合和点线面结合。
结合本发明第一方面第六实施例的本发明第一方面的第七实施例中,所述通过部位结合的方式组合全部的所述三维子物体,得到所述三维物体,具体包括:根据所述二维线画图信息得到所述三维子物体的结合部位信息;
根据所述三维子物体的结合部位信息调整所述三维子物体的大小,得到调整后的三维子物体;
组合所述调整后的三维子物体得到初始三维物体;
根据最小化目标函数调整所述初始三维物体,得到所述三维物体。
结合上述任意之一实施例的本发明第一方面的第八实施例中,通过下列之一的方式获取所述三维物体的二维线画图信息:通过摄像设备拍摄的方式、通过触摸设备输入的方式、通过鼠标输入的方式和通过从预先存储的照片中提取线画图的方式。
本发明第二方面的实施例公开了一种三维物体重建的方法,所述方法包括:
获取三维物体的二维线画图,以及所述二维线画图中的顶点坐标、顶点之间的线段信息;
根据所述二维线画图的顶点坐标和所述顶点之间的线段信息分割所述二维线画图,得到至少一个的线画图子图;
根据每一个所述线画图子图重建一个对应的三维子物体;
组合全部的所述三维子物体得到三维物体。
根据本发明实施例的三维物体重建的方法,可以对由平面组成的物体的线画图进行合理的分割和重建,且二维线画图的输入方式较为简便。
在本发明第二方面的第一实施例中,所述根据所述二维线画图的顶点坐标和所述顶点之间的线段信息分割所述二维线画图,得到至少一个的线画图子图,具体包括:
根据所述二维线画图的顶点和所述顶点之间的线段信息获得二维线画图的面信息;
根据所述二维线画图的面信息分割所述二维线画图,得到至少一个的所述线画图子图。
结合本发明第二方面的第一实施例的本发明第二方面的第二实施例中,所述根据所述二维线画图的面信息分割所述二维线画图,得到至少一个的所述线画图子图包括:
在所述全部的二维线画图的面中选择任意一对还没有选择过的相邻的面,作为第一线画图面和第二线画图面;
设置第一集合为空集,将所述第一线画图面和所述第二线画图面标定为确定面并加入到所述第一集合中;
在全部的所述二维线画图的面中将除所述第一线画图面和所述第二线画图面的其它线画图面标定为不确定面;
在所述不确定面中选择第三线画图面,将所述第三线画图面标定为确定面并加入到所述第一集合中,重复本步骤直到遍历完全部的所述不确定面,其中,所述第三线画图面至少有三个不共线的顶点,且所述不共线的顶点是所述第一集合中的线画图面的顶点;
根据所述第一集合中的确定面得到一个对应的线画图子图;
重复以上步骤,直到所述全部的二维线画图的面中的所有相邻面对都被选择过一次。
结合本发明第二方面第二实施例的本发明第二方面的第三实施例中,如果所述第一集合中的确定面的数目不小于三,则在根据所述第一集合中的确定面得到一个对应的线画图子图之后,所述方法还包括:将所述第一集合所表示的线画图子图加入到第二集合中;
根据所述第二集合中所有的线画图子图得到共存关系图,其中,所述共存关系图的一个顶点表示一个所述线画图子图,所述线画图子图所具有的面的个数做为所述顶点的权值,如果两个所述线画图子图之间存在共存关系,则对应两个所述线画图子图的顶点之间有连线连接;
所述共存关系图表示所述线画图子图所表示的物体之间的共存关系,所述共存关系是指所述两个线画图子图所表示的物体之间没有共享任何一个平面或者所述两个线画图子图所表示的物体之间的公共面只存在于同一个平面上;
在所述共存关系图中找到最大权值团,确定所述最大权值团的顶点对应的线画图子图,其中,团是一个拥有顶点和边的图,所述团中的任意两个顶点之间都有一条边连接,所述最大权值团是在所述共存关系图的所有团中权值之和最大的团。
结合上述本发明第二方面任意之一实施例的本发明第二方面的第四实施例中,所述根据一个所述线画图子图重建一个对应的三维子物体,包括:
根据最小化目标函数得到所述线画图子图的顶点的深度值;
获取所述线画图子图的顶点坐标;
获取三维子物体的面;
根据所述线画图子图的顶点的深度值、所述线画图子图的顶点坐标和所述三维子物体的面得到所述三维子物体。
结合上述本发明第二方面任意之一实施例的本发明第二方面的第五实施例中,所述组合全部的所述三维子物体得到所述三维物体,包括:
通过部位结合的方式组合全部的所述三维子物体,得到所述三维物体,所述部位结合的方式包括下列至少之一的方式:
点点结合、点线结合、点面结合、线线结合、线面结合、面面结合和点线面结合。
结合本发明第二方面第五实施例的本发明第二方面的第六实施例中,所述通过部位结合的方式组合全部的所述三维子物体,得到所述三维物体,具体包括:
根据所述二维线画图信息得到所述三维子物体的结合部位信息;
根据所述三维子物体的结合部位信息调整所述三维子物体的大小,得到调整后的三维子物体;
组合所述调整后的三维子物体得到初始三维物体;
根据最小化目标函数调整所述初始三维物体,得到所述三维物体。
结合上述本发明第二方面任意之一实施例的本发明第二方面的第七实施例中,通过下列之一的方式获取所述二维线画图信息:
通过摄像设备拍摄的方式、通过触摸设备输入的方式、通过鼠标输入的方式、通过从预先存储的照片中提取线画图的方式。
本发明第三方面的实施例公开了一种三维物体重建的装置,所述装置包括:
获取模块,用于获取三维物体的二维线画图信息,所述二维线画图信息包括二维线画图;
分割模块,用于根据所述获取模块获取的所述二维线画图信息,按照自由度分割所述二维线画图,得到至少一个线画图子图,其中,所述自由度为确定一个由平面组成的三维物体的空间位置所需要知道的最少的顶点的个数;
重建模块,用于根据所述分割模块得到的所述线画图子图重建三维子物体;
组合模块,用于组合全部的所述三维子物体重建模块得到的所述三维子物体得到三维物体。
根据本发明实施例的三维物体重建的装置,可以对由平面组成的物体的线画图进行合理的分割和重建,且二维线画图的输入方式较为简便。
在本发明第三方面的第一实施例中,所述分割模块包括:
面信息获取单元,用于根据所述获取模块获得的所述二维线画图信息得到二维线画图的顶点坐标、顶点之间的线段信息,根据所述二维线画图的顶点坐标和所述顶点之间的线段信息得到二维线画图的面信息;
面分割单元,用于根据所述面信息获取单元得到的所述二维线画图的面信息,按照所述自由度分割所述二维线画图,得到至少一个所述线画图子图。
结合本发明第三方面的第一实施例的本发明第三方面的第二实施例中,所述面分割单元具体用于:
在所述全部的二维线画图的面中选择任意一对还没有选择过的相邻的面,作为第一线画图面和第二线画图面;
设置第一集合为空集,将所述第一线画图面和所述第二线画图面标定为确定面并加入到所述第一集合中;
在全部的所述二维线画图的面中将除所述第一线画图面和所述第二线画图面的其它线画图面标定为不确定面;
在所述不确定面中选择第三线画图面,将所述第三线画图面标定为确定面并加入到所述第一集合中,重复本步骤直到遍历完全部的所述不确定面,其中,所述第三线画图面至少有三个不共线的顶点,且所述不共线的顶点是所述第一集合中的线画图面的顶点;
根据所述第一集合中的确定面得到一个对应的线画图子图;
重复以上步骤,直到所述全部的二维线画图的面中的所有相邻面对都被选择过一次。
结合本发明第三方面的第二实施例的本发明第三方面的第三实施例中,如果所述第一集合中的确定面的数目不小于三,则所述面分割单元还用于:将所述第一集合所表示的线画图子图加入到第二集合中;
根据所述第二集合中所有的线画图子图得到共存关系图,其中,所述共存关系图的一个顶点表示一个所述线画图子图,所述线画图子图所具有的面的个数做为所述顶点的权值,如果两个所述线画图子图之间存在共存关系,则对应两个所述线画图子图的顶点之间有连线连接;所述共存关系图表示所述线画图子图所表示的物体之间的共存关系,所述共存关系是指所述两个线画图子图所表示的物体之间没有共享任何一个平面或者所述两个线画图子图所表示的物体之间的公共面只存在于同一个平面上;
在所述共存关系图中找到最大权值团,确定所述最大权值团的顶点对应的线画图子图,其中,团是一个拥有顶点和边的图,所述团中的任意两个顶点之间都有一条边连接,所述最大权值团是在所述共存关系图的所有团中权值之和最大的团。
结合上述本发明第三方面任意之一实施例的本发明第三方面的第四实施例中,所述重建模块包括:
重建信息获取单元,用于根据最小化目标函数得到所述线画图子图的顶点的深度值,获取所述线画图子图的顶点坐标,获取三维子物体的面;
重建单元,用于根据所述重建信息获取单元得到的所述线画图子图的顶点的深度值、所述线画图子图的顶点坐标和所述三维子物体的面得到所述三维子物体。
结合上述本发明第三方面任意之一实施例的本发明第三方面的第五实施例中,所述组合模块具体用于:
通过部位结合的方式组合全部的所述三维子物体,得到所述三维物体,所述部位结合的方式包括下列至少之一的方式:
点点结合、点线结合、点面结合、线线结合、线面结合、面面结合和点线面结合。
结合上述本发明第三方面任意之一实施例的本发明第三方面的第六实施例中,所述组合模块具体用于:
根据所述二维线画图信息得到所述三维子物体的结合部位信息;
根据所述三维子物体的结合部位信息调整所述三维子物体的大小,得到调整后的三维子物体;
组合所述调整后的三维子物体得到初始三维物体;
根据最小化目标函数调整所述初始三维物体,得到所述三维物体。
结合上述本发明第三方面、第三方面第一至第五任意之一实施例的本发明第三方面的第七实施例中,所述获取模块通过下列之一的方式获取所述三维物体的二维线画图信息:
通过摄像设备拍摄的方式、通过触摸设备输入的方式、通过鼠标输入的方式和通过从预先存储的照片中提取线画图的方式。
本发明第四方面的实施例公开了一种三维物体重建的装置,所述装置包括:
信息获取模块,用于获取三维物体的二维线画图,以及所述二维线画图中的顶点坐标、顶点之间的线段信息;
线画图子图分割模块,用于根据所述信息获取模块获取的所述二维线画图的顶点坐标和所述顶点之间的线段信息分割所述二维线画图,得到至少一个的线画图子图;
三维子物体重建模块,用于根据所述线画图子图分割模块得到的每一个所述线画图子图重建一个对应的三维子物体;
三维物体组合模块,用于组合所述三维子物体重建模块重建的全部的所述三维子物体得到三维物体。
根据本发明实施例的三维物体重建的装置,可以对由平面组成的物体的线画图进行合理的分割和重建,且二维线画图的输入方式较为简便。
在本发明第四方面的第一实施例中,所述线画图子图分割模块,包括:
二维线画图的面信息获取单元,根据所述信息获取模块获取的二维线画图的顶点和所述顶点之间的线段信息获得二维线画图的面信息;
线画图子图分割单元,用于根据所述二维线画图的面信息获取单元获取的所述二维线画图的面信息分割所述二维线画图,得到至少一个的所述线画图子图。
结合本发明第四方面的第一实施例的本发明第四方面的第二实施例中,所述线画图子图分割单元具体用于:
在所述全部的二维线画图的面中选择任意一对还没有选择过的相邻的面,作为第一线画图面和第二线画图面;
设置第一集合为空集,将所述第一线画图面和所述第二线画图面标定为确定面并加入到所述第一集合中;
在全部的所述二维线画图的面中将除所述第一线画图面和所述第二线画图面的其它线画图面标定为不确定面;
在所述不确定面中选择第三线画图面,将所述第三线画图面标定为确定面并加入到所述第一集合中,重复本步骤直到遍历完全部的所述不确定面,其中,所述第三线画图面至少有三个不共线的顶点,且所述不共线的顶点是所述第一集合中的线画图面的顶点;
根据所述第一集合中的确定面得到一个对应的线画图子图;
重复以上步骤,直到所述全部的二维线画图的面中的所有相邻面对都被选择过一次。
结合本发明第四方面的第二实施例的本发明第四方面的第三实施例中,所述线画图子图分割单元还用于:
如果所述第一集合中的确定面的数目不小于三,则将所述第一集合所表示的线画图子图加入到第二集合中;
根据所述第二集合中所有的线画图子图得到共存关系图,其中,所述共存关系图的一个顶点表示一个所述线画图子图,所述线画图子图所具有的面的个数做为所述顶点的权值,如果两个所述线画图子图之间存在共存关系,则对应两个所述线画图子图的顶点之间有连线连接;
所述共存关系图表示所述线画图子图所表示的物体之间的共存关系,所述共存关系是指所述两个线画图子图所表示的物体之间没有共享任何一个平面或者所述两个线画图子图所表示的物体之间的公共面只存在于同一个平面上;
在所述共存关系图中找到最大权值团,确定所述最大权值团的顶点对应的线画图子图,其中,团是一个拥有顶点和边的图,所述团中的任意两个顶点之间都有一条边连接,所述最大权值团是在所述共存关系图的所有团中权值之和最大的团。
结合上述本发明第四方面任意之一实施例的本发明第四方面的第四实施例中,所述三维子物体重建模块包括:
三维子物体重建信息获取单元,用于根据最小化目标函数得到所述线画图子图的顶点的深度值,获取所述线画图子图的顶点坐标,获取三维子物体的面;
三维子物体重建单元,用于根据所述三维子物体重建信息获取单元得到的所述线画图子图的顶点的深度值、所述线画图子图的顶点坐标和所述三维子物体的面得到所述三维子物体。
结合上述本发明第四方面任意之一实施例的本发明第四方面的第五实施例中,所述三维物体组合模块具体用于:
通过部位结合的方式组合全部的所述三维子物体,得到所述三维物体,所述部位结合的方式包括下列至少之一的方式:
点点结合、点线结合、点面结合、线线结合、线面结合、面面结合和点线面结合。
结合上述本发明第四方面、第四方面第一至第四任意之一实施例的本发明第三方面的第六实施例中,所述三维物体组合模块具体用于:
根据所述二维线画图信息得到所述三维子物体的结合部位信息;
根据所述三维子物体的结合部位信息调整所述三维子物体的大小,得到调整后的三维子物体;
组合所述调整后的三维子物体得到初始三维物体;
根据最小化目标函数调整所述初始三维物体,得到所述三维物体。
本发明第五方面的实施例公开了一种三维物体重建的终端,所述终端包括:如本发明第三方面实施例和第四方面实施例任意之一所述的三维物体重建装置,显示器,其中,所述显示器用于显示所述三维物体。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为根据本发明实施例的一种三维物体重建方法的流程图。
图2为根据本发明另一实施例的一种三维物体重建方法的流程图。
图3为根据本发明实施例的一种三维物体重建的具体示例。
图4为根据本发明实施例的另一种三维物体重建的具体示例。
图5为根据本发明实施例的将基本物体组合为三维物体的具体示例。
图6为根据本发明实施例的通过线段将基本物体组合为三维物体的具体示例。
图7为根据本发明实施例的通过照片获取二维线画图信息重建三维物体的具体示例。
图8为根据本发明实施例重建的三维物体的不同角度的效果示意图。
图9为根据本发明实施例计算方式得到线画图的面的一种示例。
图10为根据本发明实施例的一种三维物体重建方法的流程图。
图11为根据本发明实施例的一种三维物体重建装置的示意图。
图12为根据本发明另一实施例的一种三维物体重建装置的示意图。
图13为根据本发明实施例的一种三维物体重建终端的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合图1描述根据本发明实施例的一种三维物体重建的方法,如图1所示,所述方法包括:
S11:获取三维物体的二维线画图信息,所述二维线画图信息包括二维线画图。
S12:根据自由度和所述二维线画图信息分割所述二维线画图,得到至少一个线画图子图,其中,所述自由度为确定一个由平面组成的三维物体的空间位置所需要知道的最少的顶点的个数。
S13:根据所述线画图子图重建三维子物体。
S14:组合全部的所述三维子物体得到所述三维物体。
根据本发明实施例的三维物体的重建方法,可以对由平面组成的物体的线画图进行合理的分割和重建,且二维线画图的输入方式较为简便。
下面结合图10描述根据本发明另一实施例的一种三维物体重建的方法,如图10所示,
S101:获取三维物体的二维线画图,以及所述二维线画图中的顶点坐标、顶点之间的线段信息。
S102:根据所述二维线画图的顶点坐标和所述顶点之间的线段信息分割所述二维线画图,得到至少一个的线画图子图。
S103:根据每一个所述线画图子图重建一个对应的三维子物体。
S104:组合全部的所述三维子物体得到三维物体。
根据本发明实施例的三维物体的重建方法,可以对由平面组成的物体的线画图进行合理的分割和重建,且二维线画图的输入方式较为简便。
本专利的一个实施例旨在解决根据获得的二维线画图,在缺少深度信息的情况下,如何自动重建三维物体的技术问题。
具体地说,本专利的实施例通过一种方法把线画图按物体的自由度进行分割,然后把分割之后的子图分别重建为子物体,再把这些子物体按面、线、点结合的方式合并得到最终完整的三维物体。
由于分割之后的线画图比原线画图简单得多,因此从分割后的子图分别重建三维子物体容易得到全局最优结果,更加符合人们视觉感知规律。这种方式可以解决现有技术中对复杂线画图重建三维物体时经常陷入局部最优,从而无法得到正确的三维重建物体的问题。同时,这种分割、重建、组合三维物体的方式可以正确重建复杂的三维物体。
在本发明的一个实施例中,如图2-图7所示,利用物体的自由度,对线画图进行符合人们视觉感知的分割,其分割结果为表示三维子物体的线画图子图,对分割后的表示基本子物体的子线画图进行三维重建,然后组合重建后的三维子物体得到重建的三维物体。
S21:把线画图分解为表示基本子物体的线画图子图。
线画图是由直线线段组合而成的平面图。
物体的自由度是指确定一个三维物体所需要的最少的已知3D坐标的顶点个数。
在本发明的一个实施例中,自由度是确定一个由平面组成的三维物体的空间位置所需要知道的最少的顶点的个数。
三维物体可以是物体的三维多边形表示。三维物体既可以是实际存在的物体,也可以是虚拟的图形化表示。
在本发明的一个实施例中,物体可以是含有多个流形的固体,或者是单一流形的固体,或者是非固体。其中,多个流形可以是固体的一个子集。例如:复杂的房子是一个固体,房子可以由栅栏、烟筒、窗户等流形组成。
流形的一般定义如下:流形,或者更准确的说是2D流形,是局部具有欧几里得空间性质的空间,是欧几里得空间中的曲线、曲面等概念的推广。欧几里得空间就是最简单的流形的实例,地球表面这样的球面则是一个稍微复杂的例子,一般的流形可以通过把许多平直的片折弯并粘连而成。
流形在数学中用于描述几何形体,它们为研究形体的可微性提供了一个自然的平台。物理上,经典力学的相空间和构造广义相对论的时空模型的四维伪黎曼流形都是流形的实例。位形空间中也可以定义流形,环面就是双摆的位形空间。
所需要的最少是指重建一个三维物体所需要的顶点集合中使用的顶点数量最少。
已知3D坐标的顶点是指顶点的三维坐标(x、y、z坐标)都可以获知的顶点。在本专利中,三维物体的顶点是三维物体的边相交的交点;线画图的顶点是所述线画图表示的三维物体的顶点在所述线画图平面上的投影点(注:也就是线画图的顶点肯定是所述线画图的线段的交点,但是所述线画图的线段的交点不一定是所述线画图的顶点);图(graph)的顶点则是所述图建构上的一个固定点(图是由这些顶点和顶点之间的连线组成的结构)。通常在本专利中,在讲三维物体的时候使用的“顶点”一词表示的是三维物体的顶点,在讲线画图的时候用的“顶点”一词表示的是线画图的顶点,在讲图(结构)的时候用的“顶点”一词表示的是图(结构)的顶点,如有可能混淆的时候本专利会使用完整的名词来表示。
三维物体的顶点可以包括确定顶点和不确定顶点。确定顶点是已知(x、y、z)坐标的顶点,确定顶点可以是已知3D坐标的顶点,不确定顶点是顶点3D坐标不能完全确定的顶点。
例如,对于一个立方体,该立方体的自由度为4,即只要知道该立方体的4个不共面顶点的3D坐标即可以根据立体解析几何的方法确定该立方体的3D模型。所需要的最少的已知3D坐标的顶点个数是指重建一个由平面围成的三维物体所需要知道的最少顶点数量,并不意味着随便选择最少数量的顶点就一定可以确定该三维物体。在上述例子中,如果只知道同一平面内的4个顶点的坐标并不能够确定立方体;但是若知道该立方体的4个不在同一平面上的,则可以确定立方体。
在本发明的一个实施例中,基本物体(或基本子物体,强调子物体主要是想说明这些物体时分割之后的结果)为自由度为4的物体。如图4(c)所示的物体为基本物体。
自由度为4的物体,是指确定该物体所需要的最少的已知3D坐标的顶点个数为4。
在本发明的一个实施例中,通过将两个基本物体的两个面粘合在一起就得到自由度为5的物体,在本专利中通过把一个基本物体和一个单独的(线段围城的)面(该面不和所述基本物体的任何一个面在同一个平面上)的边粘合在一起也得到一个自由度为5的物体;将两个基本物体的两个边粘合在一起可以得到自由度为6的物体;将两个基本物体的两个顶点粘合在一起可以得到自由度为7的物体。可以理解的是,上述举例只是为了帮助解释自由度的概念而做出的具体示例,并不代表对本发明实施例的具体限制。
如图4所示,首先,接收线画图信息,这些信息包括:线画图所有顶点的x、y坐标,顶点之间的线段,以及由顶点和线段计算得到的面信息。
线画图信息可以是根据用户实时输入的线画图生成的,也可以是从其他设备处获取的。例如线画图可以是由鼠标或者电脑笔在屏幕上绘出的草图,也可以是用笔在纸上绘的图,也可以是相机拍摄的线画图草图,建筑照片等等(但不局限于这些输入方式),线画图信息是线画图的数字化表示。
在本发明的一个实施例中,一个线画图可以用一个拥有边和顶点的二维图表示。用户或者设计者可以使用电脑笔、鼠标、手指(在一个触摸屏上)等工具在计算机或者移动终端的屏幕上绘出该拥有边和顶点的二维图,用户或者设计者可以绘出全部或者部分的边或顶点。
在得到输入线画图之后,我们可以通过计算得到线画图的面,然后再用所有两个相邻面进行扩展,得到一个表示基本物体的线画图子图。
在本发明的一个实施例中,可通过下面的计算方式得到线画图的面:
线画图的面的计算方法如下:(1)首先使用深度优先算法找到所有潜在面(潜在面的定义如下:它是一个环,这个环的边不相交并且环的两个非相邻顶点之间没有一条边相连)。(2)然后由这些潜在面构造出一个加权图,图的顶点表示一个潜在面,顶点的权值是该潜在面的边数;如果两个潜在面(顶点)可以共存(两个潜在面可以共存的条件是:如果它们没有公共边或者它们的公共边在同一直线上),那么这两个顶点之间有连线连接。(3)利用求最大权值团问题的算法找到最优解,这个解便为该线画图所表示的物体的面。
具体的如何计算得到线画图的面可参考J.Liu and X.Tang.Evolutionarysearch for faces from line drawings.IEEE Transactions on Pattern Analysis andMachine Intelligence(TPAMI),7(6):861–872,2005.中提供的方式。
例如我们通过图9(a)中的线画图,可以得到四个潜在面:f1(其顶点依次为a,b,c)、f2(其顶点依次为a,b,d)、f3(其顶点依次为a,d,c)、f4(其顶点依次为b,d,c)。然后根据四个面的共存关系建立权值图(如图9(b)所示)。最后利用求解最大权值团问题的算法可以得到f1、f2、f3、f4四个顶点(图9(b)中的顶点)以及它们之间的连线组成的最大权值团是需要的解。所以在这个例子中我们最后得到四个面为:f1、f2、f3、f4
在本发明的一个实施例中,可以采用下面的方式进行相邻面的扩展:
算法1:
(1)首先,初始设置一个空的集合Finit,把还没有选择过的两个相邻的面标定为确定面并加入到集合Finit中,把线画图其它所有的面标定为不确定面。
在本发明的一个实施例中,可以预先通过假设两个相邻的面的顶点的z坐标已知的方式把两个相邻的面标定为确定面。
其中,确定面是至少有三个不在同一直线上的确定顶点的面,不确定面是在三维空间的位置不能确定的面。
(2)检查一个不确定面f,如果它的顶点中至少有三个不共线,且它们都属于Finit中的面的顶点,则根据几何性质,f的所有顶点坐标都可以被计算出来。把f标定为确定面并加入到Finit中。
根据几何性质,两点可以确定一条直线,三个不共线的点可以确定一个平面。对于一个不确定面f,如果检查判断出它的顶点中有三个顶点不共线,且都属于Finit中的面的顶点,则这三个顶点是确定顶点;根据上述判断结果将不确定面f标定为确定面,并加入到集合Finit中。
(3)重复步骤(2),直到不存在任何一个可以加入Finit的不确定面。
步骤(3)可以通过遍历所有的不确定面来完成,直到找不到任何一个可以加入Finit集合的面为止。
经过上述步骤,可以得到由Finit中所有面组合而成的表示一个基本物体的线画图子图。
重复以上(1)、(2)、(3)步骤,直到所述全部的二维线画图的面中的所有相邻面对都被选择过一次,从而可以得到全部的线画图子图。
在得到所有可能的Finit集合之后,通过以下算法确定最后如何分割初始线画图为线画图子图:
算法2:
(1)设置集合SMEFS和SMWC为空集。
(2)对于每一对(两个)相邻的面,使用前一个实施例提供的算法1得到一个组成子物体的面的集合Finit,如果得到的Finit包含两个以上的面,则把这个Finit加入到集合SMEFS中。
(3)用SMEFS中的元素创建共存关系图Gobj
如果两个物体没有共享任何一个平面或者它们的公共面只存在于同一个平面上,我们就说这两个物体具有共存关系。共存关系图Gobj是用来表示线画图中的物体的共存关系。
共存关系图是由顶点和边组成的图结构,每一个分割得到的子线画图是Gobj中的一个顶点,一个子图所具有的面的个数做为该顶点的权值。如果任意两个顶点所表示的物体具有共存关系,就用一条边连接这两个顶点。这样,就可以得到一个完整的共存关系图Gobj
(4)从Gobj中找到最大权值团(maximum weight clique),并把这个最大权值团中顶点所对应的子图加入到SMWC中。
团是一个拥有顶点和边的图,其中的任意两个顶点之间都有一条边连接。最大权值团是所有团中权值之和最大的团。
(5)对于没有被包含在SMWC的子图中的面,根据原线画图,把它们连接到SMWC中与之相邻接的子图中。
在本发明的一个实施例中,对于某些特殊的线画图,可能存在没有包含在SMWC集合里的面的组合,这些线画图含有的连接的面的个数多于3个。在这种情况下,仍然可以用算法2对它进行分割,但算法1和算法2要做微小的改变。在算法1的步骤(1)中,“把两个相邻的面标定为确定面”改为“把三个相邻的面标定为确定面”;在算法2的(2)中,“对于每一对相邻的面,使用算法1得到一个组成子物体的面的集合Finit,如果得到的Finit包含两个以上的面,则把这个Finit加入到集合SMEFS中”改为“对于每三个相邻的面,使用算法1得到一个组成子物体的面的集合Finit,如果得到的Finit包含三个以上的面,则把这个Finit加入到集合SMEFS中”。
通过上述算法1或算法2,可以有效的对得到的线画图的面进行扩展,从而得到分割后的线画图的子图。
S22:从每一个线画图子图重建对应的三维基本子物体。
通过步骤S21,把一个线画图分割为了多个表示物体的线画图子图,每一个子图都可以被看做是一个非常简单的线画图。现在可以利用最小化目标函数推导出线画图子图中
所有顶点的深度值。其中的建立使用了MSDA(MinimumStandard Deviation of Angles,角的最小标准偏差)、面的平面性、线的平行性、等距性、角的正交性五条规则,它们的解释如下:MSDA规则要求三维物体在所有顶点上的角的标准偏差最小;面的平面性规则要求在一个面上的所有顶点在三维空间上共平面;线的平行性规则要求在线画图上平行的一对直线在三维空间中也平行;等距性规则要求三维空间中物体的边的比率与它们在线画图上的比率相同;角的正交性要求,如果一个由三条线形成的角在线画图上满足正交的角条件,它在三维空间中的三个角正交。Nv是这个子物体的顶点个数,zi(i=1,2,…,Nv)表示第i个顶点的深度座标值,C是规则函数的个数。是一组给定的权值,这组权值是通过实验得到,例如可以使用100,1,20,15,20分别对应以上五个规则。
可以理解的是,上述示例只是为了帮助理解本发明的技术方案,而不应该被视为对本发明技术方案的具体限制。的定义可以使用文献[K.Shoji,K.Kato.And F.Toyama.3-D interpretation of single line drawings based onentropy minimization principle.IEEE Conference on Computer Vision and PatternRecognition(CVPR),2001]、[y.Leclerc and M.Fischler.An Optimization-BasedApproach to the Interpretation of Single Line.Drawings as 3D WireFrames.International Journal of Computer Vision(IJCV),9(2):113-136,1992]、[H.Lipson and M.Shpitaln.optimization based reconstruction of a 3d objectfrom a single freehand line drawing.Computer-Aided Design,28(7):651-663,1996]、[A.Turner,D.Chapman,and A.Penn.Sketching space.Computer and Graphics,24:869–879,2000]、[J.Liu,L.Cao,Z.Li and X.Tang.Plane-based optimization for 3Dobject reconstruction from single line drawings.IEEE Transactions on PatternAnalysis and Machine Intelligence(TPAMI),30(2):315-327,2008]中提到的规则函数,比如夹角的标准方差等函数,Nv是这个子物体的顶点个数,zi(i=1,2,…,Nv)表示第i个顶点的深度座标值,可以是文献[K.Shoji,K.Kato.And F.Toyama.3-D interpretation ofsingle line drawings based on entropy minimization principle.IEEE Conferenceon Computer Vision and Pattern Recognition(CVPR),2001]、[y.Leclerc andM.Fischler.An Optimization-Based Approach to the Interpretation of SingleLine.Drawings as 3D Wire Frames.International Journal of Computer Vision(IJCV),9(2):113-136,1992]、[H.Lipson and M.Shpitaln.optimization basedreconstruction of a 3d object from a single freehand line drawing.Computer-Aided Design,28(7):651-663,1996]、[A.Turner,D.Chapman,and A.Penn.Sketchingspace.Computer and Graphics,24:869–879,2000]、[J.Liu,L.Cao,Z.Li andX.Tang.Plane-based optimization for 3D object reconstruction from single linedrawings.IEEE Transactions on Pattern Analysis and Machine Intelligence(TPAMI),30(2):315-327,2008]等中提到的权值,C是规则函数的个数。
S23:通过点、线、面结合的方式把重建的子物体结合为完整的三维物体。
由于在步骤S22中各个子物体是分别重建的,所以在合并它们的时候需要通过原线画图得到各个子物体的结合部位信息,同时通过比较结合部位的尺寸重新调整需要结合的两个部分的大小,把所有子物体结合为整体之后,再根据最小化目标函数调整整个物体的大小,这里Nv表示整个物体的顶点个数。
可以理解的是,基本子物体的结合可以是点点处结合,也可以是点线处结合。例如需要结合的两个子物体可能结合部位是第一个物体的一个点和第二个物体也的一个点上;也可能是第一个物体的一个点和第二个物体的一条线上某个位置;也可能是第一个物体的一个点和第二个物体的一个面上某个位置;也可能是第一个物体的一条线和第二个物体的一条线上某个位置;也可能是第一个物体的一条线和第二个物体的一个面上某个位置;也可能是第一个物体的一个面和第二个物体的一个面。
下面结合附图和具体场景中的实施例对本专利进一步说明。
在本发明的一个实施例中,当我们想到一个物体并需要快速展现给其他人看时,或者需要通过搜索找到类似的物体的时候,我们可以在触屏设备上快速画出一个线画图(如图4(a)所示),触屏设备可以是平板电脑、手机等。在输入线画图之后,触屏设备可以得到对应的物体的顶点的x,y坐标和连接这些顶点的线条(如图4(b)所示)。在图4(b)中,得到的线画图对应的顶点分别是(x1,y1,?),(x2,y2,?),……,(x7,y7,?),我们把这些顶点分别命名为:v1,v2,……,v7。其中“?”表示暂时还无法确定的参数,其它诸如x1,y1等符号表示已经知道顶点坐标的数值。
然后可以根据算法1或算法2描述的方法分割线画图得到图4(c)中的两个分割好的子图。具体地说,通过以下步骤实施:
令SMEFS和SMWC为空集;
对于每一对相邻的面,使用算法1得到一个组成子物体的面的集合Finit,如果得到的Finit包含两个以上的面,则把这个Finit加入到集合SMEFS中;
用SMEFS中的元素创建共存关系图Gobj
从Gobj中找到最大权值团(maximum weight clique),并把这个最大权值团中顶点所对应的子图加入到SMWC中;
对于没有被包含在SMWC的子图中的面,根据原始输入的线画图,把它们连接到SMWC中与之相邻接的子图中。
在从线画图中分割出线画图子图之后,再对每个分割好的子图分别重建三维物体,计算出图4(b)中之前无法确定的参数值。具体的说,通过以下步骤实施:
定义最小化目标函数其中Nv是这个子物体的顶点个数,zi(i=1,2,…,Nv)表示第i个顶点的深度座标值,的定义可以使用步骤S22中提到的规则函数,可以是步骤S22中提到的权值,C是规则函数的个数。
最后重新结合这些重建的三维子物体,得到一个完整的三维物体。具体地说,我们可以通过以下步骤结合所有重建好的基本物体:
在合并它们的时候需要通过原线画图得到各个子物体的结合部位信息,同时通过比较结合部位的尺寸重新调整需要结合的两个部分的大小,把所有子物体结合为一个整体之后,再根据最小化目标函数重新调整一次整个物体的大小,这里Nv是整个物体的顶点个数。
在本发明的另一个实施例中,线画图的输入方式亦可不借助手机或平板电脑等触屏设备的手写输入,而是通过摄像头拍摄或者扫描仪扫描在图纸上的线画图的方式获得线画图。
如果是通过拍摄或者扫描的方式获取线画图后,首先得到照片中的点和线并提取出对应的线画图,如图4(b)所示。在图4(b)中,得到的线画图对应的顶点分别是(x1,y1,?),(x2,y2,?),……,(x7,y7,?),我们把这些顶点分别命名为:v1,v2,……,v7。其中“?”表示暂时无法确定的参数,其它诸如x1,y1等符号表示已经知道数值的参数。通过前述实施例中同样的步骤我们可以重建出三维物体。
在本发明的另一个实施例中,当我们得到一个线画图之后(如图5(a)所示),首先对线画图进行分割得到图5(b)的两个子图,具体的分割方式可以参考步骤S21中的算法。图5(b)有两个分割后的子线画图,它们分别是物体A和物体B。物体A的顶点分别是a1、a2、a3、a4,物体B的顶点分别是a1、b2、b3、b4,然后对图5(b)中的两个线画图子图分别进行重建得到图5(c)中的四个可能的物体。对这四个物体在a1处结合,可以得到重建后四个可能的物体。最后可以由用户选择一种认为合适的重建结果(例如图5(d))。可以理解的是,上述举例只是为了帮助理解本发明实施例而做出的一种示例,而不是对本发明实施例的具体限制,最终的重建结果也可以参考其他参数确定或者随机进行选择。
在本发明的另一个实施例中,主要展现线画图子图之间的线线结合的过程。当我们得到一个线画图之后(如图6(a)所示),首先对线画图进行分割得到图6(b)的两个子图。图6(b)有两个分割后的子图,它们分别是物体A和物体B。物体A的顶点分别是a1、a2、a3、a4,物体B的顶点分别是b1、b2、b3、b4。然后对图6(b)的两个子线画图分别进行重建得到图6(c)物体的四个可能形状。从图6(a),我们可以知道这个三维物体是由图6(c)中上面两个物体之一的a1和a3组成的线段和下面两个物体之一的b1和b2组成的线段结合在一起。在这个部位上结合图6(c)中的子物体可以得到四个可能的三维物体。最后由用户选择一种他们认为合适的重建结果(例如图6(d))。
在本发明的另一个实施例中,首先我们通过照相机拍摄一幅建筑物的照片(如图7(a)所示),然后把照片输入电脑,在电脑上使用鼠标等工具画出希望重建的建筑物的轮廓(如图7(b)所示)。在图7(b)中我们使用了虚线表示被遮挡部分的轮廓线。在画完轮廓的顶点和线段之后,使用前述实施例中的算法1或算法2中的方法对轮廓线(线画图)进行分割。在这个例子中分割之后得到的三个表示基本物体的线画图子图(如图7(c)所示)。对这些分割结果使用前述实施例中重建基本物体的方法中描述的方式重建,重建结果如图7(d)所示。最后通过前述点、线、面结合的方式把重建的子物体结合为完整的三维物体的实施例中描述的方法结合各个重建的结果,最后得到完整的三维物体(如图7(e)所示)。通过加入建筑物的纹理就可以得到最后的三维重建结果。图7(f)是从多个视角观察重建结果的示意图。
本专利提出的方法使得人们得到三维模型的绘图、输入方式更加自然、工作量更小,而且普通用户也可无需特别培训就能轻松掌握;本专利提出的方法可以对任意由平面组成的物体的线画图进行合理的分割和重建;本专利提出的方法分割出来的表示三维物体的线画图子图在重建三维物体的过程中易于得到最优解。
图8是按本专利方法重建的一些三维物体的效果图。图8给出了9个由较为复杂的线画图重建三维物体的例子,这9个例子的重建过程都是由按本专利提出的方法编写的计算机程序自动完成的。每个例子由4个子图构成,其中左上的子图表示输入的线画图,右上角是分割后的表示子物体的子线画图,右下角和左下角的图是把重建后的子物体重新组合为完整的三维物体的两个不同视角的投影图。
下面结合图11所示描述根据本发明实施例的一种三维物体重建装置110,装置110包括:
获取模块111,用于获取三维物体的二维线画图信息,二维线画图信息包括二维线画图;分割模块112,用于根据获取模块111获取的所述二维线画图信息,按照自由度分割所述二维线画图,得到至少一个线画图子图,其中,所述自由度为确定一个由平面组成的三维物体的空间位置所需要知道的最少的顶点的个数;重建模块113,用于根据分割模块112得到的所述线画图子图重建三维子物体;组合模块114,用于组合全部的重建模块113得到的三维子物体得到三维物体。
在本发明的一个实施例中,获取模块111通过下列之一的方式获取三维物体的二维线画图信息:
通过摄像设备拍摄的方式、通过触摸设备输入的方式、通过鼠标输入的方式和通过从预先存储的照片中提取线画图的方式。
在本发明的一个实施例中,分割模块112包括:面信息获取单元1121,用于根据获取模块111获得的二维线画图信息得到二维线画图的顶点坐标、顶点之间的线段信息,根据二维线画图的顶点坐标和所述顶点之间的线段信息得到二维线画图的面信息;
面分割单元1122,用于根据面信息获取单元1121得到的二维线画图的面信息,按照自由度分割所述二维线画图,得到至少一个线画图子图。
在本发明的一个实施例中,面分割单元1122具体用于:在全部的二维线画图的面中选择任意一对还没有选择过的面,作为第一线画图面和第二线画图面,其中,第一线画图面和所述第二线画图面是相邻的面;设置第一集合为空集,将第一线画图面和第二线画图面标定为确定面并加入到第一集合中;在全部的二维线画图的面中将除第一线画图面和第二线画图面的其它线画图面标定为不确定面;在不确定面中选择第三线画图面,将第三线画图面标定为确定面并加入到第一集合中,重复本步骤直到遍历完全部的不确定面,其中,第三线画图面至少有三个不共线的顶点,且不共线的顶点是第一集合中的线画图面的顶点;根据第一集合中的确定面得到一个对应的线画图子图;重复以上步骤,直到全部的二维线画图的面中的所有相邻面对都被选择过一次。
在本发明的另一个实施例中,面分割单元1122还用于:如果第一集合中的确定面的数目不小于三,则将第一集合所表示的线画图子图加入到第二集合中;
根据第二集合中所有的线画图子图得到共存关系图,其中,共存关系图的一个顶点表示一个线画图子图,线画图子图所具有的面的个数做为顶点的权值,如果两个线画图子图之间存在共存关系,则对应两个线画图子图的顶点之间有连线连接;共存关系图表示线画图子图所表示的物体之间的共存关系,共存关系是指两个线画图子图所表示的物体之间没有共享任何一个平面或者两个线画图子图所表示的物体之间的公共面只存在于同一个平面上;
在共存关系图中找到最大权值团,确定最大权值团的顶点对应的线画图子图,其中,团是一个拥有顶点和边的图,团中的任意两个顶点之间都有一条边连接,最大权值团是在共存关系图的所有团中权值之和最大的团。
在本发明的一个实施例中,重建模块113包括:
重建信息获取单元1131,用于根据最小化目标函数得到线画图子图的顶点的深度值,获取线画图子图的顶点坐标,获取三维子物体的面;
重建单元1132,用于根据重建信息获取单元1131得到的线画图子图的顶点的深度值、线画图子图的顶点坐标和三维子物体的面得到三维子物体。
在本发明的一个实施例中,组合模块114具体用于:
通过部位结合的方式组合全部的三维子物体,得到三维物体,部位结合的方式包括下列至少之一的方式:
点点结合、点线结合、点面结合、线线结合、线面结合、面面结合和点线面结合。
在本发明的一个实施例中,组合模块114具体用于:
根据二维线画图信息得到三维子物体的结合部位信息;
根据三维子物体的结合部位信息调整三维子物体的大小,得到调整后的三维子物体;
组合调整后的三维子物体得到初始三维物体;
根据最小化目标函数调整初始三维物体,得到三维物体。
下面结合图12描述根据本发明实施例的一种三维物体重建的装置120,装置120包括:
信息获取模块121,用于获取三维物体的二维线画图,以及二维线画图中的顶点坐标、顶点之间的线段信息;
线画图子图分割模块122,用于根据信息获取模块121获取的二维线画图的顶点坐标和顶点之间的线段信息分割二维线画图,得到至少一个的线画图子图;
三维子物体重建模块123,用于根据线画图子图分割模块122得到的每一个线画图子图重建一个对应的三维子物体;
三维物体组合模块124,用于组合三维子物体重建模块123重建的全部的三维子物体得到三维物体。
在本发明的一个实施例中,线画图子图分割模块122,包括:
二维线画图的面信息获取单元1221,根据信息获取模块121获取的二维线画图的顶点和顶点之间的线段信息获得二维线画图的面信息;
线画图子图分割单元1222,用于根据二维线画图的面信息获取单元1221获取的二维线画图的面信息分割所述二维线画图,得到至少一个的线画图子图。
在本发明的一个实施例中,线画图子图分割单元1222具体用于:
在全部的二维线画图的面中选择任意一对还没有选择过的面,作为第一线画图面和第二线画图面,其中,第一线画图面和第二线画图面是相邻的面;
设置第一集合为空集,将第一线画图面和第二线画图面标定为确定面并加入到第一集合中;
在全部的二维线画图的面中将除第一线画图面和第二线画图面的其它线画图面标定为不确定面;
在不确定面中选择第三线画图面,将第三线画图面标定为确定面并加入到第一集合中,重复本步骤直到遍历完全部的不确定面,其中,第三线画图面至少有三个不共线的顶点,且不共线的顶点是第一集合中的线画图面的顶点;
根据第一集合中的确定面得到一个对应的线画图子图;
重复以上步骤,直到全部的二维线画图的面中的所有相邻面对都被选择过一次。
在本发明的一个实施例中,如果第一集合中的确定面的数目不小于三,则线画图子图分割单元1222还用于:
将第一集合所表示的线画图子图加入到第二集合中;
根据第二集合中所有的线画图子图得到共存关系图,其中,共存关系图的一个顶点表示一个线画图子图,线画图子图所具有的面的个数做为顶点的权值,如果两个线画图子图之间存在共存关系,则对应两个线画图子图的顶点之间有连线连接;
共存关系图表示线画图子图所表示的物体之间的共存关系,共存关系是指两个线画图子图所表示的物体之间没有共享任何一个平面或者两个线画图子图所表示的物体之间的公共面只存在于同一个平面上;
在共存关系图中找到最大权值团,确定最大权值团的顶点对应的线画图子图,其中,团是一个拥有顶点和边的图,团中的任意两个顶点之间都有一条边连接,最大权值团是在共存关系图的所有团中权值之和最大的团。
在本发明的一个实施例中,三维子物体重建模块123包括:
三维子物体重建信息获取单元1231,用于根据最小化目标函数得到线画图子图的顶点的深度值,获取线画图子图的顶点坐标,获取三维子物体的面;
三维子物体重建单元1232,用于根据重建信息获取单元1231得到的线画图子图的顶点的深度值、线画图子图的顶点坐标和三维子物体的面得到三维子物体。
在本发明的一个实施例中,三维物体组合模块124具体用于:
通过部位结合的方式组合全部的三维子物体,得到三维物体,部位结合的方式包括下列至少之一的方式:
点点结合、点线结合、点面结合、线线结合、线面结合、面面结合和点线面结合。
在本发明的一个实施例中,三维物体组合模块124具体用于:
根据二维线画图信息得到三维子物体的结合部位信息;
根据三维子物体的结合部位信息调整三维子物体的大小,得到调整后的三维子物体;
组合调整后的三维子物体得到初始三维物体;
根据最小化目标函数调整初始三维物体,得到三维物体。
下面结合图13描述根据本发明实施例的一种三维物体重建的终端130,终端130包括:三维物体重建装置131,显示器132,其中,显示器132用于显示三维物体。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的终端、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的终端、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (25)

1.一种三维物体重建的方法,其特征在于,所述方法包括:
得到三维物体的二维线画图信息,所述二维线画图信息包括二维线画图;
根据所述二维线画图信息,按照自由度分割所述二维线画图,得到至少一个线画图子图,其中,所述自由度为确定一个由平面组成的三维物体的空间位置所需要知道的最少的顶点的个数;
所述根据所述二维线画图信息,按照自由度分割所述二维线画图得到至少一个线画图子图包括:
根据所述二维线画图信息得到二维线画图的顶点坐标、顶点之间的线段信息,根据所述二维线画图的顶点坐标和所述顶点之间的线段信息得到二维线画图的面信息;
根据所述二维线画图的面信息,按照所述自由度分割所述二维线画图,得到至少一个所述线画图子图;
所述二维线画图的面信息包括二维线画图的面;
所述根据所述二维线画图的面信息,按照所述自由度分割所述二维线画图,得到至少一个所述线画图子图,具体包括:
在全部的所述二维线画图的面中选择任意一对还没有选择过的相邻的面,作为第一线画图面和第二线画图面;
设置第一集合为空集,将所述第一线画图面和所述第二线画图面标定为确定面并加入到所述第一集合中;
在全部的所述二维线画图的面中将除所述第一线画图面和所述第二线画图面的其它线画图面标定为不确定面;
在所述不确定面中选择第三线画图面,将所述第三线画图面标定为确定面并加入到所述第一集合中,重复本步骤直到遍历完全部的所述不确定面,其中,所述第三线画图面至少有三个不共线的顶点,且所述不共线的顶点是所述第一集合中的线画图面的顶点;
根据所述第一集合中的确定面得到一个对应的线画图子图;
重复以上步骤,直到全部的所述二维线画图的面中的所有相邻面对都被选择过一次;
根据所述线画图子图重建三维子物体;
组合全部的所述三维子物体得到三维物体。
2.如权利要求1所述的三维物体重建的方法,其特征在于,每一个所述线画图子图对应一个三维子物体;
在全部所述线画图子图中,任意一个线画图子图所表示的三维子物体的最小的自由度为4。
3.如权利要求1所述的三维物体重建的方法,其特征在于,如果所述第一集合中的确定面的数目不小于三,在根据所述第一集合中的确定面得到一个对应的线画图子图之后,所述方法还包括:
将所述第一集合所表示的线画图子图加入到第二集合中;
根据所述第二集合中所有的线画图子图得到共存关系图,其中,所述共存关系图的一个顶点表示一个所述线画图子图,所述线画图子图所具有的面的个数做为所述顶点的权值,如果两个所述线画图子图之间存在共存关系,则对应两个所述线画图子图的顶点之间有连线连接;所述共存关系图表示所述线画图子图所表示的物体之间的共存关系,所述共存关系是指所述两个线画图子图所表示的物体之间没有共享任何一个平面或者所述两个线画图子图所表示的物体之间的公共面只存在于同一个平面上;
在所述共存关系图中找到最大权值团,确定所述最大权值团的顶点对应的线画图子图,其中,团是一个拥有顶点和边的图,所述团中的任意两个顶点之间都有一条边连接,所述最大权值团是在所述共存关系图的所有团中权值之和最大的团。
4.如权利要求1-3任意之一所述的三维物体重建的方法,其特征在于,所述根据所述线画图子图重建三维子物体,包括:
根据最小化目标函数得到所述线画图子图的顶点的深度值;
获取所述线画图子图的顶点坐标;
获取三维子物体的面;
根据所述线画图子图的顶点的深度值、所述线画图子图的顶点坐标和所述三维子物体的面得到所述三维子物体。
5.如权利要求1-3任意之一所述的三维物体重建的方法,其特征在于,所述组合全部的所述三维子物体得到所述三维物体,包括:
通过部位结合的方式组合全部的所述三维子物体,得到所述三维物体,所述部位结合的方式包括下列至少之一的方式:
点点结合、点线结合、点面结合、线线结合、线面结合、面面结合和点线面结合。
6.如权利要求5所述的三维物体重建的方法,其特征在于,所述通过部位结合的方式组合全部的所述三维子物体,得到所述三维物体,具体包括:
根据所述二维线画图信息得到所述三维子物体的结合部位信息;
根据所述三维子物体的结合部位信息调整所述三维子物体的大小,得到调整后的三维子物体;
组合所述调整后的三维子物体得到初始三维物体;
根据最小化目标函数调整所述初始三维物体,得到所述三维物体。
7.如权利要求1-3任意之一所述的三维物体重建的方法,其特征在于,通过下列之一的方式获取所述三维物体的二维线画图信息:
通过摄像设备拍摄的方式、通过触摸设备输入的方式、通过鼠标输入的方式和通过从预先存储的照片中提取线画图的方式。
8.一种三维物体重建的方法,其特征在于,所述方法包括:
获取三维物体的二维线画图,以及所述二维线画图中的顶点坐标、顶点之间的线段信息;
根据所述二维线画图的顶点坐标和所述顶点之间的线段信息分割所述二维线画图,得到至少一个的线画图子图;
所述根据所述二维线画图的顶点坐标和所述顶点之间的线段信息分割所述二维线画图,得到至少一个的线画图子图,具体包括:
根据所述二维线画图的顶点和所述顶点之间的线段信息获得二维线画图的面信息;
根据所述二维线画图的面信息分割所述二维线画图,得到至少一个的所述线画图子图;
所述根据所述二维线画图的面信息分割所述二维线画图,得到至少一个的所述线画图子图包括:
在全部的所述二维线画图的面中选择任意一对还没有选择过的相邻的面,作为第一线画图面和第二线画图面;
设置第一集合为空集,将所述第一线画图面和所述第二线画图面标定为确定面并加入到所述第一集合中;
在全部的所述二维线画图的面中将除所述第一线画图面和所述第二线画图面的其它线画图面标定为不确定面;
在所述不确定面中选择第三线画图面,将所述第三线画图面标定为确定面并加入到所述第一集合中,重复本步骤直到遍历完全部的所述不确定面,其中,所述第三线画图面至少有三个不共线的顶点,且所述不共线的顶点是所述第一集合中的线画图面的顶点;
根据所述第一集合中的确定面得到一个对应的线画图子图;
重复以上步骤,直到全部的所述二维线画图的面中的所有相邻面对都被选择过一次;
根据每一个所述线画图子图重建一个对应的三维子物体;
组合全部的所述三维子物体得到三维物体。
9.如权利要求8所述的方法,其特征在于,如果所述第一集合中的确定面的数目不小于三,在根据所述第一集合中的确定面得到一个对应的线画图子图之后,所述方法还包括:
将所述第一集合所表示的线画图子图加入到第二集合中;
根据所述第二集合中所有的线画图子图得到共存关系图,其中,所述共存关系图的一个顶点表示一个所述线画图子图,所述线画图子图所具有的面的个数做为所述顶点的权值,如果两个所述线画图子图之间存在共存关系,则对应两个所述线画图子图的顶点之间有连线连接;
所述共存关系图表示所述线画图子图所表示的物体之间的共存关系,所述共存关系是指所述两个线画图子图所表示的物体之间没有共享任何一个平面或者所述两个线画图子图所表示的物体之间的公共面只存在于同一个平面上;
在所述共存关系图中找到最大权值团,确定所述最大权值团的顶点对应的线画图子图,其中,团是一个拥有顶点和边的图,所述团中的任意两个顶点之间都有一条边连接,所述最大权值团是在所述共存关系图的所有团中权值之和最大的团。
10.如权利要求8或9所述的三维物体重建的方法,其特征在于,所述根据每一个所述线画图子图重建一个对应的三维子物体,包括:
根据最小化目标函数得到所述线画图子图的顶点的深度值;
获取所述线画图子图的顶点坐标;
获取三维子物体的面;
根据所述线画图子图的顶点的深度值、所述线画图子图的顶点坐标和所述三维子物体的面得到所述三维子物体。
11.如权利要求8或9所述的三维物体重建的方法,其特征在于,所述组合全部的所述三维子物体得到所述三维物体,包括:
通过部位结合的方式组合全部的所述三维子物体,得到所述三维物体,所述部位结合的方式包括下列至少之一的方式:
点点结合、点线结合、点面结合、线线结合、线面结合、面面结合和点线面结合。
12.如权利要求11所述的三维物体重建的方法,其特征在于,所述通过部位结合的方式组合全部的所述三维子物体,得到所述三维物体,具体包括:
根据所述二维线画图信息得到所述三维子物体的结合部位信息;
根据所述三维子物体的结合部位信息调整所述三维子物体的大小,得到调整后的三维子物体;
组合所述调整后的三维子物体得到初始三维物体;
根据最小化目标函数调整所述初始三维物体,得到所述三维物体。
13.如权利要求8或9所述的三维物体重建的方法,其特征在于,通过下列之一的方式获取所述二维线画图信息:
通过摄像设备拍摄的方式、通过触摸设备输入的方式、通过鼠标输入的方式、通过从预先存储的照片中提取线画图的方式。
14.一种三维物体重建装置,其特征在于,所述装置包括:
获取模块,用于获取三维物体的二维线画图信息,所述二维线画图信息包括二维线画图;
分割模块,用于根据所述获取模块获取的所述二维线画图信息,按照自由度分割所述二维线画图,得到至少一个线画图子图,其中,所述自由度为确定一个由平面组成的三维物体的空间位置所需要知道的最少的顶点的个数;
所述分割模块包括:
面信息获取单元,用于根据所述获取模块获得的所述二维线画图信息得到二维线画图的顶点坐标、顶点之间的线段信息,根据所述二维线画图的顶点坐标和所述顶点之间的线段信息得到二维线画图的面信息;
面分割单元,用于根据所述面信息获取单元得到的所述二维线画图的面信息,按照所述自由度分割所述二维线画图,得到至少一个所述线画图子图;
所述面分割单元具体用于:
在全部的所述二维线画图的面中选择任意一对还没有选择过的相邻的面,作为第一线画图面和第二线画图面;
设置第一集合为空集,将所述第一线画图面和所述第二线画图面标定为确定面并加入到所述第一集合中;
在全部的所述二维线画图的面中将除所述第一线画图面和所述第二线画图面的其它线画图面标定为不确定面;
在所述不确定面中选择第三线画图面,将所述第三线画图面标定为确定面并加入到所述第一集合中,重复本步骤直到遍历完全部的所述不确定面,其中,所述第三线画图面至少有三个不共线的顶点,且所述不共线的顶点是所述第一集合中的线画图面的顶点;
根据所述第一集合中的确定面得到一个对应的线画图子图;
重复以上步骤,直到全部的所述二维线画图的面中的所有相邻面对都被选择过一次;
重建模块,用于根据所述分割模块得到的所述线画图子图重建三维子物体;
组合模块,用于组合全部的所述重建模块得到的所述三维子物体得到三维物体。
15.如权利要求14所述的三维物体重建装置,其特征在于,如果所述第一集合中的确定面的数目不小于三,所述面分割单元还用于:
将所述第一集合所表示的线画图子图加入到第二集合中;
根据所述第二集合中所有的线画图子图得到共存关系图,其中,所述共存关系图的一个顶点表示一个所述线画图子图,所述线画图子图所具有的面的个数做为所述顶点的权值,如果两个所述线画图子图之间存在共存关系,则对应两个所述线画图子图的顶点之间有连线连接;所述共存关系图表示所述线画图子图所表示的物体之间的共存关系,所述共存关系是指所述两个线画图子图所表示的物体之间没有共享任何一个平面或者所述两个线画图子图所表示的物体之间的公共面只存在于同一个平面上;
在所述共存关系图中找到最大权值团,确定所述最大权值团的顶点对应的线画图子图,其中,团是一个拥有顶点和边的图,所述团中的任意两个顶点之间都有一条边连接,所述最大权值团是在所述共存关系图的所有团中权值之和最大的团。
16.如权利要求14或15所述的三维物体重建装置,其特征在于,所述重建模块包括:
重建信息获取单元,用于根据最小化目标函数得到所述线画图子图的顶点的深度值,获取所述线画图子图的顶点坐标,获取三维子物体的面;
重建单元,用于根据所述重建信息获取单元得到的所述线画图子图的顶点的深度值、所述线画图子图的顶点坐标和所述三维子物体的面得到所述三维子物体。
17.如权利要求14或15所述的三维物体重建装置,其特征在于,所述组合模块具体用于:
通过部位结合的方式组合全部的所述三维子物体,得到所述三维物体,所述部位结合的方式包括下列至少之一的方式:
点点结合、点线结合、点面结合、线线结合、线面结合、面面结合和点线面结合。
18.如权利要求14或15所述的三维物体重建装置,其特征在于,所述组合模块具体用于:
根据所述二维线画图信息得到所述三维子物体的结合部位信息;
根据所述三维子物体的结合部位信息调整所述三维子物体的大小,得到调整后的三维子物体;
组合所述调整后的三维子物体得到初始三维物体;
根据最小化目标函数调整所述初始三维物体,得到所述三维物体。
19.如权利要求14或15所述的三维物体重建装置,其特征在于,所述获取模块通过下列之一的方式获取所述三维物体的二维线画图信息:
通过摄像设备拍摄的方式、通过触摸设备输入的方式、通过鼠标输入的方式和通过从预先存储的照片中提取线画图的方式。
20.一种三维物体重建的装置,其特征在于,所述装置包括:
信息获取模块,用于获取三维物体的二维线画图,以及所述二维线画图中的顶点坐标、顶点之间的线段信息;
线画图子图分割模块,用于根据所述信息获取模块获取的所述二维线画图的顶点坐标和所述顶点之间的线段信息分割所述二维线画图,得到至少一个的线画图子图;
所述线画图子图分割模块,包括:
二维线画图的面信息获取单元,根据所述信息获取模块获取的二维线画图的顶点和所述顶点之间的线段信息获得二维线画图的面信息;
线画图子图分割单元,用于根据所述二维线画图的面信息获取单元获取的所述二维线画图的面信息分割所述二维线画图,得到至少一个的所述线画图子图;
所述线画图子图分割单元具体用于:
在全部的所述二维线画图的面中选择任意一对还没有选择过的相邻的面,作为第一线画图面和第二线画图面;
设置第一集合为空集,将所述第一线画图面和所述第二线画图面标定为确定面并加入到所述第一集合中;
在全部的所述二维线画图的面中将除所述第一线画图面和所述第二线画图面的其它线画图面标定为不确定面;
在所述不确定面中选择第三线画图面,将所述第三线画图面标定为确定面并加入到所述第一集合中,重复本步骤直到遍历完全部的所述不确定面,其中,所述第三线画图面至少有三个不共线的顶点,且所述不共线的顶点是所述第一集合中的线画图面的顶点;
根据所述第一集合中的确定面得到一个对应的线画图子图;
重复以上步骤,直到全部的所述二维线画图的面中的所有相邻面对都被选择过一次;
三维子物体重建模块,用于根据所述线画图子图分割模块得到的每一个所述线画图子图重建一个对应的三维子物体;
三维物体组合模块,用于组合所述三维子物体重建模块重建的全部的所述三维子物体得到三维物体。
21.如权利要求20所述的装置,其特征在于,所述线画图子图分割单元还用于:
如果所述第一集合中的确定面的数目不小于三,则将所述第一集合所表示的线画图子图加入到第二集合中;
根据所述第二集合中所有的线画图子图得到共存关系图,其中,所述共存关系图的一个顶点表示一个所述线画图子图,所述线画图子图所具有的面的个数做为所述顶点的权值,如果两个所述线画图子图之间存在共存关系,则对应两个所述线画图子图的顶点之间有连线连接;
所述共存关系图表示所述线画图子图所表示的物体之间的共存关系,所述共存关系是指所述两个线画图子图所表示的物体之间没有共享任何一个平面或者所述两个线画图子图所表示的物体之间的公共面只存在于同一个平面上;
在所述共存关系图中找到最大权值团,确定所述最大权值团的顶点对应的线画图子图,其中,团是一个拥有顶点和边的图,所述团中的任意两个顶点之间都有一条边连接,所述最大权值团是在所述共存关系图的所有团中权值之和最大的团。
22.如权利要求20或21所述的三维物体重建的装置,其特征在于,所述三维子物体重建模块包括:
三维子物体重建信息获取单元,用于根据最小化目标函数得到所述线画图子图的顶点的深度值,获取所述线画图子图的顶点坐标,获取三维子物体的面;
三维子物体重建单元,用于根据所述三维子物体重建信息获取单元得到的所述线画图子图的顶点的深度值、所述线画图子图的顶点坐标和所述三维子物体的面得到所述三维子物体。
23.如权利要求20或21所述的三维物体重建的装置,其特征在于,所述三维物体组合模块具体用于:
通过部位结合的方式组合全部的所述三维子物体,得到所述三维物体,所述部位结合的方式包括下列至少之一的方式:
点点结合、点线结合、点面结合、线线结合、线面结合、面面结合和点线面结合。
24.如权利要求20或21所述的三维物体重建的装置,其特征在于,所述三维物体组合模块具体用于:
根据所述二维线画图信息得到所述三维子物体的结合部位信息;
根据所述三维子物体的结合部位信息调整所述三维子物体的大小,得到调整后的三维子物体;
组合所述调整后的三维子物体得到初始三维物体;
根据最小化目标函数调整所述初始三维物体,得到所述三维物体。
25.一种三维物体重建的终端,其特征在于,所述终端包括:如权利要求14-24任意之一所述的三维物体重建装置,显示器,其中,所述显示器用于显示所述三维物体。
CN201310468938.1A 2013-10-09 2013-10-09 一种三维物体重建的方法、装置和终端 Active CN104574515B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201310468938.1A CN104574515B (zh) 2013-10-09 2013-10-09 一种三维物体重建的方法、装置和终端
PCT/CN2014/074590 WO2015051624A1 (zh) 2013-10-09 2014-04-02 一种三维物体重建的方法、装置和终端
EP14852603.1A EP3040944B1 (en) 2013-10-09 2014-04-02 Method and device for rebuilding three-dimensional object and terminal
US15/088,878 US9898860B2 (en) 2013-10-09 2016-04-01 Method, apparatus and terminal for reconstructing three-dimensional object

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310468938.1A CN104574515B (zh) 2013-10-09 2013-10-09 一种三维物体重建的方法、装置和终端

Publications (2)

Publication Number Publication Date
CN104574515A CN104574515A (zh) 2015-04-29
CN104574515B true CN104574515B (zh) 2017-10-17

Family

ID=52812493

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310468938.1A Active CN104574515B (zh) 2013-10-09 2013-10-09 一种三维物体重建的方法、装置和终端

Country Status (4)

Country Link
US (1) US9898860B2 (zh)
EP (1) EP3040944B1 (zh)
CN (1) CN104574515B (zh)
WO (1) WO2015051624A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105825499A (zh) * 2016-03-09 2016-08-03 京东方科技集团股份有限公司 基准平面的确定方法和确定***
CN105957068B (zh) * 2016-04-25 2019-03-15 中国科学院自动化研究所 构建三维重建模型表面的方法和***
TWI616845B (zh) * 2016-05-20 2018-03-01 Method for forming a solid body from a plan view
EP3264286B1 (en) * 2016-06-28 2020-11-18 Dassault Systèmes Querying a database with morphology criterion
CN106570931A (zh) * 2016-10-10 2017-04-19 福建网龙计算机网络信息技术有限公司 一种虚拟现实资源制作方法及***
EP3321817A1 (en) 2016-11-14 2018-05-16 Dassault Systèmes Querying a database based on a parametric view function
US11281824B2 (en) 2017-12-13 2022-03-22 Dassault Systemes Simulia Corp. Authoring loading and boundary conditions for simulation scenarios
EP3675063A1 (en) * 2018-12-29 2020-07-01 Dassault Systèmes Forming a dataset for inference of solid cad features
EP3675062A1 (en) 2018-12-29 2020-07-01 Dassault Systèmes Learning a neural network for inference of solid cad features
CN111814715B (zh) * 2020-07-16 2023-07-21 武汉大势智慧科技有限公司 一种地物分类方法及装置
EP3958182A1 (en) * 2020-08-20 2022-02-23 Dassault Systèmes Variational auto-encoder for outputting a 3d model
CN114359504B (zh) * 2021-12-14 2024-05-03 聚好看科技股份有限公司 一种三维模型的显示方法及采集设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102306396A (zh) * 2011-09-15 2012-01-04 山东大学 一种三维实体模型表面有限元网格自动生成方法
CN102855667A (zh) * 2011-06-30 2013-01-02 中国科学院深圳先进技术研究院 三维物体的计算机辅助设计***及方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5353390A (en) 1991-11-21 1994-10-04 Xerox Corporation Construction of elements for three-dimensional objects
JP2627608B2 (ja) 1993-07-26 1997-07-09 日本アイ・ビー・エム株式会社 ソリッドモデル合成装置及び合成方法
JP3807796B2 (ja) 1996-10-04 2006-08-09 本田技研工業株式会社 3次元cadシステム及び画像データ変換方法
JP2002259473A (ja) 2001-02-28 2002-09-13 Sanritsu Kogyo Kk 3次元ソリッドモデルのモデリングに必要な基礎デ−タの受け渡し方式
US8793108B2 (en) * 2012-03-29 2014-07-29 Siemens Aktiengesellschaft Three-dimensional model determination from two-dimensional sketch with two-dimensional refinement

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102855667A (zh) * 2011-06-30 2013-01-02 中国科学院深圳先进技术研究院 三维物体的计算机辅助设计***及方法
CN102306396A (zh) * 2011-09-15 2012-01-04 山东大学 一种三维实体模型表面有限元网格自动生成方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Decomposition of Complex Line Drawings with Hidden Lines for 3D Planar-Faced Manifold Object Reconstruction;Jianzhuang Liu, et al.;《IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE》;20110131;第33卷(第1期);摘要,第4页左栏第1段-右栏第2段,第6页右栏第2段-第7页左栏第2段,第10页右栏第2-3段,第11页左栏第4段 *
Object Cut: Complex 3D Object Reconstruction Through Line Drawing Separation;Tianfan Xue, et al.;《2010 IEEE Conference on Computer Vision and Pattern Recognition (CVPR)》;20100618;摘要,第1149页左栏第1段,第1151-1155页第3-5节 *

Also Published As

Publication number Publication date
WO2015051624A1 (zh) 2015-04-16
EP3040944A1 (en) 2016-07-06
CN104574515A (zh) 2015-04-29
EP3040944B1 (en) 2017-11-08
US9898860B2 (en) 2018-02-20
US20160217610A1 (en) 2016-07-28
EP3040944A4 (en) 2016-10-26

Similar Documents

Publication Publication Date Title
CN104574515B (zh) 一种三维物体重建的方法、装置和终端
US9149309B2 (en) Systems and methods for sketching designs in context
Wyvill et al. Soft objects
Mitani et al. 3D sketch: sketch-based model reconstruction and rendering
Andre et al. Single-view sketch based modeling
Turner et al. Sketching space
Elber Modeling (seemingly) impossible models
Miao et al. SymmSketch: Creating symmetric 3D free-form shapes from 2D sketches
Bastl et al. Blends of canal surfaces from polyhedral medial transform representations
Yang et al. Life-sketch: a framework for sketch-based modelling and animation of 3D objects
Andre et al. CrossSketch: Freeform surface modeling with details
Filippovska et al. Space partitioning for privacy enabled 3D city models
Soddu Perspective, a Visionary Process: The Main Generative Road for Crossing Dimensions
Olsen et al. Sketch-based Building Modelling.
Bui et al. Height-field construction using cross contours
Shen et al. Neural Canvas: Supporting Scenic Design Prototyping by Integrating 3D Sketching and Generative AI
Kang et al. Extraction of concise and realistic 3-D models from real data
Murakawa et al. Parts, Image, and Sketch based 3D Modeling Method.
Cao et al. Tour into the picture using relative depth calculation
Chen et al. Generation of 3d caricature by fusing caricature images
Basdogan From 2D images to 3D tangible models: autostereoscopic and haptic visualization of Martian rocks in virtual environments
Kratt et al. Non-realistic 3D object stylization
Andre et al. Single-view sketch based surface modeling
CN118037933A (zh) 场景原型设计生成方法、***、电子设备及存储介质
Guan et al. Sketch-based crowd modelling

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