V853 NPU的demo试玩
-
一、Tina Linux 5.0编译
(一)下载源码
V853的Tina Linux 5.0 SDK源码在全志客服服务平台 下载即可,这个要绝对表扬,平台上D1、V853、XR806的芯片相关SDK等资料全部直接可以下载。
官方V853 SDK使用的kernel是4.9,比D1的5.4 kernel版本低点,问了大佬,大约4.9上V853板子的驱动完善。
按照官方下载文档,一步步走即可,要注意的是中间不要切换用户,SSH key-gen获得的密钥放在跟后续repo操作用户不同的目录下,导致repo失败。
(二)源码编译
Tina Linux 5.0 SDK源码编译有2中方式,一种常规Linux编译,另外一种buildroot方式,本人直接选择Linux(openWRT)方式。从源码到img固件,需要二部分配置,一块是Linux(openWRT)系统相关工具配置,另外一部分是Tina 5.0相关功能的配置。本人采取如下步骤
1、编译环境设置;
root@EliteDesk:/media/tina-v853$ source build/envsetup.sh NOTE: The SDK(/media/tina-v853) was successfully loaded load openwrt... ok Please run lunch next for openwrt. load buildroot,bsp...ok Please run ./build.sh config next for buildroot,bsp.
2、选择编译方案;
root@EliteDesk:/media/tina-v853$ lunch You're building on Linux Lunch menu... pick a combo: 1 v853-vision-tina Which would you like? [Default v853-vision]: 1 Jump to longan autoconfig /media/tina-v853/build.sh autoconfig -o openwrt -i v853 -b vision -n default ========ACTION List: mk_autoconfig -o openwrt -i v853 -b vision -n default;======== options : INFO: Prepare toolchain ... INFO: kernel defconfig: generate /media/tina-v853/kernel/linux-4.9/.config by /media/tina-v853/device/config/chips/v853/configs/visi on/linux-4.9/config-4.9 INFO: Prepare toolchain ... make: Entering directory '/media/tina-v853/kernel/linux-4.9' *** Default configuration is based on '../../../../../device/config/chips/v853/configs/vision/linux-4.9/config-4.9' # # configuration written to .config # make: Leaving directory '/media/tina-v853/kernel/linux-4.9' INFO: clean buildserver INFO: prepare_buildserver
3、Tina系统配置;
因为第二章是NPU相关功能使用,所以在第三步将NPU扩展包安装还有配置也放进来了。
将V853 NPU扩展包下载后放在Tina-V853目录下解压,如果解压有问题,基本是下载的问题,直接重新下载。
tar xvf npu_package.tar.gz
解压后的文件放在openwrt/packages/npu文件夹中:
make menuconfig将NPU相关功能加进来。
反正全部选上,后面用:
退出后保存,当然还可以选择配置Tina 5.0的其他功能,保存后退出。
4、make;
没啥好说的,这里面会有个mkImage的错误,问了很多人,后来在这个帖子里找到了答案【V853开发板试用】V853编译烧录疑难杂症汇总篇
make的时候可以看到NPU扩展包编译的情况:
最后就是编译成功:
5、pack。
PACK就是利用Tina的工具将之前make生成的文件打包,加入NPU扩展包后的img约70M,比起之前没加NPU扩展包的33M大了很多。
二、烧录
全志提供了很多种方法,本人选择的是PhoenixSuit,连上Type-C和计算机,打开PhoenixSuit待确认连接后将img烧入即可。
三、NPU功能测试
(一)Tina 5.0体验
IMG烧写完后,在PhoenixSuit上可以看到系统版本。
也可以通过ADB shell登录系统验证,比起开箱的ABD SHELL,可以明显看到Tina Linux 5.0字样,BusyBox版本也提升了。
可以看到,目录下已经有NPU扩展包的模型了,一个lenet模型,一个yolov3模型。
root@TinaLinux:/# ls /etc/models/ lenet_model.nb yolov3_model.nb
(二)NPU使用
V853内置最大 1T 算力 NPU,必须用上,第一章已经把官方NUP扩展包加入,选了三组图片测试。
1、Kids原图:
NPU执行log:
root@TinaLinux:~# yolov3 /etc/models/yolov3_model.nb kids.jpg [0xb6f28560]vip_init[104], The version of Viplite is: 1.8.0-0-AW-2022-04-21 Create Neural Network: 72.49ms or 72488.49us Start run graph [1] times... Run the 1 time: 204.67ms or 204672.98us vip run network execution time: Total 205.50ms or 205502.34us Average 205.50ms or 205502.34us data_format=2 buff_size=43095 data_format=2 buff_size=172380 data_format=2 buff_size=689520 person 99% 274 413 70 415 person 99% 153 309 106 415 person 99% 96 206 31 415 person 95% 2 141 71 415 person 86% 0 87 23 339
输出结果,很优秀:
2、cars原图
执行过程:
root@TinaLinux:~# yolov3 /etc/models/yolov3_model.nb cars.jpg [0xb6f62560]vip_init[104], The version of Viplite is: 1.8.0-0-AW-2022-04-21 Create Neural Network: 71.73ms or 71734.62us Start run graph [1] times... Run the 1 time: 204.71ms or 204714.50us vip run network execution time: Total 205.67ms or 205669.88us Average 205.67ms or 205669.88us data_format=2 buff_size=43095 data_format=2 buff_size=172380 data_format=2 buff_size=689520 car 100% 65 195 59 160 car 99% 23 154 185 298 car 99% 71 227 223 363 car 99% 204 343 83 240 car 97% 0 155 117 257 car 97% 349 415 175 294 car 92% 132 307 271 411 car 92% 0 49 13 107 car 88% 280 410 47 149 car 81% 19 123 3 83
识别结果:
3、人脸识别
原图:
执行过程:
root@TinaLinux:~# yolov3 /etc/models/yolov3_model.nb people.jpg [0xb6f8b560]vip_init[104], The version of Viplite is: 1.8.0-0-AW-2022-04-21 Create Neural Network: 71.99ms or 71992.21us Start run graph [1] times... Run the 1 time: 204.73ms or 204726.08us vip run network execution time: Total 205.66ms or 205664.12us Average 205.66ms or 205664.12us data_format=2 buff_size=43095 data_format=2 buff_size=172380 data_format=2 buff_size=689520 person 100% 107 263 33 231 person 100% 239 414 138 415 person 100% 98 172 121 240 person 99% 279 382 0 158 person 99% 0 95 107 415 person 95% 307 415 28 382 person 94% 80 277 217 415 person 93% 24 122 235 412 person 92% 164 268 0 143 person 83% 6 109 4 148
识别结果:
-
@yanmingjian 在 V853 NPU的demo试玩 中说:
3、Tina系统配置;
因为第二章是NPU相关功能使用,所以在第三步将NPU扩展包安装还有配置也放进来了。
将V853 NPU扩展包下载后放在Tina-V853目录下解压,如果解压有问题,基本是下载的问题,直接重新下载。
tar xvf npu_package.tar.gz这个NPU拓展包在哪里可以下载?
-
@nideyida 拓展包这里下 ->https://www.aw-ol.com/downloads?cat=18
各个芯片的文档、软件固件资料都在这里 -
这板子NPU功能非常强大,也给了现存的模块,期待有精彩继续
-
@haaland 正有此意,最近在做模型转换,突然发现CPU不支持AVX指令集…
-
大佬,v853 pack的时候遇到这个是啥问题 -
Copyright © 2023 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号