- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于Matlab的语音处理2
PAGE \* MERGEFORMAT9
数字语音处理上机报告
指 导 老 师:
姓 名:
班 级 序 号:
日 期: 2014年10月16日
目录
TOC \o 1-3 \h \z \u HYPERLINK \l _Toc401393428 一、实验目的: PAGEREF _Toc401393428 \h 2
HYPERLINK \l _Toc401393429 二、算法设计: PAGEREF _Toc401393429 \h 2
HYPERLINK \l _Toc401393430 1、 创建训练序列: PAGEREF _Toc401393430 \h 2
HYPERLINK \l _Toc401393431 2、 创建码书: PAGEREF _Toc401393431 \h 3
HYPERLINK \l _Toc401393432 3、计算训练序列中每个信号与码书中每个码字的距离,并求出最小距离,计算平均失真: PAGEREF _Toc401393432 \h 3
HYPERLINK \l _Toc401393433 4、根据最小距离划分胞腔,更新码书: PAGEREF _Toc401393433 \h 4
HYPERLINK \l _Toc401393434 5、运行脚本文件: PAGEREF _Toc401393434 \h 4
HYPERLINK \l _Toc401393435 三、运行效果及分析: PAGEREF _Toc401393435 \h 5
HYPERLINK \l _Toc401393436 1. 设调整误差为1,运行程序结果如下: PAGEREF _Toc401393436 \h 5
HYPERLINK \l _Toc401393437 2. 设调整误差为0.002,运行程序结果如下: PAGEREF _Toc401393437 \h 6
HYPERLINK \l _Toc401393438 3.设调整误差为0.001,运行程序结果如下: PAGEREF _Toc401393438 \h 7
HYPERLINK \l _Toc401393439 四、实验小结 PAGEREF _Toc401393439 \h 8
一、实验目的:
理解语言信号的矢量量化含义及量化过程,会用MatLab进行仿真。用已知训练序列的设计算法对输入语音信号进行矢量量化,画出仿真图。
二、算法设计:
创建训练序列:
function [ Train_Signal ] = Preduce_Train_Signal( wav_in,N )
% 该函数用于生成初始目标信号 N为目标维数
[C,R] = size(wav_in);
Train_Signal = zeros(C/N,N);
for i = 1:C/N % 遍历输入量 生成N维目标信号
for j = 1:N
Train_Signal(i,j) = wav_in((i-1)*N+j,1);
end
end
end
创建码书:
function [ Codebook ] = Preduce_Codebook( wav_in,Codebook_Size )
% 该函数用于生成原始码书 Codebook_Size为码书尺寸
[C,R] = size(wav_in);
Codebook = zeros(Codebook_Size,R);
for i = 1:Codebook_Size
Codebook(i,:) = wav_in(i*5,:);
end
end
3、计算训练序列中每个信号与码书中每个码字的距离,并求出最小距离,计算平均失真:
function [ Ave_error,Temp_error,min_dex ] = Calculate_Mindis( Train_Signal,Codebook )
% 该函数用于计算最小距离,平均失真
[C_t,R_t] = size(Train_Signal);
[C_c,R_c] = size(Codebook);
Temp_error = zeros(C_t,R
文档评论(0)