0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

OpenHarmony基于润和Hi3516开发套件

电子发烧友开源社区 来源:HarmonyOS官方合作社区 作者:HarmonyOS官方合作社 2022-05-07 10:16 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

概述

我们将在Hi3516DV300 SDK的基础之上进行开发,分别为手部检测+手势识别实验,垃圾分类实验。手部检测+手势识别实验以及垃圾分类实验,主要基于训练好的wk模型在板端进行部署,并充分发挥海思IVE、NNIE硬件加速能力,完成AI推理和业务处理。

目录

ai_sample在Hi3516DV300 SDK基础上进行开发,在利用媒体通路的基础上,通过捕获VPSS帧进行预处理操作,并送至NNIE进行推理,结合AI CPU算子最终得到AI Flag并进行相应业务处理,该AI sample集成了垃圾分类、手势检测识别两个基础场景,运用到媒体理论、多线程、IPC通信、IVE、NNIE等思想,实现了一个轻量级sample,方便开发者了解taurus Hi3516DV300的AI能力,ai_sample目录结构如下:

//device/soc/hisilicon/hi3516dv300/sdk_linux/sample/taurus/ai_sample│ BUILD.gn          # 编译ohos ai_sample需要的gn文件├─ai_infer_process       # AI前处理、推理、后处理相关接口│ ├─ai_infer_process.c│ └─ai_infer_process.h├─dependency         # ai sample依赖的一些功能,如语音播报│ ├─audio_test.c│ └─audio_test.h├─ext_util                     # 常用的基础接口、可移植操作系统接口posix等│ ├─base_inteRFace.c│ ├─base_interface.h│ ├─misc_util.c│ ├─misc_util.h│ ├─posix_help.c│ └─posix_help.h├─mpp_help               # 封装的媒体相关接口│ ├─include│ │ ├─ive_img.h│ │ └─vgs_img.h│ └─src│  ├─ive_img.c│  └─vgs_img.c├─scenario│ ├─cnn_trash_classify    # 垃圾分类sample│ │  ├─cnn_trash_classify.c│ │  └─cnn_trash_classify.h│ └─hand_classify       # 手部检测+手势识别sample│   ├─hand_classify.c│   ├─hand_classify.h│   ├─yolov2_hand_detect.c│   └─yolov2_hand_detect.h└─smp                      # ai sample主入口及媒体处理文件 ├─sample_ai_main.cpp ├─sample_media_ai.c └─sample_media_ai.h

拷贝第三方库

步骤1:在源码的根目录下,分步执行下面的命令,拷贝第三方库至ai sample中

mkdir device/soc/hisilicon/hi3516dv300/sdk_linux/sample/taurus/ai_sample/third_party/src/ -p
cp third_party/iniparser device/soc/hisilicon/hi3516dv300/sdk_linux/sample/taurus/ai_sample/third_party/src/ -rf

951c6a8e-cd9e-11ec-bce3-dac502259ad0.png

步骤2:使用IDE打开device/soc/hisilicon/hi3516dv300/sdk_linux/sample/taurus/ai_sample/third_party/src/iniparser/src/iniparser.c文件,把第15行的1024改成8192。

#define ASCIILINESZ     ((8192)) // (1024)

953ce552-cd9e-11ec-bce3-dac502259ad0.png

编译

在编译ai_sample之前,需确保OpenHarmony 小型系统的主干代码已经整编通过,且已经按照《修改源码及配置文件适配Taurus开发板》的内容进行修改。在单编ai_sample之前,需修改目录下的一处依赖,进入//device/soc/hisilicon/hi3516dv300/sdk_linux目录下,通过修改BUILD.gn,在deps下面新增target,"sample/taurus/ai_sample:hi3516dv300_ai_sample",如下图所示:

9556e7b8-cd9e-11ec-bce3-dac502259ad0.png

点击Deveco Device Tool工具的Build按键进行编译,具体的编译过程这里不再赘述,编译成功后,如下图所示:

957c5890-cd9e-11ec-bce3-dac502259ad0.png

编译成功后,即可在out/hispark_taurus/ipcamera_hispark_taurus_linux/rootfs/bin目录下,生成 ohos_camera_ai_demo可执行文件,如下图所示:

958d5230-cd9e-11ec-bce3-dac502259ad0.png

拷贝可执行程序和依赖文件至开发板的mnt目录下

方式一:使用SD卡进行资料文件的拷贝

首先需要自己准备一张SD卡:

步骤1:将编译后生成的可执行文件拷贝到SD卡中。

步骤2:将devicesochisiliconhi3516dv300sdk_linuxoutlib目录下的libvb_server.so和 libmpp_vbs.so拷贝至SD卡中

步骤3:将device/soc/hisilicon/hi3516dv300/sdk_linux/sample/taurus/目录下的models文件夹和aac_file文件夹拷贝至SD卡中。(前提是按照《获取sample依赖的资源文件到本地》文档获取了资源文件)

95ae0a5c-cd9e-11ec-bce3-dac502259ad0.png

步骤4:可执行文件拷贝成功后,将内存卡插入开发板的SD卡槽中,可通过挂载的方式挂载到板端,可选择SD卡 mount指令进行挂载。

mount -t vfat /dev/mmcblk1p1 /mnt
# 其中/dev/mmcblk1p1需要根据实际块设备号修改

挂载成功后,如下图所示:

95cfaeaa-cd9e-11ec-bce3-dac502259ad0.png

方式二:使用NFS挂载的方式进行资料文件的拷贝

首先需要自己准备一根网线:

步骤1:参考博客链接中的内容,进行nfs的环境搭建;

步骤2:将编译后生成的可执行文件拷贝到Windows的nfs共享路径下;

步骤3:将devicesochisiliconhi3516dv300sdk_linuxoutlib目录下的libvb_server.so和 libmpp_vbs.so拷贝至Windows的nfs共享路径下;

步骤4:将device/soc/hisilicon/hi3516dv300/sdk_linux/sample/taurus/目录下的models文件夹和aac_file文件夹拷贝至Windows的nfs共享路径下(前提是按照《获取sample依赖的资源文件到本地》文档获取了资源文件)。

95f2c4a8-cd9e-11ec-bce3-dac502259ad0.png

步骤5:依赖文件拷贝至Windows的nfs共享路径下后,执行下面的命令,将Windows的nfs共享路径挂载至开发板的mnt目录下

mount -o nolock,addr=192.168.200.1 -t nfs 192.168.200.1:/d/nfs /mnt

拷贝mnt目录下的文件至正确的目录下

执行下面的命令,拷贝mnt目录下面的ohos_camera_ai_demo至userdata目录,拷贝mnt目录下面的libvb_server.so和 libmpp_vbs.so至/usr/lib/目录下,再将models和aac_file文件夹拷贝至userdata目录下

cp /mnt/ohos_camera_ai_demo /userdata/
cp /mnt/*.so /usr/lib/
cp /mnt/models /userdata/ -rf
cp /mnt/aac_file /userdata/ -rf

960a1202-cd9e-11ec-bce3-dac502259ad0.png

执行下面的命令,给ohos_camera_ai_demo文件可执行权限

chmod 777 /userdata/ohos_camera_ai_demo

审核编辑 :李倩


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cpu
    cpu
    +关注

    关注

    68

    文章

    11375

    浏览量

    226427
  • 手势识别
    +关注

    关注

    8

    文章

    233

    浏览量

    49340
  • 图像识别
    +关注

    关注

    9

    文章

    535

    浏览量

    40245

原文标题:OpenHarmony AI图像识别开发—基于润和Hi3516开发套件

文章出处:【微信号:HarmonyOS_Community,微信公众号:电子发烧友开源社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Lattice Semiconductor ProcessorPM开发套件:助力电子工程师高效设计

    Lattice Semiconductor ProcessorPM开发套件:助力电子工程师高效设计 一、引言 在电子设计领域,一款优秀的开发套件能为工程师节省大量时间和精力。Lattice
    的头像 发表于 05-21 14:55 121次阅读

    Power Manager II Hercules开发套件快速上手

    Power Manager II Hercules开发套件快速上手 在电子设计领域,开发套件的高效使用能极大地推动项目进展。Power Manager II Hercules开发套件为电子工程师提供
    的头像 发表于 05-21 14:30 136次阅读

    Lantronix xPico开发套件:开启嵌入式设备开发新征程

    Lantronix xPico开发套件:开启嵌入式设备开发新征程 在当今的电子技术领域,嵌入式设备的开发需求日益增长,而Lantronix xPico开发套件为工程师们提供了一个强大而
    的头像 发表于 05-21 13:50 96次阅读

    探索CYUSBS234 USB - Serial开发套件:功能、配置与应用

    探索CYUSBS234 USB - Serial开发套件:功能、配置与应用 在电子设计领域,开发套件是工程师们探索新技术、验证设计方案的重要工具。今天,我们就来深入了解一下Cypress
    的头像 发表于 05-18 13:05 149次阅读

    Sense2GoL开发套件:24 GHz传感应用的理想之选

    Sense2GoL开发套件:24 GHz传感应用的理想之选 在电子工程师的日常工作中,开发套件的选择对于项目的成功至关重要。今天,我们就来深入了解一款功能强大的24 GHz传感器开发套件
    的头像 发表于 05-18 12:20 243次阅读

    CYUSBS236 USB - Serial开发套件使用指南

    CYUSBS236 USB - Serial开发套件使用指南 一、引言 在当今的电子开发领域,USB - Serial接口的应用极为广泛。Cypress的CYUSBS236 USB - Serial
    的头像 发表于 05-18 09:30 303次阅读

    CAN Bus 24开发套件:开启CAN网络开发之旅

    CAN Bus 24开发套件:开启CAN网络开发之旅 在电子工程领域,CAN(Controller Area Network)总线技术凭借其高可靠性、实时性和抗干扰能力,在汽车、工业自动化等众多领域
    的头像 发表于 05-13 13:50 129次阅读

    探索Avago HDJD - JD05开发套件:数字颜色传感的新体验

    探索Avago HDJD - JD05开发套件:数字颜色传感的新体验 在电子设计领域,颜色传感器的应用越来越广泛,从消费电子到医疗设备,都能看到它们的身影。Avago Technologies推出
    的头像 发表于 05-10 15:15 321次阅读

    迅为iTOP-Hi3516CV610开发板SDK升级更新

    为了让大家在使用迅为iTOP-Hi3516CV610开发板进行产品开发时,拥有更强大的性能和更丰富的功能,我们对开发板的底层SDK进行了重大版本更新!
    的头像 发表于 03-27 14:26 597次阅读

    全新Altera Agilex开发套件正式发布

    Altera 正式面向嵌入式和 FPGA 开发推出三款紧凑型、高性能开发套件,以丰富互联与扩展能力,加速从概念到原型的验证流程。
    的头像 发表于 03-19 16:06 458次阅读
    全新Altera Agilex<b class='flag-5'>开发套件</b>正式发布

    DA14535 USB开发套件硬件解析:开启低功耗蓝牙开发新征程

    DA14535 USB开发套件硬件解析:开启低功耗蓝牙开发新征程 在当今的电子设备开发领域,低功耗蓝牙技术因其广泛的应用前景和高效的性能表现,受到了众多开发者的青睐。Renesas的D
    的头像 发表于 12-29 11:00 1382次阅读

    迅为iTOP-Hi3516开发板驱动开发资料全面上线,构建从入门到精通的完整学习路径!

    迅为iTOP-Hi3516开发板linux驱动开发资料全面上线,构建从入门到精通的完整学习路径!
    的头像 发表于 12-19 15:47 954次阅读
    迅为iTOP-<b class='flag-5'>Hi3516</b><b class='flag-5'>开发</b>板驱动<b class='flag-5'>开发</b>资料全面上线,构建从入门到精通的完整学习路径!

    迅为Hi3516CV610开发板强劲内核-海思Hi3516CV610核心板

    迅为Hi3516CV610开发板强劲内核-海思Hi3516CV610核心板
    的头像 发表于 09-30 15:19 2728次阅读
    迅为<b class='flag-5'>Hi3516</b>CV610<b class='flag-5'>开发</b>板强劲内核-海思<b class='flag-5'>Hi3516</b>CV610核心板

    ‌TI CC1311P3 LaunchPad™开发套件技术解析与应用指南

    Texas Instruments CC1311P3 LaunchPad™ 开发套件设计用于加速开发SimpleLink™ 亚1GHz无线MCU。该器件支持TI 15.4堆栈和专有射频协议。CC13XX-CC26XX软件开发套件
    的头像 发表于 09-01 15:19 1872次阅读
    ‌TI CC1311P3 LaunchPad™<b class='flag-5'>开发套件</b>技术解析与应用指南

    和AI Camera Hi3516DV300烧录后,屏幕显示异常

    和AI Camera Hi3516DV300烧录后,并且配置bootloader后屏幕显示异常,屏幕显示如下截图所示:
    发表于 06-13 22:18