| 6 | |
| 7 | |
| 8 | class ImageFolderWithFilename(datasets.ImageFolder): |
| 9 | def __getitem__(self, index: int): |
| 10 | """ |
| 11 | Args: |
| 12 | index (int): Index |
| 13 | |
| 14 | Returns: |
| 15 | tuple: (sample, target, filename). |
| 16 | """ |
| 17 | path, target = self.samples[index] |
| 18 | sample = self.loader(path) |
| 19 | if self.transform is not None: |
| 20 | sample = self.transform(sample) |
| 21 | if self.target_transform is not None: |
| 22 | target = self.target_transform(target) |
| 23 | |
| 24 | filename = path.split(os.path.sep)[-2:] |
| 25 | filename = os.path.join(*filename) |
| 26 | return sample, target, filename |
| 27 | |
| 28 | |
| 29 | class CachedFolder(datasets.DatasetFolder): |