逆向工程是什么意思?
有的人也叫反求工程,英文是reverse engineering。 逆向工程(reverse engineering)大意是根據(jù)已有的東西和結(jié)果,通過分析來推導(dǎo)出具體的實(shí)現(xiàn)方法。比如你看到別人寫的某個(gè)exe程序能夠做出某種漂亮的動(dòng)畫效果,你通過反匯編、反編譯和動(dòng)態(tài)跟蹤等方法,分析出其動(dòng)畫效果的實(shí)現(xiàn)過程,這種行為就是逆向工程;不僅僅是反編譯,而且還要推倒出設(shè)計(jì),并且文檔化,逆向軟件工程的目的是使軟件得以維護(hù)。
釋義
反求技術(shù)包括影像反求、軟件反求及實(shí)物反求等三方面。目前相對(duì)最多人研究的是實(shí)物反求技術(shù)。它是研究實(shí)物CAD模型的重建和最終產(chǎn)品的制造。狹義來說,三維反求技術(shù)是將實(shí)物模型數(shù)據(jù)化成設(shè)計(jì)、概念模型,并在此基礎(chǔ)上對(duì)產(chǎn)品進(jìn)行分析、修改及優(yōu)化等技術(shù)。
工作原理
反求技術(shù)是利用電子儀器去收集物體表面的原始數(shù)據(jù),之后再使用軟件,計(jì)算出采集數(shù)據(jù)的空間坐標(biāo),并得到對(duì)應(yīng)的顏色。掃描儀是對(duì)物體作全方位的掃描、然后整理數(shù)據(jù)、三維造型、格式轉(zhuǎn)換、輸出結(jié)果。整個(gè)操作過程,可以分為四個(gè)步驟:
(1)物體數(shù)據(jù)化:
普遍采用三坐標(biāo)測量機(jī)或激光掃描儀來采集物體表面的空間坐標(biāo)值。
(2)從采集的數(shù)據(jù)中分析物體的幾何特征:
依據(jù)數(shù)據(jù)的屬性,進(jìn)行分割、再采用幾何特征和識(shí)別方法來分析物體的設(shè)計(jì)及加工特征。
(3)物體三維模型重建:
利用CAD軟件,把分割后的三維數(shù)據(jù)作表面模型的擬合,得出實(shí)物的三維模型。
(4)檢驗(yàn)、修正三維模型。
逆向工程的研究與發(fā)展
研究
1980年始?xì)W美國家許多學(xué)校及工業(yè)界開始注意逆向工程這塊領(lǐng)域。1990年初期包括臺(tái)灣在內(nèi),各國學(xué)術(shù)界團(tuán)隊(duì)大量投入逆向工程的研究并發(fā)表成果。
逆向工程所需的技能
逆向工程的硬件最早是運(yùn)用仿制加工設(shè)備,制作出來的成品品質(zhì)粗糙。后來有接觸式掃瞄設(shè)備,運(yùn)用探針接觸工件取得產(chǎn)品外型。再來進(jìn)一步開發(fā)非接觸式設(shè)備,運(yùn)用照相或激光技術(shù),計(jì)算光線反射回來的時(shí)間取得距離。
逆向工程軟件部分品牌包括Surfacer(Imageware)、ICEM、CopyCAD、Rapid Form等。逆向軟件的演進(jìn)約略可區(qū)分為三個(gè)階段。十一年前在逆向工程上,只能運(yùn)用CATIA等CAD/CAM高階曲面系統(tǒng)。市場后來發(fā)展出兩套主流產(chǎn)品約在七、八年前技術(shù)成熟,廣為業(yè)界引用。到最近四年來,發(fā)展出不同以往的逆向工程數(shù)學(xué)邏輯運(yùn)算,速度快。
發(fā)展
逆向工程在臺(tái)灣的發(fā)展軌跡持續(xù)在進(jìn)行,工研院曾寫過一套逆向工程軟件,學(xué)術(shù)界不少研究