欢迎使用CSDN-markdown编辑器

建立高斯模型

代码块

%matlab
%– 程序初始化 —%
clear % 清除所有变量。否则工作空间窗口中保留的全局变量会影响新程序的运行结果。
clc % 清除所有命令。否则命令窗口中同时显示原有结果和新结果会引起混乱。
close all % 清除所有显示窗口。打开窗口过多影响运行速度。
I=imread(‘5.ppm’);
subplot(2,3,1),imshow(I);
title(‘原图’);
h=rgb2ycbcr(I);
subplot(2,3,2),imshow(h);
title(‘YCbCr图’);
[a,b,c]=size(h); %返回数组维数
cb=double(h(:,:,2)); %颜色分通道
cr=double(h(:,:,3));
for i=1:a %到行像素数
for j=1:b %到列像素数
x=[cb(i,j),cr(i,j)];
m=[113.6339 175.1614]; %红色标志经验值
n=[48.0929 -105.5544;-105.5544 259.3353];
% m=[158.3810 105.3633]; %蓝色
% n=[65.8423 -55.3562;-55.3562 58.0450];
inv(n) ;

    p(i,j)=exp((-0.5)*(x-m)*inv(n)*(x-m)');%服从高斯分布 %计算肤色高斯后验概率  
end 

end
Q=p(:);
g=p/max(Q);
subplot(2,3,3),imshow(g);
title(‘似然图’); %概率图
w=I;
for i=1:a %二值图
for j=1:b
if (p(i,j)<0.1)
p(i,j)=0;
else
p(i,j)=1;
end
q(i,j)=double(255*p(i,j));
end
end
t=medfilt2(q); %中值滤波
subplot(2,3,4),imshow(t);
title(‘二值分割图’);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值