麻辣GIS微信平台

更多 GIS 干货

微信关注不错过

IDL实现3*3均值滤波和中值滤波

关于均值滤波和中值滤波

属于空域图像增强的处理方法,均值滤波去麻点,中值滤波保边缘。

实现代码

;Name: 3x3平均值滤波&中值滤波
;Time: 2013-12-19
;Author: 尹全超

PRO item_c_1
  
  ;读取图像
  file =  DIALOG_PICKFILE(/READ, FILTER = '*.bmp')
  binary_img = READ_BMP(file)
  img01 = image(binary_img,LAYOUT=[3,1,1],title='Original')
  
  ;获取行数和列数
  row=N_elements(binary_img[0,*])
  col=N_elements(binary_img[*,0])
  ave=binary_img
  mid=binary_img
  
  ;3x3平均值滤波&3x3中值滤波
  FOR i=1,row-2 DO BEGIN
    FOR j=1,col-2 DO BEGIN
      ave[j,i]=fix(mean(binary_img[j-1:j+1,i-1:i+1]))
      mid[j,i]=fix(median(binary_img[j-1:j+1,i-1:i+1]))
    ENDFOR
  ENDFOR
  
  img02 = image(ave,LAYOUT=[3,1,2],/CURRENT,title='Mean-value')
  img03 = image(mid,LAYOUT=[3,1,3],/CURRENT,title='Mid-value')
   
END

效果图

麻辣GIS-Sailor
作者:
GIS爱好者,学GIS,更爱玩GIS。
微博关注
手机阅读
赞赏支持
手机阅读
微信捐助麻辣GIS
微信打赏
支付宝捐助麻辣GIS
支付宝打赏

声明

1.本文所分享的所有需要用户下载使用的内容(包括但不限于软件、数据、图片)来自于网络或者麻辣GIS粉丝自行分享,版权归该下载资源的合法拥有者所有,如有侵权请第一时间联系本站删除。

2.下载内容仅限个人学习使用,请切勿用作商用等其他用途,否则后果自负。

3.如果本文对您有所帮助,请您对我们团队进行 打赏捐助让我们在传播3S的路上可以走得更远,不胜感激。PS:如果你是学生党,请优先把经费用于购买学习资料 以及 与小哥哥/小姐姐约会上:-)

如您有疑问,可在文末留言,或到麻辣GIS QQ群中提问。

QQ群(一):291616564 加入QQ群

QQ群(二):166408035 加入QQ群

QQ群(三):627853279 加入QQ群

QQ群(四):436386604 加入QQ群

QQ群(五):606176554 加入QQ群

QQ群(六):946178380 加入QQ群

QQ群(七):861271808 加入QQ群

新疆互助群:910717627 加入QQ群

微信公众号:malagis,扫描右边二维码直接关注。

已有 2 条评论

  1. 麻辣GIS-Carollina
    1#
    Carollina  · 2015-12-14 10:00

    row=N_elements(binary_img[0,])

    col=N_elements(binary_img[,0])
    运行时显示这两句有语法错误,不知怎么修改,可以麻烦主页指点一下么?我的运行环境的ENVI4.8自带的IDL

      1. 麻辣GIS-Sailor
        Sailor  · 2015-12-14 20:37

        不好意思,是网站代码转义的问题,现在已经修正。不过均值滤波和中值滤波IDL是有自带的函数的,这里只是自己写着练习IDL的。

发表评论