使用预先分配的cuda内存指针在python中初始化opencv GpuMat

使用预先分配的cuda内存指针在python中初始化opencv GpuMat,python,opencv,pycuda,Python,Opencv,Pycuda,有没有一种方法可以使用已经分配的内存指针在OpenCV python中创建GpuMat < C++ >定义为 gPUBATA()/,该代码采用 VATE *数据< /代码>作为输入。 cv::cuda::GpuMat::GpuMat ( Size size, int type, void * data, size_t step = Mat::AUTO_STEP ) cv::cuda::GpuMat::GpuMat ( int rows,

有没有一种方法可以使用已经分配的内存指针在OpenCV python中创建GpuMat

< C++ >定义为<代码> gPUBATA()/<代码>,该代码采用<代码> VATE *数据< /代码>作为输入。

cv::cuda::GpuMat::GpuMat    (   Size    size,
int     type,
void *  data,
size_t  step = Mat::AUTO_STEP 
)   

cv::cuda::GpuMat::GpuMat    (   int     rows,
int     cols,
int     type,
void *  data,
size_t  step = Mat::AUTO_STEP 
)   
在OpenCV中,这些定义没有等效的python绑定,因此此选项在python中不起作用

我有一个已经创建的PyCuda数组。因此,我可以访问该数组的Cuda指针。我们是否可以使用Python中现有的指针创建
GpuMat
,而不必将数据下载回主机内存,然后再次上传

查看Python中的
GpuMat
类,我看不到使用
defaultAllocator
接口访问
GpuMat
类的
cudaPtr
data
变量来分配某物的方法