文章目录

  • 1.strel
  • 2.roipoly
  • 3.roifilt2
  • 4.roifill

1.strel

功能: 形态学结构元素,strel 对象表示一个平面形态学结构元素,该元素是形态学膨胀和腐蚀运算的重要部分。
语法:

  • SE= strel(shape, parameters)
    创建一个结构元素对象SE。参量shape及parameters指定结构元素对象的类型。字符串参量shape取值可为:square(方型)、line(线型)、disk(圆盘型)、ball(球型)、rectangle(长方型)等。parameters为对应shape的大小描述。

代码示例:

se1 = strel('square',3)% 创建 6*6 的正方形
se2 = strel('line',3,45)% 创建直线长度 10,角度 45
se3 = strel('disk',3)% 创建圆盘半径 15
se4 = strel('ball',5,4)% 创建椭圆体,半径 15,高度 5

运行结果:

  • SE = strel(‘arbitrary’, NHOOD)
    创建一个平面结构元素对象SE。参量NHOOD是一个由O和1组成的矩阵,用于指定邻域。

代码示例:

se1 = strel('arbitrary',[1 0 1;1 1 1;0 0 1])

运行结果:

  • SE = strel(‘arbitrary’, NHOOD, HEIGHT)
    创建一个非平面结构元素SE。参量HEIGHT与NHOOD的维数相同,表示NHOOD中每个非零元素的高度值。

代码示例:

se2 = strel('arbitrary',[1 0 1;1 1 1;0 0 1],[10 0 15;20 30 40;3 2 1])

运行结果:

2.roipoly

功能: 用于选择图像中的多边形区域。
语法:

  • BW = roipoly(I,c,r)
    表示用向量 c、r 指定多边形各点的 X、Y 坐标。BW 选中的区域为1,其他部分的值为 0.

运行结果:

I = imread('girl.jpg');
c = [222 272 300 270 221 194];% 四个点的x坐标值
r = [21 21 75 121 121 75];% 四个点的y坐标值
BW = roipoly(I,c,r);
subplot(121);imshow(I);
subplot(122); imshow(BW)

运行结果:

  • BW = roipoly(I)
    表示建立交互式的处理界面。让用户使用鼠标来指定一个多边形,在最后显示的图像上操作,定位并调整多边形的大小后,通过双击或右键单击该多边行的内部,然后从出现的菜单中选取Create mask,可创建模板B。

代码示例:

I = imread('girl.jpg');
BW = roipoly(I);
subplot(121);imshow(I);
subplot(122); imshow(BW)

人机交互:

运行结果:

  • BW = roipoly(x,y,I,xi,yi)
    表示向量 x 和 y 建立非默认的坐标系,然后在指定的坐标
    系下选择由向量 xi,yi 指定的多边形区域。

3.roifilt2

功能: 用于对一个区域进行滤波。
用法:

  • J = roifilt2(h,I,BW)
    表示使用滤波器 h 对图像 I 中用二值掩模 BW 选中的区域滤波。
    BW 为和 I 大小相同的二值图像。

代码如下(示例):

I = imread('girl.jpg');
I = rgb2gray(I);
c = [222 272 300 270 221 194];
r = [21 21 75 121 121 75];
BW = roipoly(I,c,r);
h = fspecial('unsharp');%指定滤波器
J = roifilt2(h,I,BW);
subplot(121);imshow(I); subplot(122); imshow(J);

运行结果:

  • J = roifilt2(I,BW,fun)
    使用函数FUN处理I中的数据。
  • J = roifilt2(I,BW,fun,P1,P2,…)
    表示用 fun 函数处理区域滤波图像 I。参数 P1、P2 等为 fun 函数的输入参数。

代码如下(示例):


4.roifill

功能: 对指定区域进行填充。
用法:

  • J = roifill(I,c,r)
    填充由向量 c,r 指定的多边形,c 和 r 分别为多边形的各顶点 X、Y 坐标。可用于擦除图像中的小物体。
  • J = roifill(I)
    用于交互式处理界面。
  • J = roifill(I,BW)用 BW(和 I 大小一致)掩模填充此区域。如果为多个多边形,则分别执行插值填充。
  • [J,BW] = roifill(…)
    返回用于确定填充的像素的二进制掩码。BW 为和 I 大小相同的二值图像。
  • J = roifill(x,y,I,xi,yi)
  • [x,y,J,BW,xi,yi] = roifill(…)

代码如下(示例):

I = imread('girl.jpg');
I = imread('eight.tif');
c = [222 272 300 270 221 194];
r = [21 21 75 121 121 75];
J = roifill(I,c,r);
subplot(121);imshow(I);subplot(122);imshow(J)

运行结果:

图像处理函数——strel、roipoly、roifilt2、roifill相关推荐

  1. 数字图像处理,Matlab常用图像处理函数汇总

    原文地址:Matlab图像处理函数汇总 作者:mimi 图像的变换  ① fft2:fft2函数用于数字图像的二维傅立叶变换,如:i=imread('104_8.tif'); j=fft2(i); ② ...

  2. matlab图像处理函数

    下列表格中除了个别函数外,其余函数都是图像处理工具箱提供的关于图像处理的函数,现摘录到此以备查找. 表1 图像显示 函数名 功能说明 函数名 功能说明 colorbar 颜色条显示 montage 按 ...

  3. 【Matlab 常用图像处理函数 汇总】

    Matlab 常用图像处理函数 汇总 一.图像的读取 二.图像的写入 三.图像的显示 四.创建窗口 五.图像的格式转换 六.灰度直方图 七.伽马变换 八.图像二值化 九.阈值变换 十.直方图均衡化 十 ...

  4. matlab pixelidxlist,【转】Matlab图像处理函数:regionprops

    --------------------------------------------------- 本篇文章为转载,仅为方便学术讨论所用,不用于商业用途.由于时间较久,原作者以及原始链接暂时无法找 ...

  5. 几种常用的图像处理函数库

    from:http://www.wtoutiao.com/p/18a4MqP.html 几种常用的图像处理函数库 OpenCV OpenCV的全称是:Open Source Computer Visi ...

  6. php图像处理原生函数,php图像处理函数imagecopyresampled的用法

    这篇文章主要介绍了php图像处理函数imagecopyresampled用法,结合实例形式详细分析了imagecopyresampled函数的功能.参数.使用方法,需要的朋友可以参考下 语法 代码如下 ...

  7. c语言中图像处理相关函数,C语言图像处理函数大全

    C语言图像处理函数 没有积分,无私奉献,只希望多多支持,哈哈谢谢了 C语言图像处理函数大全,完整版 1.图像平移 图像平移只是改变图像在屏幕上的位置,图像本身并不发生变化. 假设原图像区域左上角坐标为 ...

  8. 图像处理函数详解——imadjust

    功能: 调节灰度图像的亮度或彩色图像的颜色矩阵. 用法:        J = imadjust(I,[low_in; high_in],[low_out; high_out],gamma)      ...

  9. matlab 转 python函数_Matlab函数strel(“ line”)转换为python

    我想在python中使用matlab函数strel(" line") 我发现像scikit-learn / opencv / mahotas这样的python库 但我找不到 最后, ...

最新文章

  1. UBuntu14.04下安装和卸载Qt5.3.1
  2. 对接多种三方的设计模式_死磕设计模式之适配器模式
  3. maven,spring,mybatis集成错误
  4. nstimer循环引用_警惕使用NSTimer时的循环引用
  5. NTFS USN的Create和工具代码汇总
  6. mysql 索引空间大小_查看数据库表中容量大小,表有多少记录,占多少空间以及索引的大小,以及未使用空间...
  7. 2015年第46周五
  8. jQuery学习: 实现select multiple左右添加和删除功能
  9. QueryWrapper、LambdaQueryWrapper以及LambdaQueryChainWrapper用法
  10. flutter报错[!] Android toolchain - develop for Android devices (Android SDK version 29.0.3) X Andr
  11. QQIP纯真数据库调用全国省市地址
  12. Hbuilder屏幕旋转
  13. 判断字符串中是否存在空格符
  14. ES6——数组数据去重
  15. PULT:Progressive Unsupervised Learning for Visual Object Tracking(用于视觉目标跟踪的渐进式无监督学习)
  16. 【了解基本进位制】进制使用说明与学习
  17. 2021 Java 这一年
  18. 2021-09-03剑指Offer51.数组中的逆序对
  19. 测试python第二周_姓名测试打分
  20. 基于MATLAB/Simulink的太阳能光伏MPPT控制蓄电池充电仿真模型

热门文章

  1. doesn't contain a valid partition table 解决方法
  2. spark3.0 分布式集群搭建
  3. ResNeSt 之语义分割,ADE20K 全新 SoTA 47.6%
  4. Mysql sleep线程过多解决方案
  5. vue socketio 实现echarts图表动态显示
  6. 红黑树——课程设计(自顶向下JAVA版)
  7. Redis命令详解:Geo
  8. 八进制转十六进制c语言程序,C语言程序 十进制、八进制、十六进制的相互转化...
  9. python实现微信hook_python实现微信跳一跳辅助工具步骤详解
  10. OpenCV系列之图像阈值 | 十五