| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 一个垃圾分类项目带你玩转飞桨(2) -> 正文阅读 |
|
[人工智能]一个垃圾分类项目带你玩转飞桨(2) |
一个垃圾分类项目带你玩转飞桨(2)接上文《一个垃圾分类项目带你玩转飞桨(1)》:基于PaddleClas实现垃圾分类,导出inference模型利用PaddleHub Serving 进行服务化部署,并利用PYQT5实现可视化。 本文同以垃圾分类为项目基点,采用PaddleX『飞桨』深度学习全流程开发工具,基于Yolov3-DarkNet53模型,实现多目标垃圾分类检测。并基于EdgeBoard边缘部署设备对模型进行落地部署,从而加快垃圾分类效率,助力社会环保。 基于PaddleX实现垃圾检测随着垃圾分类政策的深入落地,现如今,垃圾分类相关产品如雨后春笋拔地而起。然如今垃圾分类产品,多采用计算机视觉中的图像分类技术对垃圾进行识别分类,此方案虽能较为准确的识别垃圾种类,但其受限于技术本身,其识别图像为保证识别准确率只能存在于一种垃圾,即:用户在使用此产品时,只能在本次识别过程中在识别区放置一种垃圾。故而此方案极大地阻碍了垃圾分类效率的提升。而采用目标检测技术能够有效解决此问题,加速垃圾分类效率,真正助力垃圾分类政策的深入落地,向社会普及垃圾分类知识。 PaddleX相关介绍🤗 PaddleX 集成飞桨智能视觉领域图像分类、目标检测、语义分割、实例分割任务能力,将深度学习开发全流程从数据准备、模型训练与优化到多端部署端到端打通,并提供统一任务API接口及图形化开发界面Demo。开发者无需分别安装不同套件,以低代码的形式即可快速完成飞桨全流程开发。 🏭 PaddleX 经过质检、安防、巡检、遥感、零售、医疗等十多个行业实际应用场景验证,沉淀产业实际经验,并提供丰富的案例实践教程,全程助力开发者产业实践落地。 目前PaddleX已发布2.0.4rc版本正式发布,实现动态图的全面升级。本项目为保证模型能顺利部署于EdgeBoard开发板上,仍采用1.3.11版本。 解压数据集本项目挂载数据集提供了既符合VOC格式又符合COCO格式的数据集,可以满足PaddleX或PaddleDetection模型训练的数据集格式要求。
模型训练
1、考虑到本项目需部署于EdgeBoard开发板中,故安装paddlex==1.3.11版本。
2、模型训练
3、模型导出
基于EdgeBoard实现模型部署EdgeBoard简介EdgeBoard是百度面向嵌入式与边缘计算场景打造的AI解决方案。丰富的硬件选型,可满足多变的边缘部署需求。无缝兼容百度大脑工具平台与算法模型,开发者既可以选用已有模型,也可以自定义算法。同时,模型训练与部署全程可视化,极大降低了开发与集成门槛。EdgeBoard灵活的芯片架构,可适配行业内最前沿、效果最好的算法模型,基于EdgeBoard打造的软硬一体产品,可广泛适用于安防、工业、医疗、零售、教育、农业、交通等场景。
硬件准备
EdgeBoard具体操作
EdgeBoard关机时,建议先通过poweroff命令将软件操作系统断电,再切断外部电源,可以保护SD卡文件系统不被意外损坏。
EdgeBoard重启有两种方式,一种是在操作系统的窗口输入reboot命令,完成系统重启;另一种是短按设备上的reset按键,同样实现EdgeBoard系统重启 Windows环境 配置电脑IP 电脑配置IP地址步骤如下:电脑和Edgeboard直连后,进入控制面板–>网络和Internet–>查看网络状态和任务 点击以太网 点击属性 点击Internet协议版本4 设置电脑IP地址为静态IP地址 点击确定。 登录Edgeboard系统 Edgeboard系统是精简后的linux系统,可以通过网络SSH协议与其通讯。给设备上电后,通过电脑登录到Edgeboard系统中进行操作,Edgeboard系统的用户名和密码均为root。本教程使用window自带的终端Windows PowerShell ,具体操作如下 打开Windows PowerShell,输入ssh root@192.168.1.254,点击回车,如果第一次连接该ip地址,会询问是否接入,输入yes,再回车,password为不可见字符,输入root后,直接回车,即可进去Edgeboard系统 EdgeBoard串口连接设备通讯 如果出现ssh连接不上,或者(设备ip动态获取后)需要查看ip,需要使用串口进入设备的控制台。 Windows连接串口方法 1.安装驱动:初次使用usb转串口设备需安装驱动 CP210x_Windows_Drivers,下载链接:https://cn.silabs.com/developers/usb-to-uart-bridge-vcp-drivers 2.安装调试工具:下文以MobaXterm工具为例来介绍,工具下载:https://mobaxterm.mobatek.net/download.html 连接设备 2.打开MobaXterm,点击Session,进入Session settings,选择Serial,Serial port选择映射出的端口,Speed为115200,Flow Control为None,点击OK,如下图所示 3.配置完成后进入Session页面,给Edgeboard上电,会看到系统启动信息,待启动完成后输入用户名和密码root/root,即可进入设备系统。如下图所示 文件传输方式 推荐工具:winscp,下载链接:https://winscp.net/eng/download.php 「尊重知识产权,遵守工具使用规范,推荐您使用正版软件」 参照如下配置后,文件协议:scp;主机名:Edgeboard的IP;用户名&密码:root&root。点击登录 登录后,可以直接通复制粘贴命令进行电脑和设备间文件的拷贝 基于Edgeboard 1.8.0模型部署 上传模型 模型训练完成后,将模型文件上传到Edgeboard内,存放于/home/root/workspace/PaddleLiteDemo/res/models选择与模型相对应的文件夹,比如yolov3模型存放在detection目录,模型文件中需要包含于示例对应的文件,包括 model, params:模型文件(paddlepaddle版本不同,训练出的模型名称或有差别,只要在config.json中对应上即可) label_list.txt:模型标签文件 img:放置预测图片的文件夹 config.json:配置文件,需要基于示例给出的结构,更改为自训练模型的参数 修改模型配置文件参数
注意:config.json文件内的mean、scale计算方式与训练模型时的计算方式可能不同,一般有如下两种方式: 例如R为一张图片中一个像素点的R通道的值 ①(R / 255 – mean‘) / std’ ②(R – mean) * scale(EdgeBoard处理方式) 如果训练模型的mean和std为第一种计算方式,就需要通过如下运算,计算为Edgeboard的处理方式。
修改系统参数配置文件 系统配置文件存放于/home/root/workspace/PaddleLiteDemo/configs内,根据模型属性修改对应的配置文件,比如yolov3模型,修改image.json文件中模型文件路径以及预测图片路径。
执行程序 模型配置文件和系统配置文件修改完成后,运行程序
bilibili效果展示连接 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 15:47:44- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |