Loads the MS COCO dataset for instance segmentation tasks.
Root directory where the dataset is stored or will be downloaded to.
Logical. If TRUE, loads the training split; otherwise, loads the validation split.
Character. Dataset version year. One of "2014" or "2017".
Logical. If TRUE, downloads the dataset if it's not already present in the root directory.
Optional transform function applied to the image.
Optional transform function applied to the target.
Use target_transform_coco_masks to convert polygon annotations to binary masks.
An object of class coco_segmentation_dataset. Each item is a list:
x: a (C, H, W) array representing the image.
y$labels: an integer torch_tensor with the class label for each object.
y$iscrowd: a boolean torch_tensor, where TRUE marks the object as part of a crowd.
y$segmentation: a list of segmentation polygons for each object.
y$masks: a (N, H, W) boolean torch_tensor containing binary segmentation masks (when using target_transform_coco_masks).
The returned object has S3 class "image_with_segmentation_mask"
to enable automatic dispatch by visualization functions such as draw_segmentation_masks().
For object detection tasks without segmentation, use coco_detection_dataset instead.
The returned image x is in CHW format (channels, height, width), matching the torch convention.
The dataset y offers instance segmentation annotations including labels,
crowd indicators, and segmentation masks from the official COCO annotations.
Files are downloaded to a coco subdirectory in the torch cache directory for better organization.
coco_detection_dataset for object detection tasks
Other segmentation_dataset:
oxfordiiitpet_segmentation_dataset(),
pascal_voc_datasets,
rf100_peixos_segmentation_dataset()
if (FALSE) { # \dontrun{
# Load dataset for instance segmentation
ds <- coco_segmentation_dataset(
train = FALSE,
year = "2017",
download = TRUE,
target_transform = target_transform_coco_masks
)
item <- ds[1]
# Visualize segmentation masks
masked <- draw_segmentation_masks(item)
tensor_image_browse(masked)
} # }