class_docstr: `PCAM Dataset   <https://github.com/basveeling/pcam>`_.
  
  The PatchCamelyon dataset is a binary classification dataset with 327,680
  color images (96px x 96px), extracted from histopathologic scans of lymph node
  sections. Each image is annotated with a binary label indicating presence of
  metastatic tissue.
  
  This dataset requires the ``h5py`` package which you can install with ``pip install h5py``.
  
  Args:
       root (string): Root directory of the dataset.
       split (string, optional): The dataset split, supports ``"train"`` (default), ``"test"`` or ``"val"``.
       transform (callable, optional): A function/transform that takes in a PIL image and returns a transformed
           version. E.g, ``transforms.RandomCrop``.
       target_transform (callable, optional): A function/transform that takes in the target and transforms it.
       download (bool, optional): If True, downloads the dataset from the internet and puts it into ``root/pcam``. If
           dataset is already downloaded, it is not downloaded again.
code: def __init__(
      self,
      root: str,
      split: str = "train",
      transform: Optional[Callable] = None,
      target_transform: Optional[Callable] = None,
      download: bool = False,
  ):
      try:
          import h5py
  
          self.h5py = h5py
      except ImportError:
          raise RuntimeError(
              "h5py is not found. This dataset needs to have h5py installed: please run pip install h5py"
          )
  
      self._split = verify_str_arg(
          split, "split", ("train", "test", "val")
      )
  
      super().__init__(
          root, transform=transform, target_transform=target_transform
      )
      self._base_folder = pathlib.Path(self.root) / "pcam"
  
      if download:
          self._download()
  
      if not self._check_exists():
          raise RuntimeError(
              "Dataset not found. You can use download=True to download it"
          )
  
file_path: vision/torchvision/datasets/pcam.py
imports: import pathlib
  from typing import Any, Callable, Optional, Tuple
  from PIL import Image
  from .utils import _decompress, download_file_from_google_drive, verify_str_arg
  from .vision import VisionDataset
label_desc: Use image node_id 1 to create a new PCAM object from inherited base classes: VisionDataset with example: obj = PCAM(root, split, transform, target_transform, download)