MATLAB 表达式“Mf”的稀疏度不正确

Posted

技术标签:

【中文标题】MATLAB 表达式“Mf”的稀疏度不正确【英文标题】:MATLAB expression 'Mf' is not of the correct sparseness 【发布时间】:2014-10-28 10:07:04 【问题描述】:

您好,我正在尝试通过“coder”命令将函数转换为 .mex 函数。我的输入之一是稀疏双矩阵。当编码器要求定义变量“Mf”的类型时,我将其设置为双精度(:inf x:inf)。它构建它并在运行该函数时停止并显示以下消息:“MATLAB 表达式'Mf'不是正确的稀疏度”

如果有任何建议和解决方案,我将不胜感激。谢谢!

【问题讨论】:

【参考方案1】:

MATLAB Coder 目前不支持sparse matrices。

根据数据的大小,您可以考虑在调用 MEX 函数之前将输入转换为完整矩阵。

如果生成 MEX 函数的目的是加速您的部分代码,您可以考虑为代码中不需要稀疏的函数生成 MEX 函数,并从您的其他 MATLAB 代码中调用这些函数。这样,您可以加速部分代码并在需要时仍然使用稀疏。

【讨论】:

以上是关于MATLAB 表达式“Mf”的稀疏度不正确的主要内容,如果未能解决你的问题,请参考以下文章

Matlab-Simulink 2014 'load' 错误:MATLAB 表达式 'load' 没有正确的字段数

图像去噪基于稀疏表示实现图像去噪matlab源码

Matlab 符号表达式中的绝对值

人脸识别---基于深度学习和稀疏表达的人脸识别算法

人脸识别---基于深度学习和稀疏表达的人脸识别算法

在 Matlab 中具有正确图例的类似 Excel 的平滑绘图