Accelerate框架是一个特定于Mac的框架,提供图像卷积和LAPACK等功能,据称可以在Mac上尽可能快地进行优化。我的问题:OpenCV是否利用了这一点?具体来说,函数“filter2D”是否使用Accelerate?
答案 0 :(得分:2)
它没有使用Accelerate框架,但看起来它已经在2.2中使用CUDA的东西加速了
OpenCV2.2中的相关文件......
/modules/gpu/include/opencv2/gpu/gpu.hpp /modules/gpu/src/filtering.cpp
和
modules / imgproc / src / filter.cpp
用于非gpu的东西
答案 1 :(得分:1)
不是mac专家,但AFAIK openCV使用IPP(如果已安装)TBB(构建选项)和NVidia-CUDA(构建选项)
答案 2 :(得分:1)
如果您使用MacPorts版本,则可以指定选项
$ port variants opencv
opencv has the variants:
debug: Enable debug binaries
python26: Add Python 2.6 bindings
* conflicts with python27
python27: Add Python 2.7 bindings
* conflicts with python26
tbb: Use Intel TBB
universal: Build for multiple architectures
我用过
sudo port install py26-numpy
sudo port install opencv +python26 +tbb
成功。特别是关于Accelerate.framework,这个blog entry说“#Rein Accelerate.framework,它是从OpenCV库内部使用的。”,但我不知道是否知道这是不是这样。