Main Content

CPU Code Generation from MATLAB Applications

Generate C/C++ code for deployment on desktop or embedded targets

Use MATLAB® Coder™ or Simulink® Coder together with Deep Learning Toolbox™ to generate MEX or standalone CPU code that runs on desktop or embedded targets. You can deploy the generated standalone code that uses the Intel® MKL-DNN library or the ARM® Compute library. Alternatively, you can generate generic CPU code that does not call third-party library functions.

Functions

codegenGenerate C/C++ code from MATLAB code
coder.getDeepLearningLayersGet the list of layers supported for code generation for a specific deep learning library
coder.loadDeepLearningNetworkLoad deep learning network model
coder.DeepLearningConfigCreate deep learning code generation configuration objects

Apps

MATLAB CoderGenerate C code or MEX function from MATLAB code

Topics

Overview

Networks and Layers Supported for Code Generation (MATLAB Coder)

Choose a convolutional neural network that is supported for your target processor.

Load Pretrained Networks for Code Generation (MATLAB Coder)

Create a SeriesNetwork, DAGNetwork, yolov2ObjectDetector, ssdObjectDetector, or dlnetwork object for code generation.

Code Generation for dlarray (MATLAB Coder)

Use deep learning arrays in MATLAB code intended for code generation.

Applications

Code Generation for Deep Learning on ARM Targets

This example shows how to generate and deploy code for prediction on an ARM®-based device without using a hardware support package.

Deep Learning Prediction with ARM Compute Using codegen

This example shows how to use codegen to generate code for a Logo classification application that uses deep learning on ARM® processors.

Deep Learning Code Generation on Intel Targets for Different Batch Sizes

This example shows how to use the codegen command to generate code for an image classification application that uses deep learning on Intel® processors.

Generate Digit Images Using Variational Autoencoder on Intel CPUs (MATLAB Coder)

Generate code for a trained VAE dlnetwork to generate hand-drawn digits.

Generate C++ Code for Object Detection Using YOLO v2 and Intel MKL-DNN

This example shows how to generate C++ code for the YOLO v2 Object detection network on an Intel® processor.

Deploy Signal Classifier Using Wavelets and Deep Learning on Raspberry Pi

This example shows the workflow to classify human electrocardiogram (ECG) signals using the Continuous Wavelet Transform (CWT) and a deep convolutional neural network (CNN).

Deploy Signal Segmentation Deep Network on Raspberry Pi

Generate a MEX function and a standalone executable to perform waveform segmentation on a Raspberry Pi™.

Code Generation and Deployment of MobileNet-v2 Network to Raspberry Pi

This example shows how to generate and deploy C++ code that uses the MobileNet-v2 pretrained network for object prediction.

Code Generation for Semantic Segmentation Application on Intel CPUs That Uses U-Net

Generate a MEX function that performs image segmentation by using the deep learning network U-Net on Intel CPUs.

Code Generation for Semantic Segmentation Application on ARM® Neon targets That Uses U-Net

Generate a static library that performs image segmentation by using the deep learning network U-Net on ARM targets.

Code Generation for LSTM Network on Raspberry Pi

Generate code for a pretrained long short-term memory network to predict Remaining Useful Life (RUI) of a machine.

Code Generation for LSTM Network That Uses Intel MKL-DNN

Generate code for a pretrained LSTM network that makes predictions for each step of an input timeseries.

Cross Compile Deep Learning Code for ARM Neon Targets

Generate library or executable code on host computer for deployment on ARM hardware target.

Code Generation for Quantized Deep Learning Network on Raspberry Pi (MATLAB Coder)

Generate code for deep learning network that performs inference computations in 8-bit integers.

Generate Generic C/C++ Code for Sequence-to-Sequence Regression That Uses Deep Learning

Generate C/C++ code for a trained CNN that does not depend on any third-party libraries.

Generate Code for LSTM Network and Deploy on Cortex-M Target (MATLAB Coder)

Generate a Processor-In-the-Loop (PIL) executable that runs on an STM32F746G-Discovery board.