cv::cuda::split

error:‘split’ is not a member of ‘cv::cuda’…
error:‘resize’ is not a member of ‘cv::cuda’…

recipe for target ‘all’ faild
Incvking “make -j6 -l6” faild

这里可以通过添加对应的cv头文件解决error,比如

#include <opencv2/cudaimgproc.hpp> 
#include "opencv2/cudawarping.hpp" 
#include "opencv2/cudaarithm.hpp"

和tensorrt结合使用:

// preprocessing stage ------------------------------------------------------------------------------------------------
void preprocessImage(const std::string& image_path, float* gpu_input, const nvinfer1::Dims& dims)
{// read input imagecv::Mat frame = cv::imread(image_path);if (frame.empty()){std::cerr << "Input image " << image_path << " load failed\n";return;}cv::cuda::GpuMat gpu_frame;// upload image to GPUgpu_frame.upload(frame);auto input_width = dims.d[2];auto input_height = dims.d[1];auto channels = dims.d[0];auto input_size = cv::Size(input_width, input_height);// resizecv::cuda::GpuMat resized;cv::cuda::resize(gpu_frame, resized, input_size, 0, 0, cv::INTER_NEAREST);// normalizecv::cuda::GpuMat flt_image;resized.convertTo(flt_image, CV_32FC3, 1.f / 255.f);cv::cuda::subtract(flt_image, cv::Scalar(0.485f, 0.456f, 0.406f), flt_image, cv::noArray(), -1);cv::cuda::divide(flt_image, cv::Scalar(0.229f, 0.224f, 0.225f), flt_image, 1, -1);// to tensorstd::vector<cv::cuda::GpuMat> chw;for (size_t i = 0; i < channels; ++i){chw.emplace_back(cv::cuda::GpuMat(input_size, CV_32FC1, gpu_input + i * input_width * input_height));}cv::cuda::split(flt_image, chw);
}

https://github.com/novaHardware/segmentation/blob/d86c237e1191f159d39e115df13d691ab65752c2/PyTorch-ONNX-TensorRT-CPP/trt_sample.cpp

cv::cuda::split 使用相关推荐

  1. OpenCV用thrust使用cv :: cuda :: GpuMat

    OpenCV用thrust使用cv :: cuda :: GpuMat 用thrust使用cv :: cuda :: GpuMat 目标 将GpuMat包装到thrust迭代器中 用随机数填充GpuM ...

  2. 浅析cv::cuda::threshold函数的实现

    我觉得通过阅读优秀开源项目的代码来学习库的使用是一个不错的学习方法,比如通过阅读OpenCV和TensorFlow的源码来学习如何使用CUDA和cuDNN,还可以顺便学习一些编程技巧.所以寻找一个合适 ...

  3. cv::cuda与CUDA的NPP库、距离变换和分水岭并行版本尝试

    因为不想什么函数都自己写设备核函数,看到opencv有对应的cuda版本的函数比如滤波,然而CUDA的NPP库也提供了对应的滤波函数,我不知道哪个性能更高(当然肯定要比纯CPU版本快,但我没测试过) ...

  4. 关于cv::cuda::GpuMat与PtrStepSz

    一般host端用GpuMat,在.cu里定义kernel的caller函数时形参用PtrStepSz(或者PtrStep),kernel函数也可以使用PtrStepSz,从而实现host to dev ...

  5. opencv cuda使用笔记

    目录 cuda拷贝 cuda+opencv yolov4 颜色转换: cv::cuda::split 查看10*10像素 down_load用法 特别全的学习资料: 我想将OpenCV::cuda:: ...

  6. Window编译Opencv CUDA

    编译步骤: 本文写的是注意事项,不是完整流程: dnn cuda编译 OpenCV4.4版本 DNN模块使用CUDA加速教程 VS2017 Window10_猛龙不过江的博客-CSDN博客 openc ...

  7. OpenCV算法加速(4)官方源码v4.5.5的默认并行和优化加速的编译选项是什么?请重点关注函数cv::getBuildInformation()的返回值

    举例opencv v4.5.5版本源码,Windows x64,VS2019,CMake https://github.com/opencv/opencv/tree/4.5.5 https://sou ...

  8. cuda编程思想和opencv_gpu图像处理

    CUDA编程 https://github.com/Ewenwan/ShiYanLou/tree/master/CUDA CUDA(Compute Unified Device Architectur ...

  9. 图片融合 c++ cuda加速

    1.新建cuda项目 2. 添加环境 在vc++目录-->包含目录添加 D:\Program Files\opencv\opencv-3.4.5\build_cuda\install\inclu ...

最新文章

  1. java调用方法的变量_JAVA类的方法调用和变量(全套)
  2. c++调用mysql存储过程_C++中ADO调用MySQL存储过程失败,诡异的语法异常,求解中,附源码...
  3. cookie和session常见问题
  4. apache服务器搭建过程中需要注意到的一些问题
  5. 手机调试_手机充值不好用?因为正在调试期
  6. MediaWiki/升级
  7. 裁员之后人手却不够,马斯克和母亲只好亲自上阵帮忙了
  8. docker之部署一个不中毒的浏览器
  9. 腾讯bugly升级注意事项
  10. 工赋开发者社区 | (案例)中译语通:差别化纺纱柔性智慧工厂
  11. gis计算频数_频数 (分析)
  12. UML(一)六大关系
  13. 同一个module里面多个initial是并行的吗
  14. 历尽千帆,归来仍少年
  15. WebStorm中使用Live Tempalte
  16. ubuntu播放mp4的插件
  17. 国王统治没有显示服务器,国王的统治Reign Of Kings服务器架设教程
  18. SpringBoot再回首:SpringBoot之Servlet用法
  19. 磁性材料的特性、工艺及检测知识汇总
  20. 医用无菌物品时间管理标签的现状和国家最新标准

热门文章

  1. java设计模式---模板方法模式
  2. Android--制作开场动画/MediaPlayer.OnCompletionListener
  3. Android开发中的控件--ProgressBar和ListView
  4. 网络数据包收发流程(三):e1000网卡和DMA
  5. 南昌理工学院计算机系考研,南昌理工学院的学生可不可以考研和公务员
  6. ip.php是什么意思,IP是什么意思
  7. 超级计算机在线解方程,量子计算机10秒可得超级计算机百年运算结果
  8. python 接口数据驱动_python接口测试实例--数据驱动(程序与数据分离)
  9. 弧形背景html,JS实现带圆弧背景渐变效果的导航菜单代码
  10. document怎么取得日期选择框的值_一次性取得跨年度的租金收入如何进行财税处理?...