资源简介
自己修改的程序代码,测试可以运行的!对HMM-GMM的初学者有用。
代码片段和文件信息
function hmm = baum(hmm samples)
mix = hmm.mix; %高斯混合
N = length(mix); %HMM状态数
K = length(samples); %语音样本数
SIZE = size(samples(1).data2); %参数阶数
% 计算前向 后向概率矩阵 考虑多观察序列和下溢问题
disp(‘计算样本参数...‘);
for k = 1:K
fprintf(‘%d ‘k)
param(k) = getparam(hmm samples(k).data);
end
fprintf(‘\n‘)
% 重估转移概率矩阵A: trans
disp(‘重估转移概率矩阵A...‘)
for i = 1:N-1
denom = 0;
for k = 1:K
tmp = param(k).ksai(:i:);
denom = denom + sum(tmp(:));
end
for j = i:i+1
nom = 0;
for k = 1:K
tmp = param(k).ksai(:ij);
nom = nom + sum(tmp(:));
end
hmm.trans(ij) = nom / denom;
end
end
% 重估混合高斯的参数
disp(‘重估混合高斯的参数...‘)
for l = 1:N
for j = 1:hmm.M(l)
fprintf(‘%d%d ‘lj)
% 计算各pdf的均值和方差
nommean = zeros(1SIZE);
nomvar = zeros(1SIZE);
denom = 0;
for k = 1:K
T = size(samples(k).data1);
for t = 1:T
x = samples(k).data(t:);
nommean = nommean + param(k).gama(tlj) * x;
nomvar = nomvar + param(k).gama(tlj) * (x-mix(l).mean(j:)).^2;
denom = denom + param(k).gama(tlj);
end
end
% hmm.mix(l).mean(j:) = nommean / denom;
hmm.mix(l).var (j:) = nomvar / denom;
% 计算各pdf的权
nom = 0;
denom = 0;
for k = 1:K
tmp = param(k).gama(:lj); nom = nom + sum(tmp(:));
tmp = param(k).gama(:l:); denom = denom + sum(tmp(:));
end
hmm.mix(l).weight(j) = nom/denom;
end
fprintf(‘\n‘)
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2012-12-14 20:08 hmm\
文件 1513 2012-12-14 20:38 hmm\baum.m
文件 2072 2012-12-14 20:08 hmm\enfr
文件 1990 2002-02-28 11:05 hmm\getparam.m
文件 63856 2001-11-12 12:37 hmm\hmm.mat
文件 1266 2009-10-19 09:33 hmm\inithmm.asv
文件 1266 2009-10-19 09:41 hmm\inithmm.m
文件 180 2012-12-14 20:01 hmm\main.m
文件 3482 2012-12-14 20:06 hmm\melbankm.m
文件 859 2001-11-09 09:30 hmm\mfcc.m
文件 357 2001-11-11 10:28 hmm\mixture.m
文件 230 2001-11-10 21:48 hmm\pdf.m
文件 264 2009-10-19 08:52 hmm\recog.asv
文件 252 2009-10-18 17:25 hmm\recog.m
文件 630000 2001-11-12 12:38 hmm\samples.mat
文件 839 2001-11-13 10:12 hmm\train.m
文件 1860 2009-10-18 17:08 hmm\vad.m
文件 1026 2001-11-11 09:21 hmm\viterbi.m
相关资源
- Power electronic simulation handouts 山东大学
- GUI界面设计并附有案例
- PRACHDETECTION
- 多输入多输出系统解耦控制
- sfs code
- 一维信号压缩还原信号
- 获取图片点坐标
- 掌纹识别
- CVRP 一个用蚁群算法做OCVRP的代码。不
- matlab拍照
- matlab读入IGS文件
- matlab的车牌定位提取
- matlab的高帽变换
- 简单的Matlab人脸识别
- 图片三维重建工具箱
- 神经网络与adaboost的强分类器
- 3D 打印技术
- 单一图像去雾
- 声纹识别
- 视频背景提取
- 图像裂纹提取
- tfristft 令x(n)=5exp(j*0.15*n*n)+6exp(
- CT图像三维体绘制
- 视频监控阴影去除
- 手写体数字识别的训练数据库
- 数字水印参考代码
- 提取瑞雷面波的频散曲线
- matlab颜色直方图算法
- retinex图像增强
- HOG 根据Dalal提出的HOG特征算法编写
评论
共有 条评论