爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 4304|回复: 3

[混合编程] IDL之图片批量改大小

[复制链接]

新浪微博达人勋

发表于 2019-9-30 10:57:34 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 15195775117 于 2019-9-30 15:50 编辑

在熟练使用编程之前,批量改图片大小我用的是PS的“动作”功能,它可以记录一张图片的执行步骤,生成一个依赖于PS的exe,然后把图拖到这个图标上,就会自动执行记录的步骤了。

今天,我想分享我的云摄影作品,但是上传失败,我估计是因为图太大了,于是写了个改大小的程序。
与大家分享:


;把大图改小
pro reduce_figsize,fold
  ;图片所在文件夹:
  ;fold='C:\Users\Administrator\Desktop\气象奇云\'
  file=file_search(fold,'*.jpg')
  for i=0,n_elements(file)-1 do begin
    info=file_info(file)
;    如果图大于1M,就长宽各减为一半:
    if(info.size/1000000.0 gt 1)then begin
      read_jpeg,file,ima
      sz=size(ima)
      ;sz[1]可能是3(jpg),可能是4(png)
      ;rebin要求数组修改是整数关系,但congrid修改大小是随意的
      ima=congrid(ima,sz[1],sz[2]/2,sz[3]/2)
      ;覆盖写出:
      WRITE_JPEG,file,ima,true=1
    endif
  endfor
end

密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2019-9-30 15:51:33 | 显示全部楼层
本帖最后由 15195775117 于 2019-9-30 15:52 编辑

奇怪!代码我没有斜体,发布时却是斜体!
代码中file后的方括号没了!
是不是网页脚本中方括号+i表示斜体?
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-11-6 22:04:26 | 显示全部楼层
你好,请问可以用哪个函数,在idl中批量读取txt文件信息呢。
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2019-11-7 08:26:00 | 显示全部楼层
8846lcg 发表于 2019-11-6 22:04
你好,请问可以用哪个函数,在idl中批量读取txt文件信息呢。

read_ascii()
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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