mxnet的C/C++接口编译

2023-11-03

                                 mxnet的C/C++接口编译

    Python的版本的mxnet版本用来训练、验证及测试算法效果还比较方便,但是实际部署则需要C/C++接口,因此需要编译相应接口以方便部署。

一、编译环境之windows10(编译出动态库libmxnet.dll、libmxnet.lib及include头文件)。

一)环境及依赖、

  1. Windows10
  2. Cuda10.1
  3. Cudnn7.5.1
  4. Cmake 3.15.0
  5. Opencv3.4.2
  6. OpenBLAS-v0.2.19-Win64-int32
  7. Vs2015

 

二)、编译步骤

  1. 下载源码

git clone --recursive https://github.com/dmlc/mxnet  

      2、准备好依赖库

这里仅仅给出openblas下载地址(其他依赖百度即可):

https://sourceforge.net/projects/openblas/files/v0.2.19/

     3、Cmake-gui生成vs2015的.sln

根据出现红色提示配置三方依赖库(加入opencv3.4.2目录、加入openblas库libopenblas.dll.a),然后点击configure 和Generating 完成.sln的生成。

 

 

   4、Vs2015中编译(x64)

 

 5、生成C++依赖头文件 op.h

为了能够使用C++原生接口,这一步是很关键的一步,目的是生成mxnet C++程序依赖的op.h文件,如果直接指向编译mxnet并使用C++, 在mxnet/cpp-package/scripts目录,将所有依赖到的dll拷贝进来。

运行命令:python OpWrapperGenerator.py libmxnet.dll

出现这个错误,不知道什么原因,为避免在使用时报错暂时将这几个函数注释掉。

三)C接口的使用

   头文件:mxnet/include/mxnet/

 

 

创建一个简单的vs2015工程,参考mxnet中的example,目录位置:

mxnet_\example\image-classification\predict-cpp。

 

编译后,x64\Release下

CMD命令行运行:mxnet_c_api_demo.exe 1.jpg 1

 

完整工程,打开编译既可以用:https://github.com/SyGoing/mxnet_c_api_demo-in-vs2015

后续上传实现的LFFD的C_API版本及ncnn移植版本

二、编译环境之ubuntu16.04(待续)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

mxnet的C/C++接口编译 的相关文章

随机推荐

  • 来做一个麦克纳姆轮吧!!

    想玩全向小车么 想搭建一个移动底盘么 想满足中二病的创造欲么 想 那么为什么不自己做一个麦克纳姆轮呢 自己动手丰衣足食 0 准备材料 3D打印机一台 打印耗材 直径2mm 长度60mm的铁轴 这种玩具模型里用的小铁轴刚好可以用来当麦克纳姆轮
  • 03-雾化

    const fog new THREE Fog color near far color 颜色 用于设置雾的颜色 以十六进制表示 near 近平面 处于这个距离之内的物体将被完全雾化 far 远平面 处于这个距离之外的物体将不受雾化影响
  • Java枚举类常量写法

    在写代码的过程中我们常常需要定义一些常量 以下代码是使用枚举类型定义常量的实例 有需要大家可以进行参考 public class MyConstant public enum StatusEnum CREATED 0 状态0 ASSIGNE
  • python趣味编程-盒子追逐者游戏

    在上一期我们用Python实现了一个奥赛罗游戏的游戏 这一期我们继续使用Python实现一个简单的盒子追逐追逐者游戏 让我们开始今天的旅程吧 在Python自由源代码中使用Turtle的盒子追逐者游戏 在Python中使用Turtle的盒子
  • 我使用Java one longin组件进行ADFS连接,但是logout endpoint有问题

    很抱歉 看起来你遇到了使用 Java OneLogin 组件连接 ADFS 时的注销端点问题 这可能是由于 ADFS 设置不正确或 Java OneLogin 组件的配置问题造成的 建议您检查相关文档 并确保 ADFS 和 Java One
  • 龙书(附录A):一个完整的编译器前端(学习记录)

    龙书 完整的编译器前端下载地址 ps 我设置的不要下载积分 如果还是不能下载的话请评论区留言 https download csdn net download Zheng lan 16779204 百度网盘下载 链接 https pan b
  • java8之Stream-Collect操作

    文章目录 collect Collector in Action 收集器 Collectors 常用规约操作 规约到一个单独的值 把数据装进一个list中 将数据收集到一个Set中 把数据收集到一个Map中 Using other coll
  • 《人工智能》之《非经典推理》习题解析

    教材 人工智能及其应用 蔡自兴等 2016m清华大学出版社 第5版 参考书 对应同系列博客 人工智能 之 非经典推理 人工智能 之 非经典推理 习题解析 1 非经典逻辑 非经典推理与经典逻辑 经典推理有何不同 2 什么是不确定性推理 为什么
  • fastapi之tortoise-orm

    目录 概述 fastapi引入 创建对应数据模型 创建Model 设置数据库字段field 字段介绍 自定义字段 设置Meta Model模型方法 查询 Q对象查询 字段过滤 预取 F表达式 功能和聚合 事务 根据Model生成Schema
  • Faster RCNN 源码解读(1) -- 文件结构分析

    基本介绍 Faster RCNN 在目标检测及其相关领域得到了广泛的运用 其原型RCNN是将CNN引入到目标检测的开山之作 此外基于region proposal是一种十分值得学习的思想 因此将在后续的系列章节中 基于源码 对Faster
  • vue + element实现前端excel上传解析

    前言 最近有个新需求 需要前端解析excel文件并且展示到页面让用户确认无误后进行上传 1 安装插件 首先安装xlsx插件 我这里安装的是0 14 1 npm install xlsx save 2 html部分代码 这里使用element
  • 海州高级中学2021高考成绩查询,2020年新海高中、海州高中高考成绩及三年前录取情况对比...

    高考分数出来以后 各所高中喜报频传 今天我们来梳理一下连云港市区四所四星级高中 她们三年前的中考录取情况和今年的高考成绩数据 这四所四星级高中分别为江苏省新海高级中学 以下简称 新海高中 连云港高级中学 以下简称连云港高中 江苏省海州高级中
  • 《网络设备安装与管理》实训2(配置二层交换机、三层交换机)

    网络设备安装与管理 实训2 一 实习项目 配置交换机 包括二层交换机 三层交换机 实现不同VLAN之间的通讯 二 实习目的 1 理解多层交换机的路由原理 实现不同VLAN间通讯 采用三层交换机以及路由器设备来解决 在三层交换机上 创建各个V
  • python绘制好几个子图_python – 在matplotlib中绘制一条关联多个子图之间区域的线...

    我是一名地质学家 有一堆不同深度的钻孔 我粗略地设定了子图的数量 宽度和高度 以根据钻孔的数量和这些钻孔中的样本数量而变化 在每个钻孔中都有一个我想要突出显示的区域 我用axhspan完成了这个区域 我想做的是在钻孔 子图 之间进行关联 绘
  • SpringBoot下的定时任务调度@Scheduled,Java原生定时任务

    SpringBoot下的定时任务调度 Scheduled Java原生定时任务 一 概述 定时任务调度 一句话概括就是 基于给定的时间点 给定的时间间隔 自动执行的任务 方法 二 java生态下的定时任务实现方式 Spring 3 0以后自
  • 二分查找法

    include using namespace std include int main vector v1 1 3 4 6 10 13 14 15 17 21 容器v1 int target cin gt gt target int lo
  • 教妹学Java(十二):一文搞懂Java的所有关键字

    大家好 我是沉默王二 一个和黄家驹一样身高 和刘德华一样颜值的程序员 本篇文章通过我和三妹对话的形式来谈一谈 Java 中的关键字 教妹学 Java 没见过这么有趣的标题吧 语不惊人死不休 没错 本篇文章的标题就是这么酷炫 接受不了的同学就
  • 腾讯云服务器Ubuntu、Centos7配置为代理服务器,使用tinyproxy

    1 安装tinyproxy 1 1Ubuntu系统 apt get install tinyproxy 1 2Centos7系统 yum y install tinyproxy 2 修改tinyproxy配置 vi etc tinyprox
  • vue项目打包发布与dist瘦身

    提示 学习笔记 文章目录 前言 一 打包发布 概念介绍 目标 讲解 小结 二 打包发布 publicPath 目标 讲解 小结 三 打包发布 减少包体积 整体分析 目标 讲解 小结 四 打包发布 减少包体积 排除第三方 目标 讲解 小结 五
  • mxnet的C/C++接口编译

    mxnet的C C 接口编译 Python的版本的mxnet版本用来训练 验证及测试算法效果还比较方便 但是实际部署则需要C C 接口 因此需要编译相应接口以方便部署 一 编译环境之windows10 编译出动态库libmxnet dll