![MATLAB變聲程序代碼_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-4/11/ec024f54-1374-4fe3-8218-0355131ff8d4/ec024f54-1374-4fe3-8218-0355131ff8d41.gif)
![MATLAB變聲程序代碼_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-4/11/ec024f54-1374-4fe3-8218-0355131ff8d4/ec024f54-1374-4fe3-8218-0355131ff8d42.gif)
![MATLAB變聲程序代碼_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-4/11/ec024f54-1374-4fe3-8218-0355131ff8d4/ec024f54-1374-4fe3-8218-0355131ff8d43.gif)
![MATLAB變聲程序代碼_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-4/11/ec024f54-1374-4fe3-8218-0355131ff8d4/ec024f54-1374-4fe3-8218-0355131ff8d44.gif)
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、精品好資料學習推薦% ct1clear all,close all, clc; % 定義常數(shù) FL = 80; % 幀長 WL = 240; % 窗長 P = 10; % 預測系數(shù)個數(shù) s,fs = wavread(sunday_2.wav); % 載入語音ss = s/max(s); %歸一化 L = length(s); % 讀入語音長度 FN = floor(L/FL)-2; % 計算幀數(shù) % 預測和重建濾波器 exc = zeros(L,1); % 激勵信號(預測誤差) zi_pre = zeros(P,1); % 預測濾波器的狀態(tài) s_rec = zeros(L,1); % 重建語音
2、 zi_rec = zeros(P,1); % 合成濾波器 exc_syn = zeros(L,1); % 合成的激勵信號(脈沖串) s_syn = zeros(L,1); % 合成語音last_syn = 0; %存儲上一個(或多個)段的最后一個脈沖的下標zi_syn = zeros(P,1); % 合成濾波器的狀態(tài) % 變調(diào)不變速濾波器 exc_syn_t = zeros(L,1); % 合成的激勵信號(脈沖串) s_syn_t = zeros(L,1); % 合成語音last_syn_t = 0; %存儲上一個(或多個)段的最后一個脈沖的下標zi_syn_t = zeros(P,1);
3、% 合成濾波器的狀態(tài) % 變速不變調(diào)濾波器(假設速度減慢一倍)v=.5; exc_syn_v = zeros(vL,1); % 合成的激勵信號(脈沖串) s_syn_v = zeros(vL,1); % 合成語音last_syn_v = 0; %存儲上一個(或多個)段的最后一個脈沖的下標zi_syn_v = zeros(P,1); % 合成濾波器的狀態(tài) hw = hamming(WL); % 漢明窗 % 依次處理每幀語音 for n = 3:FN % 計算預測系數(shù)(不需要掌握) s_w = s(n*FL-WL+1:n*FL).*hw; %漢明窗加權(quán)后的語音 A E = lpc(s_w, P);
4、 %用線性預測法計算P個預測系數(shù) % A是預測系數(shù),E會被用來計算合成激勵的能量 if n = 27 % (3) 觀察預測系統(tǒng)的零極點圖 zplane(1,A); end s_f = s(n-1)*FL+1:n*FL); % 本幀語音,下面就要對它做處理 % (4) 用filter函數(shù)s_f計算激勵,注意保持濾波器狀態(tài)exc1,zi_pre = filter(A,1,s_f,zi_pre); exc(n-1)*FL+1:n*FL) = exc1; %計算得到的激勵 % (5) 用filter函數(shù)和exc重建語音,注意保持濾波器狀態(tài)s_rec1,zi_rec = filter(1,A,exc1,
5、zi_rec); s_rec(n-1)*FL+1:n*FL) = s_rec1; %計算得到的重建語音 % 注意下面只有在得到exc后才會計算正確 s_Pitch = exc(n*FL-222:n*FL); PT = findpitch(s_Pitch); % 計算基音周期PT(不要求掌握) G = sqrt(E*PT); % 計算合成激勵的能量G(不要求掌握) %方法3:本段激勵只能修改本段長度tempn_syn = 1:n*FL-last_syn;exc_syn1 = zeros(length(tempn_syn),1);exc_syn1(mod(tempn_syn,PT)=0) = G;
6、 %某一段算出的脈沖exc_syn1 = exc_syn1(n-1)*FL-last_syn+1:n*FL-last_syn);s_syn1,zi_syn = filter(1,A,exc_syn1,zi_syn);exc_syn(n-1)*FL+1:n*FL) =exc_syn1; %計算得到的合成激勵s_syn(n-1)*FL+1:n*FL) = s_syn1; %計算得到的合成語音last_syn = last_syn+PT*floor(n*FL-last_syn)/PT); % (11) 不改變基音周期和預測系數(shù),將合成激勵的長度增加一倍,再作為filter % 的輸入得到新的合成語音
7、,聽一聽是不是速度變慢了,但音調(diào)沒有變。FL_v = floor(FL/v);tempn_syn_v = 1:n*FL_v-last_syn_v;exc_syn1_v = zeros(length(tempn_syn_v),1);exc_syn1_v(mod(tempn_syn_v,PT)=0) = G; %某一段算出的脈沖exc_syn1_v = exc_syn1_v(n-1)*FL_v-last_syn_v+1:n*FL_v-last_syn_v);s_syn1_v,zi_syn_v = filter(1,A,exc_syn1_v,zi_syn_v); last_syn_v = last_
8、syn_v+PT*floor(n*FL_v-last_syn_v)/PT); exc_syn_v(n-1)*FL_v+1:n*FL_v) =exc_syn1_v;%計算得到的加長合成激勵 s_syn_v(n-1)*FL_v+1:n*FL_v) = s_syn1_v; %計算得到的加長合成語音 % (13) 將基音周期減小一半,將共振峰頻率增加150Hz,重新合成語音,聽聽是啥感受PT1 =floor(PT/2); %減小基音周期 poles = roots(A);deltaOMG = 150*2*pi/8000;for p=1:10 %增加共振峰頻率,實軸上方的極點逆時針轉(zhuǎn),下方順時針轉(zhuǎn) if
9、 imag(poles(p)0 poles(p) = poles(p)*exp(j*deltaOMG); elseif imag(poles(p)0 poles(p) = poles(p)*exp(-j*deltaOMG); endendA1=poly(poles);if n=27 figure; zplane(1,A1);endtempn_syn_t = 1:n*FL-last_syn_t;exc_syn1_t = zeros(length(tempn_syn_t),1);exc_syn1_t(mod(tempn_syn_t,PT1)=0) = G; %某一段算出的脈沖exc_syn1_t
10、= exc_syn1_t(n-1)*FL-last_syn_t+1:n*FL-last_syn_t);s_syn1_t,zi_syn_t = filter(1,A1,exc_syn1_t,zi_syn_t);exc_syn_t(n-1)*FL+1:n*FL) =exc_syn1_t; %計算得到的合成激勵s_syn_t(n-1)*FL+1:n*FL) = s_syn1_t; %計算得到的合成語音last_syn_t = last_syn_t+PT1*floor(n*FL-last_syn_t)/PT1); end % (6)s ,exc 和 s_rec 的區(qū)別figure;subplot(3,
11、1,1), plot(exc), xlabel(n (samples), ylabel(Amplitude), title(激勵信號);subplot(3,1,2), plot(s), xlabel(n (samples), ylabel(Amplitude), title(原語音信號);subplot(3,1,3), plot(s_rec), xlabel(n (samples), ylabel(Amplitude), title(重建語音信號);figure;subplot(3,1,1), plot(exc), xlabel(n (samples), ylabel(Amplitude),
12、title(激勵信號), XLim(15*FL+1,16*FL);subplot(3,1,2), plot(s), xlabel(n (samples), ylabel(Amplitude), title(原語音信號), XLim(15*FL+1,16*FL);subplot(3,1,3), plot(s_rec), xlabel(n (samples), ylabel(Amplitude), title(重建語音信號), XLim(15*FL+1,16*FL);sound(exc);pause(2); sound(s); pause(2);sound(s_rec);pause(2);%原始語
13、音與合成語音的差別figure;subplot(3,1,1), plot(exc_syn), xlabel(n (samples), ylabel(Amplitude), title(合成激勵信號);subplot(3,1,2), plot(s), xlabel(n (samples), ylabel(Amplitude), title(原語音信號);subplot(3,1,3), plot(s_syn), xlabel(n (samples), ylabel(Amplitude), title(合成語音信號);sound(s); pause(2);sound(s_syn);pause(2);
14、%變速不變調(diào)figure;subplot(3,1,1), plot(exc_syn_v), xlabel(n (samples), ylabel(Amplitude), title(合成慢速激勵信號) ,XLim(0,length(exc_syn_v);subplot(3,1,2), plot(s), xlabel(n (samples), ylabel(Amplitude), title(原語音信號), XLim(0,length(s);subplot(3,1,3), plot(s_syn_v), xlabel(n (samples), ylabel(Amplitude), title(合成慢速語音信號), XLim(0,length(s_syn_v); sound(s); pause(2);sound(s_syn_v);pause(4); %變調(diào)不變速figure;subplot(3,1,1), plot(exc_syn_t), xlabel(n (samples), ylabel(Amplitude), title(合成高調(diào)激勵信號) ,XLim(0,length(exc_syn_t);subplot(3,1,2
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年浙教新版高一地理上冊階段測試試卷含答案
- 2025旺鋪轉(zhuǎn)讓合同范本
- 2025旅行社旅客旅游意外保險合同
- 2025年人教版PEP選擇性必修一歷史下冊月考試卷
- 2025年湘師大新版九年級地理下冊階段測試試卷
- 2025年超高壓復合膠管項目提案報告模式
- 2025勞務分包版合同及注意事項(合同協(xié)議范本)
- 2025標準的裝修合同書樣本
- 2025無錫市勞動合同范本
- 春節(jié)朗誦詩歌15篇
- 醫(yī)院課件:《食源性疾病知識培訓》
- 浙教版七年級數(shù)學下冊單元測試題及參考答案
- 華為人才發(fā)展與運營管理
- 卓有成效的管理者讀后感3000字
- 七年級下冊-備戰(zhàn)2024年中考歷史總復習核心考點與重難點練習(統(tǒng)部編版)
- 巖土工程勘察服務投標方案(技術(shù)方案)
- 實驗室儀器設備驗收單
- 新修訂藥品GMP中藥飲片附錄解讀課件
- 蒙特利爾認知評估量表北京版
- 領導干部個人有關事項報告表(模板)
- GB/T 7631.18-2017潤滑劑、工業(yè)用油和有關產(chǎn)品(L類)的分類第18部分:Y組(其他應用)
評論
0/150
提交評論