ACCESS_FAST在OpenCV 3.0中的用途是什么?

时间:2015-12-27 16:43:59

标签: c++ opencv opencv3.0

要从OpenCV 3.0中的cv :: Mat获取cv :: UMat,请使用此函数:

UMat cv::Mat::getUMat(int accessFlags, UMatUsageFlags usageFlags=USAGE_DEFAULT )

变量accessFlags是一个枚举类型,它采用以下值之一:

enum { ACCESS_READ=1<<24, ACCESS_WRITE=1<<25,
    ACCESS_RW=3<<24, ACCESS_MASK=ACCESS_RW, ACCESS_FAST=1<<26 };

使用值ACCESS_FAST的目的是什么?

1 个答案:

答案 0 :(得分:3)

ACCESS_FAST仅在allocate函数中用于use memcpycreate a temporary mat,如果ACCESS_FAST未指定 。作为其OpenCL共享虚拟内存支持的一部分,它是added to OpenCV

cv::Mat::getUMat()allocateUMat并返回,在分配新矩阵时转发accessFlags。如果您没有使用OpenCL支持构建OpenCV,那么ACCESS_FAST似乎大多没用。

我担心这是我的知识极限。对OpenCV更有经验的人必须提供更详细的答案/文档,以确切了解ACCESS_FAST的用途。