当前位置:   article > 正文

matlab 计算广义互相关延迟 时延 用于toa tdoa估计 测向_matlab实现广义互相关

matlab实现广义互相关

%计算广义互相关时延 时间差
clc;
close all;
clear all;
fs = 150e6;

N = 4096;
x1 = randn(N,1);
tau = 0.000008;
x2 = delayseq(x1,tau,fs);

n = 2*length(x1)-1;
N = 2^nextpow2(n);
xfft = fft(x1);
yfft = fft(x2);

sampleIndex = -N/4:N/4-1;

R = xfft.*conj(yfft);
c = R./abs®;
ic = ifftshift(ifft©);
figure;plot(sampleIndex,ic)
[~,ind] =max(abs(ic));
lagDiff = sampleIndex(ind);
timeDiff = lagDiff/fs

tau = gccphat(x1,x2,fs)

timeDiff =

-8.0000e-06

tau =

-8.0000e-06

个人认为这里的时延估计,时延估计的准确率与采样率和实际的信号频率有关。
延迟点数不要设置得太大,设置的小一点就能准确计算出延迟。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/在线问答5/article/detail/756231
推荐阅读
相关标签
  

闽ICP备14008679号