直方图阈值法

本文介绍了如何利用MATLAB实现直方图阈值法,通过计算灰度出现概率来确定最优阈值,进而对图像进行分割。详细步骤包括读取图像、转换为灰度图、绘制直方图、计算灰度概率分布、应用不同阈值进行图像分割,并展示结果。
%直方图阈值法  用 MATLAB实现直方图阈值法:
clc;clear;close;
I=imread('e:\role0\003i.bmp');
I1=rgb2gray(I);
figure;
subplot(2,2,1);
imshow(I1);
title(' 灰度图像')
grid on; %显示网格线
axis on;                  %显示坐标系
[m,n]=size(I1);                            %测量图像尺寸参数
GP=zeros(1,256);                           %预创建存放灰度出现概率的向量
for k=0:255
    GP(k+1)=length(find(I1==k))/(m*n);    %计算每级灰度出现的概率,将其存入GP中相应位置
end
subplot(2,2,2),bar(0:255,GP,'g')                   %绘制直方图
title('灰度直方图')
xlabel('灰度值')
ylabel(' 出现概率')
I2=im2bw(I,150/255);
subplot(2,2,3),imshow(I2);
title('阈值150的分割图像')
grid on;                  %显示网格线
axis on;                  %显示坐标系
I3=im2bw(I,200/255);   %
subplot(2,2,4),imshow(I3);
title('阈值200的分割图像')
grid on;                  %显示网格线
axis on;                  %显示坐标系

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值