CV-CUDA使用gpu读取并处理图片

这篇具有很好参考价值的文章主要介绍了CV-CUDA使用gpu读取并处理图片。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

参考:https://zhuanlan.zhihu.com/p/584600231
https://baijiahao.baidu.com/s?id=1752902449981972686&wfr=spider&for=pc
开源地址:https://github.com/CVCUDA/CV-CUDA
NVIDIA 携手字节跳动机器学习团队开源众多图像预处理算子库CV-CUDA,它们能高效地运行在 GPU 上,算子速度能达到 OpenCV(运行在 CPU)的百倍左右。如果我们使用 CV-CUDA 作为后端替换OpenCV 和 TorchVision,整个推理的吞吐量能达到原来的二十多倍。此外,不仅是速度的提升,同时在效果上 CV-CUDA 在计算精度上已经对齐了OpenCV,因此训练推理能无缝衔接,大大降低工程师的工作量。
下载,编译
报错1,cmake版本不匹配,下载3.22版本,gcc版本不匹配,下载gcc11,升级完报cuda不匹配,升级nvidia驱动版本和cuda版本,nvidia515,cuda11.7
报错2,缺少依赖项,

CMake Error at 3rdparty/CMakeLists.txt:30 (add_subdirectory):
  The source directory

    CV-CUDA-release_v0.2.x/3rdparty/googletest

  does not contain a CMakeLists.txt file.

参考:https://blog.csdn.net/qq_43140627/article/details/119766876
进入CV-CUDA-release_v0.2.x/3rdparty目录,执行:

git clone https://github.com/google/googletest.git

报错3,文件格式不对,

/usr/bin/ld:CV-CUDA-release_v0.2.x/src/util/stubs/libdl-2.17_stub.so: file format not recognized; treating as linker script
/usr/bin/ld:CV-CUDA-release_v0.2.x/src/util/stubs/libdl-2.17_stub.so:1: syntax error
collect2: error: ld returned 1 exit status
src/nvcv_types/CMakeFiles/nvcv_types.dir/build.make:312: recipe for target 'lib/libnvcv_types.so.0.2.0' failed
make[2]: *** [lib/libnvcv_types.so.0.2.0] Error 1
CMakeFiles/Makefile2:743: recipe for target 'src/nvcv_types/CMakeFiles/nvcv_types.dir/all' failed
make[1]: *** [src/nvcv_types/CMakeFiles/nvcv_types.dir/all] Error 2
Makefile:155: recipe for target 'all' failed
make: *** [all] Error 2

参考:https://blog.csdn.net/qq_39093373/article/details/118220195
是原始文件有问题,去小目录重新下载再替换即可。
https://github.com/CVCUDA/CV-CUDA/issues/6
测试了,可用,不过得在https://github.com/CVCUDA/CV-CUDA/tree/release_v0.2.x/src/util/stubs网页端下直接点Download下载,而不能下载全部源码后才在src/util/stubs拿。

报错4,缺少依赖项,

CMake Error at CMakeLists.txt:29 (add_subdirectory):
  The source directory

    CV-CUDA-release_v0.2.x/3rdparty/pybind11

  does not contain a CMakeLists.txt file.

解决:

git clone https://github.com/pybind/pybind11.git

编译

ci/build.sh

(编译build_doc.sh和build_sample.sh报错,暂时跳过)
编译build.sh成功之后修改~/.bashrc文件,参考:
https://github.com/CVCUDA/CV-CUDA/issues/11
然后在base环境运行:

import cvcuda
import nvcv

可以正常导入。
但是在anaconda的env环境导入不成功。需要在env环境重新编译。编译完成后继续在~/.bashrc文件中添加生成的python路径,即可正常导入。
测试

CV-CUDA-release_v0.2.x$ python tests/cvcuda/python/test_opchannelreorder.py

测试脚本都可以正常运行。
运行测试demo
CV-CUDA-release_v0.2.x/samples/classification/python/inference.py
安装torchnvjpeg库。
https://github.com/itsliupeng/torchnvjpeg
报错:Line 679: ‘’ failed: no kernel image is available for execution on the device
报错同https://github.com/CVCUDA/CV-CUDA/issues/14,暂未看到解决办法,先搁置。文章来源地址https://www.toymoban.com/news/detail-450611.html

到了这里,关于CV-CUDA使用gpu读取并处理图片的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • PIL,cv2读取类型及转换,以及PIL,numpy,tensor格式以及cuda,cpu的格式转换

    这里先列个表格方便理解清楚: cv2 PIL 读取 a=cv2.imread() a=Image.open() 读取类型 数组类型 PIL类型 读取颜色通道 BGR RGB(这里需要注意的是当图像格式为RGBA时,PIL读取的是RGBA) 读取尺寸排列 (H,W,C) (W,H,C) 显示图片 cv2.imshow(“a”, a) cv2.waitKey (0) a.show() 相互之间转换显示 Ima

    2024年02月03日
    浏览(39)
  • AI绘画——使用stable-diffusion生成图片时提示RuntimeError: CUDA out of memory处理方法

    RuntimeError: CUDA out of memory. Tried to allocate 1.50 GiB (GPU 0; 8.00 GiB total capacity; 5.62 GiB already allocated; 109.75 MiB free; 5.74 GiB reserved in total by PyTorch) If reserved memory is allocated memory try setting max_split_size_mb to avoid fragmentation. See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF 1、添加参数–n_

    2024年02月02日
    浏览(62)
  • 深度学习部署(十九): CUDA RunTime API YOLOV5后处理cpu解码以及gpu解码

    看看我们干了什么, 就是把bouding box恢复成框而已 对于模型推理后的后处理,可以直接使用cuda核函数进行解码,效率比较高 nms也可以在核函数里面实现 这里演示了一个yolov5的实际案例,后续其他的操作都是类似的 gpu_decoder难度较大,一般先写一个cpu的decoder, 再写个gpu_decode

    2023年04月11日
    浏览(48)
  • OpenCVSharp使用GPU和Cuda

    背景:在C#项目实践中,对与图像处理采用opencv优选的方案有两种,EMGU.CV和OpenCVSharp。 以下是两个的比较: Opencv方案 许可证 速度 支持 易用性 OpenCVSharp 许可证是阿帕奇2.0可以随意用 快 CPU 上手简单 EMGU.CV 许可证商用时需要随软件开放源代码 相对慢 CPU、GPU 需要学习 默认Op

    2024年02月10日
    浏览(36)
  • python中图片读取和保存以及plt.imshow()与cv2.imshow()显示图像颜色错误解决方案

    最近调试程序的时候,发现要保存的图片颜色与原图片有色差(显示图像变蓝),郁闷良久,终于发现问题,望诸君避坑。 🧸在用plt.imshow和cv2.imshow显示同一幅图时可能会出现颜色差别很大的现象。 🎯原因:opencv的接口使用BGR,而matplotlib.pyplot 则是RGB模式。 单独使用图像是

    2024年02月11日
    浏览(45)
  • 【深度学习:入门】如何配置CUDA,使用gpu本地训练

    由于显卡的不同,需要先查看我们显卡及驱动最高支持的cuda。 进入cmd输入 nvidia -smi 版本支持向下兼容,为了保证能够和其他开发库版本兼容,这里使用的CUDN版本为11.6. CUDA Toolkit| NVIDIA Developer官网找到对应CUDA版本。(我这里选择的是CUDA11.6) 依次选择如下配置,点击Download下

    2024年02月08日
    浏览(44)
  • GPU版pytorch安装成功却无法使用cuda

    在远程服务器安装pytorch,根据官网命令进行安装,但在完成之后,显示GPU不可用,故记录此大坑。 一、根据官网进行安装  安装的很快,但是!!安装结束之后,输入以下代码进行安装验证却显示没有成功安装!! 所以这表明安装大失败! 但是不死心的我又输入以下语句来

    2024年02月11日
    浏览(45)
  • 服务器已经存在CUDA但无法使用GPU

    记录一下我使用服务器期间遇到的问题以及解决方法(主要使用tensorflow) 先介绍一下我本次遇到的问题: 我在服务器上拥有一个独立的账号,我发现我的tensorflow无法调用GPU,先排查可能存在的问题 终端输入 nvcc -V 结果如下: 显示已经安装了11.8版本的CUDA  但是在python文件

    2024年02月02日
    浏览(44)
  • Docker【部署 07】镜像内安装tensorflow-gpu及调用GPU多个问题处理Could not find cuda drivers+unable to find libcuda.so...

    Other than the name, the two packages have been identical since TensorFlow 2.1 也就是说安装2.1版本的已经自带GPU支持。 不同型号的GPU及驱动版本有所区别,环境驱动及CUDA版本如下: 在Docker容器中的程序无法识别CUDA环境变量,可以尝试以下步骤来解决这个问题: 检查CUDA版本:首先,需要确认

    2024年02月04日
    浏览(43)
  • 配置Tensorflow使用CUDA进行GPU加速(超详细教程)

    对于刚使用Tensorflow的友友来说配置环境并使用GPU进行加速也是件令人头疼的事情,纯自己折腾会遇到比较多的坑,所以这里详细介绍一下Tensorflow的环境配置 先进入官网查看Tensorflow依赖信息: 目前Tensorflow版本已经更新到2.16.1但是中文官网发布的最新经过测试的构建配置的

    2024年04月22日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包