An improved YOLACT algorithm for instance segmentation of stacking parts

news2025/6/7 20:42:21

【一种用于堆叠零件实例分割的改进 YOLACT 算法】

摘要

实例分割在众多应用场景中均是一项至关重要的任务。对于计算机视觉而言,堆叠物体的实例分割是一项挑战。为应对这一挑战,我们提出了一种改进的 YOLACT(You Only Look At CoefficienTs)算法。为提高密集堆叠场景下特征提取、检测和分割的精度,将多级特征融合与通道注意力机制模块(MLCA)与 YOLACT 的主干网络相结合。此外,为在不降低图像质量的前提下扩大感受野,我们用注意力引导上下文特征金字塔模块(AC-FPN)替代了传统的特征金字塔网络(FPN)。通过在定制的堆叠机械零件数据集上进行大量实验,验证了改进的 YOLACT 算法的有效性。实验结果表明,改进的 YOLACT 算法在计算时间没有显著增加的情况下,在检测和分割性能上显著优于其他算法。

1 介绍

实例分割技术在制造系统中得到了广泛应用,例如零件组装和零件拣选,这有助于提高制造的自动化和智能化水平[1]。因此,它能够提升生产的灵活性和效率。在实现这些目标的过程中,将实例分割技术应用于非结构化的工业场景中是一个关键步骤[2]。然而,在实际的制造系统中,零件堆叠的场景非常普遍。在这样的堆叠场景中进行零件分割面临诸多挑战,尤其是在零件形状各异、大小不一且相互遮挡的情况下。

YOLACT(You Only Look At CoefficienTs)是一种专为实时物体检测和实例分割设计的神经网络[3]。与传统的两阶段实例分割网络相比,YOLACT在速度和准确性之间找到了平衡,这使得它特别适合工业环境中的实时检测应用。与SOLO和Mask R-CNN相比,YOLACT在推理速度上更为高效,这对于需要快速处理的制造系统至关重要。尽管Mask R-CNN具有高精度,但其两阶段流程(先提出区域,再进行掩码预测)导致了较慢的推理速度。同样,虽然SOLO采用了一阶段的方法,但在处理大量对象时,其处理速度仍存在局限性。

YOLACT能够在较短的计算时间内生成高质量的掩模,非常适合用于实时工业任务。在这个实际的制造系统中,我们不仅需要快速识别零件,还需要一定的识别精度。YOLACT完美地满足了这一需求。然而,在堆叠场景中精确检测和进一步分割零件尤其具有挑战性,尤其是在复杂的场景中。为了提高堆叠场景中零件实例分割的准确性,我们提出了一种改进的YOLACT零件识别方法。为了解决堆叠场景中实例分割准确性的挑战,本研究开发了一种改进的YOLACT实例分割算法,专门用于零件识别和实例分割。该算法结合了MLCA,并集成了AC-FPN。这些改进旨在通过捕捉零件的更详细特征来增强网络的效能。

本研究的贡献可概述如下:
1.我们开发了一种改进的YOLACT网络模型,专门用于识别堆叠场景中的部件。该模型由核心骨干网络、特征金字塔网络、预测头和掩码模板模块(Protonet)组成。此外,为了提高实例分割的准确性,还引入了一个并行子网络。

2.为了捕捉精细的物体特征,我们在主干网络中集成了多级特征融合和通道注意力机制,这有助于提取更详细的特征,并增强了网络在复杂堆叠场景中识别部件的能力。

3.为了在保持图像质量的同时捕捉广泛的特征,我们引入了AC-FPN。该模块改变了传统的FPN金字塔结构,通过增强网络的情境理解,从而实现更准确的预测。

4.为了验证我们提出的方法的有效性,我们在一个定制的数据集上进行了严格的测试和比较分析。结果表明,我们的方法在准确性和鲁棒性方面显著优于以往的方法。

2、相关工作

近年来,随着工业自动化和智能制造的快速发展,机械部件的视觉抓取技术逐渐成为研究热点。然而,可靠的抓取依赖于对堆叠部件的精确实例分割[4,5]。实例分割的目标是为图像中的每个对象获取实例级别的像素标签,这一点在处理堆叠物体[6]时尤为重要。现有的实例分割技术主要分为传统方法和基于深度学习的方法[7]。传统方法主要包括分水岭[8]和阈值[9]分割算法,这些算法适用于简单的场景。然而,随着堆叠部件数量的增加和对更高检测精度的需求,传统神经网络算法的能力已不足以应对复杂的任务[10,11]。

压缩感知领域的研究显著提升了计算机视觉中深度图的完成和实例分割技术。它为堆叠场景中的物体检测提供了新的方法。Chodosh等人[12]提出了一种用于LiDAR深度图完成的深度卷积压缩感知方法,能够将稀疏的深度测量图转换为高分辨率的深度图。Chodosh和Lucey [13]在计算机视觉的重建任务中采用了卷积稀疏编码(CSC)方法,不仅减少了JPEG伪影,还实现了非刚性轨迹的重建。Bazzi等人[14]提出了一种牛顿型前向-后向贪婪方法,用于到达角估计。该方法同样适用于多快照压缩感知中的稀疏恢复,用于图像重建。Liu等人[15]提出了一种多尺度卷积字典,用于图像重建,尤其适用于CT和MRI重建等逆问题。这些研究展示了压缩感知技术的潜力,尤其是在与深度学习结合时,能够显著提升深度图完成和实例分割

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

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

相关文章

BugKu Web渗透之eval

启动场景&#xff0c;打开网页&#xff0c;显示的是一段代码。 步骤一&#xff1a; 分析代码。 代码大概意思是&#xff1a; <?php//包含"flag.php"的文件include "flag.php"; //获取网页请求的hello数据$a $_REQUEST[hello]; //显示变量a的详…

DAY45 可视化

DAY 45 Tensorborad 之前的内容中&#xff0c;我们在神经网络训练中&#xff0c;为了帮助自己理解&#xff0c;借用了很多的组件&#xff0c;比如训练进度条、可视化的loss下降曲线、权重分布图&#xff0c;运行结束后还可以查看单张图的推理效果。 如果现在有一个交互工具可…

11.RV1126-ROCKX项目 API和人脸检测画框

一.ROCKX的API 1.ROCKX的作用 ROCKX的AI组件可以快速搭建 AI的应用&#xff0c;这些应用可以是车牌识别、人脸识别、目标识别&#xff0c;人体骨骼识别等等。主要用于各种检测识别。例如下图&#xff1a; 2.ROCKX人脸识别的API rockx_ret_t rockx_create(rockx_handle_t *han…

超构光学与 AR 的深度融合 | 攻克 VAC 与眼动范围难题

原文信息 原文标题&#xff1a;“Three-dimensional varifocal meta-device for augmented reality display” 第一作者&#xff1a;宋昱舟&#xff0c;袁家琪&#xff0c;陳欽杪&#xff0c;刘小源 &#xff0c;周寅&#xff0c;程家洛&#xff0c;肖淑敏*&#xff0c;陈沐…

[ Qt ] | 与系统相关的操作(三):QFile介绍和使用

目录 之前的操作文件的方式 Qt中的文件操作简介 QFile 打开 读 写 关闭 一个例子来说明 QFileInfo 之前的操作文件的方式 C语言中&#xff0c;fopen 打开文件&#xff0c;fread fwrite 读写文件&#xff0c;fclose 关闭文件。 C中&#xff0c;fstream 打开文件&…

软件工程:如何做好软件产品

1、什么是产品 从项目到产品 产品&#xff1a;满足行业共性需求的标准产品。即要能够做到配置化的开发&#xff0c;用同一款产品最大限度地满足不同客户的需求&#xff0c;同时让产品具有可以快速响应客户需求变化的能力。 好的产品一定吸收了多个项目的共性&#xff0c;一定是…

蓝桥杯 省赛 2025python(B组)题目(分析)

目录 第一题 为什么答案是103而不是104&#xff1f; 第二题 为什么必须按长度排序&#xff1f; 第三题 易错点总结 第四题 逻辑问题&#xff1a; 可能超过时间复杂度的代码示例 1. 暴力枚举所有可能的子串 2. 递归回溯 第五题 1. 暴力枚举法 2. 优化枚举 3.数…

React - 组件通信

组件通信 概念&#xff1a;组件通信就是组件之间数据传递&#xff0c;根据组件嵌套关系不同&#xff0c;有不同的通信方法 父传子 —— 基础实现 实现步骤 父组件传递数据 - 在子组件标签上绑定属性子组件接收数据 - 子组件通过props参数接收数据 声明子组件并使用 //声明子…

飞牛使用Docker部署Tailscale 内网穿透教程

之前发过使用docker部署Tailscale的教程&#xff0c;不过是一年前的事情了&#xff0c;今天再重新发表一遍&#xff0c;这次使用compose部署更加方便&#xff0c;教程也会更加详细一点&#xff0c;希望对有需要的朋友有所帮助&#xff01; 对于大部分用户来说&#xff0c;白嫖 …

《数据挖掘》- 房价数据分析

这里写目录标题 采用的技术1. Python编程语言2. 网络爬虫库技术点对比与区别项目技术栈的协同工作流程 代码解析1. 导入头文件2. 读取原始数据3. 清洗数据4. 数据分割4.1 统计房屋信息的分段数量4.2 将房屋信息拆分为独立列4.3 处理面积字段4.4 删除原始房屋信息列 5. 可视化分…

C++之动态数组vector

Vector 一、什么是 std::vector&#xff1f;二、std::vector 的基本特性&#xff08;一&#xff09;动态扩展&#xff08;二&#xff09;随机访问&#xff08;三&#xff09;内存管理 三、std::vector 的基本操作&#xff08;一&#xff09;定义和初始化&#xff08;二&#xf…

【Zephyr 系列 11】使用 NVS 实现 BLE 参数持久化:掉电不丢配置,开机自动加载

🧠关键词:Zephyr、NVS、非易失存储、掉电保持、Flash、AT命令保存、配置管理 📌目标读者:希望在 BLE 模块中实现掉电不丢配置、支持产测参数注入与自动加载功能的开发者 📊文章长度:约 5200 字 🔍 为什么要使用 NVS? 在实际产品中,我们经常面临以下场景: 用户或…

【Android】Android Studio项目代码异常错乱问题处理(2020.3版本)

问题 项目打开之后&#xff0c;发现项目文件直接乱码&#xff0c; 这样子的 这本来是个Java文件&#xff0c;结果一打开变成了这种情况&#xff0c;跟见鬼一样&#xff0c;而且还不是这一个文件这样&#xff0c;基本上一个项目里面一大半都是这样的问题。 处理方法 此时遇到…

一些免费的大A数据接口库

文章目录 一、Python开源库&#xff08;适合开发者&#xff09;1. AkShare2. Tushare3. Baostock 二、公开API接口&#xff08;适合快速调用&#xff09;1. 新浪财经API2. 腾讯证券接口3. 雅虎财经API 三、第三方数据平台&#xff08;含免费额度&#xff09;1. 必盈数据2. 聚合…

机器学习算法时间复杂度解析:为什么它如此重要?

时间复杂度的重要性 虽然scikit-learn等库让机器学习算法的实现变得异常简单&#xff08;通常只需2-3行代码&#xff09;&#xff0c;但这种便利性往往导致使用者忽视两个关键方面&#xff1a; 算法核心原理的理解缺失 忽视算法的数据适用条件 典型算法的时间复杂度陷阱 SV…

SSIM、PSNR、LPIPS、MUSIQ、NRQM、NIQE 六个图像质量评估指标

评价指标 1. SSIM&#xff08;Structural Similarity Index&#xff09; &#x1f4cc; 定义 结构相似性指数&#xff08;Structural Similarality Index&#xff09;是一种衡量两幅图像相似性的指标&#xff0c;考虑了亮度、对比度和结构信息的相似性&#xff0c;比传统的 P…

【笔记】旧版MSYS2 环境中 Rust 升级问题及解决过程

下面是一份针对在旧版 MSYS2&#xff08;安装在 D 盘&#xff09;中&#xff0c;基于 Python 3.11 的 Poetry 虚拟环境下升级 Rust 的处理过程笔记&#xff08;适用于 WIN 系统 SUNA 人工智能代理开源项目部署要求&#xff09;的记录。 MSYS2 旧版环境中 Rust 升级问题及解决过…

矩阵QR分解

1 orthonormal 向量与 Orthogonal 矩阵 orthonormal 向量定义为 &#xff0c;任意向量 相互垂直&#xff0c;且模长为1&#xff1b; 如果将 orthonormal 向量按列组织成矩阵&#xff0c;矩阵为 Orthogonal 矩阵&#xff0c;满足如下性质&#xff1a; &#xff1b; 当为方阵时&…

【MATLAB去噪算法】基于CEEMDAN联合小波阈值去噪算法(第四期)

CEEMDAN联合小波阈值去噪算法相关文献 一、EMD 与 EEMD 的局限性 &#xff08;1&#xff09;EMD (经验模态分解) 旨在自适应地将非线性、非平稳信号分解成一系列 本征模态函数 (IMFs)&#xff0c;这些 IMFs 从高频到低频排列。 核心问题&#xff1a;模态混合 (Mode Mixing) 同…

从理论崩塌到新路径:捷克科学院APL Photonics论文重构涡旋光技术边界

理论预言 vs 实验挑战 光子轨道角动量&#xff08;Orbital Angular Momentum, OAM&#xff09;作为光场调控的新维度&#xff0c;曾被理论预言可突破传统拉曼散射的对称性限制——尤其是通过涡旋光&#xff08;如拉盖尔高斯光束&#xff09;激发晶体中常规手段无法探测的"…