关于ncnn的运行环境安装

简介: ncnn是一个为手机端极致优化的高性能神经网络前向计算框架。其开源代码网址为https://github.com/Tencent/ncnn说一下我使用的环境配置:      1、操作系统:Ubuntu 16.04      2、cuda 8.0      3、Open CV 3.0因为这些库在本地环境上安装起来即复杂又费时,所以我推荐使用docker。
img_b214a8038a3beb57dbe525bd4bd0e9eb.png

ncnn是一个为手机端极致优化的高性能神经网络前向计算框架。

其开源代码网址为https://github.com/Tencent/ncnn

说一下我使用的环境配置:

      1、操作系统:Ubuntu 16.04

      2、cuda 8.0

      3、Open CV 3.0

因为这些库在本地环境上安装起来即复杂又费时,所以我推荐使用docker。这样只需要找到适合的镜像文件进行docker的创建。使用docker不仅不会破坏本地的环境,还可以拥有管理员权限,适合在限制个人操作权限的公用服务器上安装。下面,我说一下我在安装过程中遇到的问题和具体的配置步骤。

Ubuntu的版本最好使用16.04。一开始,我装的是Ubuntu14.04,系统默认安装protobuf 2.5.0,然后发现因为protobuf 版本过低而报错。改成Ubuntu 16.04, 默认安装protobuf 2.6.1,错误消失。

镜像文件可以从网上下载,例如使用linux 指令下载一个名称为caffe - opencv - cuda8.0的镜像文件。

docker pull caffe - opencv - cuda8.0

可以使用指令

docker images

查看新的镜像文件是否部署完成。完成后,创建新的docker。创建的同时需要挂载目录。即在docker中可以读写本地服务器文件。例如,我们将本地/home/data目录下的所有内容挂载到docker的根目录/data下,指令为

docker run -it -v /home/data:/data --name docker_name caffe - opencv - cuda8.0 /bin/bash

也可以挂载多个目录,只需要重复使用-v。其中,docker_name 是docker 的名字,如果不进行命名,则会随机分配docker名。因为docker被创建后,会自动进入docker环境,一般显示root@docker_ID。如果需要给docker改名,可通过指令

docker rename old_name new_name

来修改。查看自己的docker,可以使用

docker ps -a

查找,-a 指所有的docker。也可以通过docker ID来寻找,通过指令

docker ps -a | grep docker_ID

即可,可以看到docker对应的name,确定是否修改成功。初次创建后用exit退出了docker,重新进入需要两条连续指令。

docker start docker_name

docker attach docker_name

到这里,环境就基本配置好了。

目录
相关文章
|
XML JSON API
高效使用 Postman:如何正确传递 Query、Path 和 Body 参数
Postman 作为一个功能强大的工具,极大地简化了 API 测试和调试的过程,提供了发送请求和检查响应的直接方法。本文将着重介绍如何在 Postman 中高效地处理请求参数,以提高 API 测试和开发的便利性。
|
机器学习/深度学习 资源调度
【机器学习】高斯分布-概率密度函数
【1月更文挑战第23天】【机器学习】高斯分布-概率密度函数
【机器学习】高斯分布-概率密度函数
|
4月前
|
JavaScript 调度
BOM如何编制与管理?
BOM英文全称 Bill of Material,即“物料清单”,也称产品结构表。在制造业管理信息系统中,经常会提到BOM。物料清单是指产品所需零部件明细表及其结构。在ERP系统中,“物料”一词有着广泛的含义,它是所有产品、半成品、在制品、原材料、配套件、协作件、易耗品等与生产有关的物料的统称。
|
SQL 数据库 数据库管理
数据库SQL语句详解与应用实例
随着信息技术的飞速发展,数据库管理系统已成为各类企业和组织不可或缺的一部分。结构化查询语言(SQL)作为数据库管理系统的核心语言,掌握其用法对于任何数据库管理员和开发人员来说都至关重要。本文将详细介绍数据库SQL语句的基本语法、功能及其在实际应用中的使用场景。一、SQL语句概述结构化查询语言(SQL
600 3
|
存储 数据采集 搜索推荐
商品比价系统实现
商品比价系统实现
1015 4
|
安全 Linux Android开发
Android最强保活黑科技的最强技术实现,2024年最新阿里资深Android开发带你搞懂Framework
Android最强保活黑科技的最强技术实现,2024年最新阿里资深Android开发带你搞懂Framework
Android最强保活黑科技的最强技术实现,2024年最新阿里资深Android开发带你搞懂Framework
|
前端开发 JavaScript API
告别‘老司机’时代,AJAX与Fetch API让你的前端与Python后端无缝对接!
【7月更文挑战第14天】前端与后端交互的关键技术是AJAX和Fetch API。AJAX允许不刷新页面更新内容,而Fetch API提供了Promise基
265 0
|
存储 JavaScript 前端开发
vue使用navigator.mediaDevices.getUserMedia调用相机功能
vue使用navigator.mediaDevices.getUserMedia调用相机功能
2636 0
|
SQL XML Java
MyBatis-plus超神用法--一文带你玩转MP
MyBatis-plus超神用法--一文带你玩转MP
790 0
|
SQL 运维 Java
如何用ChatGPT提高程序员开发效率?
如何用ChatGPT提高程序员开发效率?
1061 0