当前位置: 首页 > article >正文

基于五类数据集的Faster RCNN目标检测算法在缺陷检测中的应用:共计1800张VOC格式...

基于FasterRCNN目标检测的缺陷检测算法 数据集包含五类别具体如图所示 共计1800张图 包含VOC格式数据集Faster RCNN模型最近在搞工业质检项目发现Faster R-CNN在缺陷检测上还挺能打。手头有个五类缺陷的数据集划痕、气泡、氧化啥的虽然只有1800张图但配合点数据增强的骚操作效果还不错。今天就跟大伙唠唠实战中那些有意思的细节。先看数据准备这块。VOC格式的好处是能直接用PyTorch的Dataset类不过得处理下XML标注。我习惯用这种写法抓取目标框from xml.etree import ElementTree as ET def parse_voc(xml_path): tree ET.parse(xml_path) boxes [] for obj in tree.findall(object): bndbox obj.find(bndbox) xmin int(bndbox.find(xmin).text) ymin int(bndbox.find(ymin).text) xmax int(bndbox.find(xmax).text) ymax int(bndbox.find(ymax).text) boxes.append([xmin, ymin, xmax, ymax]) return torch.as_tensor(boxes, dtypetorch.float32)注意这里返回的是浮点型张量后面训练时和模型输出的预测框做loss计算才不会报类型错误。遇到过有人在这里用int类型导致训练爆炸的情况排查了半天才发现是数据类型埋的坑。模型搭建部分直接上torchvision的实现省时省力但记得改分类头from torchvision.models.detection import fasterrcnn_resnet50_fpn model fasterrcnn_resnet50_fpn(pretrainedTrue) in_features model.roi_heads.box_predictor.cls_score.in_features model.roi_heads.box_predictor FastRCNNPredictor(in_features, num_classes6) # 51这里有个新手容易翻车的点——num_classes要算上背景类别。比如我们的缺陷是5类那实际参数要填6。之前有个实习生死活训不出效果最后发现是这里少写了1模型永远在预测背景...基于FasterRCNN目标检测的缺陷检测算法 数据集包含五类别具体如图所示 共计1800张图 包含VOC格式数据集Faster RCNN模型训练策略方面小数据集必备冻结操作。个人喜欢先冻backbone训三天再解冻微调for param in model.backbone.parameters(): param.requires_grad False # 第二阶段解冻 for param in model.backbone[3].parameters(): # 只解冻resnet的最后阶段 param.requires_grad True数据增强这块要结合业务场景。工业缺陷检测最怕几何形变破坏缺陷特征所以用颜色抖动比旋转缩放更靠谱from albumentations import Compose, RGBShift, RandomBrightnessContrast aug Compose([ RGBShift(r_shift_limit15, g_shift_limit15, b_shift_limit15, p0.7), RandomBrightnessContrast(p0.5), ])实测这种组合能让mAP提升3个点左右而且不会像空间变换那样导致漏检。有个有意思的现象气泡缺陷对亮度变化敏感而划痕更吃对比度调整不同类别可能需要差异化的增强策略。最后聊聊推理时的坑。模型输出的是0-1范围的归一化坐标转回原图尺寸时得注意# 假设原图尺寸是(1080, 1920) scale torch.tensor([1920, 1080, 1920, 1080], devicebox.device) restored_box box * scale这里顺序是xmin, ymin, xmax, ymax但scale的张量要对应xyxy的顺序。见过有人把高宽顺序搞反结果框的位置全歪到姥姥家了。实际部署时发现个有趣现象小目标缺陷比如微米级划痕在FPN结构的低层特征图反而检测得更准这可能和深层特征丢失细节有关。后来在RPN阶段调整了anchor的scale设置专门加了组小尺寸anchor召回率立马涨了5%。现在这模型在产线上跑得挺稳平均检测速度在T4显卡上能达到23fps。不过遇到密集小缺陷时还是会有漏检下一步打算把FPN换成更密集的金字塔结构试试。工业场景的实战经验说明没有银弹模型得根据具体缺陷特性反复调教才行。

相关文章:

基于五类数据集的Faster RCNN目标检测算法在缺陷检测中的应用:共计1800张VOC格式...

基于FasterRCNN目标检测的缺陷检测算法 数据集包含五类别(具体如图所示) 共计1800张图 包含VOC格式数据集Faster RCNN模型最近在搞工业质检项目,发现Faster R-CNN在缺陷检测上还挺能打。手头有个五类缺陷的数据集(划痕、气泡、氧化…...

2026年沈阳路灯厂TOP10榜单揭晓,哪家实力最强?

大家好,今天给大家带来一个热门话题:2026年沈阳路灯厂TOP10榜单揭晓!哪家实力最强?让我们一起来看看吧!榜单揭晓1. 沈阳晟光户外照明设施销售有限公司(简称:晟光路灯)2. 飞利浦照明3…...

人工智能代理AI Agent如何自动化CRM、Jira、计费和Slack之间的工作流程

当单一业务流程跨越多个系统时 在泰山老父公司中,工作流程早已超越单一系统。销售在CRM中进行,开发在Jira中,财务在计费系统中,日常沟通则在Slack中完成。这些平台各有其用途,且在独立时运行得相当有效。 当单个业务…...

【前端】最好用的本地组件库调试工具 yalc

在开发和编写多个软件包(私有或公共)时,您经常需要在本地环境中的其他项目中使用最新/正在开发的版本,而无需将这些软件包发布到远程注册表。NPM和 Yarn 通过类似的符号链接包方法来解决这个问题。虽然这种方法在很多情况下都有效…...

目标函数(含罚函数处理)

蜣螂优化(DBO)算法 工程实际,求目标函数最小值,图中所求例子为一个压力容器设计成本最小,为4变量,4个不等式约束。 采用罚函数将4约束问题转变为无约束问题。 代码注释完整,非常容易带入自己想要求的问题。深夜撸代码发…...

【OpenCV 图像变换实战:旋转、模板匹配与金字塔操作】

在计算机视觉领域,图像变换是最基础也最核心的操作之一。无论是简单的图像旋转、精准的模板匹配,还是用于图像分层处理的金字塔操作,都是实现图像增强、目标检测、图像重建的关键技术。本文将结合实战代码,系统讲解 OpenCV 中这三…...

C语言介绍:起源、特性、应用领域及如何为学其他语言打基础

C语言(C Language) 发音(Pronunciation):C yǔyn 大致意思(General Meaning):C语言是一种普遍使用的高级程序设计语言,在软件研发以及系统编程方面有着广泛运用。 详细阐…...

C语言:通用高级编程语言,现代编程语言母语及应用领域介绍

C语言,是一种被称作通用的、高级的编程语言,它是在1972年,由美国贝尔实验室的Dennis Ritchie进行开发的。C语言具备简洁、高效以及可移植的特性,在系统软件、嵌入式系统和应用程序开发当中被广泛应用。 现代编程语言的母语 有这样…...

cmu15445 25fall lec3个人笔记

lec3 database storage从应用层面转到构建层面query-planning->operator execution->access method->buffer pool manager->disk manageragendafile storage,page layout,tuple layout 行(row)为主存储顺序io(sequencial)耗时少于随机io(random access) 所以在DBMS…...

API 安全: 保护 AI 应用的交互接口

API 安全: 保护 AI 应用的交互接口你好,我是陈涉川,欢迎你来到我的专栏。在前面的章节中,我们刚刚结束了模型微调的炼狱,成功让大模型记住了企业的安全基线,并掌握了复杂的代理(Agent&#xff0…...

企业用智能体要投入多少成本?2026避坑指南与主流产品横评

2026年3月,AI Agent 正处于从“生成式问答”向“自主执行”跨越的爆发期。 企业在考虑企业用智能体要投入多少成本时,绝不能只看一张软件报价单。 真正的成本是由算力消耗、Token思维税、隐性维保、人力溢价构成的综合体系。 作为深耕自动化领域7年的评测…...

【AI智能体】——OpenClaw(龙虾)深度研究分享(五)clawhub: command not found 全网最稳解决方案

🦞 OpenClaw 终极排坑:clawhub: command not found 全网最稳解决方案 (Windows / Mac / Linux 全平台通用・保姆级)🔥 前言 最近 OpenClaw(小龙虾)真的火炸了! 但 80% 的人刚装上就卡…...

当LSTM遇上注意力:手把手教你玩转时序预测

Attention-LSTM时序预测,单输入单输出 基于注意力机制attention结合长短期记忆网络LSTM时间序列预测, 单输入单输出模型 MATLAB版本为2020b及其以上 中文注释清晰,非常适合科研小白 评价指标包括:R2、MAE、MSE、RMSE等时序预测总让人头疼&…...

拒绝加班!这套一键生成建筑模型的方法,让甲方当场傻眼

一、概述 在智慧城市建设、城市规划设计、游戏场景搭建以及数字孪生应用等领域,三维建筑模型的构建始终是基础且关键的一环。传统建模方式依赖人工描图、手动拉伸,不仅耗时耗力,而且难以保证数据的现势性与准确性。尤其是面对大范围城市级别…...

【实时Linux工业PLC解决方案系列】第三十六篇 - 实时Linux PLC定时器高精度控制

一、简介:为什么高精度定时器是工业PLC的"心脏"?在工业自动化领域,PLC(可编程逻辑控制器)的定时精度直接决定了控制系统的响应速度和稳定性。传统PLC依赖专用硬件实现毫秒级定时,而现代实时Linux…...

【嵌入式】RCC-复位与时钟控制模块及实例

基于 HAL 库工程,RCC 就是: Reset and Clock Control 中文一般叫: 复位与时钟控制模块 你可以先把它朴素理解成: RCC 是专门管“时钟”和“复位”的那个硬件模块。 一、它到底是干什么的 RCC 主要负责两大类事情&#xff1a…...

二维数组的应用:矩阵运算与图像处理

在编程世界里,二维数组是一种基础却又强大的数据结构,它就像是一张二维的网格,能精准存储和处理具有行列关系的数据。其中,矩阵运算与图像处理是它发挥价值的两大典型场景,今天我们就来深入拆解这两个应用方向。&#…...

OpenClaw 能不能赚钱?

最近一段时间,OpenClaw 在技术圈和副业圈同时火了。 有人说: 可以自动运营账号可以自动写文章可以自动接单可以当 AI 打工人 甚至已经出现: 帮人部署 OpenClaw 收费 我自己折腾了一周,做了一些简单测试,结论比想象中冷…...

GEO完整链路操作指引

一、先理解GEO的底层逻辑是什么相对浅层的认知里:让品牌出现在AI的回答中,让AI"看见"你、提到你、推荐你,这件事就做完了真正的决策过程,往往是从一个模糊问题开始,经过多轮追问、反复比较、风险确认、条件筛选&#xf…...

在线进行 Base64 文本编解码及图片转换 —— 开发调试实践指南

在日常开发中,Base64 编码是一种非常常见的数据处理方式。很多接口传输、图片嵌入、配置文件或日志数据中,都可能看到类似 SGVsbG8gd29ybGQ 这样的字符串,这其实就是 Base64 编码后的内容。 很多开发者在调试接口、处理图片数据或分析日志时…...

openclaw飞书机器人权限管理

为了确保 OpenClaw 既能顺畅运行,又不至于因权限过大导致安全隐患,建议在飞书开发者后台 - 权限管理中,按照以下清单进行勾选。 这份清单分为基础必备和进阶功能两部分: 基础必备权限(无论个人还是团队,必须…...

RTLAB实验图,半实物仿真平台,截图波形转示波器波形,仿真模型转实验图,电力电子实验波形

RTLAB实验图,半实物仿真平台,截图波形转示波器波形,仿真模型转实验图,电力电子实验波形 仿真波形转实验波形咱们今天聊聊电力电子实验中那个让人又爱又恨的环节——把仿真波形变成实验室示波器上的真实波形。搞过半实物仿真&#…...

单片机振荡周期,机器周期,指令周期

振荡周期:振荡器产生的时钟信号...

2026权威评测:毕业论文AIGC降重盘点,附免费试用

CSDN摘要: 2026年高校全面启用AIGC检测,传统同义词替换的降重方式已彻底失效!毕业论文“AIGC痕迹”究竟怎么破?本文基于真实学术场景,深度盘点5款主流AI学术工具,从原创性、降痕能力、服务保障等维度的实测…...

C++ 06:构造函数——对象初始化的核心指南

一、构造函数基础规则命名与返回值:函数名与类名完全一致,无返回值类型(不能写void)。自动调用:创建对象时系统自动触发,无需手动调用。默认构造:未显式定义时,编译器自动生成空默认…...

S4-Info-Yi系统的数学接口缺失、补全及在薛定谔猫佯谬中的应用

昨天希望将离子阱量子计算做一下,先前在海南曾把我的一段成果告诉华为,希望他们能与我合作,结果石沉大海。而我又有点儿不死心,在北京查了一下,发现费用高得吓人,要上千万,不仅如此,…...

计算机网络核心笔记

一、ISO 七层模型OSI(Open System Interconnection)是国际标准化组织提出的网络通信分层模型。层级名称作用示例7应用层为应用程序提供网络服务HTTP、FTP6表示层数据加密、压缩、格式转换SSL5会话层建立和管理会话RPC4传输层端到端通信TCP、UDP3网络层路…...

基于SpringBoot的同城上门喂遛宠物预约系统

Java基于SpringBoot的同城上门喂遛宠物预约系统是一个集高效性、便捷性与安全性于一体的宠物服务管理平台,其通过整合SpringBoot框架的快速开发能力与Java语言的稳定性,结合MySQL数据库的可靠存储,为宠物主人和服务提供者搭建了一个透明、可信…...

CUPT2024 15湿卷轴Comsol仿真(共两套)”

CUPT2024 15湿卷轴 comsol仿真 共两套 参数可以自行调整,需要与自己的实验结合 mph文件形式最近在折腾CUPT2024第15题"湿卷轴"的COMSOL仿真,发现这玩意儿比煮泡面有意思多了。先甩个建模思路:搞两套参数方案,一套给理论…...

三层架构+MVP 项目的标准化分层设计

三层架构MVP 项目的标准化分层设计(附可视化落地规范)结合 MVP 模式的三层架构,核心是**“整体三层架构不变,UI 层内部再按 MVP 拆分”,既保留三层架构的“业务-数据-界面”分离优势,又通过 MVP 解决 UI 层…...