⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 applygmms.m

📁 Matlab skin detector。运用高斯混合模型训练的到人的皮肤颜色分布。用于皮肤和人脸检测。
💻 M
字号:
% Applies the EMed GMM matrices to an image
%%function labelim = jrmogskin(colorim)%  colorim must have 3 color planes%     colorim(:,:,1) = red pixel values, 0 to 255%     colorim(:,:,2) = green pix values, 0 to 255%     colorim(:,:,3) = blue pix values,  0 to 255
%  skinMOG is the GMM matrix for skin models
%  nonskinMOG is the GMM matrix for background models%  labelim is 1 for skin pixels, 0 otherwise.
%
% based on jrmogskin by:%  Robert Collins, Penn State University, 2005
%
% modified by:
% Anthony Dottererfunction labelim = applyGMMs(colorim, skinMOG, nonskinMOG)[nr,nc,nb] = size(colorim);if (nb ~= 3)    error('input image must be color\n');endredvals = double(reshape(colorim(:,:,1),nr*nc,1));grevals = double(reshape(colorim(:,:,2),nr*nc,1));bluvals = double(reshape(colorim(:,:,3),nr*nc,1));skinscores = zeros(size(redvals));for i=1:size(skinMOG,1)   p = skinMOG(i,:);   tmp = ((redvals-p(1)).^2 / p(4) + (grevals-p(2)).^2 / p(5) + (bluvals-p(3)).^2 / p(6));   tmp = p(7) * exp(- tmp / 2) / ((2 * pi)^(3/2) * sqrt(p(4)*p(5)*p(6)));   skinscores = skinscores + tmp;end
nonskinscores = zeros(size(redvals));for i=1:size(nonskinMOG,1)   p = nonskinMOG(i,:);   tmp = ((redvals-p(1)).^2 / p(4) + (grevals-p(2)).^2 / p(5) + (bluvals-p(3)).^2 / p(6));   tmp = p(7) * exp(- tmp / 2) / ((2 * pi)^(3/2) * sqrt(p(4)*p(5)*p(6)));   nonskinscores = nonskinscores + tmp;endlabelim = reshape(skinscores > nonskinscores, nr , nc);return;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -