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