def __init__(
        self,
        image_list: List[str],
        category_list: Union[str, List[str], None] = None,
        transform: Optional[ImageTransform] = None,
    ):
        """
        Args:
            image_list (List[str]): list of paths to image files
            category_list (Union[str, List[str], None]): list of animal categories for
                each image. If it is a string, or None, this applies to all images
        """
        if type(category_list) == list:
            self.category_list = category_list
        else:
            self.category_list = [category_list] * len(image_list)
        assert len(image_list) == len(
            self.category_list
        ), "length of image and category lists must be equal"
        self.image_list = image_list
        self.transform = transform

        Args:
            image_list (List[str]): list of paths to image files
            category_list (Union[str, List[str], None]): list of animal categories for
                each image. If it is a string, or None, this applies to all images
        
EVA-02/det/projects/DensePose/densepose/data/image_list_dataset.py