1

我有一个 simulink 模型,它使用来自 6 个网络摄像头的输入进行实时视频处理。为此,我使用 6 个“来自视频设备”块。这些块的输出经过处理以生成 (x,y) 坐标形式的输出。一次并行处理所有 6 个网络摄像头输出。但是,如果我使用 3 个以上的网络摄像头,matlab 会挂起并停止模拟。我想使用 Parallel Computing Toolbox 在两个处理器内核之间划分 6 个处理块。但是在任何地方都找不到合适的指令来在多个处理器内核之间分配单个 simulink 模型。我正在使用 Matlab R2011a。

好吧,我不能发布我的代码或我的模型,但我可以告诉你我的模型做了什么。它从 6 个 USB 摄像头获取输入,在每个摄像头的每一帧中跟踪一个移动对象,并在 (x,y) 坐标中给出移动对象的位置。因此,我一次得到 6 个 (x,y) 坐标作为输出。在我使用 3 个摄像头并生成 3 个 (x,y) 输出之前,我的模型运行良好。添加第四个摄像头会挂起 matlab 并停止模拟。

4

1 回答 1

1

恐怕您没有找到将 Simulink 模型扩展到多个内核的说明的原因是因为这些说明当前不存在(直到并包括 R2012b)。Parallel Computing Toolbox 只允许您在不同的内核上同时进行多个单独的模拟(即研究参数变化的影响等)。

对于您的应用程序,您最好使用“正确”的 Matlab 并在 m 函数和/或脚本中编写所有内容。这样,您将能够通过使用诸如parfor.

于 2012-08-20T13:09:00.680 回答