第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > 更改信号采样率和测量均值频率 功率 带宽

更改信号采样率和测量均值频率 功率 带宽

时间:2021-12-06 04:32:25

相关推荐

更改信号采样率和测量均值频率 功率 带宽

目录

更改信号采样率

测量均值频率、功率、带宽

更改信号采样率

此示例说明如何更改信号的采样率。此示例有两个部分。第一部分将正弦输入的采样率从 44.1 kHz 改为 48 kHz。此工作流在音频处理中很常见。光盘上使用的采样率是 44.1 kHz,而数字音频磁带上使用的采样率是 48 kHz。第二部分将录制的语音样本的采样率从 7418 Hz 更改为 8192 Hz。

创建一个由多个正弦波组成的输入信号,采样率为 44.1 kHz。这些正弦波的频率为 2 kHz、4 kHz 和 8 kHz。

Fs = 44.1e3;t = 0:1/Fs:1-1/Fs;x = cos(2*pi*2000*t) + 1/2*sin(2*pi*4000*(t-pi/4)) + ...1/4*cos(2*pi*8000*t);

要将采样率从 44.1 kHz 更改为 48 kHz,必须确定一个有理数(整数之比)P/Q,使得 P/Q 与原始采样率 44100 之积在某个指定容差内等于 48000。

要确定这些因子,请使用 rat。输入新采样率 48000 与原始采样率 44100 之比。

[P,Q] = rat(48e3/Fs);abs(P/Q*Fs-48000)ans = 7.2760e-12

可以看到,P/Q*Fs 与所需采样率 48000 相差的数量级仅为 。

将使用 rat 求得的分子和分母因子作为 resample 的输入,输出以 48 kHz 采样的波形。

xnew = resample(x,P,Q);

如果计算机可以播放音频,可以播放这两种波形。在播放信号前,请将音量设置为舒适的水平。对两种采样率的信号分别执行 sound 命令并收听。

% sound(x,44100)% sound(xnew,48000)

将语音样本的采样率从 7418 Hz 更改为 8192 Hz。语音信号是说话者朗读 "MATLAB®" 的录音。

加载该语音样本。

load mtlb

加载文件mtlb.mat会将语音信号mtlb和采样率Fs加载到 MATLAB 工作区中。确定新采样率 8192 与原始采样率之比的有理近似值。使用rat确定近似值。

[P,Q] = rat(8192/Fs);

以新采样率对语音样本进行重采样。绘制两个信号。

mtlb_new = resample(mtlb,P,Q);subplot(2,1,1)plot((0:length(mtlb)-1)/Fs,mtlb)subplot(2,1,2)plot((0:length(mtlb_new)-1)/(P/Q*Fs),mtlb_new)

如图所示:

如果计算机能够输出音频,可以将这两个波形以其各自的采样率播放以进行比较。在播放声音前,请将计算机上的音量设置为舒适的聆听水平。分别执行 sound 命令,比较不同采样率下的语音样本。

% sound(mtlb,Fs)% sound(mtlb_new,8192)

测量均值频率、功率、带宽

生成以 1024 kHz 采样的 chirp 信号的 1024 个采样点。chirp 信号的初始频率为 50 kHz,采样结束时达到 100 kHz。添加高斯白噪声,使信噪比为 40 dB。

nSamp = 1024;Fs = 1024e3;SNR = 40;t = (0:nSamp-1)'/Fs;x = chirp(t,50e3,nSamp/Fs,100e3);x = x+randn(size(x))*std(x)/db2mag(SNR);

估计信号的 99% 占用带宽,并在功率频谱密度 (PSD) 图上进行标注。

obw(x,Fs);

如图所示:

计算频带中的功率,并验证它是否占总数的 99%。

[bw,flo,fhi,powr] = obw(x,Fs);pcent = powr/bandpower(x)*100pcent = 99.0000

生成另一个 chirp 信号。指定其初始频率为 200 kHz、最终频率为 300 kHz,幅值为第一个信号的两倍。添加高斯白噪声。

x2 = 2*chirp(t,200e3,nSamp/Fs,300e3);x2 = x2+randn(size(x2))*std(x2)/db2mag(SNR);

将两个 chirp 信号相加以形成一个新信号。绘制信号的 PSD,并标注其中值频率。

medfreq([x+x2],Fs);

如图所示:

绘制 PSD 并标注其均值频率。

meanfreq([x+x2],Fs);

如图所示:

现在假设每个 chirp 信号代表一个单独的通道。估计每个通道的均值频率。在 PSD 图上标注其均值频率。

meanfreq([x x2],Fs)

如图所示:

ans = 1×210^5 ×0.7503 2.4999

估计每个通道的半功率带宽。在 PSD 图上标注 3-dB 带宽。

powerbw([x x2],Fs)

如图所示:

ans = 1×210^4 ×4.4386 9.2208

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。