我想知道cv :: cuda命名空间中是否有任何方法可以使用GpuMat执行像素操作。通常我会做
float foo = bar.at<float>(x,y);
然而,使用GpuMat,我找不到它的等价物。我收到的编译错误只是说
&#34; class cv :: cuda :: GpuMat没有以&#34;
命名的成员答案 0 :(得分:1)
GpuMat
保存GPU内存中的数据。因此无法从主机访问它。这就是为什么你没有找到任何像素访问操作。
GpuMat
对象,执行每像素CPU操作并将其上传回GPU内存。cudaMemCopy
*功能下载/上传数据。在这种情况下,您需要从GpuMat::data
和GpuMat::step