OpenCV 使用Stitcher 命令行模式下使用 try_cuda yes时,出现throw_no_cuda 的error

  • 因为项目需求, 最近在使用opencv 里的Stitcher 拼接器,
    使用CPU版本可以正常运行,两张图片(640×480)拼接时间在650ms左右。后来使用GPU加速Stitcher时,怎奈无法运行,总是给出throw_no_cuda的错误(CUDA均配置好)。
    如下:

    于是上网度来度去,终于找到了解释。
    1 )Stitcher 类实现图像拼接需要很多步骤,网上详细列有。其中有一个步骤的算法叫:最佳缝合线拼接算法,使用的是GraphCut (图割)算法,用于消除拼接时产生的“鬼影”。
    2) GraphCut_CPU算法可以跑的通, 但是opencv 的 GraphCut_GPU算法 在CUDA7.5以上的版本中,就不支持了(不明白原因,可能涉及专利保护?)。所以要想使用必须得降级CUDA版本。但是目前主流的显卡的驱动基本都不支持CUDA8.0以下了,所以这个问题暂时无解。
    3) 命令行模式下,我们会发现,如果使用–try_cuda yes --seam dp_color (或者–seam dp_colorgrad) 它可以运行,但是它实际是在CPU模式下运行的(运行时间比cpu版本的grapcut快)。很不幸,只有 --seam gc_color 和 --seam gc_colorgrad (图割) 是支持GPU的。 此外,经检验 使用dp_color的效果(清晰度)没有gc_color(图割)算法缝合的好。

    因此,无奈之举,可以利用OpenCV中一些特征检测API,例如SURF,ORB等,按照图像拼接步骤,一步步来。其中耗时的SURF可以upload到GPU中计算,配合后续步骤可以实现简单的图像拼接。(当然,效果也远不及Stitcher类自带的算法,这个算法步骤太多优化了,很多不理解)。

OpenCV图像拼接器Stitcher 无法使用GPU加速相关推荐

  1. 如何在CST仿真软件中开启GPU加速

    相信电磁领域的工作人员经常利用CST进行仿真运算,对于较大的模型和网格剖分,一般会在电脑里额外安装GPU加速卡.这里主要说明如下四个问题: 1.如何判断要购买哪种加速卡? 2.如何安装正确的驱动程序? ...

  2. Win10下Tensorflow-gpu使用cpu训练而不是gpu加速

    问题1:明明安装好了tensorflow-gpu,但是运行代码时无法使用gpu加速 明明安装好了tensorflow-gpu,但是运行代码时无法使用gpu加速,运行tensorflow代码时cpu占满 ...

  3. 【OpenCV】SURF图像拼接和Stitcher拼接

    介绍两种图像拼接的方法,一种是SURF算法的图像拼接,另一种是Stitcher硬拼接 首先先从简单的讲起 一.Stitcher直接拼接 可以实现多张图片一起拼接,只要两行代码就可以实现拼接: 1.首先 ...

  4. OpenCV图像拼接-Stitcher类-Stitching detailed使用与参数介绍

    关于OpenCV图像拼接的方法,如果不熟悉的话,可以先看看我整理的如下四篇博客: OpenCV常用图像拼接方法(一):直接拼接(硬拼) OpenCV常用图像拼接方法(二):基于模板匹配拼接 OpenC ...

  5. OpenCV之gpu 模块. 使用GPU加速的计算机视觉:GPU上的相似度检测(PNSR 和 SSIM)

    GPU上的相似度检测(PNSR 和 SSIM) 学习目标 在 OpenCV的视频输入和相似度测量 教程中我们已经学习了检测两幅图像相似度的两种方法:PSNR和SSIM.正如我们所看到的,执行这些算法需 ...

  6. [CUDA OpenCV]GPU加速的计算机视觉学习资源下载

    点击我爱计算机视觉标星,更快获取CVML新技术 今天跟大家介绍一本学习CUDA加速的OpenCV的新书<Hands-On GPU-Accelerated Computer Vision with ...

  7. python opencv gpu加速_让Python下的OpenCV也能GPU加速!part.1

    20200411更新: 经过评论区 @鹤汀凫渚 的指导,我成功的用最简单的方法在python中调用到了GPU加速后的函数,这里把这位朋友的评论贴出来供各位参考: 以下原文: 本文的核心目的就是加速,在 ...

  8. Ubuntu16.04 安装配置深度学习配置:GPU加速 Cuda+cudnn+opencv+caffe

    目录 一. 电脑配置: 二. 安装过程 1.安装相关依赖项 2.安装NVIDIA驱动 一,下载安装驱动法 二.终端直接下载安装驱动法. 3.安装CUDA 4.配置cuDNN 5.安装opencv3.1 ...

  9. 计算机视觉用显卡,基于GPU加速的计算机视觉编程:使用OpenCV和CUDA实时处理复杂图像数据...

    本书是OpenCV开发人员的推荐阅读指南,手把手教你使用OpenCV和CUDA实现GPU加速的计算机视觉项目开发,帮你快速掌握利用GPU实时处理复杂图像数据的高效技术.全书共11章,章介绍CUDA架构 ...

最新文章

  1. float向u8和s8的转换
  2. Android Service完全解析,关于服务你所需知道的一切(下)
  3. flutter友盟分享_flutter中友盟插件开发使用
  4. 信息学奥赛一本通 1054:三角形判断 | OpenJudge NOI 1.4 16
  5. 利用OGG实现Oracle到Kafka到Greenplum的增量数据同步
  6. 基于 props 更新 state
  7. 7-4 用天平找小球 (10 分)
  8. 20172324 2018-2019-1 《程序设计与数据结构》第三周学习总结
  9. yolov3-tiny 训练一个检测器(1)
  10. Vue 集成海康h5player,实现ws协议的实时监控播放
  11. Python文本处理之按行处理大文件
  12. word外部表不是预期的格式_word使用邮件合并提示外部表不是预期的格式怎么解决...
  13. Building package xxx:xxx-windows failed with: BUILD_FAILED
  14. 计算机专业研究生核心能力培养(2)——如何更好的写代码
  15. 真实世界里的钢铁侠-特斯拉汽车创始人埃隆·马斯克(Elon Musk)
  16. Oracle错误08s01,Java7 sqljdbc4 – getConnection()上的SQL错误08S01
  17. UE4利用Save Game创建全局变量
  18. 使用Python构建参数化FNN(一)——构建可自定义结构的FNN
  19. 论文审稿意见太奇葩?NeurIPS 2021:把它曝光出来给人看
  20. 有限体积法(5)——对流-扩散方程的离散

热门文章

  1. (已更新)【小程序模板】功能模块+验证码页面模板+实用的小程序前端模板
  2. 【Linux服务】socket5代理服务器搭建
  3. 《心理学报》的《大学生学习适应量表》能用吗?
  4. gpio-sunxi驱动应用gpio口终端操作
  5. 计算机研究与发展格式,《计算机研究与发展》参考文献著录格式与示例.PDF
  6. autocad 凸度_AutoCAD中凸度的概念以及求圆弧的凸度
  7. curl php 不直接输出,php – 使用cUrl时没有输出
  8. 流量计算机标准,GB/T 32201-2015
  9. 2017年全国大学生电子设计竞赛评分表
  10. 【UE4】资源管理之UAssetManager用法