srcnn网络结构
1 先取出3的整数倍的像素值, 以进行下面的图像模糊过程
input_ = scipy.ndimage.interpolation.zoom(label_, (1./scale), prefilter=False)
input_ = scipy.ndimage.interpolation.zoom(input_, (scale/1.), prefilter=False)
通过把图片先缩小再放大 ,得到模糊图像(后面要用的input),原始图像就是label,然后把所有的图像裁剪成33*33,和21*21 分别添加到两个list中, 把两个list分别转成array,得到n*33*33*1 和n*21*21*1,然后存成.h5文件格式,再读出
注意 只按照块作为一个训练数据,不是一个图像作为一个数据
1 图像超分辨率重建之SRCNN https://blog.csdn.net/Autism_/article/details/79401798
2 学习笔记之——基于深度学习的图像超分辨率重建https://blog.csdn.net/gwplovekimi/article/details/83041627#ESPCN%EF%BC%88Efficient%20Sub-Pixel%20Convolutional%20Neural%20Network%EF%BC%89
3医学图像领域的GANs https://zhuanlan.zhihu.com/p/59521772
仿真过程:
数据集的建立:label120,result,test,三个文件夹。label120是训练文件夹,result存放test结果。
1:训练数据加载 运行CUDA_VISIBLE_DEVICES=(0-7(gpu)) python3 prepare_train.py
nvidia-smi 查资源
ps -f -p 22299(PID)查看具体GPU使用者情况
python3 net11.py 网络训练
测试数据加载 python3 prepare_test.py
进行测试 python3 demo_sr.py
在result中查看结果
2:tensorboard 可视化:
tensorboard --logdir=logs 或者 tensorboard --logdir logs --host 219.244.80.8 --port 8080
。输出网址。linux下输入219.244.80.8:8080
遇到的问题:
1 Thumbs.db存在图片文件夹中,造成数据加载时读写函数识别不出来,出现opencv中cv函数错误。
Thumbs.db是存放图片的缩略图,一般隐藏在图片文件夹中。
最好用服务器的数据传输传送图片,可以保证缩略图传不过来。如果用SFTP传送,很容易出现问题。
2cvda内存不够,tensorflow CUDA out of memory
https://blog.csdn.net/wangkun1340378/article/details/72782593
可以修改 bitch的大小