使用opencv3 cuda绑定执行像素操作
我想知道在cv::cuda命名空间中是否有任何方法可以使用GpuMat执行像素操作。通常我会这样做使用opencv3 cuda绑定执行像素操作,opencv,Opencv,我想知道在cv::cuda命名空间中是否有任何方法可以使用GpuMat执行像素操作。通常我会这样做 float foo = bar.at<float>(x,y); float foo=bar.at(x,y); 然而,对于GpuMat,我找不到它的等价物。我得到一个编译错误,简单地说 “类cv::cuda::GpuMat在”GpuMat中没有名为的成员在GPU内存中保存数据。因此,无法从主机访问它。这就是为什么您没有找到任何像素访问操作 对于每像素访问,应首先下载GpuMat对象
float foo = bar.at<float>(x,y);
float foo=bar.at(x,y);
然而,对于GpuMat,我找不到它的等价物。我得到一个编译错误,简单地说
“类cv::cuda::GpuMat在”
GpuMat
中没有名为的成员在GPU内存中保存数据。因此,无法从主机访问它。这就是为什么您没有找到任何像素访问操作
- 对于每像素访问,应首先下载
对象,执行CPU每像素操作并将其上载回GPU内存GpuMat
- 无论如何,如果访问的像素很少,则可以使用一些*功能下载/上载数据。在这种情况下,您需要从
和GpuMat::data
GpuMat::step