使用OpenCV操作CUDA送检图像到TensorRT(SSD模型)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ikevin/article/details/79783406

本地环境:

 Core i7 7700HQ, GTX 1060 6G.

开发环境(安装顺序):

            1) Nvidia Driver 384;

            2) Cuda 9;

            3) Cudnn7 for cuda 9;

            4) OpenCV 3.4.1;

            5) TensorRT 3.4.2;

1.调用CUDA内存, 矩阵声明初始化:

Cuda::GpuMat imageGpu(cv::Size(640,480),CV_32FC4);


2. 读取摄像头图像<进行颜色空间转换并送检:

Capture>> frame;

cvtColor(frame,imageRGBA,CV_RGB2BGRA);

imageRGBA.convertTo(imageRGBA, CV_32FC4,4);



3. 上传图像数据到GPU:

...
imageGpu.upload(imageRGBA);
...
// Here is the memory data allocated when getting the GPU corresponding to the above upload
// That is, imageNetMean's first parameter parameter
(float4*)imageGpu.ptr<float4>()
...


4. 图像预测:

注意数据类型RGBA (float4).

...
cudaError_t cudaPreImageNetMean(float4* input, size_t inputWidth,

                            Size_t inputHeight,float* output,size_t outputWidth, size_t outputHeight, 

                             Const float3& mean_value );


5. 手机播放龙门架视频,对准电脑摄像头. : (forgive me for shaking hands, actually still caught 4)



00:02:58 AM  04.02.2018 0


猜你喜欢

转载自blog.csdn.net/ikevin/article/details/79783406
今日推荐