如何提高用C ++编写的OpenCV算法的性能

时间:2019-04-16 21:52:33

标签: c++ performance opencv optimization raspberry-pi

我正在Raspberry Pi 3B上执行用C ++和OpenCV编写的计算机视觉程序,我的相机模块是picamera。大致来说,我正在计算与道路的偏离量,并将其发送到另一个平台。

当前,我的主要方法无法变得更简单,即我无法删除任何矩阵运算。但是,我需要进一步提高吞吐量。目前,我每秒接收19-20个结果。我的相机FPS设置为30。

我想知道有什么方法可以增加吞吐量吗?例如,我尝试在g ++(-O2,-O3)上使用优化级别,但未发现任何提高。

另一个选择是使用多线程,因为我的吞吐量低于相机FPS,也许我可以捕获另一个帧,而其他线程处理已经捕获的帧。但是,我在多线程方面没有任何经验,因此我想问问是否有人可以批准此策略,因为我的时间有限,所以我想以最有成果的方式使用自己的努力。

其他任何建议都欢迎。谢谢您的帮助。

0 个答案:

没有答案