青岛大学本科生毕业论文(设计)
结束语
此次设计针对语音识别的特殊要求,以数字信号处理为基础,采用了快速傅里叶变换。从总体来看,基本达到了设计要求。由于时间和学识有限,设计中仍然存在着很多问题,例如对环境噪音影响的处理部分不够完善。本文仍然有需要改进和提高的地方。
通过本次设计,我深刻体会到理论联系实际的重要性。学到的是知识,而会应用才是能力。在设计过程中,实践是非常重要和非常艰难的,如何将所学专业知识应用于实际,这是我们必须解决的问题。
通过本次设计,我本人受益颇丰。首先本人熟悉了语音识别的基本设计方法,初步了解了编程实践的设计流程。其次在设计过程中,通过网络及书籍查阅了大量资料,使自己的知识面进一步拓宽。最后,在大量资料中提取出有用信息加以利用,将理论知识与实际相结合,提高了自己分析问题和解决问题的能力。
总之,通过这次毕业设计,我得到极大的锻炼。
31
青岛大学本科生毕业论文(设计)
谢 辞
本论文是在庄晓东老师的悉心指导下完成的,首先,我要感谢庄老师半年以来对我的指导。他治学严谨,学识渊博,平易近人,具有丰富的实践经验,在设计过程中,庄老师向我提出了深思熟虑的建议和概念清晰的见解,意见和建议,他既激发了我的灵感,又给了我持久不断的鼓励,使我少走了很多弯路,又学到了很多的东西。
在整整半年的学习、科研中,我还得到了其他许多老师和领导的帮助,学院的老师们严谨治学的教学态度使我受益非浅。
同时,我还要感谢语音识别小组的几位同学,正是大家的共同努力、激烈研讨,才使研究有所成果。
最后,向所有关心帮助过我的老师同学致以衷心的感谢。
32
青岛大学本科生毕业论文(设计)
参考文献
1.胡光锐,语音处理与识别,上海科学技术文献出版社,1994 2.赵立,语音信号处理,机械工业出版社,2003
3.程佩青,数字信号处理教程(第三版),清华大学出版,2007
4.拉宾纳 L,Rabiner Lawrence,阮平望, Juang Biing-Hwang,语音识别基本原理, 清华大学出版社, 1999 5.王炳锡,屈丹,彭煊,实用语音识别基础[M].北京:国防工业出版社,2005 6.詹新明,黄南山,杨灿,语音识别技术研究进展[J].现代计算机,2008 7.高新涛,陈乖丽,语音识别技术的发展现状及应用前景[J].甘肃科技纵横,2007
8.王军宁,吴成柯,数字信号处理器技术原理与开发应用,高等教育出版社,2003:207-253 9.第四届全国大学生设计竞赛获奖作品选编,北京理工大学出版社,2001 10.Barry Wilkinson & Michael Alien,并行程序设计,机械工业出版社 11.陈国良,并行计算—结构算法编程,高等教育出版社,1999 12.莫则尧,并行计算导论,电子工业出版社,2005
13.任小西,唐玲,张杰,基于OpenMP多线程动态负载均衡技术研究,湖南大学计算机与通信学院,2008
14.张雄伟,陈亮,杨吉斌,现代语音处理技术及应用[M],机械工业出版社,2003 15.刘凌,胡永生,数字信号处理的FPGA实现,清华大学出版社,2003:195-235 16.谢秋云,基于FPGA的语音识别技术研究[D],江苏大学硕士论文,2008
17.朱淑琴,裘雪红,一种精确检测语音端点的方法,计算机仿真,2004,22(3):214-216 18.易克初,田斌,付强,语音信号处理[M],国防工业出版社,2000
19.刘长明,任一峰,语音识别中DTW特征匹配的改进算法研究[J],中北大学学报(自然科学出版社),2006,27(1):37-40
20.陈一宁,李科,周静芳,语音识别说话人识别中的高效算法[J],计算机工程,2006,Vo1.30,No.1:1-3 21.王让定,柴佩琪,一个基于谱熵的语音端点检测改进方法[J],信息与控制,vo1.33,No.1,Feb.2004:77-81
22.张仁志,崔慧娟,基于短时能量的语音端点检测算法研究[J],电声技术,2005(7):52-54,59
33
青岛大学本科生毕业论文(设计)
附 录
声音识别——提取MFCC特征C程序 mfcc.c
#include \#include
float m_dctMatrix[(12+1)*23]; int m_sampleRate=32000; WfMelFB m_MelFB[23]; float m_MelWeight[512/2+1]; float m_logEnergyFloor; float m_energyFloor;
//Filter:H(z) = 1-a*z^(-1)
int preemphasize(float *sample, int sampleN) {
/* Setting emphFac=0 turns off preemphasis. */ int i;
float emphFac = (float)0.97;
//并行处理
#pragma omp parallel for private(i) for (i = sampleN-1; i > 0; i--) {
sample[i] = sample[i] - emphFac * sample[i-1]; }
sample[0] = (float)(1.0 - emphFac) * sample[0]; return(1); }
int preprocessing(short *sample, int sampleN, float *out) { int i; //并行处理
#pragma omp parallel for private(i) for(i=0;i //if (m_dither) Dither(out, sampleN); preemphasize(out, sampleN); return 1; } 34 青岛大学本科生毕业论文(设计) //Apply a hamming window to reduce the discontinuity of the edge int Do_hamm_window(float *inputA, int inputN) { int i; float* hamm_window ; float temp = (float)(2 * M_PI / (float)(inputN-1)); hamm_window = (float*)malloc(inputN*4); //并行处理 #pragma omp parallel for private(i) for (i=0 ; i #pragma omp parallel for private(i) for (i=0 ; i return(1); } int mel_cepstrum_basic(short *sample, int frameSize, float *mel_cep, int ceporder, int fft_size) { float* frameA = (float*)malloc(frameSize*4); preprocessing(sample, frameSize, &frameA[0]); Do_hamm_window(&frameA[0], frameSize); _mel_cepstrum_basic(&frameA[0], frameSize, mel_cep, m_fbOrder, ceporder, fft_size); free(frameA); return 1; } //cos(PI*i/(24*(j+0.5))) int MfccInitDCTMatrix (float *dctMatrix, int ceporder, int numChannels) { int i, j; //并行处理 #pragma omp parallel for private(i) for (i = 0; i <= ceporder; i++){//12+1 //并行处理 #pragma omp parallel for private(i) for (j = 0; j < numChannels; j++){//23 dctMatrix[i * numChannels + j] = (float) cos (M_PI * (float) i / (float) numChannels * ((float) j + 0.5)); if(i==0) dctMatrix[i * numChannels + j]*=(float)sqrt(1/(float)numChannels); else dctMatrix[i * numChannels + j]*=(float)sqrt(2/(float)numChannels); } } return 1; } 35 百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库语音识别论文(8)在线全文阅读。
相关推荐: