设为首页收藏本站

爱乐眼底图像分析

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7156|回复: 1

MATLAB图像处理—位图切割

[复制链接]
发表于 2012-8-29 21:18:11 | 显示全部楼层 |阅读模式
这是冈萨雷斯《数字图像处理》(第二版)第三章,空间与图像增强的一节,书中位图切割的实现,留作为了一个习题,要求计算出能够产生其他位平面的灰度变换函数,我编了一下,不知道用到的灰度映射函数对不对,贴下来给大家共享一下:
回复

使用道具 举报

 楼主| 发表于 2012-8-29 21:18:39 | 显示全部楼层
  1. function varargout = im_bitcut(impath,n)
  2. %    IM_BITCUT    图像位图切割函数
  3. %      数字图像分解为位平面,每一位平面为一二值图像
  4. %               | 0      f(x,y) <  2^n
  5. %      g(x,y) = |
  6. %               | 255    f(x,y) >= 2^n
  7. %      n为位平面序号
  8. %    $Author: lskyp    $Date: 2009.08.22
  9. image1 = imread(impath);
  10. if ndims(image1) == 3
  11.      image1 = rgb2gray(image1);
  12. end
  13. image1 = double(image1);
  14. [h,w] = size(image1);
  15. imfinal = zeros(h,w);
  16. for p = 1:h
  17.      for q = 1:w
  18.          tempgray = floor(image1(p,q)/(2^n));
  19.          if rem(tempgray,2) == 1
  20.              imfinal(p,q) = 255;
  21.          end
  22.      end
  23. end
  24. imfinal = im2uint8(mat2gray(imfinal));
  25. if nargout == 0
  26.      imshow(imfinal)
  27.      title(['位平面' num2str(n)]);
  28. else
  29.      varargout = imfinal;
  30. end
  31. 实验如下:
  32. 复制内容到剪贴板
  33. 代码:

  34. for k = 7:-1:0
  35.      subplot(2,4,8 - k)
  36.      im_bitcut('cameraman.tif',k)
  37. end
复制代码
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



QQ|Archiver|手机版|小黑屋|爱乐眼底图像分析 ( 京ICP备1201155号          

GMT+8, 2020-10-23 15:59 , Processed in 0.103617 second(s), 30 queries .

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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