版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
..中北大學(xué)課程設(shè)計(jì)說(shuō)明書(shū)學(xué)生__學(xué)號(hào):學(xué)生__學(xué)號(hào):學(xué)生__學(xué)號(hào):學(xué)院:信息與通信工程學(xué)院專(zhuān)業(yè):電子信息工程題目:信息處理實(shí)踐:語(yǔ)言信號(hào)的合成指導(dǎo)楊娜職稱(chēng):副教授2016年1月3日..中北大學(xué)課程設(shè)計(jì)任務(wù)書(shū)15/16學(xué)年第一學(xué)期學(xué)院:信息與通信工程學(xué)院專(zhuān)業(yè):電子信息工程學(xué)生__學(xué)號(hào):學(xué)生__學(xué)號(hào):學(xué)生__學(xué)號(hào):課程設(shè)計(jì)題目:信息處理實(shí)踐:語(yǔ)言信號(hào)的合成起迄日期:2016年1月4日~2016年1月22日課程設(shè)計(jì)地點(diǎn):201,503,1號(hào)樓教室指導(dǎo)教師:楊娜系主任:王浩全下達(dá)任務(wù)書(shū)日期:2016年1月3日..課程設(shè)計(jì)任務(wù)書(shū)1.設(shè)計(jì)目的:通過(guò)本次課程設(shè)計(jì)使學(xué)生掌握信息處理理論的相關(guān)知識(shí)。通過(guò)具體的設(shè)計(jì)問(wèn)題將理論與實(shí)踐相結(jié)合,培養(yǎng)學(xué)生運(yùn)用所學(xué)獨(dú)立解決問(wèn)題的能力?!?了解信號(hào)的讀取、保存、截取、拼接等技術(shù)。〔2了解MATLAB的信號(hào)處理技術(shù)。〔3掌握MATLAB實(shí)現(xiàn)語(yǔ)音信號(hào)的讀取、保存、拼接。2.設(shè)計(jì)內(nèi)容和要求〔包括原始數(shù)據(jù)、技術(shù)參數(shù)、條件、設(shè)計(jì)要求等:<1>利用windows的錄音機(jī)或其他外部設(shè)備獲取兩種或兩種以上音樂(lè)信號(hào),并將信號(hào)進(jìn)行轉(zhuǎn)換和存儲(chǔ)。<2>自行截取各采集信號(hào)中的一段進(jìn)行信號(hào)的拼接。<3>保存拼接后的音樂(lè)信號(hào),并進(jìn)行播放證實(shí)存儲(chǔ)的正確性。3.設(shè)計(jì)工作任務(wù)及工作量的要求〔包括課程設(shè)計(jì)計(jì)算說(shuō)明書(shū)<論文>、圖紙、實(shí)物樣品等〕:〔1要求設(shè)計(jì)組的每個(gè)成員都要了解設(shè)計(jì)的要求和思路;〔2編寫(xiě)詳細(xì)的設(shè)計(jì)說(shuō)明書(shū)三份;〔3要求有正確的運(yùn)行結(jié)果及結(jié)果分析。..課程設(shè)計(jì)任務(wù)書(shū)4.主要參考文獻(xiàn):[1]程佩青.數(shù)字信號(hào)處理教程.北京:清華大學(xué)出版社,2002[2]劉敏,魏玲.Matlab通信仿真與應(yīng)用.北京:國(guó)防工業(yè)出版社,2001[3]高政.信號(hào)處理與系統(tǒng)分析.北京:中國(guó)水利水電出版社,2001[4]俞一彪,孫兵.數(shù)字信號(hào)處理——理論與應(yīng)用.XX:東南大學(xué)出版社,2000[5]數(shù)字信號(hào)處理孫洪等譯電子工業(yè)出版社[6]精通MATLAB6.5版張志涌等編著北京航空航天大學(xué)出版社[7]MATLAB擴(kuò)展編程何強(qiáng)何英編著清華大學(xué)出版社[8]數(shù)字信號(hào)處理教程程佩青編著清華大學(xué)出版社5.設(shè)計(jì)成果形式及要求:〔1提供詳細(xì)的設(shè)計(jì)說(shuō)明書(shū)三份;〔2提供詳細(xì)數(shù)據(jù)及分析結(jié)果。6.工作計(jì)劃及進(jìn)度:20XX6月25日~20XX7月1日:查資料20XX7月2日~7月5日:在指導(dǎo)教師指導(dǎo)下設(shè)計(jì)方案及程序7月6日~7月10日:學(xué)生上機(jī)調(diào)試程序,指導(dǎo)教師輔導(dǎo)7月11日~7月12日:完成課程設(shè)計(jì)說(shuō)明書(shū)7月13日:答辯系主任審查意見(jiàn):簽字:年月日..目錄摘要.........................................................................................................................〔11.MATLAB簡(jiǎn)介...................................................................................................〔12.GUI簡(jiǎn)介.........................................................................................................〔1設(shè)計(jì)方案...........................................................................................................設(shè)計(jì)步驟及結(jié)果1.語(yǔ)音信號(hào)的采集..............................................2.語(yǔ)音信號(hào)的截取.................3.語(yǔ)音信號(hào)的合成.................4.合成語(yǔ)音的驗(yàn)證.........5.GUI界面設(shè)計(jì)及實(shí)現(xiàn).........設(shè)計(jì)評(píng)述參考文獻(xiàn)..............附錄................摘要語(yǔ)音信號(hào)處理是一門(mén)比較實(shí)用的電子工程專(zhuān)業(yè)課程,語(yǔ)音是人類(lèi)獲取信息的的重要來(lái)源和利用信息的重要手段。通過(guò)語(yǔ)言相互傳遞信息是人類(lèi)最重要的基本功能之一。語(yǔ)音信號(hào)是一種非平穩(wěn)的時(shí)變信號(hào),它攜帶著各種信息。在語(yǔ)音編碼、語(yǔ)音合成、語(yǔ)音識(shí)別和語(yǔ)音增強(qiáng)等語(yǔ)音處理中無(wú)一例外需要提取語(yǔ)音中包含的各種信息。Matlab是一個(gè)數(shù)據(jù)分析和處理功能十分強(qiáng)大的工程實(shí)用軟件。本文介紹了利用matlab軟件及其中的圖形用戶界面<GUI>實(shí)現(xiàn)驅(qū)動(dòng)聲卡采集語(yǔ)音信號(hào)和語(yǔ)音信號(hào)采集后的文檔處理方法,并通過(guò)實(shí)例利用matlab分析了語(yǔ)音信號(hào)處理的過(guò)程。關(guān)鍵詞:語(yǔ)音信號(hào)處理MATLAB頻譜分析語(yǔ)音合成1.MATLAB簡(jiǎn)介MATLAB是美國(guó)MathWorks公司推出的一種面向工程和科學(xué)計(jì)算的交互式計(jì)算軟件,它以矩陣運(yùn)算為基礎(chǔ),把計(jì)算、可視化、程序設(shè)計(jì)融合到了一個(gè)簡(jiǎn)單易用的交互式工作環(huán)境中。同時(shí)由于MATLAB是一個(gè)數(shù)據(jù)分析和處理功能十分強(qiáng)大的工程實(shí)用軟件,它的信號(hào)處理與分析工具箱為語(yǔ)音信號(hào)分析提供了十分豐富的功能函數(shù),利用這些功能函數(shù)可以快捷而又方便地完成語(yǔ)音信號(hào)的處理和分析以及信號(hào)的可視化,使人機(jī)交互更加便捷。2.GUI簡(jiǎn)介GUIDE是GraphicUserInterfaceDesignEnvironment的簡(jiǎn)稱(chēng)。它是一個(gè)設(shè)計(jì)圖形用戶界面的集成開(kāi)發(fā)環(huán)境。它使得圖形對(duì)象的生成和管理變得簡(jiǎn)單、直接。在MATLAB的命令窗口中輸入guide命令,即可開(kāi)啟GUIDE的主界面圖形用戶界面<GUI>是包含圖形的對(duì)象,如:窗口、圖標(biāo)、菜單和文本的用戶界面。..一.設(shè)計(jì)方案語(yǔ)音驗(yàn)證信號(hào)拼接信號(hào)采集信號(hào)截取語(yǔ)音驗(yàn)證信號(hào)拼接信號(hào)采集信號(hào)截取圖1-1總體設(shè)計(jì)方案女聲錄入男聲錄入女聲錄入男聲錄入時(shí)頻分析時(shí)頻分析時(shí)頻分析時(shí)頻分析提取信號(hào)提取信號(hào)提取信號(hào)提取信號(hào)信號(hào)的合成分析分析處理圖1-2具體運(yùn)行流程圖本實(shí)驗(yàn)通過(guò)應(yīng)用MATLAB軟件實(shí)現(xiàn)聲音信號(hào)的采集、截取、拼接與結(jié)果分析。分析和處理音頻信號(hào),首先要對(duì)聲音信號(hào)進(jìn)行采集,MATLAB
的數(shù)據(jù)采集工具箱提供了一整套命令和函數(shù),通過(guò)調(diào)用這些函數(shù)和命令,可直接控制聲卡進(jìn)行數(shù)據(jù)采集。Windows自帶的錄音機(jī)程序也可驅(qū)動(dòng)聲卡來(lái)采集語(yǔ)音信號(hào),并能保存為WAV格式文件,供MATLAB相關(guān)函數(shù)直接讀取、寫(xiě)入或播放。本實(shí)驗(yàn)以WAV格式音頻信號(hào)作為分析處理的輸入數(shù)據(jù),用MATLAB處理音頻信號(hào)的基本流程是:先將WAV格式音頻信號(hào)經(jīng)過(guò)wavread函數(shù)轉(zhuǎn)換成MATLAB列數(shù)組變量;再用MATLAB強(qiáng)大的運(yùn)算能力進(jìn)行數(shù)據(jù)分析和處理,如時(shí)域分析、頻域分析、數(shù)字濾波、信號(hào)合成、信號(hào)變換、識(shí)別和增強(qiáng)等等;處理后的數(shù)據(jù)如是音頻數(shù)據(jù),則可用wavwrite轉(zhuǎn)換成WAV格式文件或用sound函數(shù)直接回放。二.設(shè)計(jì)步驟及結(jié)果1.語(yǔ)音信號(hào)的采集首先利用windows下的錄音機(jī),錄制一段信號(hào),時(shí)間控制在10秒左右,然后將音頻文件保存"yuan1.wav"、"yuan2.wav"。再在MATLAB軟件平臺(tái)下,利用函數(shù)audioread對(duì)語(yǔ)音信號(hào)進(jìn)行采樣,記住采樣頻率和采樣點(diǎn)數(shù)。然后進(jìn)行語(yǔ)音信號(hào)的分析,首先畫(huà)出語(yǔ)音信號(hào)的時(shí)域波形圖,并利用fft畫(huà)出頻域圖。參數(shù)設(shè)定:采樣頻率88060Hz,采樣時(shí)間10s,作88060點(diǎn)fft。程序如下:fs=88060;%采樣頻率x1=audiorecorder<fs,16,1>;recordblocking<x1,10>;%10秒y1=getaudiodata<x1>;subplot<2,2,1>;plot<y1>;title<'男聲錄入波形圖'>;xlabel<'樣本數(shù)'>;ylabel<'幅值'>;Y1=fft<y1>;subplot<2,2,3>;plot<abs<Y1>>;title<'男聲錄入頻譜圖'>;xlabel<'Freq/HZ'>;ylabel<'幅值'>;filename='yuan1.wav'audiowrite<filename,y1,fs>;x2=audiorecorder<fs,16,1>;recordblocking<x2,10>;y2=getaudiodata<x2>;subplot<2,2,2>;plot<y2>;title<'女聲錄入波形圖'>;xlabel<'樣本數(shù)'>;ylabel<'幅值'>;Y2=fft<y2>;subplot<2,2,4>;plot<abs<Y2>>;title<'女聲錄入頻譜圖'>;xlabel<'Freq/HZ'>;ylabel<'幅值'>;filename='yuan2.wav'audiowrite<filename,y2,fs>;結(jié)果如下:圖2-1采集信號(hào)波形和頻譜圖圖2-2生成原始信號(hào)文件2.語(yǔ)音信號(hào)的截取自行設(shè)定截取起始時(shí)間和結(jié)束時(shí)間,對(duì)原始信號(hào)進(jìn)行截取,并將截取后的數(shù)據(jù)保存為wav格式文件;再對(duì)截取后的信號(hào)波形圖顯示。程序如下:%截取信號(hào)——————————————sec1=2%剪切開(kāi)始的時(shí)間sec2=5%剪切結(jié)束的時(shí)間filename='yuan1.wav'[n1,F]=audioread<filename>;n1_new=n1<<<F*sec1+1>:F*sec2>,:>;subplot<1,2,1>;plot<n1_new>;title<'截取男聲波形圖'>;xlabel<'樣本數(shù)'>;ylabel<'幅值'>;filename='yuan1new.wav'audiowrite<filename,n1_new,F>;filename='yuan2.wav'[n2,F]=audioread<filename>;n2_new=n2<<<F*sec1+1>:F*sec2>,:>;subplot<1,2,2>;plot<n2_new>;title<'截取女聲波形圖'>;xlabel<'樣本數(shù)'>;ylabel<'幅值'>;filename='yuan2new.wav'audiowrite<filename,n2_new,F>;結(jié)果如下:圖2-3截取信號(hào)的波形圖對(duì)比圖2-1,可以發(fā)現(xiàn)截取信號(hào)的波形正是圖2-1波形中設(shè)定截取的一段。圖2-4生成截取信號(hào)文件3.語(yǔ)音信號(hào)的合成按照設(shè)計(jì)要求將截取的語(yǔ)音信號(hào)進(jìn)行拼接,并保存在新的wav文件中。但設(shè)計(jì)過(guò)程中發(fā)現(xiàn)單純的拼接信號(hào),在拼接處會(huì)給聽(tīng)者極大的突兀感,所以在設(shè)計(jì)中加入信號(hào)的延遲混響,以達(dá)到減少突兀感,使語(yǔ)音過(guò)渡更加平滑。合成后,生成波形和頻譜圖進(jìn)行分析。所謂延遲混響,就是在各自截取段的基礎(chǔ)上,對(duì)第一段的末尾進(jìn)行延時(shí)補(bǔ)零,再對(duì)第二段的開(kāi)頭進(jìn)行延時(shí)補(bǔ)零,在此基礎(chǔ)上采取部分相加的方法實(shí)現(xiàn)該時(shí)段內(nèi)的混響,延長(zhǎng)的時(shí)長(zhǎng)設(shè)定在0.1s,混響的時(shí)間取在1s。程序如下:sec1=2%剪切開(kāi)始的時(shí)間sec2=5%剪切結(jié)束的時(shí)間filename='yuan1new.wav'[new1,F]=audioread<filename>;filename='yuan2new.wav'[new2,F]=audioread<filename>;n_1=new1<<sec2-sec1-1>*F:<sec2-sec1>*F>;n_2=new2<1:F>;j=10;z1=[n_1;zeros<F/j,1>];z2=[zeros<F/j+1,1>;n_2];z=z1+z2;new3<1:<sec2-sec1-1>*F>=new1<1:<sec2-sec1-1>*F>;new3<<sec2-sec1-1>*F:<sec2-sec1+1/j>*F>=z;new3<<sec2-sec1+1/j>*F-1:<2*<sec2-sec1>-1+1/j>*F>=new2<F:<sec2-sec1>*F>;subplot<1,2,1>;plot<new3>;title<'合成波形圖'>;xlabel<'樣本數(shù)'>;ylabel<'幅值'>;N1=fft<new3>;subplot<1,2,2>;plot<abs<N1>>;title<'合成頻譜圖'>;xlabel<'Freq/HZ'>;ylabel<'幅值'>;filename='hecheng.wav'audiowrite<filename,new3,F>;結(jié)果如下:圖2-5合成信號(hào)波形與頻譜圖對(duì)比圖2-3,可看出波形大致為兩個(gè)階段信號(hào)的拼接合成。圖2-6生成合成信號(hào)文件4.合成語(yǔ)音的驗(yàn)證通過(guò)sound函數(shù)實(shí)現(xiàn)在matlab在直接聽(tīng)取截取段的語(yǔ)音和合成之后的錄音。程序如下:filename='yuan1new.wav'[yan1,F]=audioread<filename>;sound<yan1,F>filename='yuan2new.wav'[yan2,F]=audioread<filename>;sound<yan2,F>filename='hecheng.wav'[yan3,F]=audioread<filename>;sound<yan3,F>;5.GUI界面設(shè)計(jì)及實(shí)現(xiàn)考慮到系統(tǒng)的實(shí)現(xiàn)目的是為了讓用戶有更好的體驗(yàn),借助于matlab的圖形用戶界面〔以下成為GUI,做出完整的用戶界面來(lái)完成本次課程設(shè)計(jì)。由于程序部分較長(zhǎng),詳細(xì)程序見(jiàn)附錄,此處只展示結(jié)果。結(jié)果如下:圖2-7GUI設(shè)計(jì)界面圖2-8最終結(jié)果實(shí)現(xiàn)界面三.設(shè)計(jì)評(píng)述通過(guò)本次課程設(shè)計(jì),我學(xué)會(huì)了使用MATLAB分析連續(xù)時(shí)間信號(hào)的頻譜,能夠基本運(yùn)用了MATLAB的圖形用戶界面〔GUI編程。實(shí)驗(yàn)之初由于對(duì)課題和相關(guān)知識(shí)理解不深,因而設(shè)計(jì)起來(lái)很困難。通過(guò)查閱相關(guān)書(shū)籍,同學(xué)之間相互討論以及詢問(wèn)老師,我理解并掌握了課題的實(shí)質(zhì)。由于之前很少接觸MATLAB軟件,MATLAB中的許多函數(shù),如fft,plot,subplot,abs等用起來(lái)比較吃力。通過(guò)老師的講解以及下課后自己對(duì)MATLAB的學(xué)習(xí),我基本可運(yùn)用MATLAB軟件做一些簡(jiǎn)單的程序來(lái)看信號(hào)的頻譜或各種信號(hào)的波形。通過(guò)分析連續(xù)時(shí)間信號(hào)的頻譜,使我更加深入的理解了書(shū)本上的知識(shí)。要真正熟練運(yùn)用MATLAB還要靠自己多學(xué)習(xí)和使用。而且在寫(xiě)MATLAB程序時(shí)不能馬虎,否則程序很容易出錯(cuò),這培養(yǎng)了自己的細(xì)心和耐心。通過(guò)不斷使用MATLAB,我發(fā)現(xiàn)并解決了很多問(wèn)題,使我更加了解MATLAB。課程設(shè)計(jì)雖然是一門(mén)專(zhuān)業(yè)課,但是通過(guò)課設(shè)使我專(zhuān)業(yè)知識(shí)得到了豐富,專(zhuān)業(yè)技能上的提升。這次課程設(shè)計(jì)終于順利完成了,在設(shè)計(jì)中遇到了很多編程問(wèn)題,最后在謝老師和林老師的辛勤指導(dǎo)下,終于迎刃而解。同時(shí),在老師的身上我學(xué)得到很多實(shí)用的知識(shí),在此我表示感謝!同時(shí),對(duì)給過(guò)我?guī)椭乃型瑢W(xué)和各位指導(dǎo)老師再次表示衷心的感謝!參考文獻(xiàn)[1]程佩青.數(shù)字信號(hào)處理教程.北京:清華大學(xué)出版社,2002[2]劉敏,魏玲.Matlab通信仿真與應(yīng)用.北京:國(guó)防工業(yè)出版社,2001[3]高政.信號(hào)處理與系統(tǒng)分析.北京:中國(guó)水利水電出版社,2001[4]俞一彪,孫兵.數(shù)字信號(hào)處理——理論與應(yīng)用.XX:東南大學(xué)出版社,2000[5]數(shù)字信號(hào)處理孫洪等譯電子工業(yè)出版社[6]精通MATLAB6.5版張志涌等編著北京航空航天大學(xué)出版社[7]MATLAB擴(kuò)展編程何強(qiáng)何英編著清華大學(xué)出版社[8]數(shù)字信號(hào)處理教程程佩青編著清華大學(xué)出版社附錄GUI設(shè)計(jì)界面程序如下:functionvarargout=shiyan1<varargin>%SHIYAN1MATLABcodeforshiyan1.fig%SHIYAN1,byitself,createsanewSHIYAN1orraisestheexisting%singleton*.%%H=SHIYAN1returnsthehandletoanewSHIYAN1orthehandleto%theexistingsingleton*.%%SHIYAN1<'CALLBACK',hObject,eventData,handles,...>callsthelocal%functionnamedCALLBACKinSHIYAN1.Mwiththegiveninputarguments.%%SHIYAN1<'Property','Value',...>createsanewSHIYAN1orraisesthe%existingsingleton*.Startingfromtheleft,propertyvaluepairsare%appliedtotheGUIbeforeshiyan1_OpeningFcngetscalled.An%unrecognizedpropertynameorinvalidvaluemakespropertyapplication%stop.Allinputsarepassedtoshiyan1_OpeningFcnviavarargin.%%*SeeGUIOptionsonGUIDE'sToolsmenu.Choose"GUIallowsonlyone%instancetorun<singleton>".%%Seealso:GUIDE,GUIDATA,GUIHANDLES%Edittheabovetexttomodifytheresponsetohelpshiyan1%LastModifiedbyGUIDEv2.514-Jan-201609:18:41%Begininitializationcode-DONOTEDITgui_Singleton=1;gui_State=struct<'gui_Name',mfilename,...'gui_Singleton',gui_Singleton,...'gui_OpeningFcn',shiyan1_OpeningFcn,...'gui_OutputFcn',shiyan1_OutputFcn,...'gui_LayoutFcn',[],...'gui_Callback',[]>;ifnargin&&ischar<varargin{1}>gui_State.gui_Callback=str2func<varargin{1}>;endifnargout[varargout{1:nargout}]=gui_mainfcn<gui_State,varargin{:}>;elsegui_mainfcn<gui_State,varargin{:}>;end%Endinitializationcode-DONOTEDIT%---Executesjustbeforeshiyan1ismadevisible.functionshiyan1_OpeningFcn<hObject,eventdata,handles,varargin>%Thisfunctionhasnooutputargs,seeOutputFcn.%hObjecthandletofigure%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata<seeGUIDATA>%varargincommandlineargumentstoshiyan1<seeVARARGIN>%Choosedefaultcommandlineoutputforshiyan1handles.output=hObject;%Updatehandlesstructureguidata<hObject,handles>;%UIWAITmakesshiyan1waitforuserresponse<seeUIRESUME>%uiwait<handles.figure1>;%---Outputsfromthisfunctionarereturnedtothecommandline.functionvarargout=shiyan1_OutputFcn<hObject,eventdata,handles>%varargoutcellarrayforreturningoutputargs<seeVARARGOUT>;%hObjecthandletofigure%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata<seeGUIDATA>%Getdefaultcommandlineoutputfromhandlesstructurevarargout{1}=handles.output;%---Executesonbuttonpressinpushbutton1.functionpushbutton1_Callback<hObject,eventdata,handles>%hObjecthandletopushbutton1<seeGCBO>%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata<seeGUIDATA>fs=88060;%采樣頻率sd=get<handles.edit1,'string'>;sheding=str2double<sd>x1=audiorecorder<fs,16,1>;recordblocking<x1,sheding>;%8秒y1=getaudiodata<x1>;axes<handles.axes1>;plot<y1>;title<'男聲錄入波形圖'>;xlabel<'樣本數(shù)'>;ylabel<'幅值'>;Y1=fft<y1>;axes<handles.axes4>;plot<abs<Y1>>;title<'男聲錄入頻譜圖'>;xlabel<'Freq/HZ'>;ylabel<'幅值'>;filename='yuan1.wav'audiowrite<filename,y1,fs>;guidata<hObject,handles>;%---Executesonbuttonpressinpushbutton2.functionpushbutton2_Callback<hObject,eventdata,handles>%hObjecthandletopushbutton2<seeGCBO>%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata<seeGUIDATA>fs=88060;%采樣頻率sd=get<handles.edit1,'string'>;sheding=str2double<sd>x2=audiorecorder<fs,16,1>;recordblocking<x2,sheding>;y2=getaudiodata<x2>;axes<handles.axes5>;plot<y2>;title<'女聲錄入波形圖'>;xlabel<'樣本數(shù)'>;ylabel<'幅值'>;Y2=fft<y2>;axes<handles.axes6>;plot<abs<Y2>>;title<'女聲錄入頻譜圖'>;xlabel<'Freq/HZ'>;ylabel<'幅值'>;filename='yuan2.wav'audiowrite<filename,y2,fs>;guidata<hObject,handles>;%---Executesduringobjectcreation,aftersettingallproperties.functionpushbutton2_CreateFcn<hObject,eventdata,handles>%hObjecthandletopushbutton2<seeGCBO>%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesempty-handlesnotcreateduntilafterallCreateFcnscalledfunctionedit1_Callback<hObject,eventdata,handles>%hObjecthandletoedit1<seeGCBO>%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata<seeGUIDATA>%Hints:get<hObject,'String'>returnscontentsofedit1astext%str2double<get<hObject,'String'>>returnscontentsofedit1asadouble%---Executesduringobjectcreation,aftersettingallproperties.functionedit1_CreateFcn<hObject,eventdata,handles>%hObjecthandletoedit1<seeGCBO>%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesempty-handlesnotcreateduntilafterallCreateFcnscalled%Hint:editcontrolsusuallyhaveawhitebackgroundonWindows.%SeeISPCandCOMPUTER.ifispc&&isequal<get<hObject,'BackgroundColor'>,get<0,'defaultUicontrolBackgroundColor'>>set<hObject,'BackgroundColor','white'>;endfunctionedit2_CreateFcn<hObject,eventdata,handles>%hObjecthandletoedit2<seeGCBO>%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesempty-handlesnotcreateduntilafterallCreateFcnscalled%Hint:editcontrolsusuallyhaveawhitebackgroundonWindows.%SeeISPCandCOMPUTER.ifispc&&isequal<get<hObject,'BackgroundColor'>,get<0,'defaultUicontrolBackgroundColor'>>set<hObject,'BackgroundColor','white'>;endfunctionedit3_Callback<hObject,eventdata,handles>%hObjecthandletoedit3<seeGCBO>%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata<seeGUIDATA>%Hints:get<hObject,'String'>returnscontentsofedit3astext%str2double<get<hObject,'String'>>returnscontentsofedit3asadouble%---Executesduringobjectcreation,aftersettingallproperties.functionedit3_CreateFcn<hObject,eventdata,handles>%hObjecthandletoedit3<seeGCBO>%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesempty-handlesnotcreateduntilafterallCreateFcnscalled%Hint:editcontrolsusuallyhaveawhitebackgroundonWindows.%SeeISPCandCOMPUTER.ifispc&&isequal<get<hObject,'BackgroundColor'>,get<0,'defaultUicontrolBackgroundColor'>>set<hObject,'BackgroundColor','white'>;end%---Executesonbuttonpressinpushbutton3.functionpushbutton3_Callback<hObject,eventdata,handles>%hObjecthandletopushbutton3<seeGCBO>%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata<seeGUIDATA>s1=get<handles.edit3,'string'>;sec1=str2double<s1>s2=get<handles.edit2,'string'>;sec2=str2double<s2>filename='yuan1.wav'[n1,F]=audioread<filename>;n1_new=n1<<<F*sec1+1>:F*sec2>,:>;axes<handles.axes7>;plot<n1_new>;title<'截取男聲波形圖'>;xlabel<'樣本數(shù)'>;ylabel<'幅值'>;filename='yuan1new.wav'audiowrite<filename,n1_new,F>;filename='yuan2.wav'[n2,F]=audioread<filename>;n2_new=n2<<<F*sec1+1>:F*sec2>,:>;axes<handles.axes8>;plot<n2_new>;title<'截取女聲波形圖'>;xlabel<'樣本數(shù)'>;ylabel<'幅值'>;filename='yuan2new.wav'audiowrite<filename,n2_new,F>;guidata<hObject,handles>;%---Executesonbuttonpressinpushbutton4.functionpushbutton4_Callback<hObject,eventdata,handles>%hObjecthandletopushbutton4<seeGCBO>%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata<seeGUIDATA>s1=get<handles.edit3,'string'>;sec1=str2double<s1>s2=get<handles.edit2,'string'>;sec2=str2double<s2>filename='yuan1new.wav'[new1,F]=audioread<filename>;filename='yuan2new.wav'[new2,F]=audioread<filename>;n_1=new1<<sec2-sec1-1>*F:<sec2-sec1>*F>;n_2=new2<1:F>;j=10;z1=[n_1;zeros<F/j,1>];z2=[zeros<F/j+1,1>;n_2];z=z1+z2;new3<1:<sec2-sec1-1>*F>=new1<1:<sec2-sec1-1>*F>;new3<<sec2-sec1-1>*F:<sec2-sec1+1/j>*F>=z;new3<<sec2-sec1+1/j>*F-1:<2*<sec2-sec1>-1+1/j>*F>
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 重要物資采購(gòu)合同
- 江西省萬(wàn)載縣高中生物 專(zhuān)題2 細(xì)胞工程 2.2.2 動(dòng)物細(xì)胞融合與單克隆抗體(練習(xí)課)教案 新人教版選修3
- 2024年三年級(jí)品社下冊(cè)《濃濃鄉(xiāng)土情》教案 山東版
- 高考化學(xué) 專(zhuān)題二 第8講 有機(jī)物的結(jié)構(gòu)、性質(zhì)和應(yīng)用教案(含解析)
- 2024秋九年級(jí)歷史上冊(cè) 第七單元 工業(yè)革命和工人運(yùn)動(dòng)的興起 第20課 第一次工業(yè)革命教案 新人教版
- 2023一年級(jí)數(shù)學(xué)上冊(cè) 二 比一比第1課時(shí) 比長(zhǎng)短 比高矮教案 蘇教版
- 2024年春九年級(jí)化學(xué)下冊(cè) 第12單元 化學(xué)與生活 課題2 化學(xué)元素與人體健康教案 (新版)新人教版
- 文書(shū)模板-委托研發(fā)合同補(bǔ)充協(xié)議
- 年度部門(mén)評(píng)分表
- 混凝土澆筑課件
- 電子信息工程技術(shù)專(zhuān)業(yè)職業(yè)生涯規(guī)劃書(shū)
- GB/T 29711-2023焊縫無(wú)損檢測(cè)超聲檢測(cè)焊縫內(nèi)部不連續(xù)的特征
- Talent5五大職業(yè)性格測(cè)試技巧138答案
- JGT388-2012 風(fēng)機(jī)過(guò)濾器機(jī)組
- 工程水文學(xué)題庫(kù)及題解(全)
- 【學(xué)生基本信息表】樣本
- 環(huán)境監(jiān)測(cè)儀器設(shè)備采購(gòu)?fù)稑?biāo)方案(技術(shù)標(biāo))
- 薄壁不銹鋼管卡壓連接施工工藝
- 新課標(biāo)-人教版數(shù)學(xué)六年級(jí)上冊(cè)第四單元《比》單元教材解讀
- XML期末大作業(yè)實(shí)驗(yàn)報(bào)告
- 部編版道德與法治 四年級(jí)上冊(cè) 單元作業(yè)設(shè)計(jì)《為父母分擔(dān)》
評(píng)論
0/150
提交評(píng)論