注册 登录
  • 注册时,本站名称为:RGB空格3S博客,注意中间的空格。
  • 2018.8.14本站全面接入google广告
  • 2017.2.14今天收到45条恶意评论(全是外文),故评论时请填写必要信息,匿名评论全部拉黑,迫不得已而为之
  • 2017.1.27,2017年春节及至,我谨代表本人祝大家新春快乐,本人年终总结文章请访问:2016年终总结
  • 为防止恶意转载,本站全面禁止复制,并添加图片水印:RGB 3S博客www.ixxin.cn。
  • 本站正式更名为RGB 3S博客,本站将撤消所有非3S内容,其将转移到新博客江湖时代

环境小卫星高光谱影像条纹噪声去除程序IDL版

ID L admin 4763次浏览 已收录 1个评论
[隐藏]

前言

程序转载于:https://user.qzone.qq.com/1172113468/2/1451537768?_t_=0.48380886774003073
之前写过一个Matlab版本的,自认为代码很烂没公开源代码,并且无法有效处理投影的问题,所以条带取出后依旧有很多问题(PS:谁让我当时不会IDL呢)。地址:https://www.ixxin.cn/2017/02/14/matlabhsiwutiaodai/

源代码

PRO stripe_remove1
  ENVI,/Restore_Base_Save_Files
  ENVI_Batch_init
  file = DIALOG_PICKFILE(/READ, FILTER = '*.img')
  print,file
  ENVI_OPEN_FILE,file,r_fid=fid
  ENVI_FILE_QUERY, fid, dims=dims, ns=ns, nl=nl, nb=nb
  print,fid,dims,ns,nl,nb
  fdata = fltarr(ns,nl,nb)
   data=fltarr(ns,nl,nb)
  for i=0,nb-1 do begin
    fdata[*,*,i] = ENVI_GET_DATA(fid=fid, dims=dims, pos=i)
    stdv1=Stddev(fdata[*,*,i])
    avage1=Mean(fdata[*,*,i])
   ;print,stdv1,avage1
       for k=0,ns-1 do begin
      stdv2=Stddev(fdata[k,*,i])
      avage2=Mean(fdata[k,*,i])
       if stdv2 eq 0 then begin
          stdv2=1
       endif
      print,k,i
     data[k,*,i]= (float(stdv1)/stdv2)*fdata[k,*,i]+avage1-(float(stdv1)/stdv2)*avage2
     endfor
  endfor
  OutName = "F:\\HJ\\"+file_basename(file,'.img')+'_remove.img'
  mape_info=envi_get_map_info(fid=fid)
  ENVI_WRITE_ENVI_FILE,data[*,*,*], out_name=OutName,MAP_INFO= mape_info
END

去除条带前
去除条带后


xxin blog , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明环境小卫星高光谱影像条纹噪声去除程序IDL版
喜欢 (3)
支付宝[853060844@qq.com]
分享 (0)
admin
关于作者:
坐标山科大遥感系小鲜肉一枚。
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(1)个小伙伴在吐槽
  1. 写的真是太好了
    匿名2017-09-19 11:16 回复 Windows 7 | Chrome 55.0.2883.87