摘 要: 主要介紹科學(xué)計(jì)算可視化IDL的基本組成和特點(diǎn),并將IDL的人機(jī)交互、信號(hào)處理、可視化和開(kāi)放式接口等強(qiáng)大功能應(yīng)用于SAR圖象處理和質(zhì)量評(píng)估系統(tǒng),通過(guò)圖形用戶界面使用戶只需進(jìn)行簡(jiǎn)單的系統(tǒng)操作就可以得到詳盡、直觀的處理和評(píng)估結(jié)果。
關(guān)鍵詞: IDL(Interactive Data Language) 軟件工程 合成孔徑雷達(dá) 圖象處理
科學(xué)計(jì)算可視化是八十年代后期由美國(guó)科學(xué)家提出并發(fā)展的一門(mén)新興邊緣技術(shù),它將科學(xué)計(jì)算過(guò)程中及計(jì)算結(jié)果所產(chǎn)生的數(shù)據(jù)轉(zhuǎn)換成圖形或圖象信息,并可進(jìn)行交互式分析,成為信息爆炸時(shí)代人類分析和駕馭信息的有力工具。由美國(guó)RSI公司開(kāi)發(fā)的IDL(Interactive Data Language)第四代科學(xué)計(jì)算可視化語(yǔ)言具有開(kāi)放性、高維分析能力、科學(xué)計(jì)算能力、實(shí)用性及可視化分析為一體的特點(diǎn),集成了所有科學(xué)計(jì)算環(huán)境中所需要的工具,使用戶可以對(duì)任意科學(xué)數(shù)據(jù)進(jìn)行可視化分析。許多用戶不僅利用IDL進(jìn)行課題研究,而且形成了一批商業(yè)應(yīng)用軟件,例如遙感專業(yè)圖象分析軟件ENVI、合成孔徑雷達(dá)(SAR)數(shù)據(jù)地形校正商業(yè)軟件3-D SAR Ground Station等。本文主要介紹基于IDL的結(jié)構(gòu)特點(diǎn)以及開(kāi)發(fā)的SAR圖象處理和質(zhì)量評(píng)估系統(tǒng)。系統(tǒng)利用IDL的人機(jī)交互、信號(hào)處理、可視化和開(kāi)放式接口等強(qiáng)大功能,集成了SAR圖象處理和質(zhì)量評(píng)估中所需的大部分功能與操作。
1 IDL 的組成及特點(diǎn)
IDL由以下幾個(gè)基本軟件包組成:
1.1 信號(hào)處理與圖象處理
信號(hào)處理作為一門(mén)應(yīng)用廣泛的技術(shù),在現(xiàn)代數(shù)據(jù)處理中占有非常重要的地位。IDL發(fā)展了一個(gè)非常完善的信號(hào)處理軟件包,它不僅包括大量頻域信號(hào)分析方法(如:1~7維FFT、頻域?yàn)V波及分析、多種高維卷積、波譜分析、復(fù)空間極點(diǎn)分析等)還有大量空間域分析及處理方法(如:形態(tài)分析、空間濾波、邊緣提取、波形分析、空間變換等)和時(shí)間域分析(如:時(shí)間序列分析、小波變換及分析(152個(gè)功能)、信號(hào)編輯等)。作為特殊的信號(hào)處理,圖象處理也成為這個(gè)軟件包的主要功能,它除了通用信號(hào)處理的方法外,還有如彩色空間變換、真彩色—假彩色變換、直方圖統(tǒng)計(jì)及分析、放大及平移各種地理分析及多項(xiàng)式扭曲等大量圖象處理的特有功能。這個(gè)軟件包為用戶提供了一個(gè)強(qiáng)有力的信號(hào)及圖象分析工具。
1.2 可視化軟件包
IDL的可視化由兩部分組成,一是二維可視化,它包括多種曲面生成方法,曲面擬合方法,曲面平滑方法,權(quán)重曲面生成法,一維及二維數(shù)據(jù)顯示,多數(shù)據(jù)疊合,矢量數(shù)據(jù)顯示等。另一個(gè)非常重要的部分是三維及高維數(shù)據(jù)可視化,它的主要功能有三維顯示、三維動(dòng)畫(huà)(利用OpenGL),三維實(shí)體分析及可視化,四維數(shù)據(jù)顯示及分析,實(shí)時(shí)規(guī)則與非規(guī)則網(wǎng)格生成,Z-buffered圖形及實(shí)體等值分析及顯示等。
1.3 數(shù)學(xué)分析軟件包
數(shù)學(xué)分析是科學(xué)計(jì)算可視化的基礎(chǔ),因此IDL具有極強(qiáng)的數(shù)據(jù)分析能力。它包括:積分(十多種積分方法)、特征向量空間分析系統(tǒng)、線性系統(tǒng)、空余線性系統(tǒng)、非線性系統(tǒng)、多種求值方法、多維優(yōu)化系統(tǒng)、相關(guān)分析及回歸預(yù)測(cè)系統(tǒng)、模型分析及檢測(cè)系統(tǒng)、高維檢值等。
1.4 地圖投影及轉(zhuǎn)換軟件包
IDL對(duì)地理的重視反映在它的獨(dú)特的地圖投影軟件包中,其中它不僅包含了幾乎所有的地圖投影公式及模型,而且可以全部可視化(以圖形和高分辨率圖象顯示),它可以對(duì)任何圖象數(shù)據(jù)進(jìn)行地圖投影的校正及投影之間的轉(zhuǎn)換,使地球科學(xué)的用戶可以很容易地實(shí)現(xiàn)自己的功能。
1.5 圖象界面工具軟件包
作為一個(gè)可視化語(yǔ)言,用戶圖形界面(GUI)的強(qiáng)大與否直接決定了其應(yīng)用的質(zhì)量。IDL提供了一個(gè)強(qiáng)有力的GUI(Graphical User Interfaces),它包括數(shù)十種用戶工具,如三維飛行工具、動(dòng)畫(huà)工具、注冊(cè)工具、Bitmap編輯工具、彩色表的編輯與應(yīng)用、界面及菜單生成工具、實(shí)體分析工具等。
1.6 開(kāi)發(fā)及編輯工具
為了使用戶更容易地用來(lái)進(jìn)行軟件開(kāi)發(fā),IDL不僅為用戶建立了可視化編程的環(huán)境IDE,同時(shí)為用戶提供了大量的編程工具。
1.7 ODBC數(shù)據(jù)庫(kù)接口
IDL開(kāi)發(fā)了通用ODBC接口,使得用戶不僅可以對(duì)數(shù)據(jù)做可視化分析,而且可以對(duì)所有數(shù)據(jù)進(jìn)行管理,這是可視化軟件發(fā)展的必然趨勢(shì)。
此外,從IDL5.0版開(kāi)始,IDL改變了舊有的編程結(jié)構(gòu),采用了面向?qū)ο蟮木幊谭椒?,提供了新的面向?qū)ο蟮膱D形模型結(jié)構(gòu),使用戶不需要重新生成圖形就可以在任何圖形設(shè)備上對(duì)圖形模型目標(biāo)進(jìn)行各種操作(如運(yùn)算、顯示、打印等);IDL采用OpenGL技術(shù),大大增強(qiáng)了它的三維動(dòng)畫(huà)的可視能力,使得三維動(dòng)畫(huà)與分析緊密結(jié)合,它還可以使用OpenGL的硬件加速環(huán)境,從而三維圖形顯示可以達(dá)到硬件的顯示趨勢(shì);IDL開(kāi)放式接口采用不同技術(shù)來(lái)與操作系統(tǒng)及其它語(yǔ)言的程序進(jìn)行通訊,例如IDL的Spawn方法可以產(chǎn)生一個(gè)子進(jìn)程進(jìn)行IDL與操作系統(tǒng)的相互通訊,Call-external方法可以在IDL中調(diào)用動(dòng)態(tài)鏈接庫(kù)(DLL)中的C或Fortran子程序。
2 基于IDL的SAR圖象處理及質(zhì)量評(píng)估系統(tǒng)
作為一個(gè)非常成熟的可視化語(yǔ)言,IDL已被廣泛應(yīng)用于醫(yī)學(xué)、地學(xué)、天文學(xué)、天體物理、航空航天科學(xué)、應(yīng)用科學(xué)、軍事、環(huán)境科學(xué)、材料科學(xué)等學(xué)科,其用戶遍布世界50多個(gè)國(guó)家和地區(qū)。其最大的用戶包括美國(guó)航天局,美國(guó)國(guó)家噴氣試驗(yàn)室,美國(guó)國(guó)家土地局,美國(guó)國(guó)家海洋局,歐洲宇航局,世界各大天文臺(tái),美國(guó)及歐洲各醫(yī)學(xué)院等。
我們課題組長(zhǎng)期從事星載合成孔徑雷達(dá)(SAR)成象處理方面的研究工作,近期研制開(kāi)發(fā)出基于IDL的SAR圖象處理及質(zhì)量評(píng)估系統(tǒng)。采用的操作系統(tǒng)是Windows 98,應(yīng)用的軟件是美國(guó)RSI公司于1998年3月推出的IDL5.0。它的可視化功能,圖形處理能力,用戶開(kāi)發(fā)環(huán)境成為選擇它的主要原因。
由于本系統(tǒng)中將涉及到大量的圖象顯示與處理等操作,其中還涉及到三維圖象的操作,所以硬件的圖形處理能力將對(duì)系統(tǒng)的性能起著至關(guān)重要的作用。但由于采用IDL5.0進(jìn)行編程,其強(qiáng)大的圖形處理功能可在普通微機(jī)上完成圖象顯示與處理等工作,而且考慮到用戶硬件的配置,而選用普通微機(jī)進(jìn)行軟件開(kāi)發(fā)和運(yùn)行。
按模塊化的設(shè)計(jì)思想組織的整個(gè)系統(tǒng)由四個(gè)模塊組成,分別是:用戶界面、預(yù)處理模塊、主處理模塊和斑點(diǎn)抑制算法庫(kù)。系統(tǒng)框圖見(jiàn)圖1。
其中,整個(gè)系統(tǒng)的人機(jī)交互對(duì)話都是采用IDL5.0 中的各種Widget編寫(xiě)的,當(dāng)用戶對(duì)某一構(gòu)件執(zhí)行某種操作時(shí),IDL就會(huì)對(duì)應(yīng)相應(yīng)的事件,調(diào)用事件響應(yīng)中的IDL子程序。系統(tǒng)處理和評(píng)估結(jié)果的顯示充分利用了IDL的直方圖統(tǒng)計(jì)、三維圖顯示和等值線顯示等。將斑點(diǎn)抑制算法庫(kù)作為一個(gè)獨(dú)立的模塊,其主要目的是為了使系統(tǒng)具有良好的可擴(kuò)充性,并且易于維護(hù)。各斑點(diǎn)抑制算法是用C語(yǔ)言編寫(xiě)的,在IDL中使用Call-external方法可以調(diào)用,兼顧了C程序預(yù)算速度快的特點(diǎn)。系統(tǒng)通過(guò)IDL的人機(jī)交互、信號(hào)處理、可視化和開(kāi)放式接口等強(qiáng)大功能,將SAR圖象處理過(guò)程中紛繁的處理操作以及各種運(yùn)算有機(jī)地、條理清楚地組織在一起,集成了SAR圖象處理中所需的大部分功能與操作,并且通過(guò)一個(gè)可視化的圖形用戶界面在這些功能與用戶之間進(jìn)行交互,使用戶只需簡(jiǎn)單的操作就可完成SAR圖象的斑點(diǎn)噪聲抑制和圖象質(zhì)量評(píng)估。
總之,IDL是一種具有開(kāi)放性、高維分析能力、科學(xué)計(jì)算能力、實(shí)用及可視化分析為一體的計(jì)算可視化語(yǔ)言,可應(yīng)用于眾多研究領(lǐng)域。本文利用了IDL的強(qiáng)大功能,實(shí)現(xiàn)了基于IDL語(yǔ)言的SAR圖象處理和質(zhì)量評(píng)估系統(tǒng),其良好的圖形使用界面使用戶只需進(jìn)行簡(jiǎn)單的系統(tǒng)操作就可以得到詳盡、直觀的處理和評(píng)估結(jié)果。
參考文獻(xiàn)
1 Research Systems,Inc.Building IDL Applications,1997
2 Research Systems,Inc.IDL Reference Guide,1997
3 Research Systems,Inc.IDL Objects and Object Graphics,1997