开发板采用核心板+底板结构,在我们的资料里提供了底板的原理图工程以及PCB工程,可以实现真正意义上的裁剪、定制属于自己的产品,满足更多应用场合。

迅为针对RK3576开发板整理出了相应的开发流程以及开发中需要用到的资料,并进行详细的说明。快速定位需要使用的文档,大大提升研发速度。

迅为iTOP-3576开发板采用瑞芯微RK3576高性能、低功耗的应用处理芯片,集成了4个Cortex-A72和4个Cortex-A53核心,以及独立的NEON协处理器。它适用于ARM PC、边缘计算、个人移动互联网设备及其他多媒体产品。

2.1.3 docker 环境安装

除了上诉两种安装方法之外,还有第三种 rknn_toolkit2 安装方法,这里用安装可能并不标准,Docker 是一个开源的应用容器引擎,它允许开发者将他们的应用及依赖打包到一个可移植的容器镜像中,瑞芯微提供了一个安装好 rknn_toolkit2 的 docker 环境,可以直接使用。具体下载链接为:

https://meta.zbox.filez.com/v/link/view/ef37a9687973439f94f5b06837f12527 提取码:rknn迅为已经提前将 rknn-toolkit2-2.3.0 的 docker 环境进行了下载,存放路径为“iTOP-3576 开发板\02_【iTOP-RK3576 开发板】开发资料\05_NPU 例程测试配套资料\04_docker”,如下图所示:

而在使用 docker 之前需要先在环境中安装 docker,具体安装步骤如下所示:

首先使用以下命令安装 docker 运行所需要的依赖,如下图所示:

sudo apt-get update

sudo apt-get install ca-certificates curl gnupg

依赖安装完成之后依次输入下面三条命令,创建、获取并信任 Docker 的 GPG 公钥:

sudo install -m 0755 -d /etc/apt/keyrings

curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o

/etc/apt/keyrings/docker.gpg

sudo chmod a+r /etc/apt/keyrings/docker.gpg

然后输入以下命令将 Docker 存储库添加到 Apt 软件包管理器的源列表中:

echo \ "deb [arch="$(dpkg

--print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg]

https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \

"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \

sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

最后更新软件源并安装 docker,如下图所示::

sudo apt-get update

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin

docker-compose-plugin

安装完成之后输入以下命令设置 docker 镜像加速站,具体步骤如下图所示:

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'

"registry-mirrors": ["https://docker.m.daocloud.io","https://docker.086181.xyz","https://docker.salty.eu.org"]

EOF

sudo systemctl daemon-reload

sudo systemctl restart docker

然后测试 helloworld,如下图所示:

sudo docker run hello-world

如果得到相同的打印,则证明 docker 安装成功了。然后将瑞芯微提供的 docker 镜像拷贝 到虚拟机 ubuntu 上,拷贝完成如下图所示:

然后输入以下命令加载该镜像,加载完成如下图所示:

sudo docker load -i rknn-toolkit2-v2.3.0-cp38-docker.tar.gz

接下来输入以下命令查看当前所有的 docker 镜像,其中第一个 ubuntu20 就是我们刚刚加 载完成的镜像,sudo docker images至此,关于 docker 的安装和配置就讲解完成了,然后使用以下命令运行 docker:

sudo docker run -t -i --privileged -v /dev/bus/usb:/dev/bus/usb -v /home/topeet/work/rknn-toolk

it2/rknn-toolkit2/examples/:/examples rknn-toolkit2:2.3.0-cp38 /bin/bash

关于该命令的详细解释如下所示:

(1)docker run 用于启动一个新的 Docker 容器实例。

(2)-t 这个参数为容器分配一个伪终端(tty)。

(3)-i 这个参数让容器的标准输入保持打开状态,允许您与容器进行交互。

(4)--privileged 这个参数赋予容器操作系统级别权限,以便能够访问主机的 USB 设备。

(5)-v /dev/bus/usb:/dev/bus/usb 这个参数将主机的 /dev/bus/usb 目录挂载到容器的 /dev/bus/usb 目录,这样容器就可以 访问主机上的 USB 设备,后续会使用 USB 连接开发板,从而使能 adb 进行连板推理。

(6)-v /home/topeet/work/rknn-toolkit2/rknn-toolkit2/examples/:/examples

将主机的 /home/topeet/work/rknn-toolkit2/rknn-toolkit2/examples/ 目录挂载到容器的/examples 目录,这允许容器访问主机上的 RKNN 工具包示例代码,根据大家具体的环境来即可。

(7)rknn-toolkit2:2.3.0-cp38 要运行的 Docker 镜像的名称和标签。

(8)/bin/bash这是在容器中要执行的命令,即启动 Bash shell。

然后输入 python3 进入 python 命令行,然后依次输入以下内容,能打印出 rknn_toolkit2 版本证明安装成功,

from rknn.api import RKNN

RKNN(verbose=True) 至此,使用 rknn_toolkit2 的 docker 环境就演示完成了,在后面的小节中会对 rknn_toolkit2 的实际功能进行演示。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/84120.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/84120.shtml
英文地址,请注明出处:http://en.pswp.cn/web/84120.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

什么是 OpenFeigin ?微服务中的具体使用方式

什么是Feign&#xff1f; Feign 是一种声明式的 HTTP 客户端框架&#xff0c;主要用于简化微服务架构中服务之间的远程调用&#xff0c;也可以通过定义接口和注解的方式调用远程服务&#xff0c;无需手动构建 HTTP 请求或解析响应数据。Spring Cloud 对 Feign 进行了增强&…

对抗性提示:进阶守护大语言模型

人工智能模型正快速进化 —— 变得更具帮助性、更流畅&#xff0c;并且更深入地融入我们的日常生活和商业运营中。但随着其能力的提升&#xff0c;风险也在增加。在维护安全可信的人工智能方面&#xff0c;最紧迫的挑战之一是对抗性提示&#xff1a;这是一种微妙且通常富有创意…

运营商频段

以下是三大运营商&#xff08;中国移动、中国电信、中国联通&#xff09;及中国广电的 5G 主要频段 及其所属运营商的整理表格&#xff1a; 运营商频段上行频率 (MHz)下行频率 (MHz)带宽备注广电n28703-733758-788230MHz移动共享n794900-4960-60MHz-移动n412515-2675-160MHz-n7…

项目拓展-Apache对象池,对象池思想结合ThreadLocal复用日志对象

优化日志对象创建以及日志对象复用 日志对象上下文实体类 traceId 请求到达时间戳 请求完成时间戳 请求总共耗费时长 get/post/put/delete请求方式 Http状态码 原始请求头中的所有键值对 请求体内容 响应体内容 失败Exception信息详细记录 是否命中缓存 package c…

Javaweb - Vue入门

Vue是一款用于构建用户界面的渐进式的JavaScript框架。 使用步骤 引入Vue模块&#xff0c;创建Vue的应用实例&#xff0c;定义元素&#xff0c;交给Vue控制。 一、引入Vue模块 因为使用的是模块化的JavaScript&#xff0c;因此在script标签内要声明一个属性&#xff1a;typ…

C++ 标准模板库各个容器的应用场景分析

C 标准模板库&#xff08;STL&#xff09;中的容器分为序列式容器、关联式容器和无序容器&#xff0c;各自适用于不同场景。以下是主要容器的应用场景及案例&#xff1a; 一、序列式容器 元素按插入顺序存储&#xff0c;支持线性访问。 1. vector 场景&#xff1a;动态数组…

安装前端vite框架,后端安装fastapi框架

前期准备 首先新建一个文件夹&#xff0c;文件夹里面新建一个文件夹&#xff0c;用于安装依赖 安装vite框架 npm init -y 目的是安装package.json配置文件 npm install vite --save-dev 安装vite框架 安装完是这个样子 新建了一个文件夹和js文件 后端内容 main.js document.…

深度学习:基础与概念(第1章:深度学习革命)

目录 第1章&#xff1a;深度学习革命 1.1深度学习的影响 1.1.1医疗诊断 1.1.2蛋白质结构预测 1.1.3图像合成 1.1.4大语言模型 1.2一个教学示例 1.2.1合成数据 1.2.2线性模型 1.2.3误差函数 1.2.4模型复杂度 1.2.5正则化 1.2.6模型选择 1.3机器学习简史 1.3.1单层…

通过触发器统计访问数据库的客户端IP地址

通过触发器统计访问数据库的客户端IP地址 创建用户登录审计表创建登录审计触发器查看登录审计结果禁用和启用触发器创建用户登录审计表 创建记录表: create table appuser1.user_login_audit (login_time DATE,session_id number,username VARCHAR2(30),os_user VARCHAR2(30…

在MCU上的1微秒的延迟实现方案及测量方法

运行环境&#xff1a; stm32h743iit6; 主频480MHz; APB1; 240MHz; TIM5 240MHz; 预分频系数为1; 定时器计数频率240MHz&#xff1b; 应用需求&#xff1a;实现软件模拟IIC&#xff0c;延迟精度2个微秒&#xff1b; 量变引起质变&#xff0c;当延迟粒度太小时&#xff0c;需要考…

macos电脑本地搭建mistral-7b大模型出现4-bit量化和缓存不足问题的记录

问题背景 本人想再本地笔记本电脑上搭建一个mistral-7b的大模型&#xff0c;在搭建的过程中&#xff0c;出现了4-bit量化模式无法处理的问题&#xff0c;以及电脑内存/显存不足的问题&#xff0c;导致无法搭建 电脑硬件信息 名称&#xff1a;2019 Mac book pro 内存&#xff1a…

C# 基础知识总结(带详细文字说明)

1. 基础语法结构 C# 程序由命名空间、类和方法组成。每个程序必须有一个 Main 方法作为入口点。using 指令用于导入命名空间&#xff0c;Console.WriteLine() 是常用的输出方法。 csharp 复制 下载 using System; // 引入核心命名空间class Program // 类定义 {static v…

C#最佳实践:为何要统一命名

C#最佳实践:为何要统一命名 在 C# 编程的世界里,代码就像是一座庞大的数字城市,而命名则是城市中纵横交错的街道名称与建筑标识。如果没有统一的命名规范,这座城市将陷入混乱,开发者在其中探索、维护代码时也会迷失方向。统一命名不仅是一种编程习惯,更是保障代码质量、…

通过后端连接Opengauss数据库的方法

文章目录 通过后端连接Opengauss数据库的方法一、为什么默认不能访问&#xff1f;二、要让普通用户从宿主机访问数据库&#xff0c;需要以下几个步骤&#xff1a;1. 使用 omm 超级用户登录数据库2. 创建一个应用程序专用用户&#xff0c;并设置密码3. 提供给应用程序专用用户对…

AWS Config:概述、优势以及如何开始?

在当今云原生架构快速发展的背景下&#xff0c;越来越多企业意识到资源配置管理和合规性审查的重要性。作为 AWS 官方授权代理商&#xff0c;在云上致力于为企业客户提供全面、可靠的云服务解决方案&#xff0c;帮助企业轻松上云、合规运营。本文将为您详细解读 AWS Config ——…

金融领域LLM开源测试集

BizFinBench 中文 金融业务场景基准数据集 结合迭代校准评估框架IteraJudge&#xff0c;对25个先进LLM进行全面评估&#xff0c;发现在金融AI领域与人类期望存在显著性能差距。 https://arxiv.org/pdf/2505.19457 https://github.com/HiThink-Research/BizFinBench/tree/m…

跨语言RPC:使用Java客户端调用Go服务端的JSON-RPC服务

在分布式系统开发中&#xff0c;不同编程语言之间进行通信是一个常见的需求。通过远程过程调用&#xff08;RPC&#xff09;技术&#xff0c;我们可以让不同的程序像调用本地方法一样调用远程的服务。本文将介绍如何使用Go语言编写一个简单的JSON-RPC服务&#xff0c;并使用Jav…

UE5 创建AI控制器、AI行为树和黑板

UE5 创建AI控制器、AI行为树和黑板 一、创建AI控制器AIController&#xff08;大脑&#xff09; 二、创建AI行为树和黑板 1&#xff1a;AI人工智能 2&#xff1a;行为树 3&#xff1a;黑板 三、AI行为树蓝图和添加黑板 1&#xff1a;添加黑板&#xff08;脑电波&#xff09;…

CDN加速导致CLS升高图片托管服务器的3个选择标准!

许多网站为了提升加载速度&#xff0c;会采用CDN加速服务分发图片等静态资源 这样做可能导致CLS&#xff08;累积布局偏移&#xff09;指标升高&#xff0c;拖累SEO评分。 这一问题通常源于CDN的异步加载机制或图片尺寸未预定义&#xff0c;使得页面布局在渲染过程中频繁变动。…

MySQL(77)如何设置自动备份任务?

设置自动备份任务可以确保你的数据库定期备份&#xff0c;防止数据丢失。以下是如何使用 Bash 脚本和 Cron 任务在 Linux 系统上设置 MySQL 数据库的自动备份任务的详细步骤和代码示例。 1. 编写备份脚本 首先&#xff0c;我们需要编写一个备份脚本。这个脚本将包含执行备份的…