0

0

第十六届全国大学生智能车竞赛线上赛增分:PaTTA的使用

P粉084495128

P粉084495128

发布时间:2025-07-21 16:08:54

|

713人浏览过

|

来源于php中文网

原创

本文以肖佬项目为例,介绍如何用PaTTA提升效果。先解压数据集到data文件夹,生成数据列表并分割训练、验证集,安装PaddleSeg。编写配置文件后训练、验证、导出模型,再下载安装PaTTA,用其工具处理测试集,最后打包结果提交。PaTTA默认配置约涨1.几分,可解决验证集与提交结果差异问题。

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

第十六届全国大学生智能车竞赛线上赛增分:patta的使用 - php中文网

PaTTA的使用

以肖佬的项目为例,展示如何使用PaTTA增分。

如果您感觉不错的话,请watch、star、fork三联,别白嫖啦,谢谢您~

仓库地址:https://github.com/AgentMaker/PaTTA

效果展示

使用PaTTA默认配置大约能涨1.几分,PaTTA能解决训练时候在验证集上miou非常高,但在提交后跌许多的问题。

这是在同一个模型情况下,仅仅使用了默认配置的PaTTA后的效果:

第十六届全国大学生智能车竞赛线上赛增分:PaTTA的使用 - php中文网        

项目主体

解压数据集

  • 考虑到数据集大小和项目启动速度,所以将数据集解压至 data 文件夹
  • 每次进入项目都需要进行一次解压
In [ ]
# 解压数据集# q [quiet]:无输出# d [directory]:指定解压目录!unzip -d data data/data68698/智能车数据集.zip
   

数据集预处理

  • 生成格式为 “img_path anno_path” 的数据列表,供后续模型训练使用
  • 切分训练数据为:训练集和验证集,前者用于训练模型,后者用于验证模型效果
In [ ]
# 生成数据列表datas_list = [    'data/image_4000/%d.png data/mask_4000/%d.png\n' % (x, x) 
    for x in range(4000)
]# 分割训练集,前 3900 张图像作为训练数据with open('train.txt', 'w') as f:    for line in datas_list[:-100]:
        f.write(line)# 分割验证集,后 100 张图像作为验证数据with open('dev.txt', 'w') as f:    for line in datas_list[-100:]:
        f.write(line)
   

安装 PaddleSeg

  • 可通过 pip 或者源码进行安装
  • 作为演示并为了节省拉取代码的时间,这里使用 pip 进行安装
  • 完成安装之后,建议点击 Notebook 上方的重启按钮重启环境后再使用
In [ ]
# 安装 PaddleSeg!pip install paddleseg
   
In [ ]
!unzip PaddleSeg-release-v2.0.zip!mv PaddleSeg-release-v2.0 paddleseg
   

编写配置文件

  • PaddleSeg 使用配置文件进行各种模型数据等各个方面的配置操作
  • 具体的配置方式请参考:官方配置文档
  • 更多的配置文件模板请参考:官方配置文件
  • 基线代码演示所需的配置文件放置于 Road_Line.yml
  • 示例的配置文件内容如下:
# 设置数据批大小batch_size: 2# 设置训练步数iters: 1000# 训练集配置train_dataset:
  type: Dataset
  num_classes: 15
  # 数据目录
  dataset_root: ./
  # 训练集列表
  train_path: ./train.txt
  # 数据预处理
  transforms:
    - type: Resize
      target_size: [512, 512]    - type: Normalize
  mode: train# 验证集配置val_dataset:
  type: Dataset
  num_classes: 15
  # 数据目录
  dataset_root: ./
  # 验证集列表
  val_path: ./dev.txt
  # 数据预处理
  transforms:
    - type: Resize
      target_size: [512, 512]    - type: Normalize
  mode: val# 优化器配置optimizer:
  type: sgd
  momentum: 0.9
  weight_decay: 4.0e-5# 学习率配置learning_rate:
  value: 0.01
  decay:
    type: poly
    power: 0.9
    end_lr: 0# 损失函数配置loss:
  types:
    - type: CrossEntropyLoss
  coef: [1.0, 0.4]# 模型配置model:
  type: FastSCNN
  num_classes: 15
  enable_auxiliary_loss: True
  pretrained: null
   

模型训练

  • 使用 train.py 进行模型训练
In [ ]
# 模型训练# config:配置文件# save_dir:模型保存路径# do_eval:训练同时进行模型验证# 更多选项参数请参考源代码!python paddleseg/train.py \
    --config Road_Line.yml \
    --save_dir saved_models \
    --do_eval
   

模型验证

  • 使用 val.py 脚本进行模型验证
In [ ]
# 模型验证# config:配置文件# model_path:模型文件# 更多选项参数请参考源代码!python paddleseg/val.py \
    --config Road_Line.yml \
    --model_path saved_models/best_model/model.pdparams
   

模型导出

  • 使用 export.py 脚本进行模型预测
In [ ]
!python paddleseg/export.py \
       --config Road_Line.yml \
       --model_path saved_models/best_model/model.pdparams
   

使用TTA

在经过模型导出后,得到下列文件,下列文件将用于PaTTA的使用。

B12
B12

B12是一个由AI驱动的一体化网站建设平台

下载
output
  ├── deploy.yaml            # 部署相关的配置文件
  ├── model.pdiparams        # 静态图模型参数
  ├── model.pdiparams.info   # 参数额外信息,一般无需关注
  └── model.pdmodel          # 静态图模型文件
   

下载PaTTA

In [ ]
!git clone https://github.com/AgentMaker/PaTTA.git
   
In [ ]
!unzip PaTTA.zip
   

生成测试集

In [ ]
import glob
path = glob.glob('data/infer/*')
f = open('test.txt', 'w')for i in path:
    f.write(i+'\n')
f.close()
   

安装PaTTA

In [ ]
!pip install PaTTA/
   

一键使用

注意:请将seg.py里面的crop_size参数改成和训练一致!!!

In [16]
!python PaTTA/tools/seg.py --model_path='output/model' \
                 --batch_size=16 \
                 --test_dataset='test.txt'
   

结果提交

In [ ]
# 打包结果文件!zip -r result.zip result
   

相关专题

更多
pip安装使用方法
pip安装使用方法

安装步骤:1、确保Python已经正确安装在您的计算机上;2、下载“get-pip.py”脚本;3、按下Win + R键,然后输入cmd并按下Enter键来打开命令行窗口;4、在命令行窗口中,使用cd命令切换到“get-pip.py”所在的目录;5、执行安装命令;6、验证安装结果即可。大家可以访问本专题下的文章,了解pip安装使用方法的更多内容。

333

2023.10.09

更新pip版本
更新pip版本

更新pip版本方法有使用pip自身更新、使用操作系统自带的包管理工具、使用python包管理工具、手动安装最新版本。想了解更多相关的内容,请阅读专题下面的文章。

397

2024.12.20

pip设置清华源
pip设置清华源

设置方法:1、打开终端或命令提示符窗口;2、运行“touch ~/.pip/pip.conf”命令创建一个名为pip的配置文件;3、打开pip.conf文件,然后添加“[global];index-url = https://pypi.tuna.tsinghua.edu.cn/simple”内容,这将把pip的镜像源设置为清华大学的镜像源;4、保存并关闭文件即可。

740

2024.12.23

python升级pip
python升级pip

本专题整合了python升级pip相关教程,阅读下面的文章了解更多详细内容。

337

2025.07.23

http与https有哪些区别
http与https有哪些区别

http与https的区别:1、协议安全性;2、连接方式;3、证书管理;4、连接状态;5、端口号;6、资源消耗;7、兼容性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

1655

2024.08.16

vlookup函数使用大全
vlookup函数使用大全

本专题整合了vlookup函数相关 教程,阅读专题下面的文章了解更多详细内容。

28

2025.12.30

金山文档相关教程
金山文档相关教程

本专题整合了金山文档相关教程,阅读专题下面的文章了解更多详细操作。

29

2025.12.30

PS反选快捷键
PS反选快捷键

本专题整合了ps反选快捷键介绍,阅读下面的文章找到答案。

25

2025.12.30

表格中一行两行的方法
表格中一行两行的方法

本专题整合了表格中一行两行的相关教程,阅读专题下面的文章了解更多详细内容。

4

2025.12.30

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 0.6万人学习

Django 教程
Django 教程

共28课时 | 2.6万人学习

SciPy 教程
SciPy 教程

共10课时 | 1.0万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号