基于MATLAB GUI语音信号的采集分析系统
- 格式:doc
- 大小:330.54 KB
- 文档页数:17
1 绪论1.1 课题的背景与意义通过语音传递倍息是人类最重要、最有效、最常用和最方便的交换信息的形式。
语言是人类持有的功能.声音是人类常用的工具,是相互传递信息的最主要的手段。
因此,语音信号是人们构成思想疏通和感情交流的最主要的途径。
并且,由于语言和语音与人的智力活动密切相关,与社会文化和进步紧密相连,所以它具有最大的信息容量和最高的智能水平。
现在,人类已开始进入了信息化时代,用现代手段研究语音信号,使人们能更加有效地产生、传输、存储、获取和应用语音信息,这对于促进社会的发展具有十分重要的意义。
让计算机能听懂人类的语言,是人类自计算机诞生以来梦寐以求的想法。
随着计算机越来越向便携化方向发展,随着计算环境的日趋复杂化,人们越来越迫切要求摆脱键盘的束缚而代之以语音输人这样便于使用的、自然的、人性化的输人方式。
作为高科鼓应用领域的研究热点,语音信号采集与分析从理论的研究到产品的开发已经走过了几十个春秋并且取得了长足的进步。
它正在直接与办公、交通、金融、公安、商业、旅游等行业的语音咨询与管理.工业生产部门的语声控制,电话、电信系统的自动拨号、辅助控制与查询以及医疗卫生和福利事业的生活支援系统等各种实际应用领域相接轨,并且有望成为下一代操作系统和应用程序的用户界面。
可见,语音信号采集与分析的研究将是一项极具市场价值和挑战性的工作。
我们今天进行这一领域的研究与开拓就是要让语音信号处理技术走人人们的日常生活当中,并不断朝更高目标而努力。
语音信号采集与分析之所以能够那样长期地、深深地吸引广大科学工作者去不断地对其进行研究和探讨,除了它的实用性之外,另一个重要原因是,它始终与当时信息科学中最活跃的前沿学科保持密切的联系.并且一起发展。
语音信号采集与分析是以语音语言学和数字信号处理为基础而形成的一门涉及面很广的综合性学科,与心理、生理学、计算机科学、通信与信息科学以及模式识别和人工智能等学科都有着非常密切的关系。
对语音信号采集与分析的研究一直是数字信号处理技术发展的重要推动力量。
基于MATLAB的语音信号的采集与分析摘要:我们通过学习使用MA TLAB仿真软件实现语音信号分析,加深对信号与系统这门课程所学习内容的理解,锻炼自学能力和动手能力。
我们通过电脑的声卡采集声音信号,借助已有的知识和MATLAB对采集的声音信号进行时域波形和频域频谱的显示,研究男女声信号的差别,通过查找资料提取声音信号的基音频率,并通过大量测试确定门限值来自动判别男女声信号,最后对信号进行降采样处理并播放,重新绘制频谱图分析,验证抽样定理。
关键词:MA TLAB仿真、频谱分析、基音频率、降采样、抽样定理。
1.音频信号的采集我们所要分析的语音信号需要自行采集,所以信号分析的第一步就是采集音频信号。
实现音频信号的采集最简单的办法就是通过电脑的声卡直接进行采集,这样采集到的音频信号虽然已经被转化成了数字量存储在电脑中,但通过查询我们了解到电脑录音所使用的采样频率是为44100Hz,完全保证了人类耳朵能听到所有声音频率分量的无失真采集,如果通过MA TLAB软件采集还能够调节采样频率,所以能够完全满足我们实验的要求。
1.1使用MATLAB采集语音信号通过上网查询,我们了解到MATLAB有自带的音频信号采集函数audiorecord(),通过它可以在程序运行时即时采集音频信号进行存储并处理,并且可以通过改变输入参数来改变采样频率,可以直接模拟降采样的过程,直观地验证抽样定理。
但鉴于我们需要重复进行试验和演示,即时采集信号显得繁琐且不必要,而且会增加我们非界面化编程的难度,所以我们放弃了这种方法。
1.2使用电脑录音机采集语音信号通过电脑自带的录音机软件可以实现更简单的音频信号采集操作,虽然采样频率不可调节,但其固有的采样频率完全满足了我们对所采集信号的要求,可以通过MATLAB的降采样处理的到较低采样频率的信号。
这样采集的音频信号会直接以文件的形式存储在电脑中,方便我们随时进行调用,方便分析与演示,所以我们决定采用这种方式实现语音信号的采集。
MA TLAB课程设计说明书摘要语音信号的采集与分析技术是一门涉及面很广的交叉科学,它的应用和发展与语音学、声音测量学、电子测量技术以及数字信号处理等学科紧密联系。
该设计主要介绍语音信号的采集与分析方法,通过PC机录制自己的一段声音,运用Matlab提供的函数进行仿真分析,并画出采样后语音信号的时域波形和频谱图,对所采集的语音信号加入干扰随机高斯噪声,对加入噪声的信号进行播放,并进行时域和频谱分析;对比加噪前后的时域图和频谱图,分析讨论采用什么样的滤波器进行滤除噪声。
关键词:语音信号;采集与分析;Matlab目录摘要 (I)1 语音信号的录制 (1)2 语音信号的采集 (3)3 语音信号的分析 (4)3.1语音信号时域分析 (4)3.2语音信号频域分析 (5)4 语音信号的加噪处理 (7)5 滤噪设计分析 (11)6 设计总结 (12)参考文献 (13)附录 (14)1 语音信号的录制为了将原始模拟语音信号变为数字信号,必须经过采样和量化两个步骤,从而得到时间和幅度上均为离散的数字语音信号。
语音信号经过预滤波和采样后,由A/D变换器变换为二址制数字码。
这种防混叠滤波通常与模数转换器做在一个集成块内,因此目前来说,语音信号的数字化的质量还是有保证的。
市面上购买到的普通声卡在这方面做的都很好,语音声波通过话筒输入到声卡后直接获得的是经过防混叠滤波、A/D变换、量化处理的离散的数字信号。
将声卡作为对象处理采集语音信号Matlab将声卡作为对象处理,其后的一切操作都不与硬件直接相关,而是通过对该对象的操作来作用于硬件设备(声卡)。
操作时首先要对声卡产生一个模拟输入对象(ai),给ai对象添加一个通道设置采样频率后,就可以启动设备对象,开始采集数据,采集完成后停止对象并删除对象。
实际工作中,我们可以利用windows自带的录音机录制语音文件,图1是基于PC机的语音信号录制过程,声卡可以完成语音波形的A/D转换,获得WAVE文件,为后续的处理储备原材料。
目录摘要 (2)1 课程设计实现 (3)1.1整体设计思路 (3)1.2整体实现过程 (3)1.2.1 信号的采样 (3)1.2.2 语音信号的读取 (5)1.2.3 语音信号的频谱分析 (6)1.2.4 噪声信号的构建 (7)1.2.5 加入噪声的语音信号的频谱 (8)2 数字滤波器的设计 (9)2.1滤波器的设计原理 (9)2.2滤波器的性能指标 (10)2.3IIR数字滤波器设计 (10)2.4FIR数字滤波器设计 (12)2.5滤波器对信号滤波 (13)2.6语音信号回放 (17)3 心得体会 (17)4 主要参考资料 (18)附录 (20)摘要MATLAB 语言是一种数据分析和处理功能十分强大的计算机应用软件 ,它可以将声音文件变换为离散的数据文件 , 然后利用其强大的矩阵运算能力处理数据 ,如数字滤波、傅里叶变换、时域和频域分析、声音回放以及各种图的呈现等 , 信号处理是MATLAB 重要应用的领域之一。
本课程设计介绍了基于Matlab的对语音信号采集、处理及滤波器的设计,并使之实现的过程。
理解与掌握课程中的基本概念、基本原理、基本分析方法,用Matlab进行数字语音信号处理,并阐述了课程设计的具体方法、步骤和内容。
综合运用本课程的理论知识进行频谱分析以及滤波器设计,通过理论推导得出相应结论,并利用MATLAB作为工具进行实现,从而复习巩固课堂所学的理论知识,提高对所学知识的综合应用能力,并从实践上初步实现对数字信号的处理。
关键词: MATLAB 工具信号语音采集滤波器1 课程设计实现1.1整体设计思路Matlab 语言是一种数据分析和处理功能十分强大的计算机应用软件 ,它可以将声音文件变换为离散的数据文件 , 然后利用其强大的矩阵运算能力处理数据 ,如数字滤波、傅里叶变换、时域和频域分析、声音回放以及各种图的呈现等 , 信号处理是 Matlab 重要应用的领域之一。
本文是用 Matlab对含噪的的语音信号同时在时域和频域进行滤波处理和分析。
第39卷第4期河北工业大学学报2010年8月V ol.39No.4JOURNAL OF HEBEI UNIVERSITY OF TECHNOLOGY August2010文章编号:1007-2373(2010)04-0014-05基于The typical time-frequency characteristics of speech signal and the core algorithms are the key problems in spe-ech recognition,speech synthesis and speaker recognition system.According to the algorithm principles of linear pre-diction coding(LPC)theory and Mel frequency cepstrum coefficient(MFCC),a features extraction system platform for speech signal based on MATLAB GUI was implemented.On this platform,the speech signal in different audio formats can be loaded and played,and the waveform of the loaded speech signal can be displayed.Furthermore,the calculated results of LPC and MFCC can be displayed on the interface.At the same time,the data results can be saved in the corre-sponding files.The system supplied friendly human computer interaction and easy operation.The designed system will provide important and intuitive auxiliary effect on verifying the algorithms and data processing efficiency for the research fields related to speech signal processing.15王光艳,等:基于MATLAB GUI的语音信号特征提取系统设计第4期的重要参数之一,取得了较为精确的识别效果,详见文献[3-4].MATLAB是使用最为广泛的科学计算软件之一,具有强大、丰富的内置函数和工具箱[5].其版本升级到6.5以后,为用户提供了较为方便的设计、修改图形用户界面(GUI)的专用工作台,用户调用GUI设计工作台,就可以设计自己的图形用户界面.与VC等其他编程语言相比,MATLAB GUI设计同样采用了面向对象技术,特别是对于有大量数值运算和图形图像处理的程序,具有很大优势,界面设计时更加简洁、快捷与直观.语音信号特征提取系统界面在MATLAB7.6环境下,基于GUI技术设计实现,可完成语音信号的装载、播放和波形显示,及其典型语音处理技术和参数提取算法的实时显示和数据存储等基本功能.1语音信号典型特征和分析技术波形表示和参数表示是描述语音信号的两种典型方式.通过观察波形和试听,实现对语音信号的直观认识;通过提取相关的语音参数特征,实现对语音信号的深入分析,以及语音识别、说话人识别系统中的特征匹配.1.1LPC算法原理LPC技术的基本思想是:语音信号的每个取样值,可以用它过去的若干个取样值的加权来表示,各加权系数按照最小均方误差的原则来确定.设语音信号的现在估值为,前12=(1)其中:=.使误差在均方误差最小的条件下,也即预测残差能量2=1/1=111=1,2,3,进行递推,得到最终解为11=稳定的充要条件.基于LPC的语音识别、语音合成、语音编码和说话人识别的大量实践证明:线性预测参数是语音信号特征表示的良好参数[1].1.2MFCC算法原理MFCC是建立在人耳对声音频率的非线性感知基础上,将线性功率谱转化为Mel频率下的功率谱.Mel 频率尺度的值大体上对应于实际频率的对数分布关系,符合人耳的听觉特性.Mel频率与实际频率的具体关系可表示为16河北工业大学学报第39卷如下:①将原始的语音信号先经过预加重、分帧、加窗等预处理过程,得到每个语音帧的时域信号.预加重的目的是加强语音中的高频成分,公式为为预加重系数,值在0.9和1之间,本文取经过,=c o sΪMFCC参数的阶数,个三角滤波器的输出,维MFCC参数.根据文献[7]所研究的MFCC各阶分量对语音识别的平均贡献,最有用的语音信息包含在MFCC分量的 ̄之间,其它谱系数包含的有用信息较少.所以,在求出的各阶MFCC参数后,首先去除直流分量1=Ϊ³£Êý£¬Í¨³£È¡2,这时差分参数就称为当前帧的前两帧和后两帧的线性组合,由此可将多维参数(17第4期王光艳,等:基于MATLAB GUI的语音信号特征提取系统设计②绘出界面草图,从使用者的角度来审查;③启动GUIDE,按草图创建静态界面,并进行相应控件的属性设置;④编写并调试相应对象的回调函数,实现界面的动态功能;⑤运行界面,进行功能测试.在设计中,步骤之间往往交叉反复进行,设计和实现过程往往不是一步到位的.3仿真界面的设计与实现3.1界面功能的规划与设计要求界面能完成语音信号波形和典型参数特征的实时显示,其原理框架如图2所示.界面的主要功能模块包括:语音信号的装载、波形显示和回放模块;LPC参数计算和显示模块;MFCC参数的提取和显示模块.这些操作的结果分别通过屏幕、文件以及提示等进行显示或保存,提供统一的输入输出操作接口,不同算法计算结果可在不同目录下保存.界面上主要划分了两个功能显示区,每个功能区通过调用“Panel”控件来完成.第1个功能区主要用来完成语音信号的装载、回放和波形显示;第2个功能区完成LPC或MFCC参数的提取和显示,由于二者的参数提取和结果显示过程类似,故可共用一个工作区,采用按钮来完成具体功能切换.系统的后台语音资源库主要采用中文语言资源联盟统一开发,并由中科院自动化所承担录制的标准语料库,所有语音文件,包括字、词和句子,均为在实验室环境下录制的汉语普通话男声和女声发音,16kHz采样,16bit编码,双声道输出,存储为*.wav格式.关于语音文件的装载、时域波形显示和播放等功能是通过直接撰写控件的函数代码来实现的.LPC和MFCC参数的提取等功能模块的实现均是通过调用事先编好的自定义M文件来完成的,具体程序算法设计均按照论文理论叙述部分的算法公式和计算过程来实现的.为后续参数计算方便,本系统中将语音数据文件格式预设为8kHz采样、8bit编码、单声道输出,这与语音资源库的格式存在出入,所以,在编写“load file”按钮的回调函数时,补充语音信号格式转换程序,将所有读入的语音信号均转换为预设的标准格式.3.2仿真界面仿真界面实现了预期的功能要求,如图3所示为不同语音信号在不同输入参数和功能要求下的输出结果.图3a)和图3b)分别为汉语普通话女声发音“他去无锡市,我到黑龙江”的LPC参数和MFCC参数的计算和仿真结果;图3c)为汉语普通话女声发音“广播电台”第50帧信号的LPC计算结果;图3d)为汉语普通话女声发音“排除万难”的MFCC计算结果.从图中可以看出,“the Origian Speech Signal”面板部分主要用来完成语音信号的装载、播放、时域波形显示等功能.“spectral of the speech signal”面板部分主要完成语音信号的LPC参数或MFCC参数的计算结果显示.系统中的各项计算结果在显示的同时并以mat文件的形式存储于相应目录中,可以用于后续的计算和分析.从图3a)和图3c)中两段语音信号的LPC计算结果中可以看出,帧长为256,预测阶数为24,其输出图形中包含4个子图.第1个子图为所选语音帧的原始语音信号波形,主要用于波形显示和对比.第2个子图为Durbin 算法求得的线性预测系数,即为全极点系统.第4个子图输出为预测残差能量波形,主要用于系统的计算,无论是对于清音信号还是浊音信号,均有结论公式2,详见文献[1].第3个子图为反射系数1(Ò²ÊǸñÐÍËã·¨ÖеĻù±¾²ÎÊý£®±¾ÏµÍ³µÄ¼ÆËã½á¹û³ýÁË¿ÉÒÔÖ±½Ó¹¹Ôì³öÈ«¼«µãÉùµÀÄ£Ð͵Ĵ«Êä²ÎÊý18河北工业大学学报第39卷分计算结果,第2个子图为维数与幅值的关系.从图形显示结果上可以对比不同语音段和不同说话人的具体语音特征,其数据结果直接作为语音识别和说话人识别中的特征参数,完成模板库的训练和建立.a)"他去无锡市,我到黑龙江"的LPC参数b)"他去无锡市,我到黑龙江"的MFCC参数c)"广播电台"的LPC参数d)"排除万难"的MFCC 参数图3仿真界面及结果Fig.3Simulation interface and results4结束语论文简要阐述了语音信号的波形和频谱特征,较为详细地分析了语音信号的线性预测分析和Mel频标倒谱参数的基本原理和计算方法,基于MATLAB GUI技术,完成了语音信号典型参数提取系统的界面设计和算法程序的设计.通过系统界面,使用者可以直接装载和试听语音库中的语音资源文件;通过点击相应按钮,完成LPC参数和MFCC参数提取结果的波形显示和数据存储.系统实现了语音信号处理中的关键技术和重要的特征参数的计算和显示,可作为语音编码、语音合成、语音识别和说话人识别等语音处理领域的重要研究和对比验证环节.可通过参数输入改变或控制图形输出,具有良好的人机交互功能.仿真结果以明了生动的形式跃然于屏幕上,界面直观,操作方便.通过该界面可以非常方便地学习和分析语音信号的典型特征和基本规律,实现对理论知识的实时验证,同时为新算法的开发验证提供必要的前提.参考文献:[1]赵晓群.数字语音编码[M].北京:机械工业出版社,2007.[2]李萱.语音特征参数提取方法研究[D].西安:西安电子科技大学,2006.[3]于明,袁玉倩,董浩,等.一种基于MFCC和LPCC的文本相关说话人识别方法[J].计算机应用,2006,26(4):883-885.[4]王金明,张雄伟.话者识别系统中语音特征参数的研究与仿真[J].系统仿真学报,2003,15(9):1276-1278.[5]陈垚光等编著.精通MATLAB GUI设计[M].北京:电子工业出版社,2008.[6]谢秋云,肖铁军.语音MFCC特征提取的FPGA实现[J].计算机工程与设计,2008,29(21):5474-5475,5493.[7]甄斌,吴玺宏,刘志敏,等.语音识别和说话人识别中各倒谱分量的相对重要性[J].北京大学学报:自然科学版,2001,37(3):371-378.[责任编辑代俊秋]。
毕业论文(设计)题目:基于matlab语音信号的采集与分析姓名:学院:理学与信息科学学院专业:电子信息科学与技术班级:学号:指导教师:目录摘要 (I)ABSTRACT. .......................................................................................................................................... I I 1 绪论 (1)1.1选题的背景和意义 (1)1.2语音信号处理的进展 (2)2 系统设计的可行性研究 (4)2.1语音信号处理的概念 (4)2.2语音信号的特点 (4)2.3语音信号处理的要求及可行性 (5)2.4M ATLAB仿真软件简介 (5)3 系统设计 (7)3.1系统设计的理论依据 (7)3.2系统的详细设计 (9)3.2.1图形用户界面制作 (9)3.2.2 系统功能的实现 (10)4 系统调试及运行 (16)总结 (25)致谢 (27)参考文献: (28)基于matlab语音信号的采集与分析电子信息科学与技术专业马晓敏指导教师曹红波摘要:语音信号处理是研究用数字信号处理技术对语音信号进行处理的一门学科。
语音信号处理的目的是得到某些参数以便高效传输或存储,或者是用于某种应用,如人工合成出语音、辨识出讲话者、识别出讲话内容、进行语音增强等[1]。
本文简要介绍了语音信号采集与分析的发展史以及语音信号的特征、采集与分析方法,并通过PC机录制一段声音,采集语音信号后,在MATLAB软件平台上进行频谱分析,并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。
利用MATLAB来读入(采集)语音信号,将它赋值给某一向量。
再将该向量看作一个普通的信号,对其进行FFT变换实现频谱分析,再依据实际情况对它进行滤波。
基于matlab的语音信号采集与分析系统的设计现代语音信号的采集与分析技术是建立在声学测量理论和电子技术数字信号处理的一门高速发展的技术,其中信号的采集和分析仪器的小型化智能化,数字化以及多功能化的发展越来越快,分析速度也有了进一步的提高,但是一般的信号采集与分析系统价格昂贵,操作复杂,应用范围窄,基于以上不足,设计一款基于matlab的语音信号采集与分析系统,具体使用方便,价格便宜,通用性强等优点。
实现方法是:通过声卡将传感器采集到的模拟信号转换成数字信号以后,通过计算机运行matlab程序,实现对各项数据的分析。
声卡已经具备了足够高的采样频率和量化精度,且价格也比专业的数据采集卡便宜得多。
因此用声卡作为语音信号的采集设备,不仅能满足信号分析的要求,而且性价比也很高,即可以高精度、低成本地完成语音信号的实时采集与分析工作。
一般来说,人的听觉能感知的声音频率范围为20~20000Hz,在这一频率范围内可感知的声音强度为0~140dB,其中人耳比较敏感的区域在50~4000Hz。
因此,采集子系统的硬件参数可根据要分析的语音信号的频率和强度来确定。
将总的设计分为两部分:采集子系统的设计和分析子系统的设计。
采集子系统的设计内容包括:语音信号的实时采集,是由matlab控制PC机声卡将传感器得到的模拟信号转变成数字信号存储在计算机中。
分析子系统的设计内容包括:将采集的数字信号进行时域/频域分析及各项数值分析。
具体设计步骤:1、采集系统硬件安装将声音传感器与声卡的模拟输入端连接起来,注意减少干扰噪声。
因matlab7.0采用面向对象技术,在数据采集前需要用一个对象将声卡进行封装,创建对象后才可对声卡进行直接操作。
2、硬件设备初始化在matlab中为声卡生成一个操作对象,初始化该操作对象使之能与声卡建立通信,并增加数据通道和触发通道。
3、硬件设备配置根据声卡的工作特性和信号分析的设计要求,可设置相应的参数控制声卡的数据采集时的行为。
摘要现代图像、语声、数据通信对线性相位的要求是普遍的。
正是此原因,使得具有线性相位的FIR数字滤波器得到大力发展和广泛应用。
MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,它包含了丰富的工具箱函数,能容易地解决在系统仿真领域教学与研究中遇到的问题;数字信号处理是将信号以数字方式表示并处理的理论和技术。
数字信号处理的目的是对真实世界的连续模拟信号进行测量或滤波。
关键词:MATLAB 数字信号处理窗函数目录摘要 (I)第一章带通滤波器基本知识简介 (1)第一节滤波器简介 (1)第二节IIR滤波器的设计简介 (1)第三节FIR滤波器的设计简介 (2)第二章参数计算 (5)第一节给定技术指标 (5)第二节参数计算 (5)第三章 FIR带通滤波器设计 (6)第一节FIR带通滤波器设计原理 (6)第二节MATLAB编程设计 (6)第三节带通滤波器波形图 (8)第四章双线性变换法设计 (10)第一节双线性变换法设计的基本思想 (10)第二节基于MATLAB的双线性法设计程序 (10)第五章心得体会 (12)参考文献 (13)附录 (14)第一章 带通滤波器基本知识简介第一节 滤波器简介滤波器是需要的有用的信号无失真地通过,而把不需要的信号和干扰阻挡掉。
大多数情况下,有用的信号和干扰信号是在不同的频段上,此时,把滤波器的频率特性进行精心的设计并实现就能达到这个目的。
滤波器按处理的信号分为模拟滤波器和数字滤波器。
按通过信号的频段分为低通滤波器、高通滤波器、带通滤波器和带阻滤波器。
其中数字滤波器是一个离散系统,其系统函数一般可表示为1-z 的有理多项式形式,即()∑∑-=-+=ii M J j jz a z b z H 10 (1 - 1) 当i a 都为0时,式(1 - 1)描述的系统称为有限脉冲响应数字滤波器,简称FIR 数字滤波器。
当系数i a 中至少有一个是非0时,式(1-1)描述的系统称为无限脉冲响应数字滤波器,简称IIR 数字滤波器。
基于MATLABGUI的语音信号采集分析系统前一阵子用MA TLAB GUI做了一个语音信号采集与分析的界面。
功能包括录音、播放、时域、频域分析吧。
也导入本地文件进行分析。
效果如下:源码如下:function varargout = GUI_1(varargin)% GUI_1 MATLAB code for GUI_1.fig% GUI_1, by itself, creates a new GUI_1 or raises the existing% singleton*.%% H = GUI_1 returns the handle to a new GUI_1 or the handle to% the existing singleton*.%% GUI_1('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in GUI_1.M with the given input arguments. %% GUI_1('Property','Value',...) creates a new GUI_1 or raises the % existing singleton*. Starting from the left, property value pairs are% applied to the GUI before GUI_1_OpeningFcn gets called. An% unrecognized property name or invalid value makes property application% stop. All inputs are passed to GUI_1_OpeningFcn via varargin.%% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one% instance to run (singleton)".%% See also: GUIDE, GUIDATA, GUIHANDLES% Edit the above text to modify the response to help GUI_1% Last Modified by GUIDE v2.5 25-May-2015 20:52:27% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name', mfilename, ...'gui_Singleton', gui_Singleton, ...'gui_OpeningFcn', @GUI_1_OpeningFcn, ...'gui_OutputFcn', @GUI_1_OutputFcn, ...'gui_LayoutFcn', [] , ...'gui_Callback', []);if nargin && ischar(varargin{1})gui_State.gui_Callback = str2func(varargin{1});endif nargout[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); elsegui_mainfcn(gui_State, varargin{:});end% End initialization code - DO NOT EDIT% --- Executes just before GUI_1 is made visible.function GUI_1_OpeningFcn(hObject, ~, handles, varargin)% This function has no output args, see OutputFcn.% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)% varargin command line arguments to GUI_1 (see VARARGIN)% Choose default command line output for GUI_1set(handles.axes_t_m,'visible','off');set(handles.axes_fft_m,'visible','off');set(handles.axes_t_w,'visible','off');set(handles.axes_fft_w,'visible','off');global local_yn;local_yn=0;% a=imread('yanda.jpg');% axes(handles.axes_t_m)% image(a);handles.output = hObject;% Update handles structureguidata(hObject, handles);% UIWAIT makes GUI_1 wait for user response (see UIRESUME)% uiwait(handles.figure1);ha=axes('units','normalized','position',[0 0 1 1]);uistack(ha,'down')II=imread('暖色.JPG');image(II)colormap grayset(ha,'handlevisibility','off','visible','off');%--- Outputs from this function are returned to the command line.function varargout = GUI_1_OutputFcn(~, ~, handles)% varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)% Get default command line output from handles structurevarargout{1} = handles.output;% --- Executes on button press in pushbutton_luyin.function pushbutton_luyin_Callback(hObject, ~, handles)% hObject handle to pushbutton_luyin (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)% global recObj;% keyboard;% global sex_flag% switch sex_flag% case 0% set(handles.axes_t_m,'visible','on');% set(handles.axes_fft_m,'visible','on');% set(handles.axes_t_w,'visible','off');% set(handles.axes_fft_w,'visible','off');% case 1% set(handles.axes_t_m,'visible','off');% set(handles.axes_fft_m,'visible','off');% set(handles.axes_t_w,'visible','off');% set(handles.axes_fft_w,'visible','off');% case 2% set(handles.axes_t_m,'visible','off');% set(handles.axes_fft_m,'visible','off');% set(handles.axes_t_w,'visible','off');% set(handles.axes_fft_w,'visible','off');% endglobal local_yn;local_yn=0;fs_chose=handles.fs_chose;nBits=8;nChannels=1;%canshu={fs_chose,nBits,nChannels};if(str2double(get(handles.et_time,'String'))==0) %添加str2double 后正常set(handles.set_time,'String','时间参数输入错误!');msgbox('认真点好吗亲输入时间参数先。