CUDA C programming using openCV

Hi all,

I am trying to implement an object tracking method using CUDA C.
I have implemented the serial version using openCV. Now I need to make it parallel.

But the serial implementation uses a lot of cv::Mat objects.
But in the CUDA kernel I am not able to use these. Getting following errors

Mat bimage;
error :: calling a host function(“cv::Mat::Mat”) from a global function(“generateRmap”) is not allowed

bimage.create(qRows+2, qCols+2, CV_8UC1);
error :: calling a host function(“cv::Mat::create”) from a global function(“generateRmap”) is not allowed

uchar *block = bimage.ptr(0);
error :: calling a host function("cv::Mat::ptr ") from a global function(“generateRmap”) is not allowed

Also I am using some inbuilt functions like Sobel(), convertScaleAbs(), SVD::compute(), transpose() etc. which takes Mat objects as arguements.

Can anyone please help me in solving this.

Thanks & Regards,
Nirmal J