研发埠

标题: 线性调频信号+高斯白噪声 怎么写 [打印本页]

作者: 刘建锋    时间: 2014-5-6 10:45
标题: 线性调频信号+高斯白噪声 怎么写
信号加高斯白噪声,然后通过匹配滤波器,再对信号检测的代码怎么写啊?
作者: 赵运    时间: 2014-5-6 15:33
http://www.mathworks.com/help/phased/ug/matched-filtering.html
作者: 刘建锋    时间: 2014-5-6 17:43
% Specify the waveform.hwav = phased.LinearFMWaveform('PulseWidth',1e-4,'PRF',5e3,...  'SampleRate',1e6,'OutputFormat','Pulses','NumPulses',1,...  'SweepBandwidth',1e5);w = getMatchedFilter(hwav);% Create a matched filter with no spectrum weighting, and a% matched filter that uses a Taylor window for spectrum% weighting.hmf = phased.MatchedFilter('Coefficients',w);hmf_taylor = phased.MatchedFilter('Coefficients',w,...  'SpectrumWindow','Taylor');% Create the signal and add noise.sig = step(hwav);rng(17)x = sig+0.5*(randn(length(sig),1)+1j*randn(length(sig),1));% Filter the noisy signal separately with each of the filters.y = step(hmf,x);y_taylor = step(hmf_taylor,x);% Plot the real parts of the waveform and noisy signal.t = linspace(0,numel(sig)/hwav.SampleRate,...  hwav.SampleRate/hwav.PRF);subplot(2,1,1);plot(t,real(sig)); title('Input Signal');xlim([0 max(t)]); grid onylabel('Amplitude');subplot(2,1,2);plot(t,real(x)); title('Input Signal + Noise');xlim([0 max(t)]); grid onxlabel('Seconds'); ylabel('Amplitude');% Plot the magnitudes of the two matched filter outputs.figure;plot(t,abs(y),'b--');title('Matched Filter Output');xlim([0 max(t)]); grid onhold on;plot(t,abs(y_taylor),'r-');ylabel('Magnitude'); xlabel('Seconds');legend('No Spectrum Weighting','Taylor Window');hold off;这是你给我的答案,我把它截出来了,还有个问题,如果我想改噪声的信噪比,要怎么改啊
作者: 赵运    时间: 2014-5-6 17:51
x = sig+0.5*(randn(length(sig),1)+1j*randn(length(sig),1));0.5改成相应的(噪声功率/2)
作者: 刘建锋    时间: 2014-5-7 10:56
就是把0.5改成小于1的其他数就可以是吧,还有一个问题,大神,老师让我“给线性调频信号加噪声,然后通过匹配滤波器,然后检测该信号”。这个函数写到了通过匹配滤波器了,最后一步的检测怎么写啊x = sig+0.5*(randn(length(sig),1)+1j*randn(length(sig),1));这个噪声时什么噪声,是高斯白噪声吗问题有点多,不好意思啊
作者: 赵运    时间: 2014-5-7 15:24
改成合适的数。0.5对应的是噪声功率为1,至于你的噪声功率应该是多少要根据你的信号功率以及信噪比来求。
作者: 赵运    时间: 2014-5-8 17:19
randn指normal分布,也就是高斯分布,所以是高斯白噪声。你想怎么检测?你觉得应该写成啥样?比如x>5就是一种检测




欢迎光临 研发埠 (http://bbs.yanfabu.com/) Powered by Discuz! X3.2