基于视觉认知机制的三维重建算法(VCM算法)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于视觉认知机制的三维重建算法(VCM算法)

Abstract:本文在总结以往重建方法的基础上,提出了一种新的三维重建方法——基于视觉认知机制的三维重建算法(VCM算法)。类似于模型引导(CSG)[1,2]方法,算法将整个三维实体划分成基元(基本体素)的组合。不同的是,基元不是事先定义好的,而是被限制为能用实体造型中广义平移操作所能生成的实体。算法利用自底向上(B-rep)[3]方法生成实体每一个基元,再将基元合并成最后的结果实体。在重建过程中出现歧义时,利用剖视图处理和视觉推理机制加以解决,使得结果实体与人的理解结果更加一致。Keywords: Interpretation of engineering draws,3D reconstruction from multi-projections, visual cognition, pattern recognition.

1 Introduction

从工程视图重建三维实体一向被认为是一个颇具挑战性的课题,它的主要任务是从二维视图表达中提取产品模型的三维信息,使计算机能像人理解视图那样从工程视图中重建出产品的三维模型。在工程制图中,主要都是以多视图表达一个三维实体的,包括三视图、剖视图、局部试图等,因此本文也将主要的研究集中在多视图三维重建技术上(下文如无特别说明,三维重建技术指的都是从多视图重建三维实体的技术)。从上文对多视图三维重建技术的分析,我们可以看到从多视图重建三维实体目标的研究应做好以下几项工作:

1)必须要将自动识别与人机交互有效地结合起来,至少在目前一个全自动识别系统的实用性是有限时。

因为目前教给计算机识图的本领与有经验工程人员识图的本领相差太大,诸如多视图、剖面、局部放大、省略表示、检查图形一致性等在目前还没有很好解决。因此充分利用人的知识和技巧来弥补自动识别的不足,引导自动识别将会极大地增强识别算法的实用性。

2)必须建立综合各种识别方法及相关学科技术的识别系统,至少在目前运用一种方法独自建立的识别系

统很难胜任实际工程中三视图的识别时。而且已有许多算法综合了不同的识别方法从而提高了识别能力。在识别策略上应采用“各个击破”的策略,充分利用视图上所有相关信息,灵活运用不同的识别方法有针对性地处理不同类型的图形,尽快抓住形体特征,从而减少识别的复杂性,提意识别能力和速度。

3)必须要建立知识的自动积累机制,具有良好的扩展性,用以不断提高识别的自动化程度。人识图的经

验是通过不断地“看”、归纳、总结而积累起来的。而以往的算法不具备这种能力。无论通过什么方法好不容易识别出来的实体目标,却没有再把它自动转化成识别知识以扩展识别能力,更不用说能自动归纳、总结出识别某类实体的最佳方法。而且有些识别模型太复杂,用人工的方式构造已无法胜任,必须要有自动构造的能力。当图纸信息越复杂,识别越困难时,就越显出知识自动积累的重要。

本文主要是从前两个方面着手,提出一种新算法,算法的思想和框架将在下面一章中具体描述。

2 Algorithm

2.1算法思想

现有三维重建算法的不足,促使我们考虑一种新的算法。这种算法需要解决三个方面的问题:

1) 选择一个合适的基准抽象表达层。使得在从这样的一个中间表达层上进行三维模型重建时,不要过分地依赖自然约束与常识;

2) 建立新的算法机制,克服B-rep[3]、CSG[1,2]等方法的缺限和所遇到的困难;

3) 引入视觉推理机制,从而使得算法能根据所“看”到的形体的固有的形状特征作一些合理的猜测和推理,

生成用户所期望的三维形体。

基于以上的认识,我们提出了一个基于视觉认知机制(Visual Cognition Mechanism)的三维重建算法(简称为VCM算法)。对于上述三个方面的问题,算法采用了如下的对策:

1) 在选择合适的基准抽象表达层方面,我们在对比多视图,单视图表达各自的优缺点,针对CAD系统的特点,选择了这样的一个中间表达抽象层——以三视图表达为基础,并允许剖视图等一些示意性信息的加入。在有剖视图存在是,允许省略三视图中的一到两个视图;

2) 在建立新的算法机制方面,针对三维模型重建方法与算法和人的视觉重建及认知过程有着千丝万缕的联系,因此在对人的视觉重建机制作更深层的分析和总结基础上,并考虑到计算机信息加工的特点,采用了基于人的视觉认知过程的机制;

3) 在引入视觉推理机制方面,我们根据视觉认知心理学中的知觉组合原则,归纳出几类知识,并简化成相应的规则,形成了以产生式系统为核心的推理机制。

VCM算法采用了类似于CSG建模的机制来实现文献[4,5]总结出的人的视图理解策略,将基本体素(基元)限定为一类,即能够使用广义平移扫掠操作产生的三维实体,从而将CSG方法中的基本体素的识别转化为基元的划分,避免了基本体素识别的困难。对于划分好的基元描述,采用现有B-rep方法中的几何信息恢复策略来生成基元的三维模型。所有的基元构成一CSG树描述,它们被逐步加到结果实体中。在上述基础上,加入剖视图信息的处理和基于视觉认知规则的视觉推理,在视图理解出现歧义时,协助用户得到最可能的解。另外,也允许用户在基元的划分和生成时对理解过程进行交互。

2.2算法框架

2.2.1术语定义

三维重建研究的历史较长,形成了许多不同的术语,为了避免混淆,下面对本文所用的术语加以定义(图1是一个示意图):

图1 术语解释示意图

平移扫掠操作(sweep操作):实体造型中的一种从二维形状生成三维实体的操作。在给定了一个二维形状和一个扫掠向量后,二维形状上的每个顶点沿扫掠向量移动到一个新的位置并形成了一个新的二维形状,扫掠前后的二维形状和扫掠过程中顶点的运动轨迹构成了一个三维实体。

广义平移扫掠操作:平移扫掠操作的扩展,二维形状上的每个顶点都沿不同的扫掠向量进行扫掠。

基元:即基本体素,在本文中指的是能够通过广义平移扫掠操作产生的三维实体。

基座面:广义平移扫掠操作中被扫掠的二维形状,包含外轮廓和内部孔洞描述。它所在平面的法向量指向扫掠操作生成的基元内部。

重建方向:基座面的规则化法向量。

重建平面:输入三视图中与重建方向垂直的视图。

重建立面:输入三视图中与重建方向平行的视图。

基座面扫掠轨迹:基座面上每个顶点在广义平移扫掠操作中的扫掠向量的集合。

2.2.2算法框架总述

根据上述算法思想,可得到如下一个粗略的算法框架,如图2所示。首先在输入视图中找出相应的约束特征和形成基元的条件,给出所有可能基元的初步划分和描述;然后对每一可能的基元,通过广义平

相关文档
最新文档