我是靠谱客的博主 忐忑星星,最近开发中收集的这篇文章主要介绍OpenCV DNN模块——从TensorFlow模型导出到OpenCV部署详解使用过程,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

本文来自OpenCV中文网粉丝小庄头发很多投稿。

(原文链接:https://blog.csdn.net/weixin_39928773/article/details/103910850)

引言

 

对于机器视觉从事者或者研究者来说,把训练好模型部署到项目中是关键的一步。现如今各大相机厂商都会提供相机的二次开发包,供给使用者进行使用和开发。据博主所知,目前大部分的相机开发包并不支持Python语言,而主流的深度学习框架都是基于Python语言,训练好的模型难以部署到自己的软件中。

 

举个例子,博主一般使用C/C++语言对相机进行二次开发及编写工业软件,使用Python语言的TensorFlow框架训练模型,博主一般采用两种方式在C/C++中调用训练好的模型:

 

  • C/C++和Python混合编程,网上这部分的教程很多,博主这边就不过多说明。这个方法虽然不难,但是在使用过程中需要常常需要释放变量内存,并且程序在出错时难以排查。

 

  • 使用OpenCV的DNN模块加载TensorFlow训练好的模型,这个方式博主十分推荐,无需混合语言编程,避免难以察觉的错误,并且在OpenCV支持使用OpenVINO对CPU加速以及在4.2版本以后支持CUDA加速推理,部署方法在博主这两篇博客中有介绍。

 

本文将对使用TensorFlow训练模型、导出模型、模型转化以及OpenCV模型导入方法及过程详细介绍。

 

使用过程

1.模型训练

模型训练这块博主以自己写的UNet网络为例,见

最后

以上就是忐忑星星为你收集整理的OpenCV DNN模块——从TensorFlow模型导出到OpenCV部署详解使用过程的全部内容,希望文章能够帮你解决OpenCV DNN模块——从TensorFlow模型导出到OpenCV部署详解使用过程所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(52)

评论列表共有 0 条评论

立即
投稿
返回
顶部