以下的学习整理来自《数字图像处理原理与实践(MATLAB版)》

im2bw

功能:将索引图象、灰度图像和RGB彩色图像转换为二值图像 调用形式: >BW = im2bw(I,level) BW = im2bw(X,cmap,level) BW = im2bw(RGB,level)

其中level用于设置阈值。level取值范围[0, 1]。 示例:

edge

功能:功能是采用I作为它的输入,并返回一个与I相同大小的二值化图像BW,在函数检测到边缘的地方为1,其他地方为0。采用灰度或一个二值化图像I作为它的输入,并返回一个与I相同大小的二值化图像BW,在函数检测到边缘的地方为1,其他地方为0。

调用形式: >BW = edge(I) BW = edge(I,method) BW = edge(I,'sobel')%自动选择阈值用Sobel算子进行边缘检测。 BW = edge(I,method,threshold) BW = edge(I,method,threshold,direction) BW = edge(---,'nothinning') BW = edge(I,method,threshold,sigma) BW = edge(I,method,threshold,h) [BW,threshOut] = edge(---) [BW,threshOut,Gv,Gh] = edge(---)

示例: 1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23clear;

% 使用imread()函数读取图像

I1=imread('C:\Users\huayang\Desktop\MATLAB photo\测试.png');

I=im2bw(I1);

% 将索引彩色图象转换为灰度图像

bw1=edge(I,'roberts');

bw2=edge(I,'sobel');

bw3=edge(I,'prewitt');

bw4=edge(I,'log');

bw5=edge(I,'canny',[0.032,0.08],1);

figure

subplot(2,3,1),imshow(I);

title('原始图像');

subplot(2,3,2),imshow(bw1);

title('roberts');

subplot(2,3,3),imshow(bw2);

title('sobel');

subplot(2,3,4),imshow(bw3);

title('prewitt');

subplot(2,3,5),imshow(bw4);

title('log');

subplot(2,3,6),imshow(bw5);

title('canny');

strel

功能:构造结构元素(Structuring element)。所谓结构元素,可以看做是一张小图像,它通常用于图像的形态学运算(如膨胀、腐蚀、开运算、闭运算)。 调用形式: >SE = strel(shape, parameters)%根据shape指定的类型创建一个结构元素SE。 SE = strel('ball', R, H, N) SE = strel('diamond', R) SE = strel('disk', R, N) SE = strel('line', LEN, DEG) SE = strel('octagon', R) SE = strel('pair', OFFSET) SE = strel('periodicline', P, V) SE = strel('rectangle', MN) SE = strel('square', W)

示例: 见下一例。

imdilate与imerode

功能:可以使用imdilate函数进行图像膨胀;可以使用imerode函数进行图像腐蚀。 调用形式: >J = imdilate(I,SE) J = imdilate(I,nhood) J = imdilate(---,packopt) J = imdilate(---,shape) J = imerode(I,SE) J = imerode(I,nhood) J = imerode(---,packopt,m) J = imerode(---,shape)

示例: 1

2

3

4

5

6

7

8

9

10

11

12

13

14

15clear;

% 使用imread()函数读取图像

I1=imread('C:\Users\huayang\Desktop\MATLAB photo\测试.png');

I=im2bw(I1);

sel1=strel('disk',2);%创建一个指定半径1的平面圆盘形的结构元素

im1=imdilate(I,sel1);

im2=imerode(I,sel1);

subplot(2,2,1),imshow(I1);

title('彩色图像');

subplot(2,2,2),imshow(I);

title('原始图像');

subplot(2,2,3),imshow(im1);

title('图像膨胀');

subplot(2,2,4),imshow(im2);

title('图像腐蚀');

imfill

功能:该函数用于填充图像区域和“空洞”。 调用形式: >BW2 = imfill(BW) 这种格式将一张二值图像显示在屏幕上, 允许用户使用鼠标在图像上点几个点, 这几个点围成的区域即要填充的区域。要以这种交互方式操作, BW必须是一个二维的图像。用户可以通过按Backspace键或者Delete键来取消之前选择的区域;通过shift+鼠标左键单击或者鼠标右键单击或双击可以确定选择区域。 [BW2,locations] = imfill(BW) 这种方式, 将返回用户的取样点索引值。注意这里索引值不是选取样点的坐标。 BW2 = imfill(BW,locations) 这种格式允许用户编程时指定选取样点的索引。locations是个多维数组时, 数组每一行指定一个区域。 BW2 = imfill(BW,'holes') 填充二值图像中的空洞区域。 如, 黑色的背景上有个白色的圆圈。 则这个圆圈内区域将被填充。 I2 = imfill(I) 这种调用格式将填充灰度图像中所有的空洞区域。

示例: 1

2

3

4

5

6

7

8

9clear;

% 使用imread()函数读取图像

I1=imread('C:\Users\huayang\Desktop\MATLAB photo\测试.png');

I=im2bw(I1);

im3=imfill(I,'hole');

subplot(1,2,1),imshow(I);

title('原始图像');

subplot(1,2,2),imshow(im3);

title('图像填充');

bwareaopen

功能:删除二值图像BW中小面积对象,默认情况下使用8邻域。 调用形式: >BW2 = bwareaopen(BW,P) BW2 = bwareaopen(BW,P,conn)

示例: 1

2

3

4

5

6

7

8

9clear;

% 使用imread()函数读取图像

I1=imread('C:\Users\huayang\Desktop\MATLAB photo\测试.png');

I=im2bw(I1);

im1=bwareaopen(I,1200);

subplot(1,2,1),imshow(I);

title('原始图像');

subplot(1,2,2),imshow(im1);

title('删除对象');

关于matlab函数_连通区域得详解,可参考matlab函数bwareaopen的详解 关于matlab图像处理的更多知识,可参考形态学图像处理 最后,再奉上一个表情包用于测试:

23333

matlab数字图像处理函数,MATLAB数字图像处理学习(二)|常用函数相关推荐

  1. Excel随机数字/随机字母/随机日期/随机姓名等常用函数

    Excel随机数字/随机字母/随机日期/随机姓名等常用函数 随机选取选项中字符 随机数字 随机字母 随机日期/时间 随机姓名 温馨提醒 插播一个神奇命令 随机选取选项中字符 =CHOOSE(RANDB ...

  2. 第4章 Python 数字图像处理(DIP) - 频率域滤波5 - 二变量函数的傅里叶变换、图像中的混叠、二维离散傅里叶变换及其反变换

    目录 二变量函数的傅里叶变换 二维冲激及其取样性质 二维连续傅里叶变换对 二维取样和二维取样定理 图像中的混叠 二维离散傅里叶变换及其反变换 二变量函数的傅里叶变换 二维冲激及其取样性质 两个连续变量 ...

  3. MATLAB科学绘图-MATLAB画图技巧与实例(一):常用函数

    Matlab拥有强大的绘图功能,内置了很多绘图函数,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数. 此外,Matlab还提供了直接对图形句柄进行操作的低层绘图操作.这类操作将图形的 ...

  4. 【Python学习】常用函数(更新中……)

    系列文章目录 目录 系列文章目录 普通函数 一.输入输出函数 1. print()函数 2. input()函数 二.进制转换函数 1. bin(),oct(),hex()进制转换函数(带前缀) 2. ...

  5. python中setup函数的用法_python学习之setUp函数和tearDown函数

    1,setUp():就是在一个类中最先被调用的函数,每次执行一个函数都要先执行这个函数,有几个函数就被调用几次,与放的位置无关,随便放到哪里都会先执行这个函数 2,tearDown():就是在一个类中 ...

  6. python巩固函数和模块_Python学习教程6:函数,模块和类的使用

    Python函数 定义 函数是组织好的,可重复利用的,用来实现单一,或相关联功能的代码片段. 函数能提高应用的模块行,使代码逻辑更加的条理清晰. 内建函数 内建函数是Python中自带的,可供用户重复 ...

  7. [转载] python函数分为哪几种_python常用函数

    参考链接: Python中的等分算法函数bisect Python常用函数 python中函数以两种形式呈现:一是可以自己定义的函数function,比如最常用的print()函数:另外一种是作为类的 ...

  8. mysql数据库 常用函数_《MySQL数据库》常用函数整理

    原标题:<MySQL数据库>常用函数整理 以下内容,是我整理出来的比较常用的字符串函数,数值函数,日期函数. 第一类:字符串函数 1.conv(n,from_base,to_base):对 ...

  9. java 常用 函数_java在线报表中有哪些常用函数

    1 SUM SUM(number1,number2,-):求一个指定单元格区域中所有数字之和.Number1,number2,-:1到30个参数或指定单元格区域中所有数字. 备注: 函数将直接键入参数 ...

  10. oracle stdevp函数,SQL Server和Oracle的常用函数对比

    ---------数学函数 1.绝对值 S:select abs(-1) value O:select abs(-1) value from dual 2.取整(大) S:select ceiling ...

最新文章

  1. Linux下备份系统
  2. XXX管理平台系统——会议管理
  3. Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D
  4. apk转换ipa在线转换工具_PDF 格式转换在线网站
  5. mysql 修改root 密码
  6. 查看openssh版本_新版的Reveal如何查看越狱手机APP
  7. python绘制气象等值线图_利用Python插值绘制等值线图
  8. python软件_Python软件的下载与安装
  9. 进一步优化SPA的首屏打开速度(模块化与懒载入) by 嗡
  10. 文件服务器 测试,python-文件服务器测试
  11. 网络中把提供服务的计算机称为,网络第三套试题
  12. java ee 酒店管理系统,基于jsp的小型酒店管理系统-JavaEE实现小型酒店管理系统 - java项目源码...
  13. FPGA入门必备学习网站和工具
  14. 《OpenCV3编程入门》毛星云编著
  15. 思科vrrp实例_VRRP配置及多备份VRRP配置实例
  16. SQL Server 2008 Service Pack 1 - CTP 发布
  17. Part 2 如何进行埋点(内附埋点文档模板)
  18. JavaScript实现经典消方块游戏
  19. 20个高级java开发面试题(带答案)
  20. html 用户名限制,js对输入用户名的限制

热门文章

  1. 佰腾科技:专利大数据的云上裂变之路
  2. 简单七步,快速入门 JMeter原生压测
  3. 这群程序员疯了!他们想成为IT界最会带货的男人
  4. 端智能揭秘|促使双十一GMV大幅提升,手淘用了什么秘密武器?
  5. 基于函数计算的 Serverless AI 推理
  6. 手把手教你理解卷积神经网络
  7. 缓存和数据库一致性问题,看这篇就够了
  8. 普通公司编程水平与BAT大厂相比,差距到底有多大?
  9. 向下一代互联网迈进 声网发布全链路加速FPA为互联网增加QoS保障
  10. 关于低代码真实技术趋势,听低代码巨头 Mendix 怎么说