RKNN-toolkit-1.7.1 环境配置(win 10)_rknn_toolkit-1.7.1-cp36-cp36m-win_amd64.whl下载-程序员宅基地

技术标签: python  tensorflow  深度学习  windows  opencv  RKNN  

1. 安装 Anaconda + 配置Python基础环境

1.1 去官网下载并安装Anaconda

Anaconda官网

1.2 新建并激活一个 python3.6 环境:

conda create --name=rknn python=3.6.8
conda activate rknn

进入虚拟环境后,再执行以下命令安装深度学习框架,如Tensorflow,Pytorch,Keras等。

2. 配置 python 环境

2.1 官方给出的依赖

  pip install tensorflow==1.14.0 
  pip install torch==1.5.1 
  pip install torchvision==0.4.0 
  pip install mxnet==1.5.0

2.2 安装 tensorflow==1.14.0 :

pip install tensorflow==1.14.0

2.3 安装 torch

官网的安装包库下载安装包,并安装:

pip install  "D:\SDK\external\rknn-toolkit\packages\torch-1.5.1+cpu-cp36-cp36m-win_amd64.whl"

2.4 安装 torchvision

官网的安装包库下载安装包,并安装:

pip install "D:\SDK\external\rknn-toolkit\packages\torchvision-0.4.0+cpu-cp36-cp36m-win_amd64.whl"

2.5 安装 mxnet==1.5.0:

pip install mxnet==1.5.0

2.6 安装opencv-python 及 报错的解决方法:

2.6.1 安装opencv:

pip install opencv-python

2.6.2 python3.6安装opencv遇到报错,如下所示:

  ********************************************************************************
  ----------------------------------------
  ERROR: Failed building wheel for opencv-python
Failed to build opencv-python
ERROR: Could not build wheels for opencv-python which use PEP 517 and cannot be installed directly

2.6.3 解决方法:

原因是使用pip install opencv-python命令安装的是最新版本,python3.6不支持。所以找一个python3.6支持的版本。如opencv-python==4.3.0.38

pip install -i https://pypi.douban.com/simple/ pip install opencv-python==4.3.0.38

2.7 安装 gluoncv :

pip install gluoncv

注:gluoncv 在运行 examples/mxnet 中的例子时会用到。

2.8 安装rknn-toolkit-1.7.1 及 报错:

2.8.1 安装rknn-toolkit-1.7.1

复制出rknn安装包"rknn_toolkit-1.7.1-cp36-cp36m-win_amd64.whl",位置在SDK/external/rknn-toolkit/packages/下,后进入你的packages/执行以下命令进行安装。

pip install rknn_toolkit-1.7.1-cp36-cp36m-win_amd64.whl

2.8.2 报错:

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
mxnet 1.5.0 requires requests<2.19.0,>=2.18.4, but you have requests 2.22.0 which is incompatible.
matplotlib 3.3.4 requires pillow>=6.2.0, but you have pillow 5.3.0 which is incompatible.

由于 mxnet 所依赖的 requestsrknn-toolkit 所依赖的 requests冲突。

2.8.3 解决方法:

发现mxnet-1.0.0 既不会更换 numpy 也不会更换 requests,从而导致与 rknn-toolkit 依赖包冲突。rknn-toolkit-1.7.1 也没有依赖报错,更换代码如下:

  pip uninstall mxnet
  pip install mxnet==1.0.0

2.9 检测rknn是否安装成功,输入以下命令:

python
from rknn.api import RKNN

若无报错则安装RKNN成功,如下:

(rknn) D:\SDK\external\rknn-toolkit\packages> python
Python 3.6.8 |Anaconda, Inc.| (default, Feb 21 2019, 18:30:04) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.

>>> from rknn.api import RKNN
>>>

3. 参考文章

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ID_hemarmene/article/details/129917900

智能推荐

【论文阅读】【三维目标检测】在Range view上做3D目标检测_rangeview-程序员宅基地

文章浏览阅读3.3k次,点赞10次,收藏22次。文章目录BEV or Range ViewRangeDet: In Defense of Range View for LiDAR-based 3D Object DetectionRange Conditioned Pyramid InMeta-Kernel ConvolutionWeighted Non-Maximum SuppressionData Augmentation in Range View DataExperimentrange view是仅针对物理旋转式扫描的激光雷达的特殊view,例_rangeview

shell 实现并发,并控制并发数量_shell 并发-程序员宅基地

文章浏览阅读4k次,点赞4次,收藏26次。为了方便理解,一步步的来首先先看一下串行的:#! /bin/bashST=$(date +%s)for i in $(seq 1 10)do echo $i sleep 1 # 模拟程序、命令doneET=$(date +%s)TIME=$(( ${ET} - ${ST} ))echo "time: ${TIME}"输出结果:12345678910time: 10这就最原始的进程运行模拟,串行方式,无法有效利用计算机的资源,_shell 并发

Mybatis-puls自动分页Page无法分页解决_使用mybatis-plus中page进行分页不生效-程序员宅基地

文章浏览阅读3.3k次,点赞3次,收藏5次。一开始使用Page时发现数据能出来但是无法分页,只能全部显示。打印数据出来也显示0。最后查了许多资料发现这个插件需要一个工具类的支持才可以实现。检查了一下代码发现也没有问题。最后更改完成测试,好使了。_使用mybatis-plus中page进行分页不生效

dpi与dp的关系_px、dp、sp、dpi之间的区别和转换-程序员宅基地

文章浏览阅读2k次。px、dp、sp、dpi之间的区别和转换区别:px (pixels)像素 -- 是像素,就是屏幕上实际的像素点单位。(一般UI人员在ps中经常使用)dp/dip 设备独立像素,android layout经常使用的尺寸单位,与设备屏幕有关,dp是虚拟像素,在不同的像素密度的设备上会自动适配。即与像素密度无关。sp 放大像素,主要是处理字体的大小dpi:Android支持四种不同的dpi模式:ldp..._dpi dp

2021-1-31: c语言中 %f 和 %lf 的区别_%if-程序员宅基地

文章浏览阅读3.4k次,点赞7次,收藏14次。%f和%lf分别是float类型和double类型用于格式化输入输出时对应的格式符号。其中:float,单精度浮点型,对应%f。double,双精度浮点型,对应%lf。在用于输出时:float类型可以使用%lf格式,但不会有任何好处。double类型如果使用了%f格式可能会导致输出错误。在用于输入时:double 类型使用了%f格式,会导致输入值错误。float类型使用double类型不仅会导致输入错误,还可能引起程序崩溃。所以在输入输出时,一定要区分好double和float,而使用对_%if

IDEA 使用Git图文详解_git idea-程序员宅基地

文章浏览阅读10w+次,点赞325次,收藏1.6k次。一、配置git路劲:或二、克隆项目或填写克隆路径及输出路径三、上传项目到git仓库 1、在你的idea里新建git仓库,这是新建本地仓库,等会会同步到线上git仓库 2、新建后如果文件名不是绿色的表示没有加入到git索引中 3、将需要上传的文件按照下图方式add 4、添加后,相应的文件名会变成绿色 5、然后commit项目,提交项目,这里是先提交带本地仓库 6、然后push到线上仓..._git idea

随便推点

Ubuntu20.04解决应用中心打不开的问题_snap商店打不开-程序员宅基地

文章浏览阅读1.5w次,点赞9次,收藏76次。Ubuntu20.04软件中心打不开 尝试了很多方法 Ubuntu 20.04 默认把软件中心换成了 snap, 感觉 snap 应用老出状况, snap 应用不但体积大, 安装好的应用还不时就崩溃, 所以如果要把电脑里的所有 snap 应用全部替换了, snapd 也卸载了. 下面这三句可以有效的解决 sudo apt install ubuntu-software sudo sn..._snap商店打不开

C语言-数据结构-栈-实验报告_数据结构栈的应用实验报告-程序员宅基地

文章浏览阅读6.5k次,点赞8次,收藏70次。实验报告内容:一、实验目的、要求:(1)熟练掌握栈的特点(先进后出FILO)及基本操作,如入栈、出栈等,栈的顺序存储结构和链式存储结构,以便在实际问题背景下灵活应用。(2)编写适当的主函数和相关函数,使实验题目运行出正确结果。(3)当场编程、调试、编译。(4)程序具有一定的健壮性、可读性,尽量简洁。(5)程序运行完成后分别存盘,上交实验报告,要求写出实验体会二、实验内容:(1)实验题目(2)主要函数的算法设计思想(3)程序清单(3)测试数据、实验结果及结论(4)实验体会(实验中存在的_数据结构栈的应用实验报告

qRadioButton-程序员宅基地

文章浏览阅读384次。#ifndef TESTRADIOBUTTON_H#define TESTRADIOBUTTON_H#include #include "ui_testradiobutton.h"class testRadioButton : public QMainWindow{ Q_OBJECTpublic: testRadioButton(QWidget *paren_radiobutton

C# WinForm 封装自定义组件(控件)Dll_把winfrom用户自定义控件封装成dll-程序员宅基地

文章浏览阅读2w次,点赞6次,收藏22次。封装自定义控件很简单,没什么技术含量,这里通过封装自定义的数字文本框实例简单总结一下:【1】新建自定义控件库 -- Windows Forms Control Library【2】添加自定义组件 -- Component Class【3】继承TextBox,添加KeyPress事件,代码如下:using System;usi_把winfrom用户自定义控件封装成dll

mysql关闭slave_mysql 关闭slave-程序员宅基地

文章浏览阅读619次。mysql版本:5.6.14一、修改 my.cnf 文件,增加skip-slave-start参数即可[mysqld]#主从log-bin=mysql-binserver-id=148skip-slave-start二、重启mysql/etc/init.d/mysql restart三、验证slave是否启动mysql> SHOW SLAVE STATUS\G****************..._mysql disable slave

vue-router或者vue-admin-template中刷新跳转404的解决办法_vue admin 直接跳到404-程序员宅基地

文章浏览阅读5k次。vue或者vue-admin-template中任意页面刷新都跳转404vue在刷新的时候动态添加的router会清空,所以在动态添加的路由页面刷新的时候会因为清空的router而跳转到404.。在/src/premission.js的最下方router.afterEach修改成下面这样router.afterEach(to =>{ sessionStorage.setItem('r..._vue admin 直接跳到404