当前位置: 首页 > news >正文

PixelShuffle原理

引言

在图像超分辨率(Super-Resolution)任务中,我们希望将一张低分辨率图像(LR)恢复成高分辨率图像(HR)
常见的上采样方法(如双线性插值、转置卷积)容易导致模糊或棋盘格伪影。

PixelShuffle(又称 Sub-pixel Convolution) 则提供了一种高效且无伪影的上采样方式。
它被广泛应用于 ESPCN、EDSR、SRGAN 等模型中。


一、核心思想:从“通道维”取回空间细节

传统卷积输出的特征图往往是「空间小、通道多」。
PixelShuffle 的关键思想是:

将通道维度中的子像素信息重新“展开”到空间维度中
从而无损地获得更高分辨率的输出。

公式上:

\text{Input shape: } [B, C \times r^2, H, W]
\text{Output shape: } [B, C, H \times r, W \times r]

其中:

  • (r):上采样倍数

  • (C):输出通道数(如 RGB = 3)

  • (H, W):原特征图空间尺寸


二、工作流程(以 ESPCN 为例)

插图:

来源于论文:Real-Time Single Image and Video Super-Resolution Using an Efficient Sub-Pixel Convolutional Neural Network


1️⃣ 输入阶段:Low-Resolution 图像

输入为一张低分辨率图像,尺寸为 [H, W, C]

2️⃣ 特征提取阶段(Hidden Layers)

通过若干卷积层提取特征:

Conv -> ReLU -> Conv -> ReLU ...

这些卷积层不会改变图像分辨率,只是提取更高层语义。

3️⃣ Sub-pixel 卷积层

最后一层卷积将输出通道数扩展为:
C \times r^2


例如:

  • 如果目标输出是 3 通道(RGB),

  • 放大倍数是 2,

  • 那卷积输出通道就是 3×4 = 12。

这些“额外的通道”中存放的就是未来要还原的子像素块信息

4️⃣ PixelShuffle 操作

PixelShuffle 不做卷积、不做插值,只做 索引重排

将通道中的 r×r 子像素重新排列到空间坐标中。

举例:

  • 原来一个像素点里藏着 2×2 的 4 个小块;

  • PixelShuffle 把这 4 个小块取出;

  • 摊平在空间上;

  • 分辨率提升到原来的 2 倍。


三、与传统上采样方法的区别

方法机制是否可学习是否有伪影信息保留
双线性插值数学插值❌ 否❌ 否❌ 丢失细节
转置卷积可学习卷积✅ 是⚠️ 可能出现棋盘格伪影✅ 保留但分布不均
PixelShuffle通道重排⚙️ 卷积层学习通道信息✅ 无伪影✅ 信息完全保留

四、为什么不会“颜色流失”

有些人会误以为 PixelShuffle 把多个通道合并成一个图像,从而“变成灰色”。
其实不然:

  • RGB 三个颜色通道仍然独立存在;

  • 只是每个颜色的像素块被“重新放置”到更大空间;

  • 没有做加权平均(不像灰度化那样 (0.3R+0.59G+0.11B));

  • 信息只是“搬家”,没有“丢失”。


五、PixelShuffle 的数学公式

对于输入张量(x[b, c \times r^2 + i \times r + j, h, w])
输出张量 (y[b, c, h \times r + i, w \times r + j])

其中:

  • (i, j ∈ [0, r-1])

  • 每个输出像素都来自不同的输入通道

换句话说:

通道中的每一组 r² 个值,被映射成输出图中的一个 r×r 小块。


http://www.dtcms.com/a/516342.html

相关文章:

  • 昆明做网站价格网站屏蔽省份
  • 创建网站需要学什么知识2017民非单位年检那个网站做
  • LABVIEW依赖关系显示文件删除、移动或重命名,每次打开都要指定很多路径【解决方案】
  • 东莞网站建设seo浙江住房和城乡建设厅网站首页
  • MLOps 的CI/CD VS DevOps 的CI/CD
  • spark组件-spark sql-读取数据
  • 网站开发大致需要哪些步骤可视化开发工具推荐
  • zabbix实现配置监控Windows设备、SNMP协议设备的全流程实操教程
  • 天津做网站找哪家公司好建设网站公司哪里好相关的热搜问题解决方案
  • 友情链接价格seo官网制作规划
  • 桦甸市城乡建设局网站技术外包网站
  • 英文网站设计网络广告策划方案怎么做
  • go前后端项目的启动 、打包和部署
  • redis三主三从集群升级6.2.20, 保留数据
  • 导入部署天机AI助手智能体的全流程(详细图解,包含导入虚拟机后无法ping通百度的解决办法)
  • 物联网运维中的容器化服务部署与弹性扩展技术
  • cms建站程序免费个人网站建站能上传视频吗
  • 「用Python来学微积分」8. 极限的概念
  • GJOI 10.17/10.18 题解
  • CAN总线的物联网桥梁:以太网网关如何赋能工业4.0
  • C语言需要掌握的基础知识点之递归
  • 建设网站学什么wordpress zip格式
  • RFSoC在射频阵列信号采集分析中的应用
  • [Agent可视化] 会话管理 | Redis缓存 | PostgreSQL持久化 | 智能上下文处理
  • [Agent可视化] 编排工作流(Go) | Temporal引擎 | DAG调度器 | ReAct模式实现
  • 自定义时间服务器主机的时间通过ntp.aliyun.com主机同步时间
  • 做移动端网站设计做交通事故的网站
  • 【论文精读】EvalCrafter:文本到视频生成模型的全面评测框架
  • 普林尼与LLM提示词注入:AI安全防线的隐秘挑战
  • 撰写标书很难吗?用AI标书工具写标书,快速输出优质投标方案