0

我已经构建了启用 TBB 的 Opencv。并使用“detectMultiscale”编写了一个基本的程序来检测人脸。如果帧中有一张脸,我找不到处理时间的任何变化。我还注意到,如果帧中没有人脸(空),处理时间减少了两倍。

1) 现在如何提高处理时间?

2)英特尔IPP值得去吗?实际的好处是什么?

谁能给我一个建议?

更新:

我用opencv2.4.5做到了这一点。

更新 2:

我在opencv社区发布了同样的问题并得到了答复,因为TBB是从opencv2.4.5预先启用的,我们不需要重新构建启用了TBB的opencv?那是对的吗?

http://answers.opencv.org/question/14226/opencv-with-both-tbb-and-ipp/?answer=14231#post-id-14231

4

1 回答 1

5

IPP 的使用相当贬值,并且由于历史原因实际上仅在 OpenCV 中使用(即当 OpenCV 是英特尔库时!)

根据最新的文档,还有什么好处……

``可用于提高 OpenCV 库的颜色转换、Haar 训练和 DFT 函数的性能。''

所以你可能会从中得到一些好处——但重要的是要记住 IPP 库不是免费的。

由于您已经在使用 TBB(这几天它本身相当多余 - 特别是在 Windows 版本的 OpenCV 上),唯一真正的收获可能是使用GPUOpenCL模块。

其中,假设您使用 C++ 工作,OpenCL 确实代表了结合进一步加速(处理器/gpu 配置透明)的最新且可访问的方式。

由于您正在进行面部检测,我猜您可能已经在使用 Haar 分类器功能(不是每个人:-)。在这种情况下,您可能想尝试使用OpenCL 版本...

于 2013-05-30T14:12:11.417 回答