当前位置:文档之家› 三维重建算法及分析比较

三维重建算法及分析比较

三维重建算法及分析比较
摘要三维模型被广泛应用于机械加工、建筑设计、动画制作等多种领域,并对据设计图形进行加工建造的工程项目具有十分重要的意义,这就要求工程技术人员在由二维转换成三维的计算机算法应用时具有熟练性和钻研性。

本文简单介绍了三维重建算法的基本情况,并就复杂物件表面的算法做以举例和分析比较。

关键词三维重建算法;分析研究;算法比较
中图分类号tp391 文献标识码a 文章编号 1674-6708(2011)38-0187-02
随着应用技术的不断发展与完善,如今通过图形表达某一事物的形态已经不仅仅局限于二维的平面图形,具有空间意义的三维模型被广泛应用于机械加工、建筑设计、动画制作等多种领域,并对据设计图形进行加工建造的工程项目具有十分重要的意义。

在将二维图形转换成三维模型时,必须完成一系列的数据、线条、标注等信息的三维转换,这是一个相对复杂的过程,即“三组重建”[1]。

应用计算机语言进行相应的转换,就是三维重建算法。

1 三维重建算法概述
三维重建属于一种技术难点[2],但其应用价值高、应用广泛,因而受到广泛重视。

在实际应用中,越是结构复杂的实体造型,其对于工程技术人员的素质和技能要求越为严格,因而,更加深入的二、三维转换算法还在进一步探索和研究之中,而建立这一算法的
应用软件较常用的为autocad。

目前三维重建算法主要包含自顶而下和自底而上两种,它们各有优劣,主要根据不同应用情况选用。

而在具体识别时,必须吸取国际最先进的研究成果,并取众家所长,综合利用,以实现高度自动化的数据识别[3]。

概述部分笔者分别简述自底而上、利用语义信息辅助、基于体切削、基于专家系统等几种重构方法。

自底而上重构是目前较为主流的一种算法模式。

其主要基于从三视图的顶点进行初始化分析的思想,自底部向上方逐次完成三维模型的构建,步骤为先顶点、再边线、而后立面……该算法的优势在于适应性较强,能够较准确的识别出平面、圆柱圆锥面、圆环面、球面等;劣势在于搜索空间相对较宽泛,运算的时间较长,空间的复杂程度也比较大,难以操作和保证工时。

利用语义信息辅助重构算法,是从识别图形当中标注信息入手,利用标注信息的相关内容指导对子物体的准确识别;该方法仅为辅助性操作,其对螺栓、螺孔等的运算和识别较为迅速,但在重构时主要的三维部件仍需依靠其它方法进行。

基于专家系统重构是指通过三维模型进行机械制图,也就是通过二维图片转换成为正交二维三视图的逆过程。

机械制图必须经过一系列具有规范性的指导标准才能准确完成,因而在操作过程中必须首先识别所有相关规则,并进行对应的数学描述;其次,要全面熟悉和深入掌握机械识图的方法与规律。

与重构相关的程序人员只
有准确的识别图形,才能够进一步指导整个程序进行有序化识别。

所谓基于专家系统,就是利用这些规则来建立起规则库,将三视图中的点、线、面等要素作为资料输入到数据库中,从而达到利用推理方法输出准确三维模型的目的。

基于体切削重构,要根据三维视图构建起适当大小的包围盒,并参照三视图对该包围盒进行持续性的切削,一直到切削后的三视图与原始模型达到完全一致为止。

实际上该算法与模型匹配算法极其相似,只不过该算法是从最大的模型开始,但模型匹配算法则是从最小的模型开始。

2 重建模型的检验、存储与输出
三维模型的建立过程相对复杂,需要保障每一个数据和点、线、面的准确性,因而在重建过程中最好进行重建检验,而判断检验结果的准确性,就是通过三维模型三视图和原本输和的三视图样例进行比较[4]。

在设计程序中,必须具有将三维模型转换成二维图像的模块工具,来完成对比和检验。

当然,这一方面的技术目前已经较为成熟,可以直接通过有关算法来完成。

而三维模型的表达则相对稍显复杂。

三维模型的表达主要有两种方式,一为实体模型式,二为表面模型式。

顾名思义,表面模型即仅用模型边界来进行轮廓性的刻画,该方法优点在于计算机能够以最快的速度响应和显示,因而目前多数商用模型都采用此类方法进行存储;而其缺点就在于存储量过
大、精确度不够,对一相应工程机械类加工来说较为困难,比如较难进行表面模型的数字分析,而整个存储信息仅由大量的点、线、面组成。

实体模型是指将部分简单的图元作为基本构造单位来进行多层次的操作,同时获得结构相对复杂的模型形式,相对于表面模型而言,实体模型的存储量较锁上,操作更加快捷简便。

以后无论模型放大多少倍,需求哪类精度,系统都能够根据要求调用出相关指数。

实体模型多数情况下仅作为一种概念性模型应用,其与设计者的理念相适应,如果想通过电视播放实体模型,则需于将其转换成表面模型。

目前对于较为复杂的三维实体模型输出尚未形成统一的国际标准规范,用户可自定义与自己需求相适应的格式进行输出操作。

通常情况下较为简便的输出格式为图元,该类格式化一方面能够较为完整的描绘出三维模型的整体,另一方面又节省存储空间,缩短操作时间;但这对计算机的相关浏览软件又提出了相对苛刻的要求,必须能够对该实体模型的边界能力具有识别性。

3 复杂模型表面重建算法举例与分析比较
多数情况下,三维重建需要运算的模型表面复杂,比如岩石、形象物、人物等,这里举一个重建人体五观的三维操作,仅供参考。

首先要对遇重建人物面部二维表面进行分割,获取有效的点数据,并集合在一起[5]。

通常情况下,用户需要根据个人经验来指定数据库相关参数。

根据人体面部表情及需进行切割的器官,首先寻找
原始数据进行剪裁,把最小体数据单独列出,以减少数据处理的时间和数据量[6]。

已经裁剪完成的图像,使用分割平台提供的各种分割算法来完成预分割操作,然后再利用数字形态学的相关内容进行结果中小噪声点的运算,再进行人面部各器官的平滑操作,使人物表面看起来更生动真实。

利用类似的半自动手工分割方法所获得的数字模型中,可以较快较准确的获得模型人物的单个器官表面相应点位置信息坐标以及其对应的颜色值。

将这些数据统一并形成集合,存储入表面点集合文件夹中。

各个表面点的法向量是通过对表面各点位置信息的相应运算而获得,而这种法向量的运算将成为整个设计过程中的一个难点,需要工程技术人员有耐心、有信心。

在以上基础上,就可以通过显卡3d加速功能进行整个人体面部器官三维重建的实时浏览了。

三维重建工作复杂而繁琐,不仅需要工程技术人员具有足够的耐心与恒心,还必须具有较强的钻研精神,要在不断的学习与实践中总结经验,汲取国内外先进的思想和操作方法,取众家之长,从而获得更加准确有效、且简便易懂的运算方法,来实现二维与三维的快速转换。

参考文献
[1]孔凡树,王蓓蓓,贾超.基于等值面拓扑简化的三维重建算法[j].燕山大学学报,2009,33(2):120-123.
[2]诸葛斌.基于数字人彩色图像的三维重建算法研究[j].计算机工程与应用,2008,44(2):109-110.
[3]荆海龙,苏显渝,刘元坤,伍凡.基于条纹反射的镜面测量及三维重建算法分析[j].光电工程,2008,35(10):37-39.
[4]李晓,朱鹏飞.浅析三维重建算法[j].计算机工程应用技术,2009,5(16):4299-5301.
[5]谷月霞,张维忠,王晓燕,油世明,王静.基于未标定图像的三维重建算法,2010,36(8):214-217.
[6]李晋芳,何汉武.从二维视图到三维几何模型转换的研究与实现[j].机械与电子,2006(1):16-18.。

相关主题