• 大小: 16.1MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-07-20
  • 语言: 其他
  • 标签: DnCNN,TF  

资源简介

Denoise Convolutional neural network (DnCNN)代码的tensorflow实现

资源截图

代码片段和文件信息

import argparse
import glob
from PIL import Image
import PIL
import random
from utils import *

# the pixel value range is ‘0-255‘(uint8 ) of training data

# macro
DATA_AUG_TIMES = 1  # transform a sample to a different sample for DATA_AUG_TIMES times

parser = argparse.ArgumentParser(description=‘‘)
parser.add_argument(‘--src_dir‘ dest=‘src_dir‘ default=‘./data/Train400‘ help=‘dir of data‘)
parser.add_argument(‘--save_dir‘ dest=‘save_dir‘ default=‘./data‘ help=‘dir of patches‘)
parser.add_argument(‘--patch_size‘ dest=‘pat_size‘ type=int default=40 help=‘patch size‘)
parser.add_argument(‘--stride‘ dest=‘stride‘ type=int default=10 help=‘stride‘)
parser.add_argument(‘--step‘ dest=‘step‘ type=int default=0 help=‘step‘)
parser.add_argument(‘--batch_size‘ dest=‘bat_size‘ type=int default=128 help=‘batch size‘)
# check output arguments
parser.add_argument(‘--from_file‘ dest=‘from_file‘ default=“./data/img_clean_pats.npy“ help=‘get pic from file‘)
parser.add_argument(‘--num_pic‘ dest=‘num_pic‘ type=int default=10 help=‘number of pic to pick‘)
args = parser.parse_args()


def generate_patches(isDebug=False):
    global DATA_AUG_TIMES
    count = 0
    filepaths = glob.glob(args.src_dir + ‘/*.png‘)
    if isDebug:
        filepaths = filepaths[:10]
    print “number of training data %d“ % len(filepaths)
    
    scales = [1 0.9 0.8 0.7]
    
    # calculate the number of patches
    for i in xrange(len(filepaths)):
        img = Image.open(filepaths[i]).convert(‘L‘)  # convert RGB to gray
        for s in xrange(len(scales)):
            newsize = (int(img.size[0] * scales[s]) int(img.size[1] * scales[s]))
            img_s = img.resize(newsize resample=PIL.Image.BICUBIC)  # do not change the original img
            im_h im_w = img_s.size
            for x in range(0 + args.step (im_h - args.pat_size) args.stride):
                for y in range(0 + args.step (im_w - args.pat_size) args.stride):
                    count += 1
    origin_patch_num = count * DATA_AUG_TIMES
    
    if origin_patch_num % args.bat_size != 0:
        numPatches = (origin_patch_num / args.bat_size + 1) * args.bat_size
    else:
        numPatches = origin_patch_num
    print “total patches = %d  batch size = %d total batches = %d“ % \
          (numPatches args.bat_size numPatches / args.bat_size)
    
    # data matrix 4-D
    inputs = np.zeros((numPatches args.pat_size args.pat_size 1) dtype=“uint8“)
    
    count = 0
    # generate patches
    for i in xrange(len(filepaths)):
        img = Image.open(filepaths[i]).convert(‘L‘)
        for s in xrange(len(scales)):
            newsize = (int(img.size[0] * scales[s]) int(img.size[1] * scales[s]))
            # print newsize
            img_s = img.resize(newsize resample=PIL.Image.BICUBIC)
            img_s = np.reshape(np.array(img_s dtype=“uint8“)
                               (img_s.size[0] img_s.size[1

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-01-12 02:30  DnCNN-tensorflow-master\
     文件          67  2018-01-12 02:30  DnCNN-tensorflow-master\.gitignore
     文件         195  2018-01-12 02:30  DnCNN-tensorflow-master\CONTRIBUTING.md
     文件         186  2018-01-12 02:30  DnCNN-tensorflow-master\Dockerfile
     文件       35141  2018-01-12 02:30  DnCNN-tensorflow-master\LICENSE
     文件        3308  2018-01-12 02:30  DnCNN-tensorflow-master\README.md
     目录           0  2018-01-12 02:30  DnCNN-tensorflow-master\checkpoint_demo\
     文件     6680852  2018-01-12 02:30  DnCNN-tensorflow-master\checkpoint_demo\DnCNN-tensorflow-67336.data-00000-of-00001
     文件        7095  2018-01-12 02:30  DnCNN-tensorflow-master\checkpoint_demo\DnCNN-tensorflow-67336.index
     文件     3924539  2018-01-12 02:30  DnCNN-tensorflow-master\checkpoint_demo\DnCNN-tensorflow-67336.meta
     文件         101  2018-01-12 02:30  DnCNN-tensorflow-master\checkpoint_demo\checkpoint
     目录           0  2018-01-12 02:30  DnCNN-tensorflow-master\data\
     目录           0  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\
     文件       20790  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_001.png
     文件       14758  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_002.png
     文件       22658  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_003.png
     文件       20250  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_004.png
     文件       20048  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_005.png
     文件       18456  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_006.png
     文件       19182  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_007.png
     文件       17765  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_008.png
     文件       10474  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_009.png
     文件       21174  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_010.png
     文件       22221  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_011.png
     文件       24979  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_012.png
     文件       22798  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_013.png
     文件       14812  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_014.png
     文件       18469  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_015.png
     文件       20270  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_016.png
     文件       17574  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_017.png
     文件       22337  2018-01-12 02:30  DnCNN-tensorflow-master\data\Train400\test_018.png
............此处省略409个文件信息

评论

共有 条评论

相关资源