` 瑞芯微RK1808计算棒试用体验(1)------开发环境搭建
近期收到了Elecfans 论坛的超级好物---Rockchip瑞芯微RK1808计算棒,给自己鼓掌拍拍手先。RK3399/Pro还有3288等IC,应该是大家都耳熟能详的嵌入式APU平台了,但是神经网络加速器NPU,这是瑞芯微的第一波产品。为了尝鲜NPU,下面让我们来好好体验下RK1808计算棒。
因为它是USB 接口的计算棒,不是开发板形式的嵌入式设备,这里就偷个懒,不再详细展示产品的各细节图片了,略过了开箱篇文档,直接上手试玩了。文挡最后附上美图,供大家欣赏。
首先,看过瑞芯微提供的入门指南文档发现http://t.rock-chips.com/wiki.php?mod=view&id=61,Toolkit既支持Windows10,也支持Linux和MacOS。我觉得Windows10部署Python比较麻烦,MacOS电脑自己也没有,这里个人更倾向于LinuxOS,故此选定Ubuntu18LTS作为主机OS。
其次,LinuxOS平台的话,有两个选择,LinuxOS物理主机和虚拟机,手头没有多余的台式机和笔记本电脑,这里我就用的VM虚拟机。其实我还有个联想的嵌入式平台栗子板P710,也是瑞芯微RK3399的APU,不过暂时先不用它,等用笔记本体验过简单开发流程后,在转移到嵌入式开发板平台上,可以做一个与机器视觉和其他AI有关联的智能产品demo玩玩。
最后,RK1808 计算棒有两种工作和开发模式,主动和被动。主动模式是计算棒当做主机,因为本身部署有Redhat的FedoraOS,所以可以使用各种类型的终端远程登录计算棒,APP应用程序和Toolkit都在计算棒上运行,只有处理数据源来自音视频传感器,处理结果以命令行方式展示出来。被动模式,则把计算棒当做一个同一网段的从机,APP应用软件可以运行在主机上,比如我的Ubuntu18虚拟机,Toolkit可以运行在计算棒上,二者通过IP通信,比如TCP/socket基本接口等。
弄清楚开发模式的区别后,这里我选择体验被动模式。当然大家都可以自由选择自己感兴趣的方式,来研究这个RK1808计算棒。阅览官方提供的文档,还有wiki你可以发现,计算棒支持的应用场景很多,应用方法也是不一而足的。
既然开发体验的目标确定了,下面就让我们开始这趟尝鲜之旅!
1 安装WMware12,具体步骤详见百度,教程很多就不啰嗦了。这里我用的12版,最新版本应该更高,不过我电脑上已经有了,就不去追新了。 2 从Ubuntu官网下载Ubuntu18桌面版的ISO文件,然后安装虚拟机,并完成VMware Tools的安装和设置,具体步骤详见百度,比较简单毋庸赘言。 3 将计算棒RK1808插入笔记本的USB接口,虚拟机软件提示是否把移动设备从主机转移到虚拟机中,如下图1所示,选择是。 4 如果Ubuntu18没有识别USB设备,记得通过虚拟机软件的菜单选择“连接RK1808S0”,成功后会自动打开USB磁盘,如下图2所示。
图1
图2
5 此时,可以用lsu***命令,显示一下设备。如下图3所示:ID2207:0018。与入门指南所说相同即可。 6 安装RKNN-Toolkit。这里必须先分别安装Python3.6,OpenCV,和pip3,准备好相关的依赖,然后安装wget,获取RKNN-Toolkit文件,继续安装依赖的TensorFlow模块,命令参考官方入门指南,最后再进行RKNN-Toolkit的安装。在Ubuntu18下载apt官方仓库的安装包时,下载比较慢,需要耐心等待,如果没耐心,可以百度下换到国内仓库比如阿里云的教程,可以增加点下载速度。还有就是官方仓库的pip3版本为9.0.1,可以用命令python3 -m pip install --upgrade pip升级一下到19.3.1。另外,如果pip3在安装TensorFlow模块报443错误,也可以pip3 install xxx -i https://pypi.tuna.tsinghua.edu.cn/simple 切换到清华的pypi 镜像站,安装计算棒必须依赖的模块。这里安装完之后,记得检验一下安装是否成功。具体命令和方法见官方入门指南。 7修改计算棒的设备访问权限,完全按照官方入门指南操作命令,结果一样即可。如果这里你使用的不是桌面版Ubuntu18而是服务器版的OS,没有GUI桌面环境,可以自己用mount命令手动挂载USB磁盘,其他步骤不变。结果如图4所示。
图3
图4
8 以上,准备工作都OK了,可以正式运行计算棒示例mobilenet_v1了。先从官方网站下载示例文件,并解压出来,然后进入目录执行test.py脚本程序,得到最后结果和入门指南一样即可,如图5和图6所示。官方7140us和140fps,我虚拟机7542us和132fps。 图5
图6
9 到此完成VMware虚拟机Ubuntu18OS平台上,被动开发模式下开发环境的搭建,和计算棒mobilenet_v1示例程序的体验,RK1808计算棒跑起来,打完收工。 10 接下来,需要深入了解程序源码,学习如何使用RKNN-Toolkit的SDK接口,并把它集成到自己要做的项目demo中去。
敬请期待后续的(2)------RKNN-Toolkit学习篇!
附计算棒美图 `
|