怎樣用matlab畫出語音頻號的時域波形和頻譜圖和畫出加雜訊

2021-03-21 23:29:15 字數 4572 閱讀 8636

1樓:

t = 0:.1:10;

x = sawtooth(t); % create sawtooth signal.

y = awgn(x,10,'measured'); % add white gaussian noise.

plot(t,x,t,y) % plot both signals.

legend('original signal','signal with awgn');

2樓:我是舞三

matlab 程式的檔案**是以.m檔案的形式呈現的。將matlab**編寫進.m檔案內然後執行即可。

例子:建立乙個 helloworld.m

檔案內包括內容如下:

fprintf('hello world!');

使用快捷鍵f5直接執行,然後可以在控制台下看到列印的:

hello world!

3樓:圭唱張慧月

一般加入白雜訊,只得是加入高斯白雜訊

利用randn產生高斯分布雜訊加到原來的影象上就可以了假設你原來的影象的資料存在矩陣變數a中

那麼noise=a*randn(size(a));

其中a是需要加雜訊的方差值,a的取值確定雜訊的幅度大小一般比影象訊號幅度

求一段matlab語音加入白雜訊的程式

如何用matlab產生高斯白雜訊,並且輸出圖形?

4樓:匿名使用者

我也是需要的,希望給我乙份,真心感謝.

5樓:釋靖止靈凡

一般加入白雜訊,只得是加入高斯白雜訊

利用randn產生高斯分布雜訊加到原來的影象上就可以了假設你原來的影象的資料存在矩陣變數a中

那麼noise=a*randn(size(a));

其中a是需要加雜訊的方差值,a的取值確定雜訊的幅度大小一般比影象訊號幅度

6樓:手機使用者

5月17日 16:14 本人有一套簡體中文的教程可以提供給你,你留下你的郵箱,我傳送給你!

用matlab設計乙個濾波器

matlab的**訊號的分析與處理設計的實驗咋做?

matlab中給訊號加入白雜訊,如何利用傅利葉變換去噪

7樓:我是舞三

總體思路:設定篩選條件,將陣列中符合條件的元素篩選出來(可以篩選出元素值也可以篩選出元素對應的下標),然後將元素值賦值給另外乙個陣列的元素

參考**:

clcclear all

close all

x = randi(10, 1, 5); % 原始資料

disp('x=');

disp(x);

y1 = -1 * ones(1, length(x)); % 儲存篩選出的結果,並初始化成不可能出現的結果

%-- 篩選符合條件的元素下標,並將對應元素存到y1 --%

ix = find(x>=3); % 例如,篩選出原始資料中大於3的元素的下標

if(isempty(ix))

disp('x的元素均不符合條件');

else

y1(1:length(ix)) = x(ix); % 將符合條件的元素存到y1中

y1( find(y1==-1) ) = ; % 剩餘元素刪除

disp('y1=');

disp(y1);

y2 = -1 * ones(1, length(x)); % 儲存篩選出的結果,並初始化成不可能出現的結果

%-- 篩選符合條件的元素值,並存入y2 --%

for i=1:length(x)

if(x(i)>=3) % 逐個檢測x的元素是否符合條件,把符合條件的元素值賦值給y2

y2(i) = x(i);

endend

y2( find(y2==-1) ) = ; % 剩餘元素刪除

disp('y2=');

disp(y2);

%----------------------------------%

輸出結果

x=7 1 9 10 7

y1=7 9 10 7

y2=7 9 10 7

8樓:我想呆會兒

小波的閾值去噪效果比較好。可以呼叫wden函式,比較簡單

本題中前面改一下比較直觀,可以把原始訊號輸出來subplot(2,2,1)後面去噪訊號subplot(2,2,2)頻譜圖subplot(2,2,3)後面可加程式

xd=wden(x,'rigrsure','s','sln',5,'sym8');

subplot(2,2,4);plot(xd);

title('去噪訊號');

err=x-xd;

函式wden的呼叫格式有以下兩種:

(1)[xd,cxd,lxd]=wden(x,tptr,sorh,scal,n,'wname')

(2)[xd,cxd,lxd]=wden(c,l,tptr,sorh,scal,n,'wname')

函式wden用於一維訊號的自動消噪。x為原始訊號,[c,l]為訊號的小波分解,n為小波分解的層數。

thr為閾值選擇規則:

*tptr='rigrsure',自適應閾值選擇使用stein的無偏風險估計原理。

*tptr='heursure',使用啟發式閾值選擇。

*tptr='sqtwolog',閾值等於sqrt(2*log(length(x))).

*tptr='minimaxi',用極大極小原理選擇閾值。

sorh是軟閾值或硬閾值的選擇(分別對應's'和'h')。

scal指所使用的閾值是否需要重新調整,包含下面三種:

*scal='one' 不調整;

*scal='sln' 根據第一層的係數進行雜訊層的估計來調整閾值。

*scal='mln' 根據不同的雜訊估計來調整閾值。

xd為消噪後的訊號,[cxd,lxd]為消噪後訊號的小波分解結構。

9樓:匿名使用者

山科同跟張老師上小波分析的路過

如何在matlab裡面向訊號裡面加入白雜訊?

10樓:go風影

y=awgn(x,snr),加性高斯白du噪函式,x原訊號,zhisnr是訊雜比,不知道你dao這個2%是能量

專還是幅屬值,如果是能量的話,snr=10*log(100/2);如果是幅值,snr=20*log(100/2);

**如下:

clc; clear ;

t=0:0.01:1;

y1=(pi/2)*cos(2*pi*t)+(pi/64)*cos(pi*t/8+pi/3);

snr=10*log(100/2); % 2%是能量比x=awgn(y1,snr);

subplot(211), plot(t,y1);

title('原訊號');

% 加入雜訊後有毛刺,但2%的雜訊有點小,毛刺不明顯。

subplot(212), plot(t,x);

title('加高斯白噪訊號');

11樓:匿名使用者

在matlab中無論是wgn還是baiawgn函式,實質du都是由randn函式產生

zhi的雜訊。即,wgn函式中調

dao用了randn函式,而版awgn函式中呼叫了wgn函式。

權根據awgn的實現**可以知道「向已知訊號新增某個訊雜比(snr)的高斯白雜訊」,

即:awgn(x,snr,』measured』,'linear』),命令的作用是對原訊號x新增訊雜比(比值)為snr的雜訊,在新增之前先估計訊號x的強度。

直接對原始訊號新增雜訊:

y=x+rand(length(x),1)y=x+randn(length(x),1))

12樓:匿名使用者

t=0:0.001:1;

y1=(pi/2)*cos(2*pi*t)+(pi/64)*cos(pi*t/8+pi/3);

temp=y1+0.02*y1.*rand(size(y1));

plot(t,y1,t,temp,'r')

13樓:日向淳正

l=length(y1);

noise=rand(1,l); %生成跟你的訊號一樣長度的白雜訊.

y=y1+noise; %加入白雜訊

數字濾波器設計及在語音頻號分析中的應用(matlab)

14樓:匿名使用者

採用窗函式法與等波紋法分別設計各型fir濾波器(低通、高通、帶通、帶阻中的至少3種型別)來對疊加雜訊前後的語音頻號進行濾波處理,繪出濾波器的頻域響應,繪出濾波後訊號的時域波形和頻譜,並對濾波前後的訊號進行對比,分析訊號的變化;在相同的效能指標下比較各方法的濾波效果,並從理論上進行分析(或解釋)。

matlab輸出的資料怎樣用lswrite逐行儲存到ecel中

對於你的第乙個問題,我建議使用下面的方法,首先把這些矩陣整合成乙個矩陣,然後一次性寫入。b for i 1 10 a ones 3,2 rand b b a endxlswrite a.xls b,sheet1 a1 當然如果你就要每次寫乙個的話,你可以這樣做 for i 1 10 a ones 3...

怎樣用MATLAB生成深度影象(即用顏色深淺表示z座標)

a imread mydata.ppm minv min min a ppm讀的資料都是 抄uint8,也就是 0,255 不過為了讓這段bai 更通du用一些,我特意進行了這樣的zhi處理。row col v find a minv 1 result col row v minv 1 最終結dao...

怎樣用SAI畫出這樣的色彩,如何用SAI畫出漸變的效果

就是畫材效果,是乙個圖層屬性 只要那個圖層設定了水彩邊緣,在上面畫上顏色就會有邊緣,不過前提是你筆刷不要太模糊,模糊的筆刷邊緣出不來 鉛筆起稿,再線筆勾畫,最後上水彩。如何用sai畫出漸變的效果?sai畫出漸變的效果步驟 1 注意三種顏色之間不要有間隔,要連起來。不然會有白色的過渡色。2 注意水彩筆...