数字图像处理 阈值分割
来源:互联网 发布:gopro编辑 windows 编辑:程序博客网 时间:2024/05/16 16:15
一.实验题目
参照下图实现对指纹图像的基本全局阈值分割。
二.实验分析
计算基本全局阈值算法思想如下:
① 选择一个T的初始估计值②用T分割图像,生成两组像素:G1由所有灰度值大
于T的像素组成,而G2由所有灰度值小于或等于T的像素组成
③ 对区域G1和G2中的所有像素计算平均灰度值µ1和µ2
④ 计算新的阈值⑤重复步骤②到④,直到逐次迭代所得的T值之差小于事先定义的参数T0
求出阈值T1后,将原图像中小于T1的赋值为0,否则赋值为1,显示该图像即可。
参照下图实现对指纹图像的基本全局阈值分割。
二.实验分析
计算基本全局阈值算法思想如下:
① 选择一个T的初始估计值②用T分割图像,生成两组像素:G1由所有灰度值大
于T的像素组成,而G2由所有灰度值小于或等于T的像素组成
③ 对区域G1和G2中的所有像素计算平均灰度值µ1和µ2
④ 计算新的阈值⑤重复步骤②到④,直到逐次迭代所得的T值之差小于事先定义的参数T0
求出阈值T1后,将原图像中小于T1的赋值为0,否则赋值为1,显示该图像即可。
三.实验程序
I=imread('images_chapter_10\Fig10.29(a).jpg');subplot(2,2,1);imshow(I);title('原图');subplot(2,2,2);imhist(I);title('原图的直方图');% I=double(I);%T 建议初始化为图像中最大强度值和最小亮度值的平均值% T=0.5*(double(min(I(:)))+double(max(I(:))));% T=mean(I(:));T=0;%阈值初始化值T0=0.5; %预定偏差大小done=false;num=0;%迭代次数while ~doneg=I>=T;%由于g或者~g有可能为空,因此必须分情况处理if(size(I(g),1)==0)T1=mean(I(~g));elseif(size(I(~g),1)==0)T1=mean(I(g));else T1=0.5*(mean(I(g))+mean(I(~g)));enddone=abs(T-T1)<=T0;T=T1;num=num+1;endT=uint8(T);I2=I>=T;%graythresh可以直接求出阈值,该函数采用Ostu方法,与通过迭代产生的阈值几乎没有区别.%注意:由于graythresh产生的阈值已被归一化到范围[0,1]内,必须在使用时将其缩放到相应%的范围,如uint8类图像,需要乘以255.T1=graythresh(I)*255; subplot(2,2,[3 4]);imshow(I2);title('基本全局阈值算法处理结果');xlabel(['通过程序求得的阈值为',num2str(T),',迭代次数为',num2str(num)]);
- 数字图像处理 阈值分割
- 《数字图像处理》学习笔记(八)--全局阈值分割
- python数字图像处理(11):图像自动阈值分割
- python数字图像处理(11):图像自动阈值分割
- 《数字图像处理》——图像分割之阈值阈值——双峰法
- 冈萨雷斯数字图像处理学习7:图像分割 边缘连接和边界检测和阈值处理
- 数字图像处理 图象分割
- [matlab图像处理] 阈值分割
- Matlab 图像分割 (阈值处理)
- opencv10-图像分割-阈值处理
- vtkImageData处理之阈值分割
- 数字图像处理:9.图像分割
- 数字图像处理06(图像分割)
- 分割树叶(数字图像处理)
- 灰度图像--图像分割 阈值处理之平均阈值
- 灰度图像--图像分割 阈值处理之P-Tile阈值
- 灰度图像--图像分割 阈值处理之OTSU阈值
- 灰度图像--图像分割 阈值处理之局部阈值
- div宽度100%,内部元素浮动,div居中
- 如何更好地利用固定资产
- WINDOWS7 配置驱动开发环境(wdk7.60)
- 简明 Vim 练级攻略
- Hibernate的持久化状态
- 数字图像处理 阈值分割
- 使用 tracert 跟踪网络连接
- 企业管理模式于工具
- 《诗盗·法克墙》
- 结构体完美解决二维数组返回值问题
- Xdebug 使用说明
- MongoDB PHP教程
- ubuntu 10.10 添加系统调用的方法
- jbpm4.4安装