好久没写博客了,险些以为自己找不到密码了。
最近抽空参与了个小项目,很惭愧,只做了三件小事
1. 基于PyTorch训练了一系列单图像超分辨神经网络
基于PyTorch训练了一系列单图像超分辨神经网络,超分辨系数从2-10。
该部分的实现参考了pytorch官方repo中的SR例程,训练程序包含于`./train`文件夹。该项目
基于高效子像素卷积层[1]进行空间分辨率提升操作,训练速度极快。
[1] ["Shi W, Caballero J, Huszar F, et al. Real-Time Single Image and
Video Super-Resolution Using an Efficient Sub-Pixel Convolutional
Neural Network[J]. 2016:1874-1883.](https://arxiv.org/abs/1609.05158)
2. 把训练好的模型权值转存为MATLAB文件。
简单粗暴,异常直接,只要把对应卷积层的权值全部提取出来就可以了。
提取的时候注意一点,要把pytorch中的Variable格式转换为Tensor,再转换为CPU模式,最终转换为numpy数组。
这一系列过程合并起来就是:
Var.data.cpu().numpy()
具体实现如下:
1 from __future__ importprint_function2
3 importtorch4 importnumpy as np5 importscipy.io as sio6
7 for i in [2, 3, 4, 5, 6, 7, 8, 9, 10]