0

0

基于PPSeg框架的HRNet_W48_Contrast复现

P粉084495128

P粉084495128

发布时间:2025-07-23 10:17:33

|

734人浏览过

|

来源于php中文网

原创

该项目复现相关论文,基于PaddleSeg实现全监督语义分割训练范式,借跨图像像素对比优化特征空间。在Cityscapes验证集上,HRNet_W48模型mIou达82.47%,超复现要求,使用Tesla V100及PaddlePaddle 2.1.2。

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

基于ppseg框架的hrnet_w48_contrast复现 - php中文网

论文简介

基于PPSeg框架的HRNet_W48_Contrast复现 - php中文网
论文作者提出一种新的、全监督语义分割训练范式,可应用于语义分割的训练中,能够显著提高语义分割的效果。论文在cityscapes验证集上进行实验,HRNet_W48的mIou为81.0%,本次复现赛要求复现的精度为82.2%,本项目复现结果为82.47%。

论文核心思想

作者提出一种新的、全监督语义分割训练范式,利用跨图像的像素-像素之间的关系,来学习一个更好的特征空间。如上图所示,(a)和(b)是训练图片及其对应的标签,传统的语义分割训练时忽略了不同图片之间的上下文信息,而本篇论文提出的跨图像像素对比学习,利用不同图片之间的像素关系,使得特征空间中同种类别的像素相似性变高、不同类别的像素相似度变低(如图d),从而得到一个更好的结构化的特征空间(如图e)。

网络结构

基于PPSeg框架的HRNet_W48_Contrast复现 - php中文网
上图为网络结构,fFCN为backbone模块,fSEG为语义分割head模块,从fSEG平行引出fPROJ模块,fPROJ用来进行对比训练,fSEG训练方法与传统方法相同。

损失函数

基于PPSeg框架的HRNet_W48_Contrast复现 - php中文网
损失函数如上图,由2部分构成,交叉熵损失和对比损失组成,其中对比损失为本篇论文的核心。

基于PPSeg框架的HRNet_W48_Contrast复现 - php中文网
交叉熵损失如上图所示,此处不做介绍。

基于PPSeg框架的HRNet_W48_Contrast复现 - php中文网
上图为对比损失,亦是本篇论文的核心。其中i是真实标签为c的特征向量,i+为正样本像素特征,i-为负样本像素特征,由上式可以看出,通过像素-像素对比学习,在特征空间上同一类别的像素拉近,不同类别的像素原理,从而使得不同类别的像素特征空间能够更好的可区分。

对比损失的anchor采样方法

预测错误的像素被认为是hard anchor,预测正确的像素被认为是easy anchor,在对比度损失计算过程中,一半的anchor是hard anchor,另一半是easy anchor。

实验

基于PPSeg框架的HRNet_W48_Contrast复现 - php中文网
上左图为像素交叉熵损失的特征可视图,上右图是对比损失的特征可视化图,可以看出,使用了像素对比损失的语义分割模型特征空间更具结构化。

php商城系统
php商城系统

PHP商城系统是国内功能优秀的网上商城系统,同时也是一个商业的PHP开发框架,有多套免费模版,强大的后台管理功能,专业的网上商城系统解决方案,快速建设网上购物商城、数码商城、手机商城、办公用品商城等网站。 php商城系统v3.0 rc6升级 1、主要修复用户使用中出现的js未加载完报错问题,后台整改、以及后台栏目的全新部署、更利于用户体验。 2、扩展出,更多系统内部的功能,以便用户能够迅速找到需

下载

项目介绍

本项目为第四届百度论文复现赛Exploring Cross-Image Pixel Contrast for Semantic Segmentation复现结果,本项目基于PaddleSeg实现,并复现了论文实验结果,非常感谢百度提供的比赛平台以及GPU资源。

复现环境

硬件: Tesla V100 * 4
框架: paddlepaddle==2.1.2

参数调试

1、project dimension:此参数不影响最后的模型大小,可以适度调整来获得好的效果;
2、迭代次数:40k次迭代时mIou为81.8%,不满足验收标准,60k次迭代mIou为82.47%,可以适当提高迭代次数;
3、训练时长:Tesla V100 * 4, batch_size为2,60k次迭代,训练总时长为13.5h。

复现经验

1、使用paddleseg语义分割框架可以有效的减少复现的代码量,提高复现速度;
2、论文提供的源码使用的框架是pytorch,需要注意不同框架模型转换的细节(尤其是部分函数的不同)。

项目结果

Method Environment mIou Step Batch_size Dataset
HRNet_W48_Contrast Tesla V-100 ×× 4 82.47 60k 2 CityScapes

项目实现思路

本项目基于PaddleSeg开发,由于PaddleSeg已经包含了数据处理,验证等多项功能,本篇论文的复现仅需要实现HRNet_W48 Head和Contrast loss部分。

项目运行实践

1、按照以下步骤可运行本项目。
2、由于HRNet_W48参数较大,无法上传至Aistudio,可从github的百度云连接下载训练好的权重参数。

In [ ]
# step 1: git clone, 本项目已clone过,跳过此步骤!git clone https://hub.fastgit.org/justld/contrast_seg_paddle.git
   
In [ ]
# step 2: 解压数据集%cd /home/aistudio/data/data64550
!tar -xf cityscapes.tar
%cd /home/aistudio
   
In [ ]
# step 3: 训练# 注意:把configs目录下的HRNet_W48_cityscapes_1024x512_60k中数据集目录更换为自己的数据集目录,如:dataset_root: /home/aistudio/data/data64550/cityscapes%cd /home/aistudio/contrast_seg_paddle
!python train.py --config configs/HRNet_W48_cityscapes_1024x512_60k.yml  --do_eval --use_vdl --log_iter 100 --save_interval 1000 --save_dir output
   
代码解释
In [3]
# step 4: 验证# 注意:由于训练好的参数文件太大,请移步github(https://hub.fastgit.org/justld/contrast_seg_paddle.git)从百度云下载权重文件,并把model_path更换为自己的参数路径%cd /home/aistudio/contrast_seg_paddle
!python val.py --config configs/HRNet_W48_cityscapes_1024x512_60k.yml --model_path output/best_model/model.pdparams
   

相关专题

更多
pytorch是干嘛的
pytorch是干嘛的

pytorch是一个基于python的深度学习框架,提供以下主要功能:动态图计算,提供灵活性。强大的张量操作,实现高效处理。自动微分,简化梯度计算。预构建的神经网络模块,简化模型构建。各种优化器,用于性能优化。想了解更多pytorch的相关内容,可以阅读本专题下面的文章。

429

2024.05.29

Python AI机器学习PyTorch教程_Python怎么用PyTorch和TensorFlow做机器学习
Python AI机器学习PyTorch教程_Python怎么用PyTorch和TensorFlow做机器学习

PyTorch 是一种用于构建深度学习模型的功能完备框架,是一种通常用于图像识别和语言处理等应用程序的机器学习。 使用Python 编写,因此对于大多数机器学习开发者而言,学习和使用起来相对简单。 PyTorch 的独特之处在于,它完全支持GPU,并且使用反向模式自动微分技术,因此可以动态修改计算图形。

19

2025.12.22

pytorch是干嘛的
pytorch是干嘛的

pytorch是一个基于python的深度学习框架,提供以下主要功能:动态图计算,提供灵活性。强大的张量操作,实现高效处理。自动微分,简化梯度计算。预构建的神经网络模块,简化模型构建。各种优化器,用于性能优化。想了解更多pytorch的相关内容,可以阅读本专题下面的文章。

429

2024.05.29

Python AI机器学习PyTorch教程_Python怎么用PyTorch和TensorFlow做机器学习
Python AI机器学习PyTorch教程_Python怎么用PyTorch和TensorFlow做机器学习

PyTorch 是一种用于构建深度学习模型的功能完备框架,是一种通常用于图像识别和语言处理等应用程序的机器学习。 使用Python 编写,因此对于大多数机器学习开发者而言,学习和使用起来相对简单。 PyTorch 的独特之处在于,它完全支持GPU,并且使用反向模式自动微分技术,因此可以动态修改计算图形。

19

2025.12.22

c++主流开发框架汇总
c++主流开发框架汇总

本专题整合了c++开发框架推荐,阅读专题下面的文章了解更多详细内容。

25

2026.01.09

c++框架学习教程汇总
c++框架学习教程汇总

本专题整合了c++框架学习教程汇总,阅读专题下面的文章了解更多详细内容。

24

2026.01.09

学python好用的网站推荐
学python好用的网站推荐

本专题整合了python学习教程汇总,阅读专题下面的文章了解更多详细内容。

72

2026.01.09

学python网站汇总
学python网站汇总

本专题整合了学python网站汇总,阅读专题下面的文章了解更多详细内容。

9

2026.01.09

python学习网站
python学习网站

本专题整合了python学习相关推荐汇总,阅读专题下面的文章了解更多详细内容。

9

2026.01.09

热门下载

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

精品课程

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

共4课时 | 0.6万人学习

Django 教程
Django 教程

共28课时 | 3万人学习

SciPy 教程
SciPy 教程

共10课时 | 1.1万人学习

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

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