RK3399学习笔记 1.0.3---python环境 Firefly Core-3399pro-jd4 Win10上RKNN工具安装
RK3399学习笔记 1.0.3---python环境 Firefly Core-3399pro-jd4 Win10上RKNN工具安装
- 读取模型各层
1,最好在Conda下新建一个虚拟环境进行安装。
Anaconda 官网下载地址:https://www.anaconda.com/download/
配置conda环境变量:
控制面板\系统和安全\系统\高级系统设置\环境变量\用户变量\PATH
中添加 **anaconda的安装目录的Scripts文件夹**,
比如我的路径是D:\rjaz\anaconda\az\Scripts, 看个人安装路径不同需要自己调整
2,配置conda源
https://www.cnblogs.com/tianbushengfuziwanguruchangye/p/15667415.html
激活conda
https://blog.csdn.net/hejp_123/article/details/92151293
3,配置基础Python环境为Python3.6
在虚拟环境下使用以下命令新建一个RKNN环境,如下:
conda create --name=rkmd python=3.6.8
4,执行以下命令进入虚拟环境:
conda activate rkmd
进入虚拟环境后,再执行以下命令安装深度学习框架,如Tensorflow,Pytorch,Keras等。
pip install tensorflow==1.14.0
pip install torch==1.9.0+cpu torchvision==0.10.0+cpu -f https://download.pytorch.org/whl/torch_stable.html --user
pip install mxnet==1.5.0
pip install opencv-python
pip install gluoncv
pip install lmdb==0.95
下载rknn安装包rknn_toolkit-1.6.0-cp36-cp36m-win_amd64.whl,cd 转到安装包目录位置下,执行以下命令进行安装。
pip install rknn_toolkit-1.6.0-cp36-cp36m-win_amd64.whl
4,检测rknn是否安装成功,输入以下命令:
python
from rknn.api import RKNN
若无报错则安装RKNN成功
5,案例使用,模型转换:
使用的模型出自以下:https://github.com/bubbliiiing/mobilenet-ssd-keras/releases/download/v1.0/mobilenet_ssd_weights.h5 权重进一步训练生成的模型。训练环境为tf1.13+keras2.1.5
注意,在保存权重时需要将网络与权重参数一起保存,在保存函数中将save_weights_only设置为False即可,如下所示。
后面首先需要对于Keras训练出的H5权重进行转换生成pb文件,代码如下:
from nets.ssd_training import MultiboxLoss, get_lr_scheduler
from keras.models import load_model
import tensorflow as tf
import os
from keras import backend as K
from tensorflow.python.framework import graph_util, graph_io
from tensorflow.python.platform import gfile
#h5topb
def h5_to_pb(h5_weight_path, output_dir, out_prefix="output_", log_tensorboard=True):if not os.path.exists(output_dir):os.mkdir(output_dir)h5_model = load_model(h5_weight_path,custom_objects={'compute_loss':MultiboxLoss(num_classes=9, neg_pos_ratio=3.0).compute_loss})out_nodes = []for i in range(len(h5_model.outputs)):out_nodes.append(out_prefix + str(i + 1))tf.identity(h5_model.output[i], out_prefix + str(i + 1))model_name = os.path.splitext(os.path.split(h5_weight_path)[-1])[0] + '.pb'sess = K.get_session()init_graph = sess.graph.as_graph_def()main_graph = graph_util.convert_variables_to_constants(sess, init_graph, out_nodes)graph_io.write_graph(main_graph, output_dir, name=model_name, as_text=False)
读取模型各层
def read_pb(GRAPH_PB_PATH):with tf.Session() as sess:print("load graph!!!")with gfile.FastGFile(GRAPH_PB_PATH, 'rb') as f:graph_def = tf.GraphDef()graph_def.ParseFromString(f.read())tf.import_graph_def(graph_def, name='')for i, n in enumerate(graph_def.node):print("Name of the node - %s" % n.name)h5_to_pb(h5_weight_path='./testrknn.h5', output_dir='./')
read_pb('./testrknn.pb')
在终端中将打印生成的pb文件模型的各个节点的名称,部分如下所示,非常重要,在模型转换时需要用到。
之后进入rknn的虚拟环境,输入以下指令进入可视化转换界面,如下所示::
python -m rknn.bin.visualization
查看模型结构:https://netron.app/
本文只记录,避免以后复现找不到资料。
RK3399学习笔记 1.0.3---python环境 Firefly Core-3399pro-jd4 Win10上RKNN工具安装相关推荐
- 之前安装的python环境可以删除吗-在Mac上删除自己安装的Python方法
推荐使用 Homebrew 来安装第三方工具.自己安装的python散落在电脑各处,删除起来比较麻烦.今天在此记录一下删除的过程(本人以Python3.6为例). 删除Python 3.6 frame ...
- Python学习笔记 1.0 基础内容篇章
Python学习笔记 1.0 基础内容篇章 注释 变量 一.定义变量 二.使用变量 bug和debug bug: Debug工具: 数据类型 认识数据类型 在定义数据类型时发生的错误: 数据类型的补表 ...
- ESP32学习笔记(1)——搭建环境、编译烧写(Windows+VS Code)
Espressif-IDE 环境搭建参看 ESP32学习笔记(50)--搭建环境.编译烧写(Windows+Espressif-IDE) 一.搭建环境 1.1 官方资料 ESP-IDF 编程指南 1. ...
- ESP32学习笔记(51)——搭建环境、编译烧写(Windows+Espressif-IDE)
VS Code 环境搭建参看 ESP32学习笔记(1)--搭建环境.编译烧写(Windows+VS Code) 一.搭建环境 1.1 官方资料 ESP-IDF 编程指南 1.2 下载Espressif ...
- React Native学习笔记一之搭建开发环境
因为项目需要,今天开始正式学习React Native,先来搭建个开发环境 忐忑的心情 因为项目比较急,而且客户要求使用React Native开发,只能先学点基础然后在项目中使用的时候,边做边学了, ...
- 深度学习(DL)与卷积神经网络(CNN)学习笔记随笔-04-基于Python的LeNet之MLP
原文地址可以查看更多信息 本文主要参考于:Multilayer Perceptron python源代码(github下载 CSDN免费下载) 本文主要介绍含有单隐层的MLP的建模及实现.建议在阅读 ...
- 深度学习(DL)与卷积神经网络(CNN)学习笔记随笔-03-基于Python的LeNet之LR
原地址可以查看更多信息 本文主要参考于:Classifying MNIST digits using Logistic Regression python源代码(GitHub下载 CSDN免费下载) ...
- Fuzz学习笔记(一)—— WinAFL环境搭建与基本使用
WinAFL学习笔记(一)-- WinAFL环境搭建 环境配置 安装步骤 1)安装git 2)安装CMake 3)编译dynamorio 编译32位 编译64位 4)编译winafl 编译32位 编译 ...
- ESP8266学习笔记(1)——搭建环境、编译烧写(NONOS SDK)
RTOS SDK环境搭建参看 ESP8266学习笔记(17)--搭建环境.编译烧写(RTOS SDK) 一.搭建环境 1.1 ESP8266 SDK 入门指南 官网下载:https://www.esp ...
最新文章
- markdown grammar
- php中显示不出图像,php – 无法显示图像,因为它包含错误
- marquee滚动起始位置_巧用喵影关键帧制作滚动水印,让视频小偷无可盗
- POJ - 3415 Common Substrings(长度不小于K的公共子串个数)
- 产品运营 跨境支付_餐饮网店的运营 跨境支付哪个平台最好
- 活动目录系列之二:单域环境的实现(单站点)
- word 2013 长篇文档排版案例教程
- [刷机教程] android系列 adb操作命令详解,常用adb操作命令详解
- android onitemclick参数,Android里的AdapterView中OnItemClickListener监听器四个参数的含义...
- DM达梦DSC共享集群+DW(单机)
- 一个逻辑问题的分析:“天堂与地狱的守卫”
- 用友U8+V13.0安装步骤
- 小葵花妈妈课堂开课了:《ArrayList源码浅析》
- Python优化算法05——蚁群算法和免疫优化算法
- java qq 传送文件_java 传送文件
- 找不到网站的服务器 dns 地址,为什么网站一直显示找不到服务器DNS地址?
- .NET Framework各个版本(3.5 - 4.0)
- FireStart教程:基于SharePoint的出差报销流程五
- 印象笔记导出比较好看的html,这些超实用印象笔记模板,让你高效率记笔记
- 大类资产配置(一)均值方差模型MOV