|

楼主 |
发表于 2009-4-8 09:06:02
|
显示全部楼层
[编辑本段]概述
逆向工程,有的人也叫反求工程,英文是reverse engineering。
逆向工程(reverse engineering)大意是根据已有的东西和结果,通过分析来推导出具体的实现方法。比如你看到别人写的某个exe程序能够做出某种漂亮的动画效果,你通过反汇编、反编译和动态跟踪等方法,分析出其动画效果的实现过程,这种行为就是逆向工程;不仅仅是反编译,而且还要推倒出设计,并且文档化,逆向软件工程的目的是使软件得以维护。
反求技术包括影像反求、软件反求及实物反求等三方面。目前相对最多人研究的是实物反求技术。它是研究实物CAD模型的重建和最终产品的制造。陕义来说,三维反求技术是将实物模型数据化成设计、概念模型,并在此基础上对产品进行分析、修改及优化等技术。
[编辑本段]工作原理
反求技术是利用电子仪器去收集物体表面的原始数据,之后再使用软件,计算出采集数据的空间坐标,并得到对应的颜色。扫描仪是对物体作全方位的扫描、然后整理数据、三维造型、格式转换、输出结果。整个操作过程,可以分为四个步骤:
(1)物体数据化:普遍采用三坐标测量机或激光扫描仪来采集物体表面的空间坐标值。
(2)从采集的数据中分析物体的几何特征:依据数据的属性,进行分割、再采用几何特征和识别方法来分析物体的设计及加工特征。
(3)物体三维模型重建:利用CAD软件,把分割后的三维数据作表面模型的拟合,得出实物的三维模型。
(4)检验、修正三维模型。
[编辑本段]逆向工程的研究与发展
1980年始欧美国家许多学校及工业界开始注意逆向工程这块领域。1990年初期包括台湾在内,各国学术界团队大量投入逆向工程的研究并发表成果。
逆向工程的硬件最早是运用仿制加工设备,制作出来的成品品质粗糙。后来有接触式扫瞄设备,运用探针接触工件取得产品外型。再来进一步开发非接触式设备,运用照相或激光技术,计算光线反射回来的时间取得距离。
逆向工程软件部分品牌包括Surfacer(Imageware)、ICEM、CopyCAD、Rapid Form等。逆向软件的演进约略可区分为三个阶段。十一年前在逆向工程上,只能运用CATIA等CAD/CAM高阶曲面系统。市场后来发展出两套主流产品约在七、八年前技术成熟,广为业界引用。到最近四年来,发展出不同以往的逆向工程数学逻辑运算,速度快。
逆向工程在台湾的发展轨迹持续在进行,工研院曾写过一套逆向工程软件,学术界不少研究团队也将逆向工程领域作为研究主题,开发出具不同功能的系统软件,但是最后这些软件都没有真正落实到产业界应用。工研院的团队后来也结束逆向工程研究,转而开发其它主题。原有的研发成果后继无人,殊为可惜。
1998年,NEWPOWER启动了逆向工程的一些项目,要求是把客户的现有源代码转变成设计, 如果需要的话,进一步转化成产品需求规约。这恰恰与类似于V模型的标准开发过程模型相逆。这样一来,客户就可以容易地维护他们的产品(需求,设计,源代码等等),而不需要想以前那样,每次改动产品都需要直接修改源代码。
是指从实物上采集大量的三维坐标点,并由此建立该物体的几何模型,进而开发出同类产品的先进技术。逆向工程与一般的设计制造过程相反,是先有实物后有模型。仿形加工就是一种典型的逆向工程应用。目前,逆向工程,逆向工程的应用已从单纯的技巧性手工操作,发展到采用先进的计算机及测量设备,进行设计、分析、制造等活动,如获取修模后的模具形状、分析实物模型、基于现有产品的创新设计、快速仿形制造等。
通俗说,从某种意义上说,逆向工程就是仿造。这里的前提是默认我们传统的设计制造为“正向工程(当然,没有这种说法)”。
软件的逆向工程是分析程序,力图在比源代码更高抽象层次上建立程序的表示过程,逆向工程是设计的恢复过程。逆向工程工具可以从已存在的程序中抽取数据结构、体系结构和程序设计信息。 |
|