c – 提高图像处理速度

我正在使用C和OpenCV来实时处理从网络摄像头拍摄的一些图像,我正在寻求从我的系统获得最佳速度.

除了改变处理算法(假设现在,你不能改变它).我应该做什么来最大限度地提高加工速度?

我在想,也许多线程可以帮助在这里,但我很ash愧,我不知道的内在和外部(虽然显然我以前使用多线程,但不是在C).

假设我有一个x核处理器,将处理分解成x线程实际上会加快速度?或者这些线程的管理开销会否定它,假设我正在寻找20fps的吞吐量(我认为会影响你给出的答案应该给你指出每个线程将执行多少处理)

多线程在这里有帮助吗?

有没有提高OpenCV的速度,特别是任何陷阱,我可能会陷入降低速度.

谢谢.

解决方法

我认为更简单的方法可能是流水线框架操作.

您可以使用线程池,按顺序将帧存储器缓冲区分配给第一个可用线程,以便在关联帧上的算法步骤完成时释放到池中.

这可能几乎保持现有的(调试:)算法,但是需要大量更多的内存来缓冲中间结果.

当然,没有关于你的任务的细节,很难说如果这是适当的…

相关文章

本程序的编译和运行环境如下(如果有运行方面的问题欢迎在评...
水了一学期的院选修,万万没想到期末考试还有比较硬核的编程...
补充一下,先前文章末尾给出的下载链接的完整代码含有部分C&...
思路如标题所说采用模N取余法,难点是这个除法过程如何实现。...
本篇博客有更新!!!更新后效果图如下: 文章末尾的完整代码...
刚开始学习模块化程序设计时,估计大家都被形参和实参搞迷糊...