新闻中心

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

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

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

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

PaTTA的使用

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

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

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

效果展示

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

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

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

项目主体

解压数据集

  • 考虑到数据集大小和项目启动速度,所以将数据集解压至 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:配置文件# s*e_dir:模型保存路径# do_eval:训练同时进行模型验证# 更多选项参数请参考源代码!python paddleseg/train.py \
    --config Road_Line.yml \
    --s*e_dir s*ed_models \
    --do_eval
   

模型验证

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

模型导出

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

使用TTA

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

美图云修 美图云修

商业级AI影像处理工具

美图云修 50 查看详情 美图云修
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
   

以上就是第十六届全国大学生智能车竞赛线上赛增分:PaTTA的使用的详细内容,更多请关注其它相关文章!


# 几分  # 当地的seo哪家好些啊  # seo基础套餐  # 永济网站优化排名  # 北京seo监控排名  # 网络seo天津  # 马鞍山百度seo优化  # 聊城网站排名建设  # 坑梓独立网站优化  # tag首页seo  # 鸡西门户网站建设  # 重启  # 为例  # python  # 中文网  # 请参考  # 十六届  # 美图  # 一言  # 线上  # 配置文件  # type  # fig  # ai  # 工具  # git 


相关栏目: 【 行业资讯67740 】 【 技术百科0 】 【 网络运营39195


相关推荐: 怎么用win7系统盘重装系统  电瓶车的power是什么意思  youtube受限模式是什么_youtube受限模式是什么意思  什么是域名解析 域名解析中采用了什么  为什么学typescript  汽车的type-c接口是什么  苹果16粉色还有哪些机型  单片机软件keil怎么运行  焊机上power灯闪是什么意思  win10锁屏壁纸怎么换360锁屏壁纸吗  燃气热水器上的power是什么意思  为什么程序员热爱typescript  为什么youtube音乐打不开  为什么夸克运行不了  得物上怎么样申请退换货 得物上退换货详细指南(包含海外)  如何在固态硬盘上安装win7系统  单片机加法程序怎么写  苹果16有哪些改装模式  电动车power灯亮红灯是什么意思  typescript中文怎么读  typescript怎么使用map  j*a数组对象怎么取  夸克是什么用途  企业征信不好如何恢复 企业征信不好怎么恢复步骤  路由器power灯一直亮是什么意思  如何去掉拍电脑的纹路详细教程  debug中如何用n命令命名程序文件名  typescript是什么时候出来的  typescript性能如何  如何安装大华固态硬盘  j*a中怎么截取数组  linux如何安装yum命令  更换固态硬盘如何检查  光猫power和pon常亮是什么意思  关系型数据库和非关系型数据库有哪些  夸克加载什么要会员  typescript是做什么用的  8800日元等于多少人民币  市盈率当中17A 18E是什么意思  ftp$如何执行宏命令  如何加装固态硬盘  typescript 如何解决 null  j*a如何运行curl命令行  如何修改域名解析  双十一的哪一天最优惠呢  hp固态硬盘如何安装  苹果16适合哪些机升级  typescript能开发什么  如何在昇腾Ascend 910B上运行Qwen2.5教程  电脑显示屏上power是什么意思 

搜索