原创博文,转载请注明出处

下面的论文是我的雷达处理的作业,拿来共享,不喜勿喷。由于公式编辑器的原因,无法复制公式,全部内容请点击

基于多重信号分类算法的DOA估计

1引言

多重信号分类(MUSIC)算法是Schmit R O等人在 1979 年提出的。这一类算法的提出开创了空间谱估计算法研究的新时代,促进了特征结构类算法的兴起和发展,该算法已成为空间谱估计理论体系中的标志性算法。此算法提出之前的算法都是针对阵列接收数据协方差矩阵进行直接处理,而MUSIC算法的基本思想则是将任何阵列输出数据的协方差矩阵进行特征分解,从而得到与信号分量相对应的信号子空间和与信号分量相正交的噪声子空间,然后利用这两个子空间的正交性来估计信号参数(入射方向等)。它是建立在以下假设基础上的:

(1) 阵列形式为线性均匀阵,阵元间距不大于处理最高频率信号波长的二分之一;

(2) 信号源数小于阵元的数目,以确保阵列流型矩阵的各个列线性独立;

(3) 处理器的噪声为加性高斯分布,不同阵元间距噪声均为平稳随机过程,各阵元间噪声相互独立,空间平稳(各噪声方差相等);

(4) 空间信号为零均值平稳随机过程,信号与阵源噪声与相互独立;

(5) 信号源通常为窄带远场信号。正是由于 MUSIC 算法在特定的条件下具有很高的分辨力、估计精度及稳定性,从而吸引了大量的学者对其进行深入的研究和分析。

仿真结果

首先模拟四个方向的入射信号,分别是-12, -4, 4, 12 度,叠加噪声信号,然后进行MUSIC估计,得到如下图所示的结果,可以看出在横坐标 -12, -4, 4, 12 上得到相对应空间方位谱的尖峰。同时本仿真还设计了在不同的信噪比环境下对实验结果的影响,可以看出信噪比越高,其效果越好。

源代码:

clc;
clear;
M=;
d=;%阵元间距
lma=;%波长
N=;%采样频率
n=:N;
SNR=;%信噪比
angle=[- - ];
s1=cos(*pi*0.015*n);
s2=*cos(*pi*0.025*n);
s3=*cos(*pi*0.035*n);
s4=*cos(*pi*0.05*n);
s=[s1;s2;s3;s4];%*1000入射向量
z=:M-;
A=exp(-*pi*j*z'*sin(angle*pi/180)/lma);%8*4导引向量
S=(^(SNR/))*A*s;
noise=randn(M,N);
X=S+noise;
C=cov(X*X');%总输入信号的协方差矩阵
[D,h]=eig(C);%求特征向量和特征值
Vn=D(:,:);%与零特征值对应的特征向量
Q1=-;Q2=;
k=length(Q1:0.1:Q2);
for n=:k
a=[exp(-*pi*j*[:]*sin((Q1+(n-)*0.1)*pi/)/lma)]';
Pm(n)=/(a'*Vn*Vn'*a);
end
Pu=*log10(abs(Pm));
plot(Q1:0.1:Q2,abs(Pu));
xlabel('入射角(度)');ylabel('空间方位谱(dB)')
title('MUSIC');
legend('SNR=30')
grid on

基于多重信号分类算法的DOA估计的更多相关文章

  1. 宽带DOA估计方法

    Wideband DOA Estimation. 语音信号以及野外的车辆信号的声音都是宽带信号,所以传统的窄带DOA算法(MUSIC,ESPRIT等)都不适用.需要采用宽带DOA算法来计算目标信号的波 ...

  2. 异常检测-基于孤立森林算法Isolation-based Anomaly Detection-1-论文学习

    论文http://202.119.32.195/cache/10/03/cs.nju.edu.cn/da2d9bef3c4fd7d2d8c33947231d9708/tkdd11.pdf 1. INT ...

  3. QT:用QSet储存自定义结构体的问题——QSet和STL的set是有本质区别的,QSet是基于哈希算法的,要求提供自定义==和qHash函数

    前几天要用QSet作为储存一个自定义的结构体(就像下面这个程序一样),结果死活不成功... 后来还跑到论坛上问人了,丢脸丢大了... 事先说明:以下这个例子是错误的 #include <QtCo ...

  4. 基于令牌桶算法实现的SpringBoot分布式无锁限流插件

    本文档不会是最新的,最新的请看Github! 1.简介 基于令牌桶算法和漏桶算法实现的纳秒级分布式无锁限流插件,完美嵌入SpringBoot.SpringCloud应用,支持接口限流.方法限流.系统限 ...

  5. CompareTo 基于的排序算法

    CompareTo 基于的排序算法(高级排序) 这个是今天学习MapReduce时发现的,自定义类后实现了WritableComparable<>接口后实现了接口中的compareTo方法 ...

  6. 基于dsp_builder的算法在FPGA上的实现

    基于dsp_builder的算法在FPGA上的实现   一.摘要 结合dsp_builder.matlab.modelsim和quartus ii等软件完成算法的FPGA实现. 二.实验平台 硬件平台 ...

  7. 基于C-W节约算法的车辆路径规划问题的Java实现

    VRP问题概述 解决算法分类 项目描述 算法结果 车辆路线问题(VRP)最早是由Dantzig和Ramser于1959年首次提出,它是指一定数量的客户,各自有不同数量的货物需求,配送中心向客户提供货物 ...

  8. opencv基于PCA降维算法的人脸识别

    opencv基于PCA降维算法的人脸识别(att_faces) 一.数据提取与处理 # 导入所需模块 import matplotlib.pyplot as plt import numpy as n ...

  9. 推荐系统实践 0x06 基于邻域的算法(1)

    基于邻域的算法(1) 基于邻域的算法主要分为两类,一类是基于用户的协同过滤算法,另一类是基于物品的协同过滤算法.我们首先介绍基于用户的协同过滤算法. 基于用户的协同过滤算法(UserCF) 基于用户的 ...

随机推荐

  1. 网络资源(1) - Hadoop视频

    2014_08_23: hadoop03c_分布式文件系统HDFS http://v.youku.com/v_show/id_XNDgwNjg1OTY0.html?f=18604686 2014_08 ...

  2. Android第一次打开应用程序,实现向导界面

    转载请注明出处,谢谢http://blog.csdn.net/harryweasley/article/details/42079167 先说下思路:1.利用Preference存储数据,来记录是否是 ...

  3. LCS 小结

    转载链接:http://www.cnblogs.com/PJQOOO/p/3897745.html 第一步:先计算最长公共子序列的长度. 实现第一步: 设一个C[i][j]: 保存Xi与Yj的LCS的 ...

  4. hdu 3449 (有依赖的01背包)

    依赖背包 事实上,这是一种树形DP,其特点是每个父节点都需要对它的各个儿子的属性进行一次DP以求得自己的相关属性. fj打算去买一些东西,在那之前,他需要一些盒子去装他打算要买的不同的物品.每一个盒子 ...

  5. 1.cocos2dx存储卡的游戏代码、而游戏移植到“华为荣耀”电话、问题的总结移植

     1记忆卡片游戏代码 CardItem.h #pragmaonce #ifndef__CardItem_H__ #define__CardItem_H__ #include"cocos2 ...

  6. hive union all 使用

    功能:将两个表中的 同样的字段拼接到一起 測试: create external table IF NOT EXISTS temp_uniontest_ta ( a1 string, a2 strin ...

  7. iOS10收集IDFA,植入第三方广告[终结]--ADMob

    [PS: 前段时间,公司做ASO推广,需要在应用中收集IDFA值,跟广告平台做交互!于是有了这个需求--] 1.首先,考虑了一下情况(自己懒 -_-#),就直接在首页上写了一个Banner,循环加载广 ...

  8. mysql 数据库插入语句之insert into,replace into ,insert ignore

    近期才发现mysql的插入语句竟然有如此多的使用方法,这里拿来分享一下. ①关于insert into : insert into table_name values(); insert into t ...

  9. Largest Rectangular Area in a Histogram

    题目地址:https://oj.leetcode.com/problems/largest-rectangle-in-histogram/ ,刚開始事实上没做这个题,而是在做https://oj.le ...

  10. C#函数式编程-序列

    C#函数式编程之序列 过了许久的时间,终于趁闲暇的时间来继续将函数式编程这个专辑连载下去,这段时间开头是为IOS这个新方向做准备,将OC的教程写成了SWIFT版,当然我个人是支持Xamarin,但是我 ...