• 大小: 1.6MB
    文件类型: .rar
    金币: 2
    下载: 1 次
    发布日期: 2023-08-10
  • 语言: C/C++
  • 标签: 声纹识别  MFCC  

资源简介

matlab实现声纹识别,通过提取声音信号的MFCC特征,然后形成特征向量,通过训练语音,对测试语音进行识别,可以识别训练库内的声音,也可以识别出训练库外的声音

资源截图

代码片段和文件信息

function f=enframe(xwininc) 
%ENframe split signal up into (overlapping) frames: one per row. F=(XWININC) 

% F = ENframe(XLEN) splits the vector X up into 
% frames. Each frame is of length LEN and occupies 
% one row of the output matrix. The last few frames of X 
% will be ignored if its length is not divisible by LEN. 
% It is an error if X is shorter than LEN. 

% F = ENframe(XLENINC) has frames beginning at increments of INC 
% The centre of frame I is X((I-1)*INC+(LEN+1)/2) for I=12... 
% The number of frames is fix((length(X)-LEN+INC)/INC) 

% F = ENframe(XWINDOW) or ENframe(XWINDOWINC) multiplies 
% each frame by WINDOW(:) 
 
%    Copyright (C) Mike Brookes 1997 
%      Version: $Id: enframe.mv 1.3 2005/02/21 15:22:12 dmb Exp $ 

%   VOICEBOX is a MATLAB toolbox for speech processing. 
%   Home page: http://www.ee.ic.ac.uk/hp/staff/dmb/voicebox/voicebox.html 

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
%   This program is free software; you can redistribute it and/or modify 
%   it under the terms of the GNU General Public License as published by 
%   the Free Software Foundation; either version 2 of the License or 
%   (at your option) any later version. 

%   This program is distributed in the hope that it will be useful 
%   but WITHOUT ANY WARRANTY; without even the implied warranty of 
%   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
%   GNU General Public License for more details. 

%   You can obtain a copy of the GNU General Public License from 
%   ftp://prep.ai.mit.edu/pub/gnu/COPYING-2.0 or by writing to 
%   Free Software Foundation Inc.675 Mass Ave Cambridge MA 02139 USA. 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
 
nx=length(x); 
nwin=length(win); 
if (nwin == 1) 
   len = win; 
else 
   len = nwin; 
end 
if (nargin < 3) 
   inc = len; 
end 
nf = fix((nx-len+inc)/inc); 
f=zeros(nflen); 
indf= inc*(0:(nf-1)).‘; 
inds = (1:len); 
f(:) = x(indf(:ones(1len))+inds(ones(nf1):)); 
if (nwin > 1) 
    w = win(:)‘; 
    f = f .* w(ones(nf1):); 
end 
 
 


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2202  2019-03-02 23:50  enframe.m

     文件       3590  2019-03-02 23:49  melbankm.m

     文件       1333  2004-04-16 13:38  melfb.m

     文件       2157  2019-03-17 10:07  MFCC2par.m

     文件         55  2019-03-14 10:57  similar.m

     文件       6725  2019-03-17 09:58  test4.fig

     文件       6097  2019-03-18 10:29  test4.m

     文件     350286  2019-03-02 13:14  训练样本hk1.wav

     文件     350286  2019-03-02 13:14  训练样本hk2.wav

     文件     368718  2019-03-02 13:14  训练样本hk3.wav

     文件     451662  2019-03-02 13:14  训练样本lc1.wav

     文件     456270  2019-03-02 13:14  训练样本lc2.wav

     文件     377934  2019-03-02 13:14  训练样本lc3.wav

     文件     488526  2019-03-02 13:14  训练样本lyy1.wav

     文件     424014  2019-03-02 13:14  训练样本lyy2.wav

     文件     345678  2019-03-02 13:14  训练样本lyy3.wav

     文件     400974  2019-03-02 13:14  训练样本qs1.wav

     文件     396366  2019-03-02 13:14  训练样本qs2.wav

     文件     373326  2019-03-02 13:14  训练样本qs3.wav

     文件     341070  2019-03-02 13:14  训练样本yqc1.wav

     文件     368718  2019-03-02 13:14  训练样本yqc2.wav

     文件     377934  2019-03-02 13:14  训练样本yqc3.wav

----------- ---------  ---------- -----  ----

              5893921                    22


评论

共有 条评论