Opencv Matlab compatibility in c++

7 views (last 30 days)
Ottavia Rossini
Ottavia Rossini on 6 Jul 2020
Answered: Nipun Katyal on 14 Jul 2020
I am trying to run a Matlab (2019b) script from my c++ code. This works in stand alone.
If I add it to my main c++ file, which also has opencv inside, this doesn't work anymore due to the following error:
C1189 #error: Using MATLAB Data API with C Matrix API is not supported. (Quelldatei wird kompiliert MainWindow.cpp)
The two parts of the code could run seperately: I first call Matlab and then opencv., but since they are in one VS project, this stil results in issues.
I suppose that OpenCV somehow uses the C Matrix API, but I am not sure when and how..
Can anyone help?

Answers (1)

Nipun Katyal
Nipun Katyal on 14 Jul 2020
All the data to and from MATLAB is casted as an mxArray pointer, in order to use open cv function you need to convert the mxArray type to cv::Mat type and vice versa. You can use the open cv interface for C++ api given in the link,

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!