我注意到,OpenCV 3 RC1有一个称为HAL的库,用于加速OpenCV的核心功能。

有什么方法可以使用该库来加速我的代码?

是否有任何有关如何使用该库的文档/教程/...?

我想要一种加速代码的方法,以便可以在Intel和ARM处理器上快速运行。

最佳答案

如果我了解得很好,那么HAL只是一个方便的,类似于IPP的低级API,可以为不同平台加速OpenCV(通过隐藏低级操作,例如core,imgproc,…=> HAL)并使硬件供应商能够实现加速成像和视觉算法。

OpenCV已经有了一些加速API(即并行框架或OpenCL),并且HAL作为新序列适用于此序列,HAL主要致力于启用移动和嵌入式系统,并且可以由高级库或应用程序直接使用。

可以在cv::hal命名空间中找到该功能集-查看实现的功能的HAL module文档。

我认为您不必理会这些功能,因为它们只是API的(低级)内部部分。在OpenCV 3.0中,某些功能也引用了它们,例如 cv::magnitude() 在其内部调用 cv::hal::magnitude() 。也就是说,如果OpenCV是在NEON支持下构建的,那么您将隐含地受益于HAL。

10-05 22:42
查看更多