资源简介
最大类间方差法(OTSU)阈值分割的matlab实现
代码片段和文件信息
%图像OTSU阈值分割的程序设计
clear; %清除系统变量
close all; %关闭所有打开的窗口
[name path]=uigetfile(‘*.jpg‘); %出现打开文件界面
filename=[path name]; %获取文件的路径与文件名
I=rgb2gray(imread(filename)); % 读图并转化为黑白图片
%以下为阈值计算程序
Ni=imhist(I);%计算直方图数组
N=sum(Ni); %总像素点个数
delamax=0; %类间方差最大值
threshold=0; %阈值
for k=2:255
u=dot([0:255]Ni/N); %图像的总平均灰度级
w0=sum(Ni(1:k)/N); %C0类像素所占面积的比例
w1=1-w0; %C1类像素所占面积的比例
if w0==0|w0==1 %当w0为1或0时提前结束本次循环
continue
end
u0=dot([0:k-1]Ni(1:k)/N)/w0; %C0类像素的平均灰度
u1=dot([k:255]Ni(k+1:256)/N)/w1; %C1类像素的平均灰度
dela(k)=w0*(u-u0)^2+w1*(u-u1)^2; %类间方差公式
%求出
- 上一篇:三分之一倍频程matlab
- 下一篇:LDPC的BP译码matlab仿真
相关资源
- MATLAB 经典程序源代码大全
- MATLAB小波软阈值去噪代码33473
- 天线阵的波束形成在MATLAB仿真程序及
- 非线性SVM算法-matlab实现
- 《MATLAB 智能算法超级学习手册》-程序
- 组合导航matlab程序
- 读取txt文件内容matlab代码实现
- Matlab实现基于相关的模板匹配程序
- matlab优化工具箱讲解
- 基于MATLAB的快速傅里叶变换
- 光纤传输中的分布傅立叶算法matlab实
- 基于matlab的图像处理源程序
- matlab 椭圆拟合程序
- 算术编码解码matlab源代码
- optical_flow 光流法 matlab 实现程序
- 引导图像滤波器 Matlab实现
- 分形几何中一些经典图形的Matlab画法
- OFDM系统MATLAB仿真代码
- SVM工具箱(matlab中运行)
- 图像小波变换MatLab源代码
- LU分解的MATLAB实现
- 冈萨雷斯数字图像处理matlab版(第三
- 替代数据法的matlab程序
- 用matlab实现的多站定位系统性能仿真
- 通过不同方法进行粗糙集属性约简m
- k近邻算法matlab实现
- matlab识别系统
- 神经网络分类matlab程序
- matlab正弦信号发生器的设计
- matlab程序用Hopfield网络解决TSP
评论
共有 条评论