深度学习模型迁移到VisualC++ demo

  • 1:demo例子
    • 1:运行上面的python程序,我在本地的jupyter上运行失败了,转到colab,模型下载速度超级快。运行完成之后就可以将保存的restnet.pt模型下载到本地。
    • 2:下载libtorch,这个就不多说了。
  • 2:在本地使用CMake利用CMakeList.txt创建工程
    • 1:创建一个文件夹,将demo中的CMakeList.txt放在下面,使用CMake生成工程。
    • 2:VisualC++工程里面的问题
      • (1)我打开之后出现了下面三个工程,把另外两个从解决方案里面右键选择排除即可。
      • (2)此时,如果使用demo中提供的main函数,会出现错误如下问题,点击连接,改了就行。记得把里面的pt文件路径和图片加载的路径改成自己的。
      • (3)生成时没有问题了,但执行的时候还会报错误。缺少dll文件,首先是缺libtorch的dll文件,然后是系统缺文件。

1:demo例子

链接: 利用LibTorch部署PyTorch模型.
大体是按照教程来做的,但由于作者没有详细说明,初学者也会踩了不少坑。

1:运行上面的python程序,我在本地的jupyter上运行失败了,转到colab,模型下载速度超级快。运行完成之后就可以将保存的restnet.pt模型下载到本地。

2:下载libtorch,这个就不多说了。

如果不准备使用cmake,可以参考链接: Win10+VS2017配置LibTorch开发环境,不过麻烦的是需要自己去导入各种需要的包,opencv,torch这些

2:在本地使用CMake利用CMakeList.txt创建工程

大体上步骤和利用 cmake 工具生成 Visual Studio 工程文件类似。

1:创建一个文件夹,将demo中的CMakeList.txt放在下面,使用CMake生成工程。

比如,我在此处创建了一个PytorchC的文件夹,在Cmake之前还需要在其下创建一个文件夹,不如build(对于编译源码是这样,此处只是为了创建一个工程,就按照下面的vsprojects创建了)

在Configure之前,需要更改CMakefile如下,同时需要在vsprojects文件夹下创建main.cpp文件。不然按照demo中提供的程序无法找到opencv库。,当然此处的路径是自己的opencv和libtorch的路径了。

cmake_minimum_required(VERSION 3.0 FATAL_ERROR)project(example_torch)
set(CMAKE_PREFIX_PATH "G:/libtorch")
set(OpenCV_DIR "E:/opencv/opencv/build")find_package(Torch REQUIRED)
find_package(OpenCV  QUIET)
if(NOT OpenCV_FOUND)find_package(OpenCV 2.4.3 QUIET)if(NOT OpenCV_FOUND)message(FATAL_ERROR "OpenCV > 2.4.3 not found.")endif()
endif()
add_executable(${PROJECT_NAME} "main.cpp")
target_link_libraries(${PROJECT_NAME} ${TORCH_LIBRARIES} ${OpenCV_LIBS})
set_property(TARGET ${PROJECT_NAME} PROPERTY CXX_STANDARD 11)

Configure之后可以点击Generate,然后再文件夹里面双击.sin文件就可以打开工程。

2:VisualC++工程里面的问题

(1)我打开之后出现了下面三个工程,把另外两个从解决方案里面右键选择排除即可。

(2)此时,如果使用demo中提供的main函数,会出现错误如下问题,点击连接,改了就行。记得把里面的pt文件路径和图片加载的路径改成自己的。

libtorch error C2440: “初始化”: 无法从“torch::jit::script::Module”转换…的问题

(3)生成时没有问题了,但执行的时候还会报错误。缺少dll文件,首先是缺libtorch的dll文件,然后是系统缺文件。

C++部署Pytorch(Libtorch)出现问题、错误汇总

至此,应该是可以正确运行了。

深度学习模型迁移到VisualC++ demo相关推荐

  1. docker 训练深度学习_利用RGB图像训练MultiModality的深度学习模型进行图像分割

    ▼更多精彩推荐,请关注我们▼ Dragonfly软件的一个特色功能就是可以让用户自己方便快速地训练深度学习的模型,实现图像分割等工作的智能完成.关于Dragonfly里面深度学习工具和智能分割向导工具 ...

  2. 深度学习模型可解释性的研究进展_化盈盈

    写在前面: 这篇文献提出的方法对我的工作帮助不是太大,但可以扩展可解释性的理解. 1 摘要 深度学习在很多人工智能应用领域中取得成功的关键原因在于, 通过复杂的深层网络模型从海量数据中学习丰富的知识. ...

  3. 婴儿哭声分类识别实现(准确率99.3%)(深度学习、迁移学习、音频分类、tensorflow)

    一.项目概述 本文是婴儿哭声分类识别系统化的主体部分,主要解决智能音频分类的问题.基于此目标,本文查找了大量资料,并做了大量实验,最后获得了一个婴儿哭声分类识别准确率相对较高的深度学习模型--迁移学习 ...

  4. 净迁移人口预测程序python_高质量深度学习模型, 一键模型预测,迁移学习很简单...

    飞桨(PaddlePaddle)核心框架Paddle Fluid v1.5已经发布,而作为其关键工具,用来迁移学习的PaddleHub也进行了全面更新,正式发布了1.0版本. 全新的PaddleHub ...

  5. 数据不够怎么训练深度学习模型?不妨试试迁移学习 ——重用神经网络的结构2...

    数据不够怎么训练深度学习模型?不妨试试迁移学习 本质就是这个图!pretrained model就是你截取的部分神经网络模型(迁移学习),而nanonet就是你自己加入的网络层. 随着深度学习技术在机 ...

  6. CCAI 2017 | 香港科技大学计算机系主任杨强:论深度学习的迁移模型

     CCAI 2017 | 香港科技大学计算机系主任杨强:论深度学习的迁移模型 原2017.07.22AI科技大本营 作者 | 贾维娣 7月23日,由中国人工智能学会.阿里巴巴集团 & 蚂蚁 ...

  7. 香港科技大学计算机系主任杨强:论深度学习的迁移模型

    一.迁移学习的三大优点 为什么我们做迁移学习?我总结了三条原因: 小数据.我们生活当中大量遇见的是小数据而不是大数据,当数据很稀疏,看到不同的类别我们还是能在当中做出很靠谱的模型.这并不是空穴来风,而 ...

  8. 训练好的深度学习模型原来这样部署的!(干货满满,收藏慢慢看)

    点击上方蓝字关注我们 计算机视觉研究院专栏 作者:Edison_G 当我们辛苦收集数据.数据清洗.搭建环境.训练模型.模型评估测试后,终于可以应用到具体场景,但是,突然发现不知道怎么调用自己的模型,更 ...

  9. 训练好的深度学习模型是怎么部署的?

    训练好的深度学习模型是怎么部署的? 来源:https://www.zhihu.com/question/329372124 作者:田子宸 先说结论:部署的方式取决于需求 需求一:简单的demo演示,只 ...

  10. Transfer Learning Toolkit (TLT) + DeepStream (DS)快速部署深度学习模型(以口罩检测为例)

    文章目录 简介 TLT DS 基于TLT进行迁移学习 环境准备 模型训练 基于DS的模型部署 总结 最近在做一个深度学习的横向,被实时性搞的很头疼,遂打算研究研究新的技术路线,做点技术储备.TLT+D ...

最新文章

  1. 基于S3C4510B的一个简单BSP的开发报告
  2. CEO 赠书 | 甲之蜜糖乙之砒霜,创新者也将成为守旧者
  3. camel in action
  4. Selenium 功能总结大集合
  5. ssl1213-多边形面积【差积,计算几何】
  6. android api接口文档,API 接口文档
  7. 使用React Router v4的嵌套路由
  8. NHibernate文档翻译--体系结构
  9. 蓝桥杯 ALGO-30算法训练 入学考试(01背包,动态规划)
  10. Linux下c语言多线程编程
  11. java uuid 随机数_Java随机数和UUID
  12. 将声音也输出到耳机(by quqi99)
  13. WTL的CBitmapButton在MFC下完美使用
  14. JS数组ES3-ES6常用方法
  15. LabVIEW进制转换总结
  16. BZOJ 3238 [Ahoi2013]差异
  17. 如何进行PDF文件翻译?PDF翻译怎么操作
  18. mac单节点安装Erda实践
  19. 初出茅庐的小李第114篇博客项目笔记之机智云智能浇花器实战(3)-基础Demo实现
  20. Note For Linux By Jes(18)-X Window 配置介绍

热门文章

  1. 创建用户, 使用crontab定时运行程序
  2. 2017年7月19日晚作业
  3. PHP中date()日期函数有关参数整理
  4. 当当网推“搜索+个性化”
  5. 循环神经网络(RNN) LSTM与GRU
  6. cvPyrSegmentation() 图像金字塔分割
  7. ubuntu16使用labelImg
  8. Mac 升级 catalina 后无法创建文件,Read-only file system
  9. linux+mmap父子通信_Linux 系统开发5 进程间通信 pipe() fifo() mmap()
  10. yagmail发送附件