File size: 4,992 Bytes
111d9b6 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 |
import argparse
from os import path as osp
from basicsr.utils import scandir
from basicsr.utils.lmdb_util import make_lmdb_from_imgs
def prepare_keys(folder_path, suffix='png'):
"""Prepare image path list and keys for DIV2K dataset.
Args:
folder_path (str): Folder path.
Returns:
list[str]: Image path list.
list[str]: Key list.
"""
print('Reading image path list ...')
img_path_list = sorted(
list(scandir(folder_path, suffix=suffix, recursive=False)))
keys = [img_path.split('.{}'.format(suffix))[0] for img_path in sorted(img_path_list)]
return img_path_list, keys
def create_lmdb_for_reds():
folder_path = './datasets/REDS/val/sharp_300'
lmdb_path = './datasets/REDS/val/sharp_300.lmdb'
img_path_list, keys = prepare_keys(folder_path, 'png')
make_lmdb_from_imgs(folder_path, lmdb_path, img_path_list, keys)
#
folder_path = './datasets/REDS/val/blur_300'
lmdb_path = './datasets/REDS/val/blur_300.lmdb'
img_path_list, keys = prepare_keys(folder_path, 'jpg')
make_lmdb_from_imgs(folder_path, lmdb_path, img_path_list, keys)
folder_path = './datasets/REDS/train/train_sharp'
lmdb_path = './datasets/REDS/train/train_sharp.lmdb'
img_path_list, keys = prepare_keys(folder_path, 'png')
make_lmdb_from_imgs(folder_path, lmdb_path, img_path_list, keys)
folder_path = './datasets/REDS/train/train_blur_jpeg'
lmdb_path = './datasets/REDS/train/train_blur_jpeg.lmdb'
img_path_list, keys = prepare_keys(folder_path, 'jpg')
make_lmdb_from_imgs(folder_path, lmdb_path, img_path_list, keys)
def create_lmdb_for_gopro():
folder_path = './datasets/GoPro/train/blur_crops'
lmdb_path = './datasets/GoPro/train/blur_crops.lmdb'
img_path_list, keys = prepare_keys(folder_path, 'png')
make_lmdb_from_imgs(folder_path, lmdb_path, img_path_list, keys)
folder_path = './datasets/GoPro/train/sharp_crops'
lmdb_path = './datasets/GoPro/train/sharp_crops.lmdb'
img_path_list, keys = prepare_keys(folder_path, 'png')
make_lmdb_from_imgs(folder_path, lmdb_path, img_path_list, keys)
folder_path = './datasets/GoPro/test/target'
lmdb_path = './datasets/GoPro/test/target.lmdb'
img_path_list, keys = prepare_keys(folder_path, 'png')
make_lmdb_from_imgs(folder_path, lmdb_path, img_path_list, keys)
folder_path = './datasets/GoPro/test/input'
lmdb_path = './datasets/GoPro/test/input.lmdb'
img_path_list, keys = prepare_keys(folder_path, 'png')
make_lmdb_from_imgs(folder_path, lmdb_path, img_path_list, keys)
def create_lmdb_for_rain13k():
folder_path = './datasets/Rain13k/train/input'
lmdb_path = './datasets/Rain13k/train/input.lmdb'
img_path_list, keys = prepare_keys(folder_path, 'jpg')
make_lmdb_from_imgs(folder_path, lmdb_path, img_path_list, keys)
folder_path = './datasets/Rain13k/train/target'
lmdb_path = './datasets/Rain13k/train/target.lmdb'
img_path_list, keys = prepare_keys(folder_path, 'jpg')
make_lmdb_from_imgs(folder_path, lmdb_path, img_path_list, keys)
def create_lmdb_for_SIDD():
folder_path = './datasets/SIDD/train/input_crops'
lmdb_path = './datasets/SIDD/train/input_crops.lmdb'
img_path_list, keys = prepare_keys(folder_path, 'PNG')
make_lmdb_from_imgs(folder_path, lmdb_path, img_path_list, keys)
folder_path = './datasets/SIDD/train/gt_crops'
lmdb_path = './datasets/SIDD/train/gt_crops.lmdb'
img_path_list, keys = prepare_keys(folder_path, 'PNG')
make_lmdb_from_imgs(folder_path, lmdb_path, img_path_list, keys)
#for val
folder_path = './datasets/SIDD/val/input_crops'
lmdb_path = './datasets/SIDD/val/input_crops.lmdb'
mat_path = './datasets/SIDD/ValidationNoisyBlocksSrgb.mat'
if not osp.exists(folder_path):
os.makedirs(folder_path)
assert osp.exists(mat_path)
data = scio.loadmat(mat_path)['ValidationNoisyBlocksSrgb']
N, B, H ,W, C = data.shape
data = data.reshape(N*B, H, W, C)
for i in tqdm(range(N*B)):
cv2.imwrite(osp.join(folder_path, 'ValidationBlocksSrgb_{}.png'.format(i)), cv2.cvtColor(data[i,...], cv2.COLOR_RGB2BGR))
img_path_list, keys = prepare_keys(folder_path, 'png')
make_lmdb_from_imgs(folder_path, lmdb_path, img_path_list, keys)
folder_path = './datasets/SIDD/val/gt_crops'
lmdb_path = './datasets/SIDD/val/gt_crops.lmdb'
mat_path = './datasets/SIDD/ValidationGtBlocksSrgb.mat'
if not osp.exists(folder_path):
os.makedirs(folder_path)
assert osp.exists(mat_path)
data = scio.loadmat(mat_path)['ValidationGtBlocksSrgb']
N, B, H ,W, C = data.shape
data = data.reshape(N*B, H, W, C)
for i in tqdm(range(N*B)):
cv2.imwrite(osp.join(folder_path, 'ValidationBlocksSrgb_{}.png'.format(i)), cv2.cvtColor(data[i,...], cv2.COLOR_RGB2BGR))
img_path_list, keys = prepare_keys(folder_path, 'png')
make_lmdb_from_imgs(folder_path, lmdb_path, img_path_list, keys)
|