主要内容

coder.CMSISNNConfig

用于为 Cortex-M 目标配置使用 CMSIS-NN 库的深度学习代码生成的参数

自 R2022a 起

说明

coder.CMSISNNConfig 对象包含 CMSIS-NN 库和相关联的 ARM® Cortex-M 目标特定参数,codegen 使用这些参数为深度神经网络生成 C 代码。

要使用 coder.CMSISNNConfig 对象进行代码生成,请将其赋给传递给 codegen 的代码生成配置对象的 DeepLearningConfig 属性。

创建对象

通过使用 coder.DeepLearningConfig 函数并将目标库设置为 'cmsis-nn' 来创建一个 CMSIS-NN 配置对象。

属性

全部展开

包含标定数据的 MAT 文件的位置。有关详细信息,请参阅Calibration result file path (CMSIS-NN)

支持的层中推断计算的精度。有关详细信息,请参阅Data type (CMSIS-NN)

目标库的名称,指定为字符向量。

示例

全部折叠

创建一个入口函数 net_predict,该函数使用 coder.loadDeepLearningNetwork 函数从 MAT 文件 netFile 加载网络对象 net。然后,该函数使用此模型对象执行预测。

function out = net_predict(netFile, in)
net = coder.loadDeepLearningNetwork(netFile);
out = predict(net,in);
end

为 C 静态库生成创建一个 coder.config 配置对象。

cfg = coder.config('lib');

创建一个 coder.CMSISNNConfig 深度学习配置对象,并指定标定 MAT 文件的位置。将其赋给 cfg 配置对象的 DeepLearningConfig 属性。

dlcfg = coder.DeepLearningConfig('cmsis-nn');
dlcfg.CalibrationResultFile = 'calibration.mat'; 
cfg.DeepLearningConfig = dlcfg;

使用 codegen 函数的 -config 选项来指定 cfg 配置对象。codegen 函数必须确定 MATLAB® 函数输入的大小、类和复/实性。使用 -args 选项指定入口函数的输入大小。

codegen -config cfg net_predict -args {coder.Constant('calibration.mat'), exampleinput}

codegen 命令将所有生成的文件放在 codegen 文件夹中。

版本历史记录

在 R2022a 中推出