毫米波雷达DOA角度计算----Capon算法

 

 算法实现如下:

        parameter:雷达参数设置。

        antVet:目标点 对应的非相参积累天线数据。

function [angle,doa_abs] = caponMethod(parameter,antVec)

    txAntenna = parameter.txAntenna;  % 发射天线 [1  1]
    rxAntenna = parameter.rxAntenna;  % 接收天线 [1  1  1  1]
    txNum = length(txAntenna);        % 发射天线个数  2
    rxNum = length(rxAntenna);        % 接收天线个数  4
    lambda = parameter.lambda;        % 波长
    dx = parameter.dx;   % 天线间隔
    virtualAntenna = parameter.virtualAntenna;  % 虚拟天线个数
    Rx = antVec * antVec' / virtualAntenna; 
    deg = -90:0.1:90;
    a = zeros(virtualAntenna,1);
    kk = 1;
    for degscan = deg
        for txId = 1:txNum
            for rxId = 1:rxNum
                virtualAntennaId = (txId-1) * rxNum + rxId - 1;
                dphi = 2 * pi / lambda * dx * virtualAntennaId * sind(degscan);
                a((txId-1) * rxNum + rxId) = exp(-1i * dphi);
            end
        end
        RxInv = inv(Rx);  % inv矩阵的逆
        P_out(kk) = 1/(a'*RxInv*a);
        kk = kk + 1;
    end
    doa_abs = abs(P_out);
    [pk,loc]=max(doa_abs);
    angle = deg(loc);
    
end

  • 7
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值