• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-05-12
  • 语言: Matlab
  • 标签: bayes  图像分割  

资源简介

基于贝叶斯算法的图像像素分割,并可视化分割结果。matlab程序

资源截图

代码片段和文件信息

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%20170925 chenkexin
%基于灰度特征的贝叶斯分割
clear;clc;
%%%%%%%%%%%%%%%%%数据准备%%%%%%%%%%%%%%%%%%%%%%%%%%%
load(‘array_sample.mat‘);
load(‘Mask.mat‘);
img_with_fish = imread(‘.\309.bmp‘);
%构造3通道掩膜
mask3d(::1) = Mask;
mask3d(::2) = Mask;
mask3d(::3) = Mask;
%转换图像为双精度
img_with_fish = im2double(img_with_fish);
%得到鱼图像
fish = img_with_fish.*mask3d;
grey_fish = rgb2gray(fish);
%%%%%%%%%%%%%%%%%%%%类条件参数估计%%%%%%%%%%%%%%%%%%%%
%初始化两类样本个数
pos = 0;neg = 0;
%初始化两类样本灰度值之和
possum = 0;negsum = 0;

%计算两类样本个数与特征值之和
for i = 1:7696
    if array_sample(i5) == 1
        pos = pos + 1;
        possum = possum + array_sample(i1);
    else
        neg = neg + 1;
        negsum = negsum + array_sample(i1);
    end
end
%假定为正太分布,得到极大似然估计均值
u_pos = possum/pos;
u_neg = negsum/neg;

%同理得到极大似然估计两类分布函数标准差
sigma_pos = 0;sigma_neg = 0;
for i = 1:7696
    if array_sample(i5) == 1
        sigma_pos = sigma_pos + (array_sample(i1) -

评论

共有 条评论