detectNet::detect not work with cv::GpuMat data

hi, im try mod detectNet-console sample to detect image from buffer like cv::GpuMat
every thing look fine, compile and run without error but run with input data cv::GputMat.data is return 0 detect object while data from loadImageRGBA() return 1
here my code

cv::Mat frame;
const char* imagPath = "/opt/jetson-inference/data/002337.jpg";
frame = cv::imread(imagPath);
int    imgWidth  = frame.cols;
int    imgHeight = frame.rows;
float* imgCPU = NULL;
float* imgCUDA1 = NULL;

cv::cuda::GpuMat cvCUDA();
cvCUDA.upload(frame);

if( !loadImageRGBA(imagPath, (float4**)&imgCPU, (float4**)&imgCUDA1, &imgWidth, &imgHeight) )
{
            printf("failed to load image '%s'\n", "/opt/jetson-inference/data/002337.jpg");
            return 0;
}

detectNet::Detection* detections = NULL;
        cout<<"error 1"<<endl;
        const int numDetections1 = net->Detect((float*)cvCUDA.data, imgWidth, imgHeight, &detections);
        const int numDetections = net->Detect((float*)imgCUDA1, imgWidth, imgHeight, &detections);
        cout<<"error 2"<<endl;
//        // print out the detection results
        cout<<numDetections1<<" "<<numDetections<<" objects detected\n"<<endl;

result : 0 1 objects detected

edit: solution
cv:cvtColor(src,dst,cv::BGR2RGBA) work for me

What data format is cv::GpuMat in? The functions expect float4 RGBA with pixel values between 0.0 - 255.0

i set default data type as you seen cv::imread
so look like is mus be BGR type or BGRA type

should i convert to RGBA before upload to GPU device ?

Yes, and also the data should be in floating point and have pixel values 0-255.