Use the OpenCV Interface files to integrate your OpenCV C++ code into MATLAB® and build MEX-files that call OpenCV functions. The support package also contains graphics processing unit (GPU) support.
After you install third-party support files, you can use the data with the Computer Vision System Toolbox™ product. Use one of two ways to install the Add-on support files.
Select Get Add-ons from the Add-ons drop-down menu from the MATLAB desktop. The Add-on files are in the “MathWorks Features” section.
visionSupportPackages in a MATLAB Command
Window and follow the prompts.
You must have write privileges for the installation folder.
When a new version of MATLAB software is released, repeat this process to check for updates. You can also check for updates between releases.
The OpenCV Interface support files are installed in the
folder. To find the path to this folder, type the following
visionopencvfolder contain these files and folder.
|Template Matching, Foreground Detector, and Oriented FAST and
Rotated BRIEF (ORB) examples, including a GPU version. Each
subfolder in the example folder contains a
|Function to build MEX-files.|
mex function uses prebuilt OpenCV
libraries, which ship with the Computer
Vision System Toolbox product. Your compiler must be compatible with the one used to build the
libraries. The following compilers are used to build the OpenCV libraries for
|Operating System||Compatible Compiler|
|Windows® 64 bit||Microsoft® Visual Studio® 2015 Professional or Visual Studio 2017|
|Linux® 64 bit||gcc-4.9.3 (g++)|
|Mac 64 bit||Xcode 6.2.0 (Clang++)|
This example creates a MEX-file from a wrapper C++ file and
then tests the newly created file. The example uses the OpenCV template
matching algorithm wrapped in a C++ file, which is located in the
Change your current working folder to the
Create the MEX-file from the source file:
Run the test script, which uses the generated MEX-file:
mexOpenCV interface utility functions convert data between
OpenCV and MATLAB. These functions support CPP-linkage only. GPU support is available on
glnxa64, win64, and Mac platforms. The GPU-specific utility functions support CUDA
enabled NVIDIA GPU with compute capability 2.0 or higher. See the Parallel
Requirements, The GPU utility functions require the Parallel
Computing Toolbox software.
Check that MATLAB struct represents feature points
Convert MATLAB feature points struct to OpenCV
Convert a MATLAB struct representing a rectangle to an OpenCV
Convert column major
|Convert column major |
Convert row major
|Convert row major |
mxArray function with your source
For help creating MEX files, at the MATLAB command prompt, type:
Each example subfolder in the OpenCV Interface support package
contains all the files you need to run the example. To run an example,
you must call the
mexOpenCV function with one of
the supplied source files.