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

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

3天内不再提示

基于凌蒙派开发板的FastDeploy适配

福州市凌睿智捷电子有限公司 2023-02-22 14:44 次阅读

FastDeploy简介

FastDeploy是一款全场景、易用灵活、极致高效的AI推理部署工具, 支持云边端部署。提供超过 160+Text,Vision, Speech和跨模态模型开箱即用的部署体验,并实现端到端的推理性能优化。包括 物体检测、字符识别(OCR)、人脸、人像扣图、多目标跟踪系统、NLP、Stable Difussion文图生成、TTS 等几十种任务场景,满足开发者多场景、多硬件、多平台的产业部署需求。

准备工作本文的FastDeploy适配过程需要准备如下:·凌蒙派-RK3568开发板(即需FastDeploy适配的设备终端)·Ubuntu(即建立于虚拟机的Linux编译环境)目前,我已将FastDeploy适配到凌蒙派开发板上,可用于目标检测、人脸检测、人脸识别、人脸对齐、图像分割、OCR等领域,这将大大提高凌蒙派开发板在边缘计算方面的能力。

编译步骤

我们推荐在PC上进行交叉编译(即在Ubuntu进行交叉编译)。

git clone https://github.com/PaddlePaddle/FastDeploy.gitcd FastDeploy# 如果您使用的是develop分支输入以下命令git checkout developmkdir build && cd buildcmake .. -DCMAKE_C_COMPILER=/home/zbc/opt/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc \-DCMAKE_CXX_COMPILER=/home/zbc/opt/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-g++ \-DCMAKE_TOOLCHAIN_FILE=./../cmake/toolchain.cmake \-DTARGET_ABI=arm64 \-DENABLE_ORT_BACKEND=OFF \-DENABLE_RKNPU2_BACKEND=ON \-DENABLE_VISION=ON \-DRKNN2_TARGET_SOC=RK356X \-DCMAKE_INSTALL_PREFIX=${PWD}/fastdeploy-0.0.0make -j12make install

目标检测模型速度表

为了方便大家选择最适合自己的模型,我们选取了目前最流行的几个模型,并整理了模型速度表供大家快速浏览。以下测试速度均为端到端的速度。

2424a866-b220-11ed-ad0d-dac502259ad0.png

Demo演示

FastDeploy提供了统一的接口,可以快速的切换模型,这里以Yolov5为例子,展示如何在凌蒙派RK3568上进行目标检测。

编写代码

// Copyright (c) 2022 PaddlePaddle Authors. All Rights Reserved.//// Licensed under the Apache License, Version 2.0 (the "License");// you may not use this file except in compliance with the License.// You may obtain a copy of the License at//// http://www.apache.org/licenses/LICENSE-2.0//// Unless required by applicable law or agreed to in writing, software// distributed under the License is distributed on an "AS IS" BASIS,// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.// See the License for the specific language governing permissions and// limitations under the License.#include "fastdeploy/vision.h"void RKNPU2Infer(const std::string& model_file, const std::string& image_file) {auto option = fastdeploy::RuntimeOption();option.UseRKNPU2();auto format = fastdeploy::RKNN;auto model = fastdeploy::RKYOLOV5(model_file, option,format);auto im = cv::imread(image_file);fastdeploy::DetectionResult res;fastdeploy::TimeCounter tc;tc.Start();if (!model.Predict(im, &res)) {std::cerr << "Failed to predict." << std::endl;return;}auto vis_im = fastdeploy::VisDetection(im, res,0.5);tc.End();tc.PrintInfo("RKYOLOV5 in RKNN");std::cout << res.Str() << std::endl;cv::imwrite("vis_result.jpg", vis_im);std::cout << "Visualized result saved in ./vis_result.jpg" << std::endl;}int main(int argc, char* argv[]) {if (argc < 3) {std::cout<< "Usage: infer_demo path/to/model_dir path/to/image run_option, ""e.g ./infer_model ./picodet_model_dir ./test.jpeg"<< std::endl;return -1;}RKNPU2Infer(argv[1], argv[2]);return 0;}

编译代码

# 编译mkdir buildcd buildcmake .. -DFASTDEPLOY_INSTALL_DIR=${PWD}/../fastdeploy-0.0.0make -j4# 下载图片wgethttps://gitee.com/paddlepaddle/PaddleDetection/raw/release/2.4/demo/000000014439.jpg# 运行./infer_rkyolov5 ../Model/yolov5-s-relu/yolov5s_relu_tk2_RK356X_i8.rknn./000000014439.jpg

展示结果

输入图片

24473020-b220-11ed-ad0d-dac502259ad0.png

输出图片

24cd8760-b220-11ed-ad0d-dac502259ad0.png

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

    关注

    87

    文章

    26487

    浏览量

    264180
  • 开发板
    +关注

    关注

    25

    文章

    4441

    浏览量

    94199
收藏 人收藏

    评论

    相关推荐

    飞腾开发板评测获奖名单公布!!!

    恭喜以上小伙伴!经过飞腾专家评选,前三名小伙伴可保留飞腾开发板,其余小伙伴需退回开发板,有问题请微信联系工作人员(微信号:elecfans123) 飞腾
    发表于 01-30 17:02

    【飞腾4G版免费试用】飞腾4G版开发板套装测试及环境搭建

    先简单介绍一下这款飞腾4G版开发板套装; 飞腾是由中电港萤火工场研发的一款面向行业工程师、学生和爱好者的开源硬件。主板处理器采用飞腾嵌入式四核处理器,兼容ARM V8架构,包含2个FTC664核
    发表于 01-22 00:47

    【飞腾4G版免费试用】飞腾开发板运行Ubuntu系统

    飞腾4G版开发板是一款做工精细,布线合理的开发板,今天给大家介绍一下如何运行Ubuntu系统,下面是网上的资料,帮助大家快速认识飞腾4G版开发板
    发表于 01-08 22:40

    Elfboard\"自创一\" 共创社活动 --- Elfboard开发板初识1.0

    开发板,收到手后,简单看下外观就可以尽情试用了。(仪式感满满,不错~) 本次体验分为以下几个部分: 1.首先去公司官网(手把手教你学Linux系列课程(持续更新中) | ElfBoard 官网-嵌入式
    发表于 01-04 10:25

    【核桃1B 开发板试用体验】开箱体验

    ,成为一款名副其实的理财产品,我面对高昂的价格只能望而却步,核桃尺寸兼容树莓。是一款性能非常强大的Linux开发板,可以兼容树莓的同时提供更丰富的功能,比如核桃
    发表于 01-03 19:22

    【飞腾4G版免费试用】初步认识飞腾4G版开发板

    这几天收到飞腾 4G 基础套件,给大家做个介绍,让大家可以了解一下这块开发板, 飞腾 4G 基础套件单板+电源+风扇 开源开发板 支持Ubuntu SylixOS OpenKyli
    发表于 01-02 22:23

    【核桃1B 开发板试用体验】+初识篇

    核桃(WalnutPi)1B开发板是一款集设计、研发和制造均源于国产的开发板,其定位是打造一款高性价比而且功能齐全的卡片电脑(SBC),在尺寸上它兼容树莓,是一款性能非常强大的Li
    发表于 01-01 21:58

    【悟空H3开发板免费体验】悟空H3开发板

    悟空H3开发版是一款由悟空派团队开发的基于RISC-V架构的开发板。该开发板采用了SiFive U74-HiFive Unleashed
    发表于 09-19 10:04

    【飞AM6254开发板试用】 4-机器视觉(原创)

    AM6254开发板试用】+3摄像头Linux驱动安装适配(原创) - 飞嵌入式 - 电子技术论坛- 广受欢迎的专业电子论坛! https://bbs.elecfans.com
    发表于 09-12 22:57

    【飞AM6254开发板试用】+3摄像头Linux驱动安装适配(原创)

    接上两篇:【飞AM6254开发板试用】+1控制小车(原创) - 飞嵌入式 - 电子技术论坛- 广受欢迎的专业电子论坛! https://bbs.elecfans.com
    发表于 09-12 16:33

    悟空H3开发板开发资料免费下载

    悟空是一款开源的单板卡片电脑,新一代的arm开发板,它可以运行Android 4.4、Ubuntu 和 Debian 等操作系统。悟空开发板 (悟空
    发表于 09-07 11:10

    【CW32饭盒开发板试用体验】+可爱的饭盒

    CW32F030评估 如今推出的CW32饭盒,则无论是包装还是在开发板的设计上都向前大大地跨进了一步。 饭盒的塑料盒包装如图2所示,要显得精致许多。此外,其资源配置也更加的丰富
    发表于 06-01 13:53

    【CW32饭盒开发板试用体验】+初识CW32饭盒开发板

    盼星星,盼月亮,终于收到了CW32饭盒开发板。回想起那天答复参加活动邮件发出去的那一刻,就在期盼。 以前也了解过CW32单片机,这是一款非常优秀的32位单片机。外部资源也丰富。这回的CW32饭盒
    发表于 05-29 15:51

    【CW32饭盒开发板试用体验】开发板简单介绍和开发板初体验

    今天开箱一款基于CW32F030C8T6的开发板开发板命名为CW32饭盒。 下面简单的对开发板做个介绍: CW32饭盒板载资源非常丰富
    发表于 05-22 10:56

    【CW32饭盒开发板试用体验】开发板简单介绍及初体验

    今天开箱一款基于CW32F030C8T6的开发板开发板命名为CW32饭盒。 下面简单的对开发板做个介绍: CW32饭盒板载资源非常丰富
    发表于 05-22 10:47