我一直试图在UMat变量上找出简单的subtract()和norm()运算。从OpenCV 3.0.0开始,我们就拥有了T-API,可以轻松访问OpenCL下的GPU / CPU功耗。 我已经确认了;
我附加了屏幕截图以确保我的意思。您可以从堆栈跟踪中清楚地看到错误。
我用于OpenCL支持的代码行是;
UMat result;
cv::subtract(FeatureVectorA.getUMat(ACCESS_READ),FeatureVectorB.getUMat(ACCESS_READ),result);
auto r = cv::norm(result);
result.release();
但这种简单的操作似乎在某种程度上被破坏了。我不了解OpenCL,除了它是CPU / GPU / SoC制造商遵循的标准。
任何提示都会有所帮助。