本赛题要求建立模型消除屏摄图片的摩尔纹噪声。数据集含1000个训练样本及A、B榜各200个测试样本,为image-to-image任务。基线采用WDNet模型,结合DenseNet与空洞卷积,新增随机旋转、裁剪等数据增强,优化损失权重与学习率衰减策略,最终B榜得分63.013。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

选手需要建立模型,对比赛给定的带有摩尔纹的图片进行处理,消除屏摄产生的摩尔纹噪声,还原图片原本的样子,并提交模型输出的结果图片。
本次比赛的数据集所有的图像数据均由真实场景采集得到,再通过技术手段进行相应处理,生成可用的脱敏数据集。该任务为image-to-image的形式,因此源数据和GT数据均以图片的形式来提供。本次比赛不限制使用额外的训练数据来优化模型。测试数据集的GT不做公开。
数据集构成
|- root
|- images
|- gts
本次比赛最新发布的数据集共包含训练集、A榜测试集、B榜测试集三个部分,其中训练集共1000个样本,A榜测试集共200个样本,B榜测试集共200个样本; images 为带摩尔纹的源图像数据,gts 为无摩尔纹的真值数据(仅有训练集数据提供gts ,A榜测试集、B榜测试集数据均不提供gts); images 与 gts 中的图片根据图片名称一一对应。
以下图片为数据中的样本,左侧图片为原图,右侧图片为已经去除摩尔纹,同时亮度也有所调整的GT图(GroundTruth)。
WDNet是ECCV 2020提出一种去除摩尔纹的模型。该模型是一种基于小波与双分支的神经网络,结构如下:
首先RGB图片需要通过WaveletTransform模块进行转换,得到一个48通道的数据,通过WDNet网络同样得到一个通道数与尺寸不变的特征图。最后在一次通过WaveletTransform使用转置卷积将图片还原得到最终预测结果。
这里WaveletTransform的权重是固定不变不需要训练的。
DenseNet中使用旁路连接和特征复用的方式缓解了梯度消失的问题,同时减少了网络参数。DenseNet已经被用于去雾和超分辨率网络。
如上图所示,该模型中的dense分支新增了一个方向感知模块(DPM),用于找到摩尔纹的方向。DPM的输出和每一个dense的输出相乘,然后乘以一个因子β然后与输入相加。该设计可以有效的定位摩尔纹的位置。
下采样和池化可以增大感受野,但同时也丢失了一些细节。空洞卷积可以解决这个问题。在每一个dilation分支里,都有两层,有一个3x3的空洞卷积和3x3的普通卷积组成。
基于WDNet模型实现的baseline,对摩尔纹图像进行观察,增加了随机度数旋转和随机裁剪的数据增强策略和对loss权值的修改,以及修改学习率衰减的策略。
demoire-baseline/
├── train.py
└── dataset.py
└── transforms.py
└── vgg.py
└── losses.py
└── model.py
├── predict.py
└── utils.py
└── train_result/model/epoch_1200/model.pdparams
└── model.py在RandomHorizontalFlip、Resize、Normalize的基础上,
因摩尔纹是以一定曲线的状态存在,所以对图像进行0-90度的随机旋转(Rotate);
直接将图像resize成一个较小图片,可能会损失图像上摩尔纹的信息,所以先裁取大小为(512,512)的图像,再resize成(512,512)大小(Crop)。
其中,根据https://aistudio.baidu.com/paddle/forum/topic/show/993042 可知,尺寸不变的resize不会与原图像不同。
使用baseline的原loss函数形式,preceptual loss的权值的改变对结果有增益,将preceptual loss的权值由1改为1.1。
学习率衰减采用余弦退火(CosineAnnealingDecay),在训练时梯度下降算法可能陷入局部最小值,此时可以通过突然提高学习率,来“跳出”局部最小值并找到通向全局最小值的路径。
3)较小的batch_size和较多的epoch对结果有增益,其中batch_size = 4,epoch = 1200。
4)优化器选择AdamW。
在数据增强上加上仿射变换
在模型修改方面加上MBCNN的结果进行融合
%cd /home/aistudio/data/ !unzip /home/aistudio/data/data120844/moire_train_dataset.zip!unzip /home/aistudio/data/data120844/moire_testA_dataset.zip
解压数据集之后,数据集目录如下
moire_train_dataset/ ├── gts └── images
%cd /home/aistudio/demoire-baseline/ !python train.py --dataset_root ../data/moire_train_dataset/ --max_epochs 1200 --batch_size 4 --sample_interval 100
在训练过程中,可以设置sample_interval的值,来获取中间模型的预测推理效果图。比如100,代表每迭代100次,则使用模型进行一次推理预测,并生成一张对比图。
epoch 8:
epoch 12:
在上面的图片中,左侧的图片为数据集中的原始图片,右边的图片为GT图,中间的图片为模型推理预测输出。可以看出随着模型训练迭代次数的增加,预测图越来越与GT图相似。
# 预测## 启动预测脚本
!unzip /home/aistudio/moire_testB_dataset.zip -d /home/aistudio/data/
%cd /home/aistudio/demoire-baseline/ !python predict.py --dataset_root ../data/moire_testB_dataset/ --pretrained train_result/model/epoch_1200/model.pdparams
运行结束后,结果文件保存在output/pre目录下。进入pre目录创建readme.txt文件。输入以下内容:
训练框架:PaddlePaddle 代码运行环境:V100 是否使用GPU:是 单张图片耗时/s:0.2 模型大小:15MB 其他说明:该算法参考WDNET网络。
然后压缩所有文件。
%cd /home/aistudio/demoire-baseline/output/pre/ !zip result.zip *.jpg *.txt
最后下载result.zip文件,提交即可。最终B榜得分63.013。
以上就是百度网盘AI大赛——图像处理挑战赛:文档图像摩尔纹消除第七名方案的详细内容,更多请关注php中文网其它相关文章!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号