Android SDK入门指南

这里以GTISDK v5.0.2.0为例。

准备工作

本文需要使用以下设备(或其代替品):

  • Core-3399-JD4 v2.0及其底板

  • 显示器

  • 键盘和鼠标

  • 电源

  • 联网的PC

PC环境

PC中需安装有Android Studio和Android SDK。这里使用的是Android Studio 3.5.2,其它版本可自行尝试。

PC中请确保能使用adb命令。

烧写Android系统

Core-3399-JD4 v2.0的Android系统可通过此链接进行下载烧写。其它的板子请从资料下载中心进入对应的页面进行下载最新的系统。

编译与安装

GTISDK v5.0.2.0在AI资料U盘中的路径为/Common/GNet/GTISDK_v5.0.2.0,从此路径下找到GTISDK-Linux_x86_64_v5.0.2.0.tar.gz解压到PC上。

Android的demo源码在GTISDK中的路径为/Apps/Android/app/gtiDemo,在Android Studio中打开此目录。

通过双公头usb数据线连接Core-3399-JD4 v2.0与PC,可参考ADB 使用一节。

连接PC后,点击Android Studio的run按钮进行编译与安装。App运行的时候会提示获取存储权限,请赋予App权限。

接着需要把demo需要的模型和数据复制到板子上。模型和数据在GTISDK中的位置分别为/Apps/Models/Apps/Data,将它们复制到板子上,可通过如下的命令:

adb push Apps/Models/ /sdcard/gti/Models
adb push Apps/Data /sdcard/gti

运行与测试

在运行前需要先设置NPU节点的权限,设置权限的操作每次重启系统或拔插USB Dongle都需要重新执行

SPR 2801需要设置max_sectors为2048,设置/dev目录下的对应的设备节点(如/dev/sg0)权限使App可读写,可通过在adb shell中执行如下命令进行快速设置:

su
find /sys/devices/ -name max_sectors -exec sh -c 'echo 2048 > "$1"' _ {} \;
chmod 777 /dev/sg*

SPR 5801需要设置对应的usb设备节点(如/dev/bus/usb/002/004)权限使App可读写,可通过在adb shell中执行如下命令进行快速设置:

su
chmod 777 /dev/bus/usb/* -R

根据NPU型号设置好后可点击gtiDemo运行App,根据提示首先选择NPU对应的需要加载的模型,如:/sdcard/gti/Models/5801/gti_resnet18_fc1000_5801.model,如果使用的板子不是Core-3399-JD4 v2.0请根据NPU型号选择对应的模型;接着App会提示选择一个文件夹,可选择/sdcard/gti/Data/Image_bmp_c1000,最后即进入推理界面。