资源简介
迭代法和二位otsu分割算法程序,matlab编写,可用
代码片段和文件信息
%%%%%%%%%%%图像分割迭代法%%%%%%%%%%%%
clear
clc;
tic; %计时器
% Im=imread(‘D:\tank2.tiff‘);
Im=imread(‘D:\11.bmp‘);
% Im=imread(‘D:\111.jpg‘);
% Im=rgb2gray(Im);
% subplot(131)imhist(Im)title(‘直方图‘);
% subplot(121)imshow(Im)title(‘原始图像‘);
[xy]=size(Im);%求出图像大小
b=double(Im);
zd=double(max(max(Im)));%求出图像最大灰度值
zx=double(min(min(Im)));%求出图像最小灰度值
T=double((zd+zx))/2;%T赋初值
count=double(0);%记录循环次数
while 1;%迭代最佳阈值分割算法
count=count+1;
S0=0.0;n0=0.0;%为计算灰度大于阈值的元素的灰度总值、个数赋值
S1=0.0;n1=0.0;%为计算灰度小于阈值的元素的灰度总值、个数赋值
for i=1:x
for j=1:y
if double(Im(ij))>=T
S1=S1+double(Im(ij));%大于阈值的图像点灰度值累加
n1=n1+1;%大于阈值的图像个数累加
else
S0=S0+double(Im(ij));%小于阈值的图像点灰度值累加
n0=n0+1;%小于阈值的图像个数累加
end
end
end
T0=S0/n0;%求小于阈值的灰度值得均值
T1=S1/n1;%求大于阈值的灰度值得均值
if abs(T-((T0+T1)/2))<0.1;%迭代至前后两次阈值相差几乎为0时停止迭代
break;
else
T=(T0+T1)/2;%在阈值T下,迭代阈值的计算过程
end
end
count;%显示迭代运行次数
T;%显示最佳阈值
toc;
i1=im2bw(ImT/255);%图像在最佳阈值下二值化
figureimshow(i1);
% title(‘实验结果‘);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1375 2014-05-14 17:51 fenge\diedai.m
文件 1668 2014-05-14 17:53 fenge\otsu2.m
目录 0 2014-07-15 16:57 fenge
----------- --------- ---------- ----- ----
3043 3
相关资源
- 多阈值的OTSU算法的图像分割
- FISTA 压缩感知的图像使用快速迭代s
- 移动机器人轨迹跟踪迭代学习控制 (
- Baum-Welch算法迭代估计隐马尔科夫模型
- ILC 迭代学习控制的matlab程序
- matlab实现阈值图像分割
- matlab用于迭代学习控制的仿真程序
- 迭代学习Matlab仿真
- OSTU多阈值分割otsu(Matlab)
-
迭代学习MATLAB代码以及simuli
nk建模 - Matlab的迭代学习控制程序(ILC)
- 迭代学习控制PID参数优化,matlab程序
- MATLAB实现高斯赛德尔迭代法
- matlab迭代程序(附m文件)
- 不动点迭代法解非线性方程的aitken加
- IRLS 迭代加权二范数算法
- 最小二乘法、迭代最小二乘法、总体
- 单目视觉中的位姿估算代码
- matlab迭代学习控制
- otsu 多维OTSU阈值分割方法
- 魏庆来的近似动态规划学习例子
- newton-MATLAB 详细推导了复平面上牛顿迭
- PDE 偏微分方程图像复原代码
- Otsus 图像分割
- leaf_by_recursion 模拟植物生长算法的分
-
FRSR 实现文献‘Fast and robust multif
r - iterative_blind_deconvolution 实现了迭代盲
- two_valuable 灰度图像二值化比较经典的
- cannyedgedetection.tar canny边缘检测的mat
- MTDC 多端交直流潮流程序计算
评论
共有 条评论