爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 2836|回复: 1

[混合编程] IDL编程学习之图片文件读写大全

[复制链接]

新浪微博达人勋

发表于 2017-4-16 15:30:04 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
掌握了读写图片文件的方法,也就走进了PS高阶的大门!
------读------
IDL> fig=image('C:\Users\Administrator\Desktop\1.png')
QQ截图20170416145104.png
或,
IDL> fig=read_png('C:\Users\Administrator\Desktop\1.png')
IDL> help,fig
FIG             BYTE      = Array[4, 1280, 715]
IDL> image(fig);显示图

.PNG图居然有4层!不知道除了红绿蓝通道还多出了什么?亮度?
或者,
IDL> read_png,'C:\Users\Administrator\Desktop\1.png',fig
% Compiled module: READ_PNG.
IDL> help,fig
FIG             BYTE      = Array[4, 1280, 715]

IDL> read_jpeg,'C:\Users\Administrator\Desktop\1.jpg',fig
IDL> help,fig
FIG             BYTE      = Array[3, 1280, 715]

3是红绿蓝三个通道,1280和715是横竖像素数。
显示读取的数组:
IDL> image(fig)
如果使用IDL> tv,fig,true=1则在直接图形法的窗口中显示一部分图,十分不便!
------写------
IDL> write_image,'C:\Users\Administrator\Desktop\2.png','png',fig
IDL> write_image,'C:\Users\Administrator\Desktop\2.png','png',randomu(s,50,50)*200
结果:
2.png
IDL> write_jpeg,'C:\Users\Administrator\Desktop\2.jpg',randomu(s,1000,1000)*200
2.jpg
IDL> write_png,'C:\Users\Administrator\Desktop\2.png',randomu(s,100,100)*200
2.png
IDL> write_png,'C:\Users\Administrator\Desktop\3.png',randomu(s,3,100,100)*200
3.png
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2018-9-26 09:33:36 | 显示全部楼层
read_png,'C:\Users\Administrator\Desktop\xymap\111.png',ima
help,ima
fig=plot(ima[3,*,*],linestyle=6,sym=24,color='r')

控制台输出:
IMA             BYTE      = Array[4, 625, 696]
飞鸽截图20180926092559.png
可见,第四层alpha层都是255,表示全不透明
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表