MATLAB Coder 从 MATLAB 代码生成 C 和 C++ 代码,以便您部署到包括桌面系统和嵌入式硬件在内的多种硬件平台。该产品支持多数 MATLAB 代码和各种工具箱。您可以将生成的代码作为源代码、静态库或动态库集成到您的项目。生成的代码可读且可移植。您可以将该代码与现有 C 和 C++ 代码以及库的关键部分相结合。您还可以将生成的代码打包为 MEX 函数,以在 MATLAB 中使用。
与 Embedded Coder 结合使用时,MATLAB Coder 还支持代码自定义、特定于目标的优化、代码可追溯性以及软件在环 (SIL) 和处理器在环 (PIL) 验证。
要将 MATLAB 程序部署为独立应用程序,请使用 MATLAB Compiler。要生成软件组件以便与其他编程语言集成,请使用 MATLAB Compiler SDK。
随时随地运行无阻
您可以使用任何 C/C++ 编译器编译代码,并可以在包括桌面系统、移动设备到嵌入式硬件在内的任何硬件上运行生成的代码。生成的代码免版权费,您可将其免费部署到面向客户的商用应用。
使用工具箱中的函数
使用 MATLAB 和 Simulink 产品,通过 MATLAB Coder 或等效的命令行函数,为您的信号处理、计算机视觉、深度学习、控制系统或其他应用生成代码。
在嵌入式硬件上构建原型
将算法自动转换为 C/C++ 语言以快速在硬件上实现。将生成的代码手动集成到您的应用,以在各种目标设备上实现。针对 Raspberry Pi,借助 MATLAB Support Package for Raspberry Pi 自动化该过程。
从 MATLAB 部署 C++ 代码
从 MATLAB 代码中的类生成 C++ 类,包括值类、句柄类和 System object。将生成的代码编译为 C++ 库或可执行文件,并将它们集成到现有 C++ 源代码中。
优化生成的代码
生成多核 OpenMP 代码并调用 LAPACK、BLAS 和 FFTW 等优化库。与 Embedded Coder 结合使用,生成比标准 ANSI/ISO C/C++ 代码执行速度更快的特定于处理器的内部代码。
部署深度学习网络和机器学习模型
将各种经过训练的网络(如 ResNet-50、MobileNet-v2、支持向量机 (SVM) 模型和决策树模型)以及预处理和后处理逻辑部署到任何 CPU,包括基于 Intel® 和 ARM® Cortex® 的芯片。
与软件集成
在您的软件环境内将 MATLAB 算法重用为 C/C++ 源代码或库。生成的代码以自然的方式使用 C/C++ 类型,简化了集成到外部代码的过程。从生成的代码中自动调用可信 C/C++ 代码。
对生成的代码重用 MATLAB 测试
重用现有 MATLAB 测试以在交互式 MATLAB 环境中验证所生成代码的行为。使用 MATLAB 单元测试框架快速开发一组功能丰富的回归测试,以用于验证生成的 C/C++ 代码。
加速算法
在 MATLAB 代码中以 MEX 函数形式调用生成的代码以加速执行。对生成的 MEX 函数开展性能分析,以确定瓶颈并重点优化。
产品资源:
“借助 MATLAB、MATLAB Coder 和 Fixed-Point Designer,我们这个小团队成功开发了复杂的实时信号处理算法,并对其进行了优化以降低功耗和内存需求,同时还加速了嵌入式代码的实现,并执行了医疗设备验证所需的严格测试。”