• 全志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.
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22

    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
    
    • 1
    • 2

    (二)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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    输出结果,很优秀:

    在这里插入图片描述

    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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22

    识别结果:

    在这里插入图片描述

    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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22

    识别结果:

    在这里插入图片描述
    原文链接:https://bbs.aw-ol.com/topic/2013/

  • 相关阅读:
    学生家乡网页设计作品静态HTML网页—— HTML+CSS+JavaScript制作辽宁沈阳家乡主题网页源码(11页)
    Vue 组件化
    JavaWeb-10月16笔记
    移动端布局
    图像处理解决方案 veImageX 技术演进之路
    Java直接量(字面量)及 Java运算符优先级
    TensorFlow 的基本概念和使用场景
    三台linux服务器部署ceph集群
    RSA加密的使用(前后端)
    Github星标90K?京东架构师一篇讲明白百亿级并发系统架构设计
  • 原文地址:https://blog.csdn.net/weixin_43094346/article/details/126698393