(1)阈值法分割:选择一副灰度图像,用迭代阈值实现分割,并对分割结果进行分析;

%%阈值分割
clc;clear;close all;
I=imread('实验图片素材\word.jpg');
I=rgb2gray(I);
subplot(121),imshow(I);
I=double(I);
T=(min(I(:))+max(I(:)))/2;%设定初始阈值
done=false;%定义开关变量,用于控制循环次数
%while ~done是循环条件,~是“非”的意思,此处done=0:说明是无限循环,
%循环体里面应该还有循环退出条件,否则就陷入死循环:
while ~doner1=find(I<=T);%(一列一列地排序)r2=find(I>T);Tnew=(mean(I(r1))+mean(I(r2)))/2;%新阈值为两个范围内像素平值和的一半done=abs(Tnew-T)<1;%设定两次阈值的比较,当满足小于1时,停止循环,1是自己指定的参数T=Tnew;%把Inv的值赋给I
end
I(r1)=0;%把小于初始阈值的变为黑
I(r2)=1;%把大于初始阈值的变为白
subplot(122),imshow(I);

(2)选作:用区域生长法分割图像:选择一副灰度图像,用区域生长法进行分割,并对分割结果进行分析。
区域生长主要考虑像素及其空间邻域像素之间的关系,开始时确定一个种子,按照某种相似性(可以是平均灰度值、纹理和颜色等信息)准则逐步生成一个区域,直到没有可以归并的点或其他小区域为止。
程序:先指定几个种子点,其次把图像中灰度值等于种子点处的像素点也作为种子点,然后以种子点为中心,各像素点与种子点的灰度值的差不超过某个阈值,则认为该像素点和种子点具有相似性。

%% 区域生长
clc;clear;close all;
f=imread('实验图片素材\lena.bmp');
subplot(121),imshow(f);
seedx=[256,128,480];%定义种子点的位置
seedy=[400,256,400];
hold on %是当前轴及图像保持而不被刷新,准备接受此后将绘制的图形,多图共存
plot (seedx, seedy,'gs','linewidth',1);%种子像素点在原图像上的位置表示,'gs':绿色边框,“linewidth':线宽为1
title('原图像及种子位置');
f=double(f);
%标记图像
markerim=f==f(seedy(1),seedx(1));%判断条件
for i=2:length(seedx)markerim = markerim|(f==f(seedy(i),seedx(i)));%找出整个矩阵中与所取种子值相等的区域
end
thresh=[15,10,15];%与种子像素点的阈值差
%模板图像
maskim = zeros(size(f));
for i=1:length(seedx)g = abs(f-f(seedy(i),seedx(i)))<=thresh(i);%将所有点的灰度值与一个种子点的灰度值比较,小于阈值,就把此点标记为1maskim = maskim|g;%模板和g进行“或”操作
end
[g,nr]=bwlabel(imreconstruct(markerim, maskim),8);%实现区域增长,8邻域
g=mat2gray(g);%图像矩阵归一化
subplot(122),imshow(g);
title('三个种子点区域生长结果')

数字图像处理八:图像分割相关推荐

  1. 十六、数字图像处理之图像分割

    图像分割 (一)点.线和边缘检测 (1)点检测 (2)线检测 (3)使用函数edge的边缘检测 (二)使用霍夫变换的线检测 (三)阈值处理 (1)基础知识 (2)基本全局阈值处理 (3)使用Otsu' ...

  2. 数字图像处理:图像分割 人工智能算法在图像处理中的应用

    人工智能算法在图像处理中的应用 人工智能算法包括遗传算法.蚁群算法.模拟退火算法和粒子群算法等,在图像边缘检测.图像分割.图像识别.图像匹配.图像分类等领域有广泛应用.本文首先介绍常用人工智能算法的的 ...

  3. 第10章 Python 数字图像处理(DIP) - 图像分割 基础知识 标准差分割法

    This Chapter is all about image segmentation. I still not finished whole chapter, but here try to pu ...

  4. 系统学习数字图像处理之图像分割

    图像分割,有区域法,直接确定边界,边缘检测法,大多数算法基于灰度的不连续性(边缘检测)和相似性(阈值处理,区域生长,区域分裂,区域聚合). 边缘分类:台阶边缘,斜坡边缘,屋顶边缘,一阶导数会产生粗边缘 ...

  5. MATLAB画三维墨西哥草帽图,数字图像处理之图像分割-20210401063921.ppt-原创力文档...

    第六章 图像分割;主要内容;6.1 图像分割概述;;6.1 图像分割概述;图像分割的目的把图像分解成构成它的部件和对象:有选择性地定位感兴趣对象在图像中的位置和范围.;从简到难,逐级分割控制背景环境, ...

  6. 7/16数字图像处理之图像分割

    图像分割 概述 间断检测 点检测 线检测 边缘检测 图像分割的方法: 边缘检测 阈值处理 基本全局阈值处理 使用Otsu's方法的最佳全局阈值处理 基于局部统计的可变阈值处理 阈值处理 基于区域的分割 ...

  7. 基于matlab的数字图像处理软件设计

    文章目录 1.总体功能概述 2.功能介绍 2.1基本操作 2.2图像类型变换 2.3图形几何变换 2.4图像变换 2.5图像添加噪声 2.6图像复原 2.7图像增强 2.8图像分割 2.9图像编码 2 ...

  8. 【图像处理】数字图像处理笔记

    文章目录 直方图处理 滤波器 图像复原 形态学图像处理 灰度形态学--多使用平坦结构元(SE)[数字图像处理P428 图像分割 1.canny边缘检测[数字图像处理P463] 图像的表征 特征描述子 ...

  9. 数字图像处理——第十章 图像分割

    数字图像处理--第十章 图像分割 文章目录 数字图像处理--第十章 图像分割 写在前面 1 点.线和边缘检测 1.1 孤立点的检测 1.2 线检测 1.3 边缘检测 2 阈值处理 2.1 单一全局阈值 ...

最新文章

  1. VTK:参数Kuen用法实战
  2. nfs:server 172.168.1.22 not responding,still trying问题解决方法 平台为RealARM 210平台
  3. 【解题报告】Leecode911. 在线选举——Leecode每日一题系列
  4. P3835-[模板]可持久化平衡树【无旋Treap】
  5. [Leetcode][第392题][JAVA][判断子序列][动态规划][双指针]
  6. 带前端脚本的html页面,2.从头学前端之如何在html中使用javascript
  7. c语言英文单词倒着,C语言实现英文单词助手
  8. 【gulp-sass】本地搭建sass开发环境
  9. 封装一个FTPClient连接池工具类
  10. 旅游后台管理系列——使用maven构建工程
  11. TracePro模拟LED手电筒整个照明系统并分析
  12. 操作系统---IO设备
  13. javaweb后台管理系统
  14. OceanBase社区版4.0,给了我很多惊喜
  15. SringBoot实现PDF签字盖章
  16. HDU 3236 Gift Hunting (程序猿的哄女朋友方式)
  17. java,jsp获取上一个访问页面URL
  18. android美食app设计图,基于位置的Android美食地图应用的设计与实现
  19. 磨金石教育插画技能干货分享|学习插画可以从事什么工作?
  20. 互联网日报 | 全国版消费券今日起开抢;微信搜一搜正式开放服务搜索接入;高德打车上线“考生专车”服务...

热门文章

  1. java 检测u盘_Java检测Windows的U盘插入
  2. 好用的第三方网站ios
  3. vs2008,2010,2012安装包下载
  4. 用FPGA做一个生日礼物
  5. -1-1 java 基础语法 java关键字 java 注释 常量 语句 运算符 函数 数组定义
  6. Flowable 6.6.0 BPMN用户指南 -10 流程实例迁移 - 10.1 简单示例
  7. android地图入门,android 百度地图入门01 (史上最详没有之一)
  8. 在群晖NAS上搭建导航页_通过Web Station搭建
  9. 网络流中最大流和最小割算法
  10. Linux_查看内存使用情况