def METHOD_NAME(self, data: Tuple[Tuple[Any, Tuple[str, BinaryIO]], Tuple[str, BinaryIO]]) -> Dict[str, Any]:
    split_and_image_data, ann_data = data
    _, image_data = split_and_image_data
    image_path, image_buffer = image_data
    ann_path, ann_buffer = ann_data
    anns = read_mat(ann_buffer, squeeze_me=True)["GTcls"]
    return dict(
        image_path=image_path,
        image=EncodedImage.from_file(image_buffer),
        ann_path=ann_path,
        # the boundaries are stored in sparse CSC format, which is not supported by PyTorch
        boundaries=torch.as_tensor(
            np.stack([raw_boundary.toarray() for raw_boundary in anns["Boundaries"].item()])
        ),
        segmentation=torch.as_tensor(anns["Segmentation"].item()),
    )