2015-12-27 13 views
5

Aby uzyskać cv :: UMAT z cv :: Mat w OpenCV 3.0, należy użyć tej funkcji:Jaki jest cel ACCESS_FAST w OpenCV 3.0?

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

zmienna accessFlags jest typu wyliczenie, że ma jedną z poniższych wartości:

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

Jaki jest cel używania wartości ACCESS_FAST?

Odpowiedz

3

ACCESS_FAST jest używany tylko w funkcji allocate do use memcpy lub create a temporary mat jeśli ACCESS_FAST jest nie określony. Było to added to OpenCV w ramach obsługi OpenCL Shared Virtual Memory.

cv::Mat::getUMat() będzie allocate nowy UMat i odesłać go, przekazując accessFlags przy przydzielaniu nową matrycę. Jeśli nie budujesz OpenCV z obsługą OpenCL, to ACCESS_FAST wydaje się być w zasadzie bezużyteczne.

Obawiam się, że to jest ograniczenie mojej wiedzy. Ktoś bardziej doświadczony w OpenCV będzie musiał dostarczyć bardziej szczegółową odpowiedź/dokumentację dokładnie na temat tego, co jest przeznaczone na ACCESS_FAST.