Windows环境下训练开源图像超分项目 ECBSR 教程

ECBSR

介绍

  1. ECBSR(Edge-oriented Convolution Block for Real-time Super Resolution)是一种针对移动设备设计的轻量级超分辨率网络。它的核心是一种可重参数化的构建模块,称为边缘导向卷积块(ECB),这种模块在训练阶段通过多个路径提取特征,包括普通的3x3卷积、通道扩展-压缩卷积以及一阶和二阶空间导数。在推理阶段,这些操作可以合并成一个单一的3x3卷积,从而提高推理速度。

  2. ECBSR的设计目标是在保持高效运行的同时提升图像的超分辨率效果。它通过优化计算结构,减少了运算负担,确保了在低功耗处理器上的流畅执行。ECBSR特别适合处理移动设备上的资源限制问题,同时保证了超分辨率处理的质量。

  3. 在实际应用中,ECBSR能够实现在移动设备上的实时超分辨率处理,例如在即时通讯软件的图像增强、直播应用中的画质升级、智能手机的相机增强插件等场景中。它能够在不增加过多计算成本的前提下,显著改善用户体验。

  4. ECBSR的模型结构包括多个ECB模块,这些模块可以通过重参数化技术等价转换为一个普通的3x3卷积模块,适用于移动端、嵌入式等严格限制算力的场景。模型只支持单通道图像处理,如果是RGB图像,需要将图像从RGB颜色空间转换为YCbCr格式并只提取Y通道部分输入给模型处理。

  5. 在性能方面,ECBSR在不同的硬件平台上展现了出色的推理速度。例如,在骁龙865 DSP上,ECBSR-M4C8模型在进行1080p分辨率的图像超分辨率处理时,推理时间仅需10ms,而相比之下,传统的SRCNN和ESPCN模型则需要1583ms和26ms。这表明ECBSR在保证图像质量的同时,大幅度提高了处理速度。

相关资源

  1. 论文:Edge-oriented Convolution Block for Real-time Super Resolution on Mobile Devices(也可以从这里下载论文)
  2. GitHub地址:https://github.com/xindongzhang/ECBSR

Windows环境训练步骤

  1. 下载源码:git clone https://github.com/xindongzhang/ECBSR.git

  2. 在本机上激活PyTorch的虚拟环境:conda activate deeplearning,前提条件是本机已经搭建过PyTorch的开发环境,关于Windows平台搭建教程可以参考:Windows11搭建GPU版本PyTorch环境详细过程
    在这里插入图片描述

  3. cd 到项目中,根据README.md安装依赖命令:pip install -r requirements.txt

  4. 下载数据集DIV2Kbenchmark到本地,DIV2K有7.1G大小,benchmark有239M大小。【也可以根据自己的需求自己制作数据集】
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  5. 更改configs文件夹中配置文件的数据集的路径,改成上面步骤下载好的训练数据集路径。
    在这里插入图片描述

  6. 根据README.md,进行训令命令:python train.py --config ./configs/ecbsr_x2_m4c8_prelu.yml

  7. 报错缺少库,利用pip进行安装:imageio、scikit-image、pytorch_msssim

  8. 开始训练,加载数据集,原本的float64精度直接提示内存不够了,于是在div2k.py和benchmark.py中将数据集的精度改成float32的精度,本机24G内存也差一点跑满了。
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  1. 根据README.md中建议,再将 batch-size改小一点,改成16,进行训练。
    在这里插入图片描述
  2. 开始训练,【太耗内存了😂,得换电脑,笔记本还是不行😂】
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码流怪侠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值