GRAIL-SCML:一种几何正则化自适应集成似然的波达方向估计算法【附MATLAB代码】

GRAIL-SCML:一种几何正则化自适应集成似然的波达方向估计算法

TL;DR :GRAIL-SCML 是一种融合确定性最大似然、协方差域拟合、弱几何正则化与证据支撑集选择的高精度 DOA 估计算法,在低信噪比、单快拍、强相关性、非均匀噪声等极端场景下全面超越传统方法。

原文链接


1. 引言:什么是DOA估计?

波达方向估计(Direction-of-Arrival, DOA)是阵列信号处理中最核心的问题之一,广泛应用于雷达、声呐、无线通信、麦克风阵列等领域。其基本问题可以描述为:

利用一组空间分布的传感器(天线阵列)接收到的多路信号,估计信号的入射方向。

在实际应用中,DOA估计面临诸多挑战:

  • 📉 低信噪比:信号功率微弱,淹没在噪声中
  • 🔢 单快拍:仅有极少数测量样本可用
  • 🔗 源相关性高:多个信号源具有高度相关性甚至相干性
  • 📊 非均匀噪声:各阵元噪声功率不一致

传统方法(如 MUSIC、ESPRIT、MVDR)在这些极端条件下性能急剧退化。GRAIL-SCML 正是为了应对这些挑战而提出的。


2. 系统模型

2.1 均匀线阵(ULA)窄带模型

考虑一个由 M M M 个阵元组成的均匀线性阵列(ULA),阵元间距为半波长 d = λ / 2 d = \lambda/2 d=λ/2。假设有 K K K 个远场窄带信号源,其入射角为 θ 1 , θ 2 , ... , θ K \theta_1, \theta_2, \ldots, \theta_K θ1,θ2,...,θK,则阵列接收数据可建模为:

Y = A ( θ ) S + N \mathbf{Y} = \mathbf{A}(\boldsymbol{\theta})\mathbf{S} + \mathbf{N} Y=A(θ)S+N

其中:

  • Y ∈ C M × L \mathbf{Y} \in \mathbb{C}^{M \times L} Y∈CM×L: L L L 个快拍的阵列接收数据矩阵
  • A ( θ ) ∈ C M × K \mathbf{A}(\boldsymbol{\theta}) \in \mathbb{C}^{M \times K} A(θ)∈CM×K:阵列流形矩阵(steering matrix)
  • S ∈ C K × L \mathbf{S} \in \mathbb{C}^{K \times L} S∈CK×L:信号波形矩阵
  • N ∈ C M × L \mathbf{N} \in \mathbb{C}^{M \times L} N∈CM×L:加性噪声矩阵

ULA的导向矢量定义为:

a ( θ ) = 1 M 1 , e j 2 π d λ sin ⁡ θ , ... , e j 2 π d λ ( M − 1 ) sin ⁡ θ ⊤ \mathbf{a}(\theta) = \frac{1}{\sqrt{M}}\left1,\\ e\^{j2\\pi\\frac{d}{\\lambda}\\sin\\theta},\\ \\ldots,\\ e\^{j2\\pi\\frac{d}{\\lambda}(M-1)\\sin\\theta}\\right^\top a(θ)=M 11, ej2πλdsinθ, ..., ej2πλd(M−1)sinθ

令 d / λ = 0.5 d/\lambda = 0.5 d/λ=0.5,导向矢量可简写为:

a ( θ ) = 1 M 1 , e j π sin ⁡ θ , ... , e j π ( M − 1 ) sin ⁡ θ ⊤ \mathbf{a}(\theta) = \frac{1}{\sqrt{M}}\left1,\\ e\^{j\\pi \\sin\\theta},\\ \\ldots,\\ e\^{j\\pi (M-1)\\sin\\theta}\\right^\top a(θ)=M 11, ejπsinθ, ..., ejπ(M−1)sinθ

阵列流形矩阵为各方向导向矢量的拼接:

A ( θ ) = a ( θ 1 ) , a ( θ 2 ) , ... , a ( θ K ) \mathbf{A}(\boldsymbol{\theta}) = \\mathbf{a}(\\theta_1),\\ \\mathbf{a}(\\theta_2),\\ \\ldots,\\ \\mathbf{a}(\\theta_K) A(θ)=a(θ1), a(θ2), ..., a(θK)

2.2 噪声模型

项目支持两种噪声模型:

  • 均匀噪声 (uniform):各阵元噪声方差相同, σ 1 2 = σ 2 2 = ⋯ = σ M 2 \sigma_1^2 = \sigma_2^2 = \cdots = \sigma_M^2 σ12=σ22=⋯=σM2
  • 非均匀噪声 (nonuniform):各阵元噪声方差不同,具有指数级差异(跨距可达 12 dB 12\text{dB} 12dB)

2.3 源相关模型

信号源的相关性由相关系数 ρ \rho ρ 刻画(以 K = 2 K=2 K=2 为例):

R s = 1 ρ ρ ∗ 1 \mathbf{R}_s = \begin{bmatrix} 1 & \rho \\ \rho^* & 1 \end{bmatrix} Rs=1ρ∗ρ1

当 ∣ ρ ∣ → 1 |\rho| \to 1 ∣ρ∣→1 时,两个信号源高度相关(实验中取 ρ = 0.9 × ( 0.5010 + j 0.8654 ) \rho = 0.9 \times (0.5010 + j0.8654) ρ=0.9×(0.5010+j0.8654))。

2.4 宽带模型

对于宽带信号,采用频率聚焦 (frequency focusing)框架。在 ω \omega ω-空间下定义归一化方向参数:

ω = 1 2 sin ⁡ θ \omega = \frac{1}{2}\sin\theta ω=21sinθ

频率因子定义为:

f m = 1 − M f + 1 − 2 m M 0 , m = 1 , 2 , ... , M f f_m = 1 - \frac{M_f + 1 - 2m}{M_0},\quad m = 1, 2, \ldots, M_f fm=1−M0Mf+1−2m,m=1,2,...,Mf

其中 M f M_f Mf 是频率子带数量, M 0 M_0 M0 是参考频率参数。第 m m m 个频率子带的导向矢量为:

a m ( ω ) = 1 N 1 , e j 2 π f m ω , ... , e j 2 π f m ( N − 1 ) ω ⊤ \mathbf{a}_m(\omega) = \frac{1}{\sqrt{N}}\left1,\\ e\^{j2\\pi f_m \\omega},\\ \\ldots,\\ e\^{j2\\pi f_m (N-1)\\omega}\\right^\top am(ω)=N 11, ej2πfmω, ..., ej2πfm(N−1)ω


3. GRAIL-SCML 算法详解

GRAIL-SCML 的全称揭示了其核心设计思想:

缩写 全称 含义
G Geometry-Regularized 几何正则化
RA Regularized Adaptive 正则化自适应
IL Integrated Likelihood 集成似然
SCML Structure-Constrained Maximum Likelihood 结构约束最大似然

整个算法由三个核心模块两种关键技术组成。

3.1 波形域确定性最大似然(DML)拟合

给定角度 θ \boldsymbol{\theta} θ,信号波形的最小二乘估计为:

S ^ = ( A H A ) − 1 A H Y \hat{\mathbf{S}} = (\mathbf{A}^H\mathbf{A})^{-1}\mathbf{A}^H\mathbf{Y} S^=(AHA)−1AHY

因此确定性最大似然的代价函数为:

J DML ( θ ) = ∥ Y − P A Y ∥ F 2 max ⁡ ( ∥ Y ∥ F 2 , ε ) J_{\text{DML}}(\boldsymbol{\theta}) = \frac{\|\mathbf{Y} - \mathbf{P}_A\mathbf{Y}\|_F^2}{\max(\|\mathbf{Y}\|_F^2,\ \varepsilon)} JDML(θ)=max(∥Y∥F2, ε)∥Y−PAY∥F2

其中 P A = A ( A H A ) − 1 A H \mathbf{P}_A = \mathbf{A}(\mathbf{A}^H\mathbf{A})^{-1}\mathbf{A}^H PA=A(AHA)−1AH 是投影矩阵。该代价函数衡量阵列流形张成空间对接收数据的拟合程度------值越小,说明选定的角度越接近真实值。

直觉理解 :DML 试图找到一组角度,使得信号在该方向的投影尽可能"解释"所有观测数据。

3.2 协方差域拟合

仅依赖波形域拟合在样本稀少时不够鲁棒。GRAIL-SCML 引入协方差域拟合作为互补信息源

首先估计样本协方差矩阵:

R ^ = 1 L Y Y H \hat{\mathbf{R}} = \frac{1}{L}\mathbf{Y}\mathbf{Y}^H R^=L1YYH

然后应用前向-后向平均:

R ^ FB = 1 2 ( R ^ + J R ^ ∗ J ) \hat{\mathbf{R}}_{\text{FB}} = \frac{1}{2}\left(\hat{\mathbf{R}} + \mathbf{J}\hat{\mathbf{R}}^*\mathbf{J}\right) R^FB=21(R^+JR^∗J)

其中 J \mathbf{J} J 是反恒等矩阵(反对角线上的元素为 1 1 1)。接着进行收缩正则化:

R ~ = ( 1 − α ) R ^ FB + α ⋅ tr ( R ^ FB ) M I \tilde{\mathbf{R}} = (1 - \alpha)\hat{\mathbf{R}}{\text{FB}} + \alpha\cdot\frac{\text{tr}(\hat{\mathbf{R}}{\text{FB}})}{M}\mathbf{I} R~=(1−α)R^FB+α⋅Mtr(R^FB)I

协方差域拟合的思想是:将估计的协方差矩阵分解为信号分量和噪声分量:

R = ∑ k = 1 K p k a ( θ k ) a H ( θ k ) + p K + 1 I \mathbf{R} = \sum_{k=1}^{K} p_k \mathbf{a}(\theta_k)\mathbf{a}^H(\theta_k) + p_{K+1}\mathbf{I} R=k=1∑Kpka(θk)aH(θk)+pK+1I

通过求解如下非负最小二乘问题获得功率系数:

min ⁡ p ≥ 0 ∥ Re { B } Im { B } p − Re { r } Im { r } ∥ 2 2 \min_{\mathbf{p} \geq \mathbf{0}} \left\|\begin{bmatrix}\text{Re}\{\mathbf{B}\} \\ \text{Im}\{\mathbf{B}\}\end{bmatrix} \mathbf{p} - \begin{bmatrix}\text{Re}\{\mathbf{r}\} \\ \text{Im}\{\mathbf{r}\}\end{bmatrix}\right\|_2^2 p≥0min Re{B}Im{B}p−Re{r}Im{r} 22

其中 r = vec ( R ~ ) \mathbf{r} = \text{vec}(\tilde{\mathbf{R}}) r=vec(R~), B \mathbf{B} B 的第 k k k 列为 vec ( a ( θ k ) a H ( θ k ) ) \text{vec}(\mathbf{a}(\theta_k)\mathbf{a}^H(\theta_k)) vec(a(θk)aH(θk))。协方差拟合代价为:

J COV ( θ ) = ∥ R ~ − R ^ fit ∥ F 2 max ⁡ ( ∥ R ~ ∥ F 2 , ε ) J_{\text{COV}}(\boldsymbol{\theta}) = \frac{\|\tilde{\mathbf{R}} - \hat{\mathbf{R}}_{\text{fit}}\|_F^2}{\max(\|\tilde{\mathbf{R}}\|_F^2,\ \varepsilon)} JCOV(θ)=max(∥R~∥F2, ε)∥R~−R^fit∥F2

为什么需要协方差域? 波形域对信号波形的随机性敏感,而协方差域通过统计平均能有效压制噪声波动,在低快拍场景提供更稳定的梯度方向。

3.3 弱几何正则化

为了防止估计值坍缩(例如多个角度估计聚集到同一点),引入两项弱正则化:

(1)分离度惩罚项

J sep ( θ ) = 1 K − 1 ∑ k = 2 K 1 max ⁡ ( θ k − θ k − 1 ) 2 , ε J_{\text{sep}}(\boldsymbol{\theta}) = \frac{1}{K-1}\sum_{k=2}^{K} \frac{1}{\max(\theta_k - \theta_{k-1})^2,\ \varepsilon} Jsep(θ)=K−11k=2∑Kmax(θk−θk−1)2, ε1

当相邻角度过于接近时,该惩罚项急剧增大,推动角度分离。

(2)边界惩罚项

J bound ( θ ) = ∑ k ( θ min ⁡ − θ k ) 2 ⋅ I θ k \< θ min ⁡ + ( θ k − θ max ⁡ ) 2 ⋅ I θ k \> θ max ⁡ J_{\text{bound}}(\boldsymbol{\theta}) = \sum_{k} \left(\\theta_{\\min}-\\theta_k)\^2\\cdot\\mathbb{I}_{\\theta_k\<\\theta_{\\min}} + (\\theta_k-\\theta_{\\max})\^2\\cdot\\mathbb{I}_{\\theta_k\>\\theta_{\\max}}\\right Jbound(θ)=k∑(θmin−θk)2⋅Iθk\<θmin+(θk−θmax)2⋅Iθk\>θmax

防止搜索超出预设的角度范围。

关键设计 :正则化权重极小(分离惩罚权重仅 0.02 0.02 0.02,边界惩罚权重 10 3 10^3 103 但因触发概率低而影响有限),确保正则化在正常区域几乎无影响,仅在估计即将"出错"时提供纠正。这就是"弱正则化"的含义。

3.4 总代价函数

将上述三项组合为总目标函数:

J ( θ ) = w DML ⋅ J DML ( θ ) + w COV ⋅ J COV ( θ ) + w sep ⋅ J sep ( θ ) \boxed{J(\boldsymbol{\theta}) = w_{\text{DML}} \cdot J_{\text{DML}}(\boldsymbol{\theta}) + w_{\text{COV}} \cdot J_{\text{COV}}(\boldsymbol{\theta}) + w_{\text{sep}} \cdot J_{\text{sep}}(\boldsymbol{\theta})} J(θ)=wDML⋅JDML(θ)+wCOV⋅JCOV(θ)+wsep⋅Jsep(θ)

默认权重为:

  • w DML = 0.65 w_{\text{DML}} = 0.65 wDML=0.65
  • w COV = 0.35 w_{\text{COV}} = 0.35 wCOV=0.35
  • w sep = 0.02 w_{\text{sep}} = 0.02 wsep=0.02

权重设计哲学 :DML 为主、COV 为辅(65:35),分离惩罚作为最后的"安全阀"。这一设计平衡了拟合精度鲁棒性

3.5 连续支撑集精炼

传统DOA方法通常在离散网格上搜索,精度受限于网格分辨率。GRAIL-SCML 采用无网格连续优化彻底消除这一限制。

使用 Nelder-Mead 单纯形算法fminsearch)直接在连续空间中最小化 J ( θ ) J(\boldsymbol{\theta}) J(θ):

θ ^ = arg ⁡ min ⁡ θ ∈ θ min ⁡ , θ max ⁡ K J ( θ ) \hat{\boldsymbol{\theta}} = \arg\min_{\boldsymbol{\theta} \in \\theta_{\\min},\\theta_{\\max}^K} J(\boldsymbol{\theta}) θ^=argθ∈θmin,θmaxKminJ(θ)

搜索参数:

  • 最大迭代次数: 70 70 70
  • 最大函数评估次数: 220 220 220
  • 角度容差: 10 − 4 10^{-4} 10−4
  • 函数容差: 10 − 5 10^{-5} 10−5

3.6 证据支撑集选择:多初始化器策略

连续非凸优化对初始值高度敏感。为解决这一问题,GRAIL-SCML 采用多初始化器 + 择优策略。

初始化器池 包括 9 9 9 种算法(最多取前 7 7 7 种有效结果):

类别 初始化器 特点
子空间类 FB-MUSIC 前向-后向MUSIC
子空间类 GSB-DOA 广义子空间DOA
子空间类 Root-MUSIC 求根MUSIC
子空间类 TLS-ESPRIT 总体最小二乘ESPRIT
稀疏类 IAA-APES 迭代自适应方法
稀疏类 SPICE 稀疏迭代协方差估计
束波类 MVDR (Capon) 最小方差无畸变响应
束波类 CBF (Bartlett) 常规波束形成
贪心类 MMV-OMP 多测量向量正交匹配追踪
顺序类 Seq-DML 顺序确定性最大似然初始化

处理流程

  1. 候选生成 :依次运行各初始化器,获取 K K K 个角度估计
  2. 候选清洗 :剔除重复候选(角度差 < 0.25 ∘ < 0.25^\circ <0.25∘ 视为重复)
  3. 独立精炼:对每个候选,运行 Nelder-Mead 优化器
  4. 证据选择:选择精炼后代价函数最小的结果作为最终输出

θ ^ final = arg ⁡ min ⁡ θ ^ i J ( θ ^ i refined ) \hat{\boldsymbol{\theta}}{\text{final}} = \arg\min{\hat{\boldsymbol{\theta}}_i} J(\hat{\boldsymbol{\theta}}_i^{\text{refined}}) θ^final=argθ^iminJ(θ^irefined)

为什么叫"证据"选择? 最终的判决依据是总代价函数 J ( ⋅ ) J(\cdot) J(⋅),它集成了波形域和协方差域两方面的"证据",选出最一致的解。

3.7 算法伪代码

复制代码
算法: GRAIL-SCML (窄带)

输入: 阵列数据 Y, 源数量 K, 配置参数 cfg
输出: DOA估计 θ̂

1. 初始化候选集 C ← ∅
2. for 每个初始化器:
3.     θ_init ← initializer(Y, K, cfg)
4.     if θ_init 有效: C ← C ∪ {θ_init}
5. end for
6. C ← 去重(C, 容差=0.25°)
7.
8. bestCost ← +∞, bestθ ← C[1]
9. for each θ_cand in C (最多 maxInitializers 个):
10.    θ_refined ← NelderMead(J(·), θ_cand)
11.    cost ← J(θ_refined)
12.    if cost < bestCost:
13.        bestCost ← cost, bestθ ← θ_refined
14. end for
15.
16. 返回 sort(bestθ)

4. 宽带扩展:WB-GRAIL-SCML

宽带 GRAIL-SCML 将窄带框架扩展到多频带场景,命名为 WB-GRAIL-SCML

4.1 核心差异

维度 窄带 GRAIL-SCML 宽带 WB-GRAIL-SCML
数据 单频阵列数据 Y \mathbf{Y} Y 多频阵列数据 { Y m } m = 1 M f \{\mathbf{Y}m\}{m=1}^{M_f} {Ym}m=1Mf
导向矢量 a ( θ ) \mathbf{a}(\theta) a(θ) a m ( ω ) \mathbf{a}_m(\omega) am(ω)
搜索空间 θ \theta θ (角度/度) ω \omega ω (归一化频率)
DML代价 单频DML 各子带DML平均
COV代价 单频COV 各子带COV平均
初始化器 9种窄带方法 4种宽带方法 + Seq-WB

4.2 宽带代价函数

J ˉ DML ( ω ) = 1 M f ∑ m = 1 M f ∥ Y m − P A m Y m ∥ F 2 max ⁡ ( ∥ Y m ∥ F 2 , ε ) \bar{J}{\text{DML}}(\boldsymbol{\omega}) = \frac{1}{M_f}\sum{m=1}^{M_f} \frac{\|\mathbf{Y}m - \mathbf{P}{A_m}\mathbf{Y}_m\|_F^2}{\max(\|\mathbf{Y}_m\|_F^2,\ \varepsilon)} JˉDML(ω)=Mf1m=1∑Mfmax(∥Ym∥F2, ε)∥Ym−PAmYm∥F2

J ˉ COV ( ω ) = 1 M f ∑ m = 1 M f ∥ R ~ m − R ^ fit , m ∥ F 2 max ⁡ ( ∥ R ~ m ∥ F 2 , ε ) \bar{J}{\text{COV}}(\boldsymbol{\omega}) = \frac{1}{M_f}\sum{m=1}^{M_f} \frac{\|\tilde{\mathbf{R}}m - \hat{\mathbf{R}}{\text{fit},m}\|_F^2}{\max(\|\tilde{\mathbf{R}}_m\|_F^2,\ \varepsilon)} JˉCOV(ω)=Mf1m=1∑Mfmax(∥R~m∥F2, ε)∥R~m−R^fit,m∥F2

总代价为:

J WB ( ω ) = 0.65 J ˉ DML + 0.35 J ˉ COV + 0.02 J sep J_{\text{WB}}(\boldsymbol{\omega}) = 0.65\bar{J}{\text{DML}} + 0.35\bar{J}{\text{COV}} + 0.02J_{\text{sep}} JWB(ω)=0.65JˉDML+0.35JˉCOV+0.02Jsep


5. 实验设计与结果分析

项目提供了四个精心设计的实验场景,使用 500 500 500 次蒙特卡洛实验评估 RMSE 性能。

实验一:非均匀噪声 + 有限快拍

参数 设置
阵元数 M M M 8 8 8
源数 K K K 2 2 2
快拍数 L L L 40 40 40
真实DOA − 2 ∘ , 7 ∘ -2\^\\circ,\\ 7\^\\circ −2∘, 7∘
SNR范围 − 20 → 20 dB -20 \to 20 \text{ dB} −20→20 dB
噪声模型 非均匀(跨距 12 dB 12\text{dB} 12dB)
源相关性 不相关

测试目的:验证算法在非均匀噪声环境下的鲁棒性。非均匀噪声严重破坏子空间类方法的假设(噪声子空间结构),而 GRAIL-SCML 的协方差域拟合直接建模噪声分量的对角结构,天然适应此场景。

实验二:单快拍 + 紧密源

参数 设置
阵元数 M M M 10 10 10
源数 K K K 2 2 2
快拍数 L L L 1 1 1
真实DOA θ = arcsin ⁡ ( − 0.1 , 0.1 ) \theta = \arcsin(-0.1,\\ 0.1) θ=arcsin(−0.1, 0.1)
SNR范围 − 5 → 20 dB -5 \to 20 \text{ dB} −5→20 dB
度量空间 u = sin ⁡ θ u = \sin\theta u=sinθ(因角度极小)

测试目的 :极限条件下的分辨能力。 L = 1 L=1 L=1 意味着大多数统计方法(如MUSIC、MVDR)直接失效------它们依赖协方差矩阵的秩结构,而单快拍下协方差矩阵秩为 1 1 1。GRAIL-SCML 的 DML 项直接在波形域工作,不受此限制。

实验三:宽带分离度扫描

参数 设置
子带数 M f M_f Mf 11 11 11
各带阵元 N N N 11 11 11
源数 K K K 2 2 2
快拍数 L L L 100 100 100
SNR 0 dB 0 \text{ dB} 0 dB
ω \omega ω 分离度 0.02 → 0.50 0.02 \to 0.50 0.02→0.50

测试目的 :考察宽带 GRAIL-SCML(WB-GRAIL-SCML)在源逐渐分离时的性能收敛特性,验证其"超分辨"能力------即使在 Δ ω = 0.02 \Delta\omega = 0.02 Δω=0.02 的极小分离度下仍能分辨双源。

实验四:高度相关窄带源

参数 设置
阵元数 M M M 6 6 6
源数 K K K 2 2 2
快拍数 L L L 500 500 500
相关系数 ρ = 0.9 ( 0.5010 + j 0.8654 ) \rho = 0.9(0.5010 + j0.8654) ρ=0.9(0.5010+j0.8654)
SNR范围 − 25 → 20 dB -25 \to 20 \text{ dB} −25→20 dB

测试目的:高相关性破坏信号子空间的秩结构,严重削弱 MUSIC 等子空间方法的性能。GRAIL-SCML 同时在波形域和协方差域评估,两个域各自提供独立证据,协同克服相关性干扰。

对比方法汇总

窄带实验(12种方法)

  • 🟦 经典类:CBF、MVDR
  • 🟩 子空间类:FB-MUSIC、Root-MUSIC、TLS-ESPRIT、GSB-DOA
  • 🟨 稀疏类:MMV-OMP、IAA-APES、SPICE、SLIM、SCMR-SBL-GR
  • 🟥 本文方法:GRAIL-SCML

宽带实验(5种方法)

  • I-MUSIC、CSSM、WB-SBL、COFFEE-CF
  • 本文方法:WB-GRAIL-SCML

相关推荐
程高兴3 小时前
三相维也纳整流器仿真Simulink(解决过零畸变问题)
matlab
通信仿真爱好者3 小时前
第【70】期--noma与ofdma在无线网络中的性能对比分析--MATLAB完整代码
matlab·非正交多址接入·noma·ofdma
爱吃提升19 小时前
MATLAB impulse函数脉冲响应完整实操教程
开发语言·matlab
逆向编程1 天前
MATLAB rlocus函数根轨迹完整实操教程
开发语言·matlab
@陈小鱼1 天前
MATLAB+Python:基于小样本卷积神经网络的 PPG 血压预测
人工智能·python·机器学习·matlab·脉搏波·血压·一维卷积神经网络
2zcode2 天前
项目文档:基于MATLAB图像处理的乳腺癌辅助检测系统设计与实现
图像处理·人工智能·matlab
逆向编程2 天前
如何使用MATLAB的bode函数进行伯德图分析?
开发语言·matlab
2zcode2 天前
基于MATLAB语音信号分析与机器学习的帕金森病智能检测系统
人工智能·机器学习·matlab
daad7772 天前
记录vscode连接matlab启动环境搭建
java·vscode·matlab