飞桨新人赛:钢铁缺陷检测挑战赛-第1名方案

本文介绍了基于PaddleDetection套件进行钢铁表面缺陷识别的实践过程。先介绍赛题及NEU数据集,含6种热轧带钢缺陷。接着说明数据准备步骤,包括解压、安装工具、改名、拆分及格式转换。然后详述用faster_rcnn_swin_tiny_fpn_3x_coco模型的训练流程,涉及配置文件修改、训练评估,最后提及推理及生成比赛数据的方法。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

飞桨新人赛:钢铁缺陷检测挑战赛-第1名方案 - 创想鸟

0.引言

作为一个新人练习赛,这个比赛可以非常好的帮助大家熟悉使用Paddle。在这里我使用PaddleDetection套件中的网络进行训练,本项目将带大家对PaddleDetection套件使用有一个实践的过程。

1.赛题介绍

本次比赛聚焦图像目标识别技术,需要选手从图像中识别出钢铁表面的缺陷位置,并给出锚点框的坐标,同时对不同的缺陷进行分类,以期产出泛化性更好、性能更稳定的钢铁表面缺陷识别模型。

2.数据介绍及数据准备

本数据集来自NEU表面缺陷检测数据集,收集了6种典型的热轧带钢表面缺陷,即氧化铁皮压入(RS)、斑块(Pa)、开裂(Cr)、点蚀(PS)、夹杂(In)和划痕(Sc)。

可在比赛页面看到详情:https://aistudio.baidu.com/aistudio/competition/detail/114/0/task-definition

数据格式转换,数据拆分

下面是Paddle提供的两个处理数据的命令说明文档。

PadlleX:

https://github.com/PaddlePaddle/PaddleX/tree/develop/docs/data

因赛AIGC 因赛AIGC

因赛AIGC解决营销全链路应用场景

因赛AIGC 73 查看详情 因赛AIGC

PaddleDetection: https://github.com/PaddlePaddle/PaddleDetection/blob/release%2F2.3/docs/tutorials/PrepareDataSet.md

In [ ]

# 解压文件并移除多余的目录! unzip /home/aistudio/data/data105746/train.zip -d /home/aistudio/data/steel!rm -r /home/aistudio/data/steel/__MACOSX! unzip /home/aistudio/data/data105747/test.zip -d /home/aistudio/data/steel!rm -r /home/aistudio/data/steel/__MACOSX

   In [ ]

# 安装paddlex 用于拆分数据集# 升级pip!pip install --upgrade pip -i https://mirror.baidu.com/pypi/simple!pip install "paddlex>2.0.0" -i https://mirror.baidu.com/pypi/simple

   In [ ]

# 修改文件名字 JPEGImages  Annotations!mv /home/aistudio/data/steel/train/ANNOTATIONS  /home/aistudio/data/steel/train/Annotations!mv /home/aistudio/data/steel/train/IMAGES  /home/aistudio/data/steel/train/JPEGImages

   In [ ]

#使用paddleX拆分数据集!paddlex --split_dataset --format VOC --dataset_dir /home/aistudio/data/steel/train --val_value 0.001 --test_value 0.0

   In [ ]

# 下载PaddleDetection%cd /home/aistudio/work!git clone https://gitee.com/paddlepaddle/PaddleDetection.git -b release/2.3

   In [ ]

# 进入PaddleDetection%cd /home/aistudio/work/PaddleDetection# 安装其它依赖!pip install -r /home/aistudio/work/PaddleDetection/requirements.txt  # 临时环境安装!pip install pycocotools -i https://mirror.baidu.com/pypi/simple!pip install lap -i https://mirror.baidu.com/pypi/simple

   In [ ]

%cd /home/aistudio/work/PaddleDetection/#转换train!python tools/x2coco.py         --dataset_type voc         --voc_anno_dir /home/aistudio/data/steel/train/ --voc_anno_list /home/aistudio/data/steel/train/train_list.txt --voc_label_list /home/aistudio/data/steel/train/labels.txt --voc_out_name /home/aistudio/data/steel/train/voc_train.json#转换test!python tools/x2coco.py         --dataset_type voc         --voc_anno_dir /home/aistudio/data/steel/train/ --voc_anno_list /home/aistudio/data/steel/train/val_list.txt --voc_label_list /home/aistudio/data/steel/train/labels.txt --voc_out_name /home/aistudio/data/steel/train/voc_val.json!rm -r /home/aistudio/data/steel/train/Annotations/*!mv /home/aistudio/data/steel/train/*.json /home/aistudio/data/steel/train/Annotations/

   

3. 训练流程

在试了多种模型后,我发现faster_rcnn_swin_tiny_fpn_3x_coco效果最好。接下来就带着大家走一遍训练流程把。

3.1 配置好训练文件

3.1.1 faster_rcnn_swin_tiny_fpn_1x_coco

首先打开work/PaddleDetection/configs/faster_rcnn下的faster_rcnn_swin_tiny_fpn_1x_coco.yml 一般来说,需要修改的就是weights即模型保存路径。及训练轮次,学习率等。

可以将一些需要改动的参数放到此文件中,这样就不会防止改动了里面得文件导致使用其他模型时还要再去那个文件进行改动。此文件的参数优先级高于其他base文件。

飞桨新人赛:钢铁缺陷检测挑战赛-第1名方案 - 创想鸟        

3.1.2 faster_rcnn_swin_tiny_fpn_1x_coco

然后打开_BASE_的路径,即faster_rcnn_swin_tiny_fpn_1x_coco.yml文件

飞桨新人赛:钢铁缺陷检测挑战赛-第1名方案 - 创想鸟        

我们最需要改的是 第一个得数据集配置文件,以及训练参数配置文件。

3.1.3 coco_detection

打开work/PaddleDetection/configs/datasets/路径下的coco_detection.yml

改成如下。具体路径可以自己琢磨一下 飞桨新人赛:钢铁缺陷检测挑战赛-第1名方案 - 创想鸟        

3.1.4 其他

其他基本不用动。打开work/PaddleDetection/configs/faster_rcnn/_base_/路径下的faster_rcnn_swin_tiny_fpn.yml。可以修改其中的batch_size。这些事基本的超参,其他的可以自行研究。

4. 训练及评估

In [ ]

# 训练!python tools/train.py -c configs/faster_rcnn/faster_rcnn_swin_tiny_fpn_3x_coco.yml --use_vdl=true --vdl_log_dir=vdl_dir/scalar --eval

   In [ ]

# 单卡断点续训# !python tools/train.py -c configs/faster_rcnn/faster_rcnn_swin_tiny_fpn_3x_coco.yml #                        -r /home/aistudio/work/output/faster_rcnn_swin_tiny_fpn_3x_coco/best #                        --eval  #                        --use_vdl=true #                        --vdl_log_dir=vdl_dir/scalar #                        --eval

   

5. 生成比赛数据

In [ ]

# 推理图像和生成txt文件!python tools/infer.py -c  configs/faster_rcnn/faster_rcnn_swin_tiny_fpn_3x_coco.yml -o weights=/home/aistudio/work/PaddleDetection/output/faster_rcnn_swin_tiny_fpn_3x_coco/34 --infer_dir=/home/aistudio/data/steel/test/IMAGES/ --output_dir=/home/aistudio/data/steel/infer_output--draw_threshold=0.005 --save_txt=True

   In [ ]

import csvimport osheaders = ['image_id','bbox','category_id','confidence']classList = ['crazing','inclusion','pitted_surface','scratches','patches','rolled-in_scale']rows = []rootdir = '/home/aistudio/data/steel/infer_output'list = os.listdir(rootdir) #列出文件夹下所有的目录与文件for i in range(0,len(list)):       path = os.path.join(rootdir,list[i])       if os.path.isfile(path) and path.endswith('txt'):           txtFile = open(path)           print(path)           result = txtFile.readlines()           for r in result:               ls = r.split(' ')               Cls = ls[0]               sco = float(ls[1])               xmin = float(ls[2])               ymin = float(ls[3])               w = float(ls[4])               h = float(ls[5])               xmax = xmin+w               ymax = ymin+h               clsID = classList.index(Cls)               imgID = list[i][:-4]               row = [imgID,[xmin,ymin,xmax,ymax],clsID,sco]               rows.append(row)with open('submission.csv','w')as f:    f_csv = csv.writer(f)    f_csv.writerow(headers)    f_csv.writerows(rows)

   In [ ]

import pandas as pddatafile = pd.read_csv('/home/aistudio/work/PaddleDetection/submission.csv')# 按照列值排序data = datafile.sort_values(by="image_id", ascending=True)data.to_csv('submission_final.csv', mode='a+', index=False)

   

以上就是飞桨新人赛:钢铁缺陷检测挑战赛-第1名方案的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/316491.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月5日 07:57:58
下一篇 2025年11月5日 07:58:59

相关推荐

  • 虚拟币全球行情app推荐 虚拟币行情软件前10名全球排名

    对于关注数字资产市场的用户而言,选择一款功能强大、数据及时的行情应用至关重要。这不仅能帮助用户把握市场脉搏,还能提供决策所需的数据支持。本文将为您盘点全球范围内备受好评的十大虚拟资产行情软件,助您找到最适合自己的工具。 一、全球领先的综合平台 1、币安 (Binance): 币安 (Binance)…

    2025年12月11日
    000
  • 购买比特币软件电脑版有哪些?欧okx易、币安Binance官网

    对于那些希望通过电脑软件购买比特币的用户而言,选择一款安全、功能全面且操作便捷的平台至关重要。市面上的选择众多,从老牌的中心化交易所到新兴的去中心化应用,各有千秋。本文将深入探讨几款主流的比特币购买电脑软件,并从多个维度进行比较分析,旨在帮助用户找到最适合自己的数字资产配置工具。无论您是经验丰富的资…

    2025年12月11日
    000
  • OKX交易所登录官网通道 欧易交易所最新中文版安卓app下载注册指南

    Binance币安 官网直达: 安卓安装包下载: 欧易OKX ️ 官网直达: 安卓安装包下载: Huobi火币️ 官网直达: 安卓安装包下载: 访问OKX(欧易)官网进行登录或下载最新中文版安卓App,需要通过其官方指定渠道操作。由于平台业务调整,中国大陆用户需注意相关服务限制,以下为通用注册与下载…

    2025年12月11日
    000
  • 2025年加密货币排行榜_全球数字货币市值排行榜

    Binance币安 官网直达: 安卓安装包下载: 欧易OKX ️ 官网直达: 安卓安装包下载: Huobi火币️ 官网直达: 安卓安装包下载: 2025年加密货币市场格局基本稳定,比特币和以太坊继续领跑,稳定币与高性能公链占据主流。以下是基于2025年下半年市值数据整理的全球数字货币排行榜,反映当前…

    2025年12月11日
    000
  • 2025全球加密货币市值前十榜单(主流币种)

    Binance币安 官网直达: 安卓安装包下载: 欧易OKX ️ 官网直达: 安卓安装包下载: Huobi火币️ 官网直达: 安卓安装包下载: 2025年全球加密货币市值排名前十的主流币种已趋于稳定,头部资产凭借技术实力、生态规模和市场共识持续领跑。以下是基于近期市场数据整理的主流榜单及核心看点。 …

    2025年12月11日
    000
  • 2025年最值得投资的加密货币 2025百倍币投资推荐

    Binance币安 官网直达: 安卓安装包下载: 欧易OKX ️ 官网直达: 安卓安装包下载: Huobi火币️ 官网直达: 安卓安装包下载: 2025年加密市场进入成熟与爆发并存的阶段,选择潜力资产需结合技术进展、生态扩张和机构参与度。以下几类加密货币值得关注,它们在不同维度展现出成为“百倍币”的…

    2025年12月11日
    000
  • 币圈关注什么新闻平台好 玩虚拟币关注新闻软件推荐

    在信息高速流动的加密世界,掌握及时、准确的资讯是做出明智判断的关键。无论是市场新手还是资深参与者,都需要一个可靠的信息渠道来洞察行业脉搏。本文精选了几个备受推崇的新闻资讯平台,帮助你高效获取有价值的信息。 一、金色财经 1、作为中文区头部的区块链信息服务平台,金色财经提供了全面且快速的行业新闻。 2…

    2025年12月11日
    000
  • 币安APP最新版v3.4.0下载 币安官网移动交易平台入口

    币安(Binance)作为行业领先的数字资产交易平台,其官方APP为用户提供了稳定、流畅且功能全面的移动端交易体验。通过币安APP,您可以便捷地访问实时市场数据、执行各类交易指令并高效管理您的个人资产。 本文为您提供币安app最新版v3.4.0的官方下载入口,点击文中的下载链接即可获取官方安装程序。…

    2025年12月11日
    000
  • 合约币圈波段什么意思 合约币圈波段是什么

    在数字资产领域,“合约币圈波段”是一种结合了特定工具和时间框架的交易策略。它旨在通过预测和捕捉市场在一段时间内的主要价格波动来获取收益,既不同于长期持有,也区别于超短线的日内交易。 一、理解“波段”:捕捉中期趋势 1、“波段交易”(swing trading)的核心思想是识别并跟随一个市场周期的“波…

    2025年12月11日
    000
  • 怎么加入币圈 币圈新手入门软件2025汇总

    一、核心交易平台:起点与基石 1、交易平台是连接现实世界与数字资产领域的桥梁,是大多数人入门的第一站。选择一个用户量大、信誉良好的平台至关重要。 2、币安 (Binance): 币安 (Binance)官网直达: 作为全球领先的综合性交易平台,它提供了丰富的数字资产种类和交易对。其“精简版”界面对新…

    2025年12月11日
    000
  • 十大比特币交易所推荐2026

    在这个快速发展的数字时代,虚拟货币已成为一种重要的资产类别,而选择一个可靠的交易平台至关重要。对于寻求最佳交易体验的用户来说,了解市场上值得信赖的应用程序是关键。本文将为您盘点2026年最新虚拟币交易app的十大正规榜单,深入解析它们的特点与优势,帮助您做出明智的选择。 1. Binance (币安…

    2025年12月11日 好文分享
    000
  • 币圈的新闻资讯看哪里 币圈行情观看软件2025推荐

    本文旨在为您梳理2025年值得关注的几个主流资讯和行情查看平台,帮助您高效地把握市场动态。 一、综合行情数据平台 1、币安Binance : 币安官网直达: 作为行业内家喻户晓的平台,Binance提供了海量的数字资产品种信息,包括价格、市值、交易量和供应量等核心数据。它的优势在于数据覆盖面广,是入…

    2025年12月11日
    000
  • 币圈新手入门学看k线图哪个好软件好

    对于刚接触数字资产领域的朋友来说,看懂k线图是做出分析的第一步,选择一款合适的工具能让学习过程事半功倍。本文将推荐几款主流且适合新手学习k线图的软件,帮助你快速掌握市场脉搏,找到最适合自己的分析工具。 一、交易平台内置图表 1、诸如币安(Binance)、欧易(OKX)等主流交易平台,其手机App和…

    2025年12月11日
    000
  • 维持保证金率和初始保证金率是什么关系?通俗解释

    在币圈合约交易中,初始保证金率和维持保证金率是两个紧密相连的核心风控概念,它们共同决定了您能否开仓以及能否持续持有仓位。简单来说,可以把它们想象成一次跳伞体验的“起跳高度”和“最低开伞高度”。初始保证金率决定了您需要具备多厚的“资本”才能从飞机上起跳(开仓),而维持保证金率则是您在空中必须打开降落伞…

    2025年12月11日
    000
  • 冰山委托和时间加权委托分别适用于什么建仓场景?

    在币圈进行大额交易时,直接将一笔大单投入市场可能会瞬间拉高或砸低价格,造成不必要的交易成本和市场冲击。为了解决这个问题,交易所提供了高级委托策略,其中冰山委托(Iceberg Order)和时间加权平均价格委托(TWAP, Time-Weighted Average Price)是两种最常用的建仓工…

    2025年12月11日
    000
  • 什么是Tether USAT(USAT)币?它如何运作?USAT运作方式、代币经济及路线图介绍

    目录 什么是 tether usat(usat)? Tether USAT(USAT)亮点 1:1美元稳定性 网速交易 无中介的自由 美国监管合规 透明的储备管理 全球影响力 创新应用领域 Tether USAT(USAT)如何运作? Tether USAT(USAT)对利益相关者的益处 Tethe…

    2025年12月11日 好文分享
    000
  • 十大正规虚拟币交易app最新榜单2026

    在这个快速发展的数字时代,虚拟货币已成为一种重要的资产类别,而选择一个可靠的交易平台至关重要。对于寻求最佳交易体验的用户来说,了解市场上值得信赖的应用程序是关键。本文将为您盘点2026年最新虚拟币交易app的十大正规榜单,深入解析它们的特点与优势,帮助您做出明智的选择。 1. Binance (币安…

    2025年12月11日 好文分享
    000
  • u永续合约怎么解除 一文讲解u永续合约解除步骤

    有效管理U本位永续合约的持仓是控制风险和锁定收益的关键。本文将详细介绍几种主流的平仓(即解除合约)操作方式,包括市价、限价以及止盈止损,帮助您根据不同市场情况和交易策略,灵活选择最合适的操作方法。 一、市价平仓:追求速度与成交率 1、市价平仓指的是不预设价格,立即以当前市场最优对手方价格成交的指令。…

    2025年12月11日
    000
  • 全仓和逐仓有啥区别?新手必看的仓位模式选择指南

    在充满机遇与风险的币圈合约交易中,理解并选择合适的仓位模式是控制风险、实现盈利的第一步。对于新手而言,常常会对“全仓”和“逐仓”这两个概念感到困惑。简单来说,它们是两种不同的保证金计算和风险管理方式,直接关系到你的账户资金安全和潜在亏损范围。选择错误的模式,可能会让你的盈利瞬间化为乌有,甚至导致整个…

    2025年12月11日
    000
  • 杠杆怎么用才安全?一文说清币圈杠杆交易的利与弊

    杠杆交易是加密货币市场中一个充满诱惑又极具挑战的工具。简单来说,它就像一个金融放大镜,允许交易者用较小的本金(保证金)去撬动远超其价值的交易头寸,从而实现“以小博大”。然而,这把双刃剑在放大收益可能性的同时,也同等程度地放大了亏损的风险。正确理解并安全使用杠杆,是每一位币圈交易者走向成熟的必修课。想…

    2025年12月11日
    000

发表回复

登录后才能评论
关注微信