【2023年第十三届APMCM亚太地区大学生数学建模竞赛】A题 水果采摘机器人的图像识别 35页论文及python代码

【2023年第十三届APMCM亚太地区大学生数学建模竞赛】A题 水果采摘机器人的图像识别

1 题目

水果采摘机器人的图像识别

中国是世界上最大的苹果生产国,年产量约为3500万吨。与此同时,中国也是世界上最大的苹果出口国,世界上每两个苹果中就有一个来自中国,全球出口的苹果中有六分之一以上来自中国。中国提出了“一带一路”倡议,这是构建人类命运共同体的重要支柱。得益于这一倡议,越南、孟加拉国、菲律宾、印度尼西亚等沿线国家已成为中国苹果的主要出口目的地。

在这里插入图片描述

图1 所示摘果机器人对苹果的图像识别示意图。

苹果采摘主要依靠手工采摘。苹果成熟后,几天内苹果产区就需要大量的采摘工人。但当地的农民大多在自己的果园里种苹果。此外,农业工人的老龄化和年轻人离乡打工的现象,也导致了苹果采摘季节的劳动力短缺。为了解决这一问题,中国从2011年前后开始研究能够摘苹果的机器人,并取得了重大进展。然而,由于果园环境与受控实验的不同,各种苹果采摘机器人在世界范围内的普及和应用与理想相差甚远设置。在复杂和非结构化的果园环境中,现有的大多数机器人都无法准确识别“树叶遮挡”、“树枝遮挡”、“果实遮挡”、“混合遮挡”等障碍物。如果没有根据实际场景做出精确的判断就直接采摘苹果,那么水果受损的风险很高,甚至会对采摘手和机械臂造成伤害。这对采收效率和果实品质造成不利影响,导致更大的损失。此外,对不同收获水果的识别和分类也非常重要,如分类、加工、包装、运输等程序。然而,许多水果的颜色、形状和大小与苹果非常相似,这给苹果的采收后鉴定带来了很大的困难。

本次比赛旨在通过对标记的水果图像进行特征分析和提取,建立一个识别率高、速度快、准确率高的苹果图像识别模型,并对图像进行数据分析,如自动计算图像中苹果的数量、位置、成熟度等级、质量估计等。具体任务如下:

(1)问题1:数苹果

基于附件1提供的收获苹果图像数据集,提取图像特征,建立数学模型,统计每张图像中的苹果数量,绘制附件1中所有苹果分布的直方图。

(2)问题2:估计苹果的位置

根据附件1中提供的成熟苹果图像数据集,以图像左下角为坐标原点,确定每张图像中苹果的位置,绘制附件1中所有苹果几何坐标的二维散点图。

(3)问题3:估计苹果的成熟状态

基于附件1提供的成熟苹果图像数据集,建立数学模型,计算每张图像中苹果的成熟度,并绘制附件1中所有苹果成熟度分布的直方图。

(4)问题4:估计苹果的质量

基于附件1提供的成熟苹果图像数据集,计算每张图像中苹果的二维面积,图像左下角为坐标原点,估计苹果的质量,并绘制附件1中所有苹果质量分布的直方图。

(5)问题5:对苹果的识别

基于附件2提供的收获水果图像数据集,提取图像特征,训练苹果识别模型,识别附件3中的苹果,并绘制附件3中所有苹果图像的ID号分布直方图。

附件:

Attachment.zip,下载网址:https://share.weiyun.com/T6FKbjLf

附件1:

文件夹中包含200张收获苹果的图片,每张图片的大小为270 180像素。附件1的部分截图如下:

在这里插入图片描述

附件2:

文件夹中包含20705张已知标签和分类的不同收获水果图片,每张图片大小为270 180像素。附件2的部分截图如下:

苹果数据集:

在这里插入图片描述
在这里插入图片描述

附件3:

文件夹中包含20705张不同收获水果的图片,标签和分类未知,每张图片大小为270 180像素。附件3的部分截图如下:

在这里插入图片描述

2 相关资料

【2023年第十三届APMCM亚太地区大学生数学建模竞赛】A题 水果采摘机器人的图像识别 Python代码解析

3 论文介绍

通过 YOLOResNet 进行水果采摘机器人的图像识别

在错综复杂、非结构化的果园环境中,现有的苹果采摘机器人大多无法准确识别被 “ 叶遮挡” 、“ 枝遮挡” 、“ 果遮挡” 、“ 混合遮挡” 等各种障碍物遮挡的水果。在没有根据实际场景做出精确判断的情况下采摘苹果,可能会对采摘效率和果实质量产生负 面影响,可能导致重大损失。我们对现有的水果图像数据集进行特征提取和分析,建立 了准确率高、处理速度快、精度提升的苹果图像识别模型。此外,我们对这些图像进行 了数据分析, 包括自动计算苹果的数量、位置、成熟度和质量估计。

关于第一个问题,我们对提供的可收获苹果图像数据集进行了量化和归一化预处理。随后,我们采用了

YOLOv5模型用于特征提取, 获得水果边界框、类别和置信度分数。这有助于识别每张图像中的苹果数量,所有图像的苹果累计计数为 677 个。此外,我们还解决了遮挡场景对 YOLOv5 模型有效性的影响。为了提高模型性能,我们引入了 YOLOv5 Plus,结合了更小的分割网络,并通过数据平滑过滤噪声。优化后的模型在所有图像中产生了 1149 个苹果总数, 性能提升了 69.72%。最后,我们构建了一个直方图,说明了数据集中已识别的苹果数量的分布。

针对问题二 , 我们对 附录 1 中提供 的苹果图 像数据集 进行了 对象检测 。我们利 用YOLOv5 P lus 模型对图像进行预处理进行识别,采用矩形边界框对苹果进行圈定。这些矩形的中心点被用来生成描绘苹果位置的散点图。随后,我们将优化模型生成的散点图与YOLOv5 模型的散点图进行比较,发现优化前模型识别的苹果为也被优化后的模型有效识别。此外,优 化模型 产生的 散点图 显示出 更大的 覆盖面 积, 表明苹果识别性能增强。

针对问题三, 我们对附录 1 中提供的成熟苹果图像数据集进行预处理。我们建立了一个轻量级的卷积神经网络**(CNN)**来提取图像特征, 利用池化来减少数据冗余,利用上采样和下采样来捕获高维和低维特征,利用全连通层来预测苹果的成熟度评分, 从而输出苹果的成熟度状态信息。最后, 我们给出了一个直方图,说明了所有苹果的成熟度分数的分布。

针对问题四,我们对附录 1 中提供的成熟苹果图像数据集进行预处理。在优化的YOLOv5 模型的基础上, 我们计算了每张图像中苹果的二维面积, 并随后根据这些信息估计了它们的质量。最后,我们构建了一个直方图来说明所有苹果的质量分布。

为了解决问题 5, 我们对附件 2 中提供的水果图像数据集进行了预处理。我们建立了一个剩余网络( Res Net18) 作为主干架构,并利用 预处理后的 图像数据进行 微调。最终的模型在训练集上达到了 **99.87%**的准确率。为了评估模型的有效性, 我们从附件 3 中随机选择了 500 张图像进行手动标注, 结果苹果识别准确率为 94.07%。 最后,我们给出了 loss 和准确率的模型训练曲线, 以及 RO C 曲线。此外, 我们在附件 3 中描绘了一个直方图, 说明了苹果图像 id 的分布。

关键词**😗*Apple Image Recognition;YOLOv5;YOLOv5 Plus;卷积神经网络;剩余网络
在这里插入图片描述

5 获取方式

请看名片扣我

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/590441.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

iToF人脸识别

iToF(间接飞行时间)是一种测量光飞行时间的技术,主要应用于人脸识别。 iToF人脸识别技术在哪些场景下会用到 iToF人脸识别技术可以应用于许多场景,以下是一些常见的应用场景: 平安城市:在城市监控系统中,iToF人脸识别技术可以用于实时监控、目标检测和识别,以及异常行为…

WEB 3D技术 three.js通过光线投射 完成几何体与外界的事件交互

本文 我们来说 光线投射 光线投射技术是用于3维空间场景中的交互事件 我们先编写代码如下 import ./style.css import * as THREE from "three"; import { OrbitControls } from "three/examples/jsm/controls/OrbitControls.js";const scene new THRE…

添加 Android App Links

添加 Android App Links功能 介绍一个简单的效果Android配置Add Url intent filtersAdd logic to handle the intentAssociate website 搭建网页支持AppLinks 介绍 Android App Links 是指将用户直接转到 Android 应用内特定内容的 HTTP 网址。Android App Links 可为您的应用带…

机械过滤器(石英砂过滤器)和多介质过滤器的区别 工作原理动画

​ 1:机械过滤器多介质石英砂过滤器介绍 机械过滤器:预处理水质的关键设备 机械过滤器,也被称为压力式过滤器,是纯水制备过程中不可或缺的预处理设备。它在水处理系统中扮演着重要的角色,能够有效地去除水中的悬浮物…

《Python机器学习原理与算法实现》学习笔记

以下为《Python机器学习原理与算法实现》(杨维忠 张甜 著 2023年2月新书 清华大学出版社)的学习笔记。 根据输入数据是否具有“响应变量”信息,机器学习被分为“监督式学习”和“非监督式学习”。 “监督式学习”即输入数据中即有X变量&…

Linux服务器搭建笔记-006:拓展/home目录容量

一、问题说明 Ubuntu服务器在使用过程中创建的新用户,每位用户会在/home目录下生成一个属于其个人的主文件夹。如果不限制各个用户的使用空间,所有的用户都会共用/home所挂载的硬盘。在这种多用户情况下,会很快的填满/home目录,导…

uniapp 添加自定义图标

1. 下载自定义图标 在阿里图标库,选择喜欢的图标库 https://www.iconfont.cn/collections/index 建议按收藏数排序进行,能更快找到合适的图标 点开喜欢的图标库(如 Ant Design 官方图标库),将喜欢的图标添加到图标收集…

仿网易云音乐网站PHP源码,可运营的原创音乐分享平台源码,在线音乐库系统

源码介绍 使用PHP和MYSQL开发的原创音乐分享平台源码,仿网易云音乐网站。用户可以在网站上注册并上传自己的音乐作品,系统内置广告系统,为网站创造收入来源。 安装教程 1.导入sql.sql 2.修改 includes\config.php 数据库信息和网址都改成…

B2005 字符三角形(python)

a input() print( a) print( a a a) print(a a a a a)python中默认输入的是字符型,第一句就是输入了一个字符赋给a python中单引号内的也是字符串,用print输出需要连接的字符串时用加号加在后面即可

数据结构:基于数组的环形队列(循环队列)实现

1 前言 队列是一种先进先出的线性表,简称为FIFO。它只允许在队尾插入成员,在队头删除成员,就像现实生活中排队上车一样。 队列的实现可以通过链表或数组完成,一般来说都推荐使用链表来实现队列,使用数组实现队列时每次…

Casper Network 推出 “DevRewards” 计划:允许所有开发者赚取激励

Casper Association 是一个致力于推动区块链大规模采用的非营利组织,该组织在 Casper Network 系统中推出了一个被称为 “DevRewards ” 的奖励计划,旨在邀请开发者提交能够解决现有问题的创新技术方案,以帮助 Casper Network 系统进一步完善…

idea部署javaSE项目(awt+swing项目)_idea导入eclipse的javaSE项目

一.idea打开项目 选择需要部署的项目 二、设置JDK 三、引入数据库驱动包 四、执行sql脚本 四、修改项目的数据库连接 找到数据库连接文件 五.其他系统实现 JavaSwing实现学生选课管理系统 JavaSwing实现学校教务管理系统 JavaSwingsqlserver学生成绩管理系统 JavaSwing用…

c语言:用指针输入两个数组|练习题

一、题目 利用指针&#xff0c;输入两个数组 如图&#xff1a; 二、代码截图【带注释】 三、源代码【带注释】 #include <stdio.h> int main() { int a[50]; int b[50]; int *paa,*pbb; //输入第一组数组 printf("请输入第一组5个数字&#xff1a;…

计算机网络课程设计-企业网三层架构

&#xff08;单人版&#xff09; 摘 要 本篇报告主要解决了为一家名为西宫的公司网络搭建问题&#xff0c;该网络采用企业网三层架构对完了过进行设计。首先使用以太网中继&#xff0c;主要使用VLAN划分的技术来划定不同部门。使用MSTP对每个组配置生成树&#xff0c;防止交换机…

fastApi 项目部署

方式一&#xff0c;Uvicorn部署 Run a Server Manually - Uvicorn - FastAPI 1&#xff0c;linux服务器安装 python>3.8 2&#xff0c;安装 uvicorn : pip install "uvicorn[standard]" 3&#xff0c;上传项目到服务器 main.py from typing imp…

Leetcode每日一题周汇总 (12.24-12.30)

Leetcode每日一题周汇总 (12.24-12.30) 1.Sunday (12.24) 题目链接&#xff1a;1954. 收集足够苹果的最小花园周长 - 力扣&#xff08;LeetCode&#xff09; 题目描述&#xff1a; 给你一个用无限二维网格表示的花园&#xff0c;每一个 整数坐标处都有一棵苹果树。整数坐标…

设计模式设计原则——依赖倒置原则(DIP)

DIP&#xff1a;Dependence Inversion Principle 原始定义&#xff1a;High level modules should not depend upon low level modules. Both should depend upon abstractions. Abstractions should not depend upon details. Details should depend upon abstractions。 官…

Stable Diffusion API入门:简明教程

Stable Diffusion 是一个先进的深度学习模型&#xff0c;用于创造和修改图像。这个模型能够基于文本描述来生成图像&#xff0c;让机器理解和实现用户的创意。使用这项技术的关键在于掌握其 API&#xff0c;通过编程来操控图像生成的过程。 在探索 Stable Diffusion API 的世界…

ROS TF坐标变换 - TF树

目录 一、TF树介绍二、TF2与TF三、构建TF树四、rviz查看TF坐标关系 一、TF树介绍 在机器人系统中&#xff0c;存在运动学模型和动力学模型。对于刚体机器人&#xff0c;动力学模型基于刚体动力学&#xff0c;代表机器人系统在运动过程中力/力矩与其运动状态的变化关系。而运动…

【索引的数据结构】第1章节:B+Tree存储结构

目录结构 之前整篇文章太长&#xff0c;阅读体验不好&#xff0c;将其拆分为几个子篇章。 本篇章讲解 BTree 存储结构。 什么是索引 可以简单理解为索引好比一本书的目录&#xff0c;通过目录我们可以快速定位到我们要查看的章节。 MySQL 中的数据同样也是根据索引分类&…