Main Content

C Code Generation

Generate C/C++ code and MEX functions for toolbox functions, objects, and blocks

Several Computer Vision Toolbox™ functions and blocks are able to generate C/C++ code. After you generate the code, you can deploy it on another machine.

For some Computer Vision Toolbox functions, code generation includes the creation of a shared library.

To use code generation with computer vision functions, follow these steps:

  1. Write your Computer Vision Toolbox function or application as you would normally, using functions from the Computer Vision Toolbox.

  2. Add the %#codegen compiler directive to your MATLAB® code.

  3. Open the MATLAB Coder (MATLAB Coder) app, create a project, and add your file to the project. Once in MATLAB Coder, you can check the readiness of your code for code generation. For example, your code may contain functions that are not enabled for code generation. Make any modifications required for code generation.

  4. Generate code by clicking Generate in the Generate Code dialog box. You can choose to build a MEX file, a C/C++ shared library, a C/C++ dynamic library, or a C/C++ executable.

    Even if you addressed all readiness issues identified by MATLAB Coder™, you can still encounter build issues. The readiness check only looks at function dependencies. When you try to generate code, MATLAB Coder (MATLAB Coder) can discover coding patterns that are not supported for code generation. View the error report and modify your MATLAB code until you get a successful build.

For more information about code generation, see the MATLAB Coder documentation and the Introduction to Code Generation with Feature Matching and Registration example.

Note

To generate code from MATLAB code that contains Computer Vision Toolbox functionality, you must have the MATLAB Coder software.

Topics

Introduction to Code Generation with Feature Matching and Registration

This example shows how to use the MATLAB® Coder™ to generate C code for a MATLAB file.

Code Generation for Depth Estimation From Stereo Video

This example shows how to use the MATLAB® Coder™ to generate C code for a MATLAB function, which uses the stereoParameters object produced by Stereo Camera Calibrator app or the estimateCameraParameters function.

Code Generation for Face Tracking with PackNGo

This example shows how to generate code from Face Detection and Tracking Using the KLT Algorithm example with packNGo function.

Code Generation for Object Detection by Using YOLO v2

Generate CUDA® code for object detection using YOLO v2.

Generate Code for Detecting Objects in Images by Using ACF Object Detector

This example shows how to generate code from a MATLAB function that detects objects in images by using an acfObjectDetector object.