LsdirHR
- class deepinv.datasets.LsdirHR(root: str, mode: str = 'train', download: bool = False, transform: Callable | None = None)[source]
Bases:
Dataset
Dataset for LSDIR.
A large-scale dataset for image restoration tasks such as image super-resolution (SR), image denoising, JPEG deblocking, deblurring, and demosaicking, and real-world SR.
Raw data file structure:
self.root --- 0001000 --- 0000001.png | | | -- 0001000.png | ... | -- 0085000 --- 0084001.png | | | -- 0084991.png -- shard-00.tar.gz | ... -- shard-16.tar.gz | -- val1 --- HR --- val --- 0000001.png | -- X2 | | -- X3 -- 0000250.png | -- X4 -- val1.tar.gz
Warning
The official site hosting the dataset is unavailable : https://data.vision.ee.ethz.ch/yawli/. Thus the download argument isn’t working for now.
- Parameters:
root (str) – Root directory of dataset. Directory path from where we load and save the dataset.
mode (str) – Select a split of the dataset between ‘train’ or ‘val’. Default at ‘train’.
download (bool) – If
True
, downloads the dataset from the internet and puts it in root directory. If dataset is already downloaded, it is not downloaded again. Default at False.transform (callable, optional) – A function/transform that takes in a PIL image and returns a transformed version. E.g,
torchvision.transforms.RandomCrop
- Examples:
Instantiate dataset and download raw data from the Internet
from deepinv.datasets import LsdirHR val_dataset = LsdirHR(root="Lsdir", mode="val", download=True) # download raw data at root and load dataset print(val_dataset.verify_split_dataset_integrity()) # check that raw data has been downloaded correctly print(len(val_dataset)) # check that we have 250 images
- verify_split_dataset_integrity() bool [source]
Verify the integrity and existence of the specified dataset split.
The expected structure of the dataset directory is as follows:
self.root --- 0001000 --- 0000001.png | | | -- 0001000.png | ... | -- 0085000 --- 0084001.png | | | -- 0084991.png | -- val1 --- HR --- val --- 0000001.png | | | -- 0000250.png -- xxx