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

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

基于多重信号分类算法的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. Entity Framework执行Sql语句返回DataTable

    Entity Framework中对外开放了数据库连接字符串,使用的时候可以直接得到这个连接字符串,然后进行相关的操作.如果在使用的过程中,发现Entity Framework中有一些满足不了的需求的 ...

  2. hdu To and Fro

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1200 代码: #include <stdio.h> #include <string ...

  3. 写一个根据id字段查找记录的缓存函数(javascript)

    前不久在参加面试的时候遇到了这样一道题,"写一个根据id字段查找记录的缓存函数,如果之前查过,则直接返回之前查找过的对象,而无须重新查找".当时由于时间较短加上时间比较紧张,考虑并 ...

  4. 软件project(十)——软件维护

    软件维护是软件开发的最长的阶段之一,的精力和费用也是最多的一个阶段,基本上软件交付之后就进入了维护阶段,占整个系统生存周期的40%~70%. 导图:         软件系统并非一成不变的.有时候我们 ...

  5. NPOI实现Excel导入导出

    NPOI实现Excel的导入导出,踩坑若干. Cyan是博主[Soar360]自2014年以来开始编写整理的工具组件,用于解决现实工作中常用且与业务逻辑无关的问题. 什么是NPOI? NPOI 是 P ...

  6. 表现层及ASP.NET MVC介绍(二)

    表现层及ASP.NET MVC介绍(二) 最近的更新速度越来越慢,主要是项目上比较忙,封装EasyUi也要花很多时间.不过大家请放心,本系列不会半途夭折,并且代码干货也会持续更新.本文继续介绍表现层和 ...

  7. 当今最流行的Node.js应用开发框架简介

    快速开发而又容易扩展,高性能且鲁棒性强.Node.js的出现让所有网络应用开发者的这些梦想成为现实.但是,有如其他新的开发语言技术一样,从头开始使用Node.js的最基本功能来编写代码构建应用是一个非 ...

  8. WCF消息交换模式之双工通讯(Duplex)

    WCF消息交换模式之双工通讯(Duplex) 双工通讯Duplex具有以下特点: 1它可以在处理完请求之后,通过请求客户端中的回调进行响应操作 2.消息交换过程中,服务端和客户端角色会发生调换 3.服 ...

  9. 【视频】零基础学Android开发:蓝牙聊天室APP(二)

    零基础学Android开发:蓝牙聊天室APP第二讲 2.1 课程内容应用场景 2.2 Android UI设计 2.3 组件布局:LinearLayout和RelativeLayout 2.4 Tex ...

  10. 解决Ubuntu Adobe Reader 菜单栏空白

    sudo gedit /usr/local/share/applications/AdobeReader.desktop将  ”Exec=acroread“ 用 ”Exec=env UBUNTU_ME ...