2

我正在开发一个需要我使用 Matlab c++ 共享库的 Qt 项目。我基本上是在处理我获得的图像,稍后我需要对它们进行进一步处理。

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

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

你能建议我一种方法,这样我就可以调用一次 Matlab 函数,并且我的输入可以实时更改。我不打算使用 Matlab 引擎,因为这需要我在每台计算机上安装 Matlab,我的项目才能继续运行。

4

1 回答 1

1

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

这不会发生——调用库的开销太高了。听起来您的图书馆可能也在做一些绘图,这也可能需要太长时间。

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

于 2013-03-25T11:07:28.230 回答