IDL图像可视化(八)

10 篇文章 31 订阅
本文详细介绍IDL软件中图像处理与可视化的各种方法,包括直接图形法、坐标系统、颜色系统、显示窗口、曲线绘制、图像显示、曲面绘制及相关的函数应用。深入探讨了颜色表操作、图像裁剪、尺寸变换、位置变换、增强滤波、边缘检测等关键技术。
摘要由CSDN通过智能技术生成

1.直接图形法

1.坐标信息

1)数据坐标,画图显示的坐标系
2)设备坐标,即屏幕坐标系,左上角为(0,0)
3)归一化坐标

2.颜色系统

1)基础知识

a. IDL下提供两种显示模式
Device,Decomposed=0 是关闭颜色分解,用8位显示模块(即灰度影像)
Device,Decomposed=1 是打开颜色分解,用24为显示模块(即彩色影像)
b. 颜色表操作
xloadct或者loadct,加载颜色表,在命令行输入,选择喜欢的颜色条带。

IDL> xloadct

TvLCT,green,blue,blue,/Get 获取颜色表

2) 实例

a.选择显示单波段影像

颜色条带选择黑白条带,希望得到白底黑线的效果。对应的颜色取值是(0-255)

IDL> device,decomposed=0
IDL> xloadct
IDL> plot,indgen(5),background=255,color=0
IDL> 

在这里插入图片描述
b.选择显示3波段影像(真彩色,假彩色,伪彩色)对应的颜色取值是(0-256^3-1)或者(0-'ffffff’x)
I.RGB转换成颜色索引值的函数(自定义)

function RGB2IDX,RGB
return,RGB[0]+(RGB[1]*2L^8)+(RGB[2]*2L^16)
END

结果(两个极值,白色和黑色看结果):

IDL> rgb_li=[0,0,0]
IDL> RGB2IDX(rgb_li)
           0
IDL> rgb_zi=[255,255,255]
IDL> RGB2IDX(rgb_zi)
    16777215

II.三波段显示例子:

IDL> device,decomposed=1
IDL> xloadct
IDL> plot,indgen(5),background='ffffff'x,color=RGB2IDX([255,255,0])
IDL> 

3)系统变量定义背景颜色和画线颜色

IDL> device,decomposed=0
IDL> !p.BACKGROUND=255
IDL> !p.color=0
IDL> 

2.图形图像显示

1.显示窗口

在这里插入图片描述
例子:

IDL> window,0,xsize=400,ysize=200,title='huahua'
IDL> window,1,xsize=400,ysize=200,title='huahua2'
IDL> wset,0
IDL> plot,indgen(5)
IDL> 

2.绘制曲线

请君查看IDL帮助内容,自行学习。(direct_graphics)
在这里插入图片描述
以下说一些常用关键字的作用
(1),/ISOTROPIC x轴和y轴等比例显示

IDL> plot,indgen(5)
IDL> plot,indgen(5),/ISOTROPIC

(2)异常值的处理,将过大值和过小值不进行显示

IDL> a=[0,1,2,3,100]
IDL> plot,a,max_value=10
IDL> 

(3)nsum 绘制散点图时,隔几个点绘制一个点(间隔)
(4)polar 极坐标系
(5)xstyle,ystyle 坐标轴的显示格式
其中xstyle=4,ystyle=4,则坐标轴抑制不显示
(6)axis 坐标轴
(7)对数纵坐标
(8)PSYM,用特定符号绘制散点图(也可自定义特定符号)
(9)一个窗口显示多幅影像,multi
(10)将窗口(当前工作窗口)内显示的图像存为图片格式,TVRD,
(11) 多曲线绘制在同一幅影像上
(12)绘制风格
(13)ynozero,y轴不显示0值,具体y轴显示范围系统自己确定
(14)设置字体(在中文标题的时候要用)

IDL> !p.font=0
IDL> device,set_font='宋体'
IDL> plot,indgen(2),title='中文标题'
IDL> 

(15)y轴不是中文字符怎么办
!p.font=1
device,set_font=‘stsong’,TT_FONT,characterise=12
(characterize是调整字体大小)
(16)当坐标轴是时间时怎么绘制
参考IDL帮助label_date()函数
(17)等高线绘制
参考IDL参考文档,contour()函数
(18)添加图例
例子:

IDL> x=[0:360:0.1]/180*!pi
IDL> plot(sin(x),color='g',name='sin(x)')
PLOT <261581> 

结果:
在这里插入图片描述
在这里插入图片描述
点击legend,即可得到图例
在这里插入图片描述
(19)画散点图scatterplot()
在这里插入图片描述

3.显示图像

(1)裁剪:选取子数组
(2)尺寸变换:rebin(),congrid()
(3)位置变换:rot(),rotate()
(4)域变换 FFT(快速傅里叶变换)
(5)增强和滤波:(拉伸,直方图均衡化,FFT,高通滤波,低通滤波)
(6)边缘算子(sobel,robort)
详情请看IDL帮助文档,image processing routines
在这里插入图片描述

4.绘制曲面

5.相关函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值