快捷方式

DatasetFolder

class torchvision.datasets.DatasetFolder(root: Union[str, Path], loader: Callable[[str], Any], extensions: Optional[tuple[str, ...]] = None, transform: Optional[Callable] = None, target_transform: Optional[Callable] = None, is_valid_file: Optional[Callable[[str], bool]] = None, allow_empty: bool = False)[原始碼]

一個通用的資料載入器。

可以透過重寫 find_classes() 方法來定製此預設目錄結構。

引數:
  • root (str 或 pathlib.Path) – 根目錄路徑。

  • loader (callable) – 一個函式,用於根據樣本的路徑載入樣本。

  • extensions (tuple[string]) – 允許的副檔名列表。不應同時傳遞 extensions 和 is_valid_file。

  • transform (callable, optional) – 一個函式/轉換,它接受一個樣本並返回一個轉換後的版本。例如,影像的 transforms.RandomCrop

  • target_transform (可呼叫物件, 可選) – 一個函式/變換,接受目標並對其進行變換。

  • is_valid_file (callable, optional) – 一個函式,它接受一個檔案路徑並檢查該檔案是否為有效檔案(用於檢查損壞的檔案)。不應同時傳遞 extensions 和 is_valid_file。

  • allow_empty – 如果為 True,則空資料夾被視為有效類。如果為 False(預設值),則在空資料夾上引發錯誤。

find_classes(directory: Union[str, Path]) tuple[list[str], dict[str, int]][原始碼]

查詢按以下方式組織的 dataset 中的類資料夾

directory/
├── class_x
│   ├── xxx.ext
│   ├── xxy.ext
│   └── ...
│       └── xxz.ext
└── class_y
    ├── 123.ext
    ├── nsdf3.ext
    └── ...
    └── asd932_.ext

可以重寫此方法,以僅考慮類的一個子集,或適應不同的資料集目錄結構。

引數:

directory (str) – 根目錄路徑,對應於 self.root

丟擲:

FileNotFoundError – 如果 dir 沒有類資料夾。

返回:

所有類和將每個類對映到索引的字典的列表。

返回型別:

(Tuple[List[str], Dict[str, int]])

static make_dataset(directory: Union[str, Path], class_to_idx: dict[str, int], extensions: Optional[tuple[str, ...]] = None, is_valid_file: Optional[Callable[[str], bool]] = None, allow_empty: bool = False) list[tuple[str, int]][原始碼]

生成一個樣本列表,形式為 (樣本路徑, 類別)。

可以重寫此方法,例如從壓縮的 zip 檔案而不是從磁碟讀取檔案。

引數:
  • directory (str) – 根資料集目錄,對應於 self.root

  • class_to_idx (Dict[str, int]) – 將類名對映到類索引的字典。

  • extensions (optional) – 允許的副檔名列表。應傳遞 extensions 或 is_valid_file 中的一個。預設為 None。

  • is_valid_file (optional) – 一個函式,它接受檔案路徑並檢查檔案是否為有效檔案(用於檢查損壞的檔案),不應同時傳遞 extensions 和 is_valid_file。預設為 None。

  • allow_empty (bool, optional) – 如果為 True,則空資料夾被視為有效類。如果為 False(預設值),則在空資料夾上引發錯誤。

丟擲:
  • ValueError – 如果 class_to_idx 為空。

  • ValueError – 如果 extensionsis_valid_file 為 None 或都非 None。

  • FileNotFoundError – 如果任何類未找到有效檔案。

返回:

形式為 (樣本路徑, 類別) 的樣本

返回型別:

List[Tuple[str, int]]

文件

訪問全面的 PyTorch 開發者文件

檢視文件

教程

為初學者和高階開發者提供深入的教程

檢視教程

資源

查詢開發資源並讓您的問題得到解答

檢視資源