[matlab图像处理] 阈值分割

这篇博客介绍了在MATLAB中进行图像处理的三种阈值分割方法:迭代式阈值分割、Otsu阈值分割和二值化。通过示例代码展示了如何对图像进行分割,并分别给出了分割后的效果。对于迭代式阈值分割,博主通过不断调整阈值直至其不变来确定最佳阈值。Otsu阈值分割利用了Otsu算法自动计算最佳阈值。最后,进行了手动设定阈值的二值化处理。每个步骤都配合有图像展示,帮助理解不同分割方法的差异。
摘要由CSDN通过智能技术生成

%迭代式阈值分割  otsu阈值分割  二值化
close all;%关闭所有窗口
clear;%清除变量的状态数据
clc;%清除命令行

I=imread('rice.png');
subplot(2,2,1);
imshow(I);
title('1 rice的原图');

%迭代式阈值分割
zmax=max(max(I));%取出最大灰度值
zmin=min(min(I));%取出最小灰度值
tk=(zmax+zmin)/2;
bcal=1;
[m,n]=size(I);
while(bcal)
    %定义前景和背景数
    iforeground=0;
    ibackground=0;
    %定义前景和背景灰度总和
    foregroundsum=0;
    backgroundsum=0;
    for i=1:m
        for j=1:n
            tmp=I(i,j);
            if(tmp>=tk)
                %前景灰度值
                iforeground=iforeground+1;
                foregroundsum=foregroundsum+double(tmp);
            else
                ibackground=ibackground+1;
                backgroundsum=backgroundsum+double(tmp);
           

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值