云养猪 - 猪只关键点检测【玩转华为云】

举报
HouYanSong 发表于 2024/01/22 05:35:12 2024/01/22
【摘要】 关键点检测可用于猪只骨架提取、姿态识别、体重估计等多方面的研究,本文将基于ModelArts和ModelBox开发一个猪只关键点检测的AI应用,并将其部署到RK3568开发板上。

云养猪 - 猪只关键点检测

关键点检测可用于猪只骨架提取、姿态识别、体重估计等多方面的研究,本文将基于ModelArts和ModelBox开发一个猪只关键点检测的AI应用,并将其部署到RK3568开发板上。

模型训练

demo.png

首先我们使用YOLOX训练了一个猪只目标检测模型,YOLOX是YOLO的无锚版本,设计更简单,且性能更好!它旨在弥合研究界和工业界之间的差距,详细内容可以参考Arxiv

下载.png

我们使用猪只目标检测数据集进行训练,训练前对该数据集进行了图像增强,包含两类图像piglet、swine,拥有3065张jpg图像数据以及对应的xml标签文件,训练日志如下:

Collage_20240121_083457.jpg

之后利用TensorFlow开发一个猪只关键点检测模型,使用预训练网络MobileNetV2作为卷积基提取图像特征,模型训练与转换教程可以参考我们发布的Notebook

屏幕截图 2024-01-21 093240.png

应用开发

图片1.jpg

1、在VS Code中使用Remote-SSH远程连接RK3568开发板(算力:0.8Tops)

屏幕截图 2024-01-22 005548.png2、下载ModelBox SDK插件安装运行

屏幕截图 2024-01-22 020024.png

3、查看技能模板,下载技能模板:single_hand_pose_yolox_mbv2

屏幕截图 2024-01-22 020215.png

4、使用模板创建工程:single_pig_pose

4.1、推理功能单元使用我们自己导出的模型进行替换并修改模型配置文件:

屏幕截图 2024-01-22 022156.png

4.2、修改条件功能单元的代码:

code.png

4.3、修改通用功能单元代码和配置文件:

屏幕截图 2024-01-22 024954.png

4.4、修改模型配置文件并替换为我们自己开发的猪只关键点检测模型

屏幕截图 2024-01-22 030126.png

4.5、修改猪只关键点检测后处理功能单元和配置文件

屏幕截图 2024-01-22 030900.png

4.6、修改绘图功能单元代码

code.png

5、查看流程图开启性能统计

code.png

6、在bin/mock_task.toml配置输入输出,使用提前准备好的视频进行推理,选择推流到本地,执行bin/main.sh运行应用

屏幕截图 2024-01-22 045439.png查看性能统计文件

屏幕截图 2024-01-22 042329.png我们开发的应用平均每次推理(batch_size:4)耗时193 / 4 = 48ms,视频测试的帧率为1000 / 48 = 21fps,基本满足摄像头实时检测的要求。

屏幕截图 2024-01-22 042716.png

复现本案例所需资源(代码、模型、测试数据等)均可从single_pig_pose.zip获取。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。