日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > 循环神经网络 >内容正文

循环神经网络

【数字信号处理】相关函数应用 ( 使用 matlab 计算相关函数 )

發布時間:2025/6/17 循环神经网络 76 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【数字信号处理】相关函数应用 ( 使用 matlab 计算相关函数 ) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一、相關函數應用場景
    • 1、生成高斯白噪聲
    • 2、信噪比 SNR
    • 3、根據信噪比 SNR 求信號幅度
    • 4、產生單載波信號及最終信號
    • 5、求自相關函數及功率
    • 6、matlab 完整代碼





一、相關函數應用場景



求下面信號的 " 自相關函數 " :

x(n)=sin?(2πfn)+N(n)x(n) = \sin(2\pi fn) + N(n)x(n)=sin(2πfn)+N(n)

其中 N(n)N(n)N(n)高斯白噪聲 ;

高斯白噪聲 符合 正態分布 特性 , 其 均值為 000 , 方差為 111 , 其功率譜密度是白的 , 在所有的頻率上 , 其功率都相同 ;



在上一篇博客 【數字信號處理】相關函數應用 ( 相關函數應用場景 | 噪聲中檢測信號原理 ) 中 , 使用了公式推導的方法求相關函數 , 本篇博客使用 matlab 求相關函數 ;



下面開始使用 matlab 計算 x(n)=sin?(2πfn)+N(n)x(n) = \sin(2\pi fn) + N(n)x(n)=sin(2πfn)+N(n) 的相關函數 ;


1、生成高斯白噪聲


生成 高斯白噪聲 序列 , 均值 0 , 方差 1 ;

randn(1,200);

上述代碼 生成的 高斯白噪聲 序列 是一個 有 200 個元素的行向量 ,

如果是 randn(2, 200) 代碼 , 則生成的是一個 2×2002 \times 2002×200 的矩陣 ;


2、信噪比 SNR


SNR 是信噪比 , PsP_sPs? 是信號功率 , PNP_NPN? 是噪聲功率 , 其關系是 :

SNR=10log?10PsPNSNR = 10 \log_{10}\cfrac{P_s}{P_N}SNR=10log10?PN?Ps??

在 matlab 中 , 設置信噪比為 777 ;

% 設置 信噪比 SNR = 7;

3、根據信噪比 SNR 求信號幅度


信號 Asin?ωnA \sin \omega nAsinωn , 其功率是 Ps=A22P_s = \cfrac{A^2}{2}Ps?=2A2? , 噪聲功率 是 PN=1P_N=1PN?=1 , 將其帶入到信噪比公式中 :

SNR=10log?10PsPN=10log?10A221=10log?10A22SNR = 10 \log_{10}\cfrac{P_s}{P_N} = 10 \log_{10}\cfrac{\cfrac{A^2}{2}}{1} = 10 \log_{10}\cfrac{A^2}{2}SNR=10log10?PN?Ps??=10log10?12A2??=10log10?2A2?

根據信噪比 計算 幅度 AAA :

SNR10=log10A22\cfrac{SNR}{10} = log_{10}\cfrac{A^2}{2}10SNR?=log10?2A2?

A22=10SNR10\cfrac{A^2}{2} = 10^{\cfrac{SNR}{10}}2A2?=1010SNR?

A2=2×10SNR10A^2 = 2 \times 10^{\cfrac{SNR}{10}}A2=2×1010SNR?

A=2×10SNR10A = \sqrt{2 \times 10^{\cfrac{SNR}{10}}}A=2×1010SNR??

寫成 matlab 代碼為 :

% 根據 信噪比 計算信號幅度 SignalAmplitude = sqrt( 2 * 10^(SNR/10) );

4、產生單載波信號及最終信號


根據 Asin?ωnA \sin \omega nAsinωn 公式 , 產生 200 個信號 , 其中 AAA 之前已經求出 ;

% 根據 Asinωn 產生 200 個信號 x1 = A * sin( pi * 0.165 * (0:199) );

然后將 信號 與 高斯白噪聲疊加 :

% 信號 + 高斯白噪聲 x = x1 + xn;

5、求自相關函數及功率


求自相關函數 , 使用 xcorr 函數 ;

% 求 x 的 自相關函數 , 長度為2N-1 y = xcorr(x, x);

求信號功率 :

% 功率 : 自相關函數 幅度 求平均 % 自相關函數 就是 200 個功率之和 y = y / 200;

6、matlab 完整代碼


matlab 完整代碼 :

% 清除之前的變量或內存 clear; % 生成 高斯白噪聲 序列 , 均值 0 , 方差 1 % 生成的 高斯白噪聲 序列 是一個 有 200 個元素的行向量 xn = randn(1,200); % 設置 信噪比 SNR = 7;% 根據 信噪比 計算信號幅度 A = sqrt( 2 * 10^(SNR/10) );% 根據 Asinωn 產生 200 個信號 x1 = A * sin( pi * 0.165 * (0:199) ); % 信號 + 高斯白噪聲 x = x1 + xn; % 求 x 的 自相關函數 , 長度為2N-1 y = xcorr(x, x); % 功率 : 自相關函數 幅度 求平均 % 自相關函數 就是 200 個功率之和 y = y / 200; %建立幕布 figure; %繪制 "輸出序列" 圖像 , 點用上三角表示 plot(y);% 打開網格 grid on;

執行結果 :

總結

以上是生活随笔為你收集整理的【数字信号处理】相关函数应用 ( 使用 matlab 计算相关函数 )的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。