MATLAB——阈值分割(一)

魁蒿
MATLAB——阈值分割(⼀)
阈值分割是⼀种简单有效的⽅法,适⽤于分割物体与背景有较强对⽐的图像,所有灰度⼤于或等于阈值的像素被判定为属于物体,灰度值为255表⽰前景,否则这些像素点将被排除在物体区域以外,灰度值为0表⽰背景。多阈值分割与单阈值分割并⽆本质区别,只是分割技巧不同。
分割
中画⾯⽐较简单且对象物的灰度分布⽐较有规律时,背景和对象物在图像的灰度直⽅图上各形成⼀个波峰,由于每两个波峰间形成⼀个低⾕,因⽽选择双峰间低⾕处所对应的灰度值为阈值,可将两个区域分离。
该⽅法称为直⽅图阈值双峰。
具体实现的⽅法是先做出图像f(i,j)的灰度直⽅图,若只出现背景和⽬标物两区域部分所对应的直⽅图呈双峰且有明显的⾕底,则可以将⾕底点所对对应的灰度作为阈值t,然后根据该阈值进⾏分割即可将⽬标从图像中分割出来。这种⽅法适⽤于⽬标和背景的灰度差较⼤,直⽅图有明显低⾕的情况。clear all;f=imread('peppers.png');f=rgb2gray(f);%转换为灰度图像f=im2double(f);%数据类型转换%全剧阈值T=0.5*(min(f(:))+max(f(:)));done=false;while ~done  g=f>=T; Tn=0.5*(mean(f(g))+mean(f(~g))); done =
abs(T-Tn)<0.1; T=Tn;end display('Threshold(T)-Iterative');%显⽰⽂字T r=im2bw(f,T);subplot(221);imshow(f);xlabel('(a)原始图像');subplot(222);imshow(r);xlabel('(b)迭代法全局阈值分割');Th=graythresh(f);%阈值display('Global Thresholding- Otsu''s Method');Th s=im2bw(f,Th);subplot(223);imshow(s);xlabel('(c)全局阈值Otsu 法阈值分割');se=strel('disk',10);ft=imtophat(f,se);Thr=graythresh(ft);display('Threshold(T) -Local Thresholding');Thr lt = im2bw(ft,Thr);subplot(224);imshow(lt);xlabel('(d)局部阈值分割');
1
2
3
4
5
6
中华口腔医学网
7
8
9
10
11
12母亲的羽衣
13
14
15
乳糜血16
17
18
19
20
21
武汉职业技术学院图书馆
22
23六盘水马拉松
24
25
26
27
28
29
30
31
32
33
34
请各位⼤⽜多多指教。刚⼊门。

本文发布于:2024-09-22 15:46:35,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/367526.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:阈值   灰度   分割   背景
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议