用刷新输入从c++调用Matlab

Calling Matlab from C++ with Refreshed Inputs

本文关键字:调用 Matlab c++ 刷新 输入      更新时间:2023-10-16

我正在做一个Qt项目,需要我与Matlab c++共享库一起工作。我基本上是用我获得的图像工作,我需要在以后对它们进行进一步的处理。

我绝对有必要在C平台上获取图像,然后在需要的时候调用Matlab进行处理。我的图像正在以高速传输:大约每秒100帧。

问题是,每当我在循环中调用Matlab时,我都能够处理获取的图像,但不是实时的。在Matlab中的后续调用之间需要一到两秒钟。我假设它冲洗掉了其他的图像只是绘制了一些图像。

你能给我建议一种方法,这样我就可以调用Matlab函数一次,我的输入被实时改变。我不打算使用Matlab引擎,因为这将要求我有Matlab安装在每台计算机上,我的项目运行。

您是否使用MATLAB编译器从MATLAB代码创建一个库,并期望能够每秒调用100次?

这是不会发生的——调用库的开销太高了。听起来你的库可能也在做一些绘图,这也可能花费太长时间。

您可以考虑使用MATLAB编码器将您的MATLAB图像处理算法转换为C代码,然后将C代码直接集成到您的主代码中。MATLAB Coder支持许多图像处理工具箱,计算机视觉系统工具箱和许多与信号处理相关的工具箱。