




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司航空遙感組航空遙感組 李成龍李成龍基礎語法與數據處理基礎語法與數據處理李成龍李成龍IDL航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司2提綱1.IDL簡介2.IDL主要特性3.IDL集成開發環境4.IDL應用程序基礎5.IDL的圖形圖像處理航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司3一、IDL簡介IDL(Interactive Data Language)交互式數據語言是一門專門針對圖形圖像處理與可視化的高級語言。IDL本身
2、是集可視化、交互數據分析、大型商業開發為一體的高級集成開發環境,通過它可以很容易的構建圖像處理與分析可視化的系統。航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司4二、IDL主要特性科學數據分析及科學數據分析及可視化可視化 項目申請及項目快速實施項目申請及項目快速實施商業軟件開發商業軟件開發語法簡單、上手快,減少開發時間語法簡單、上手快,減少開發時間 界面簡潔、功能強大,程序效率高; 強大的跨平臺功能,一次編寫程序多操作系統平臺運行; 靈活的外部程序接口,方便實現混編一體化程序; 提供了有效的數據管理手段,方便進行數據管理操作; 靈活多樣的程序
3、發布部署方式,實現程序共享。 航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司5IDL應用領域 航空航天 遙感工程 地球科學 信號處理 軟件開發 科研教育海洋科學測試技術防御工程數學分析天文氣象航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司6基于IDL的開發的產品IDL - Interactive Data LanguageION - IDL On the NetVIP - Visual IDL ProgrammingENVI - Environment for Visualizing ima
4、gesRiverTools - Analysis for digital terrain and river network modelingNOESYS - Organize, visualize & share HDF data航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司7ENVI是由遙感領域的科學家采用IDL開發的一套功能強大的、完整的遙感圖像處理軟件。ENVI架構非常靈活,提供一個功能全面的函數庫(API),可以滿足用戶的個性化需求。ENVI/IDL與ArcGIS為遙感和GIS的一體化集成提供了一個最佳的解決方案。最新版本:
5、ENVI5.1+IDL8.3ENVI/IDL航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司8三、IDL集成開發環境命令行命令行多文檔面板多文檔面板工程窗口工程窗口變量查看窗口變量查看窗口輸出日志窗口輸出日志窗口菜單欄和菜單欄和工具欄工具欄狀態欄狀態欄航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司9四、IDL應用程序基礎1.變量變量變量、語句不分大小寫strtemp =0 StrTemp =0變量無需事先說明 IDL i = 2 IDL print,i 2與C/C+不同!航空遙感組航空遙感組
6、李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司102.基本數據類型在數據類型的轉換中,如果輸出變量類型的字節數少于在數據類型的轉換中,如果輸出變量類型的字節數少于輸入變量類型的字節數,將會發生截斷現象。輸入變量類型的字節數,將會發生截斷現象。航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司113.數組1.IDL是面向矩陣的語言,幾乎所有運算都可以在數組上使用。2.數組元素的存儲是按列進行的,與其它的語言有區別。3.數組下標是從零開始的,如果某些下標超出了范圍,則該下標將被轉換為在允許范圍內的最小或最大的下標值。4.
7、被整數除時需要謹慎:當一個整形變量被另一個整形變量除時,IDL程序經常會出錯,有可能會出現一個零數組航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司12零數組和索引數組的創建函數零數組和索引數組的創建函數航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司13A=bytarr(100,200) 列 行 b=tan(a)+10子區處理:A(*,1)表示第2行的所有列A(1:10, *)表示第2-11列的所有行航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限
8、公司14A#B 表示 A的列乘以B的行A#B表示 A的行乘以B的列Transpose 矩陣轉置 ai,j = aj,i航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司154.結構體p結構體分為匿名結構體和署名結構體兩種,匿名結構是指沒有名字的結構。如果在使用過程中,結構成員的個數和類型可能發生變化,一般使用匿名結構;否則使用署名結構。p匿名結構一般用于程序之間值的傳遞,署名結構主要用在事件結構中person = name : jenny, telephone : 12345322person = basicinfo , name : jenny
9、, telephone : 12345322 航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司16 建立建立動態數據結構的有效工具,是實現動態數據結構的有效工具,是實現IDL面向對象編程和面向對象編程和Widget編程的基本要素編程的基本要素之一。之一。 IDL 的指針與其他語言的指針有很大的不同,它不是指向存儲的地址而僅僅是一的指針與其他語言的指針有很大的不同,它不是指向存儲的地址而僅僅是一個輕型的指向一個堆變量的引用(指針變量)。堆變量可以動態分配(數據類型和數個輕型的指向一個堆變量的引用(指針變量)。堆變量可以動態分配(數據類型和數組維數
10、),這意味著傳遞指針變量就相當于傳遞動態數據。組維數),這意味著傳遞指針變量就相當于傳遞動態數據。指針基本操作指針基本操作 創建創建:ptr=ptr_new( initexpr , /allocate_heap , /no_copy ) 釋放釋放:ptr_free ,ptr示例:person = name : jenny, telephone : 12345322ptrperson = ptr_new(person)Print, (*ptrperson).namePtr_free,ptrperson標量數組結構5.指針航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中
11、為數據系統科技有限公司176、IDL程序批處理批處理:由一系列IDL命令組成,以IDL-batchfile方式運行。批處理文件運行時并不編譯,因此使用控制結構時必須大量使用續行符($),給書寫、理解造成困難。主程序主程序:與批處理相似,但以end結束,以IDL-.run profile方式運行。主程序運行時先編譯,因此可以正常使用控制結構。過程過程:與主程序相似,但以pro proname開始,以end結束。以IDL-proname方式運行(也可以先運行IDL-.compile proname,編譯但不運行)。函數函數:與過程相似,但以function fnname開始,以end結束,并以re
12、turn語句返回一個IDL變量。以IDL-ret=fnname(para_list)方式運行。 在IDL系統中,一個過程或函數即為一個新的IDL命令。變量作用范圍:變量作用范圍:批處理和主程序方式的變量為全局變量,可以在IDL開發環境中使用。過程和函數的變量為局部變量,只在過程和函數運行過程中有效。航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司 參數傳遞參數傳遞 位置參數位置參數:在參數列表中按位置列出參數名,嚴格的順序限制。通常用于必選參數。 定義:pro batch ,para1 ,para2 ,. 調用:batch ,para1 ,pa
13、ra2 , 關鍵字參數關鍵字參數:關鍵字參數與位置無關,且可以與位置參數混合位置。通常放在位置參數之后,用于可選參數。 定義:pro batch ,keywordname=keywordsymbol ,. 調用:batch ,keywordname=keywordsymbol , batch ,/keywordname 注意:keywordname用于定義,keywordsymbol用于調用。 引用傳遞和值傳遞:引用傳遞和值傳遞:所有變量為引用傳遞,其值會被修改。系統變量、下標變量、表達式和常量均為值傳遞,原變量的值不被修改。18航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公
14、司天津航天中為數據系統科技有限公司19關系運算符IDLC/C+等于eq=不等于ne!=小于等于le=小于lt=大于gt航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司20常用控制語句Begin EndIf Then ElseCase X of else endcaseFor DoWhile DoRepeat UntilExpr? Expr1:expr2 (條件判斷語句)航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司簡單程序示例21testabc 過程名add 函數名a,b 參數(必給)type
15、 關鍵字(可選)運行結果:IDL testabc,1,1.2運算結果為 2.20000IDL testabc,1,1.2,type = 0運算結果為 2.20000IDL testabc,1,1.2,type = 1運算結果為 1.20000IDL testabc,1,1.2,type = 3無此運算類型!航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司227、文件的讀入輸出處理文件的過程和函數處理文件的過程和函數1.打開文件、關閉文件openr,openw,openuclose2.讀寫文件讀寫文本文件:readf/printf讀寫二進制文件:
16、readu/writeu航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司8.IDL面向對象程序設計封裝性繼承性多態性23航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司1.對象定義格式:Pro classname_DEFINEstruct = classname,data1:value1,.,dataN:valueNEndPro classname:methodname,參數.,關鍵字語句序列end2.對象創建&銷毀創建:object1 = obj_new(classname)銷毀:ob
17、j_destroy,object124航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司9.GUI界面手寫圖形用戶界面組成: 基本容器(base)+各種組件(widget)消息響應Xmanager分發事件+消息響應函數(用戶定義)25航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司界面示例26航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司27IDL提供了許多讀寫圖像文件的函數,例如read_bmp、read_gif、read_jpeg、read_
18、tiff、read_png、 write_bmp、 write_gif、 write_jpeg、 write_tiff、 write_png等函數。五、IDL圖形圖像處理航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司28常用格式(1)ASCII_TEMPLATE Presents a GUI that generates a template defining an ASCII file formatASSOC Associates an array structure with a fileBINARY_TEMPLATE Presents
19、a GUI for interactively generating a template structure for use with READ_BINARYCDF Routines Common Data Format routinesEOS Routines HDF-EOS (Hierarchical Data Format-Earth Observing System) routinesHDF_BROWSER Opens GUI to view contents of HDF, HDF-EOS, or NetCDF fileHDF_READ Extracts HDF, HDF-EOS,
20、 and NetCDF data and metadata into an output structureIDLffDICOM Contains the data for one or more images embedded in a DICOM part 10 fileIDLffDXF Object that contains geometry, connectivity, and attributes for graphics primitivesIDLffShape Contains geometry, connectivity and attributes for primitiv
21、es accessed from ESRI Shape filesMPEG_OPEN Opens an MPEG sequenceMPEG_SAVE Saves an MPEG sequence to a fileNCDF Routines Network Common Data Format routinesPRINT/PRINTF Writes formatted output to screen or fileREAD/READF Reads formatted input from keyboard or fileREAD_ASCII Reads data from an ASCII
22、fileREAD_BINARY Reads the contents of a binary file using a passed template or basic command line keywordsREAD_BMP Reads Microsoft Windows bitmap file (.BMP)READ_DICOM Reads an image from a DICOM fileREAD_IMAGE Reads the image contents of a file and returns the image in an IDL variableREAD_INTERFILE
23、 Reads Interfile (v3.3) fileREAD_JPEG Reads JPEG fileREAD_PICT Reads Macintosh PICT (version 2) bitmap fileREAD_PNG Reads Portable Network Graphics (PNG) fileREAD_PPM Reads PGM (gray scale) or PPM (portable pixmap for color) fileREAD_SRF Reads Sun Raster Format file航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天
24、津航天中為數據系統科技有限公司29常用格式(2)READ_SYLK Reads Symbolic Link format spreadsheet fileREAD_TIFF Reads TIFF format fileREAD_WAV Reads the audio stream from the named .WAV fileREAD_WAVE Reads Wavefront Advanced Visualizer fileREAD_X11_BITMAP Reads X11 bitmap fileREAD_XWD Reads X Windows Dump fileREADS Reads fo
25、rmatted input from a string variableREADU Reads unformatted binary data from a fileSOCKET Opens a client-side TCP/IP Internet socket as an IDL file unitTAPRD Reads the next record on a tapeTAPWRT Writes data to a tapeWRITE_BMP Writes Microsoft Windows Version 3 device independent bitmap file (.BMP)W
26、RITE_IMAGE Writes an image and its color table vectors, if any, to a file of a specified typeWRITE_JPEG Writes JPEG fileWRITE_NRIF Writes NCAR Raster Interchange Format raster fileWRITE_PICT Writes Macintosh PICT (version 2) bitmap fileWRITE_PNG Writes Portable Network Graphics (PNG) fileWRITE_PPM W
27、rites PPM (TrueColor) or PGM (gray scale) fileWRITE_SRF Writes Sun Raster File (SRF)WRITE_SYLK Writes SYLK (Symbolic Link) spreadsheet fileWRITE_TIFF Writes TIFF file with 1 to 3 channelsWRITE_WAV Writes the audio stream to the named .WAV fileWRITE_WAVE Writes Wavefront Advanced Visualizer (.WAV) fi
28、leWRITEU Writes unformatted binary data to a file航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司30航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司31圖像增強處理1.讀入和顯示圖像Myimage = read_tiff(filepath(image.tif, $subdir= examples, data)Tv,myimage;圖像源源本本的顯示出來,不進行拉伸處理Tvscl,myimage;顯示之前將圖像進行拉伸,也就是將圖像的顏色值進行拉伸
29、,以充分利用這個地顏色表。航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司32對比增強處理1.閾值化利用EQ、NE、GE、GT、LE和LT,產生二值(黑白)圖像。Tvscl,Myimage GT 140顏色大于140的顯示為白色Tvscl,myimage LT 140顏色小于140地顯示為白色航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司332.拉伸象素值將局部范圍內的象素值拉伸到占據整個顯示亮度的范圍。Tvscl,Myimage 100大于100的象素Tvscl,myimage 140200
30、140200之間的象素航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司343.直方圖均衡化在許多圖像中,象素的顏色值只占據整個顏色表的一小部分。將圖像轉化為在每一顏色上都有相同的象素點數的輸出圖像,就可以最大化地顯示圖形信息內容。TV,Hist_EQUAL(myimage)航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司35平滑圖像Smooth函數可以平滑圖像,相當于低通濾波,消除部分的隨即噪聲。要確定好計算平均值的模板的大小。Tvscl,smooth(myimage,7)用77模板平滑圖像。航
31、空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司36銳化圖像與平滑圖像相對,要高亮顯示圖像中的對象邊緣。方法一:從原始圖象中減去該圖像的平滑圖像。Tvscl,float(myimage)-smooth(myimage,7)方法二:IDL提供了微分銳化處理函數,其中最常用的是梯度法。航空遙感組航空遙感組 李成龍李成龍天津航天中為數據系統科技有限公司天津航天中為數據系統科技有限公司37梯度法中一個是羅伯特梯度法(Robert gradient),對應IDL中的ROBERTS函數。R=roberts(myimage)Tvscl,R梯度法中的另一個是索貝爾(Sobel)算子,利
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 藥品票據憑證管理制度
- 藥品銷售訂單管理制度
- 藥店公司著裝管理制度
- 藥店柜臺進出管理制度
- 菌棒接種車間管理制度
- 設備參數更改管理制度
- 設備定崗定機管理制度
- 設備標識標牌管理制度
- 設備生產進度管理制度
- 設備缺陷統計管理制度
- 2022年鹽城市大豐區事業單位考試真題及答案
- 2017年福州市初中畢業班質量檢測英語試卷及答案
- 性科學與生殖健康智慧樹知到答案章節測試2023年武漢科技大學
- WS/T 227-2002臨床檢驗操作規程編寫要求
- GB/T 9254.1-2021信息技術設備、多媒體設備和接收機電磁兼容第1部分: 發射要求
- GB/T 40734-2021焊縫無損檢測相控陣超聲檢測驗收等級
- GB/T 24821-2009餐桌餐椅
- GB/T 18907-2002透射電子顯微鏡選區電子衍射分析方法
- GB/T 16432-2016康復輔助器具分類和術語
- GB 6245-2006消防泵
- 清潔消毒記錄
評論
0/150
提交評論