Esempio n. 1
0
 def _prepare_val_data(
     self, data: Tuple[Tuple[int, str], Tuple[str, BinaryIO]]
 ) -> Tuple[Tuple[Label, str], Tuple[str, BinaryIO]]:
     label_data, image_data = data
     _, wnid = label_data
     label = Label.from_category(self._wnid_to_category[wnid], categories=self._categories)
     return (label, wnid), image_data
Esempio n. 2
0
 def _prepare_sample(self, data: Tuple[str, Any]) -> Dict[str, Any]:
     path, buffer = data
     category = pathlib.Path(path).parent.name
     return dict(
         label=Label.from_category(category, categories=self._categories),
         path=path,
         image=EncodedImage.from_file(buffer),
     )
Esempio n. 3
0
 def _prepare_sample(
         self, data: Tuple[str, Tuple[str, BinaryIO]]) -> Dict[str, Any]:
     id, (path, buffer) = data
     return dict(
         label=Label.from_category(id.split("/", 1)[0],
                                   categories=self._categories),
         path=path,
         image=EncodedImage.from_file(buffer),
     )
Esempio n. 4
0
 def _prepare_train_data(
     self, data: Tuple[str, BinaryIO]
 ) -> Tuple[Tuple[Label, str], Tuple[str, BinaryIO]]:
     path = pathlib.Path(data[0])
     wnid = cast(Match[str],
                 self._TRAIN_IMAGE_NAME_PATTERN.match(path.name))["wnid"]
     label = Label.from_category(self.info.extra.wnid_to_category[wnid],
                                 categories=self.categories)
     return (label, wnid), data
Esempio n. 5
0
def _prepare_sample(
    data: Tuple[str, BinaryIO],
    *,
    root: pathlib.Path,
    categories: List[str],
) -> Dict[str, Any]:
    path, buffer = data
    category = pathlib.Path(path).relative_to(root).parts[0]
    return dict(
        path=path,
        data=EncodedData.from_file(buffer),
        label=Label.from_category(category, categories=categories),
    )
Esempio n. 6
0
File: dtd.py Progetto: nairbv/vision
    def _prepare_sample(
        self, data: Tuple[Tuple[str, List[str]], Tuple[str, BinaryIO]]
    ) -> Dict[str, Any]:
        (_, joint_categories_data), image_data = data
        _, *joint_categories = joint_categories_data
        path, buffer = image_data

        category = pathlib.Path(path).parent.name

        return dict(
            joint_categories={
                category
                for category in joint_categories if category
            },
            label=Label.from_category(category, categories=self.categories),
            path=path,
            image=EncodedImage.from_file(buffer),
        )
Esempio n. 7
0
    def _prepare_sample(
        self, data: Tuple[Tuple[str, str], Tuple[Tuple[str, BinaryIO],
                                                 Tuple[str, BinaryIO]]]
    ) -> Dict[str, Any]:
        key, (image_data, ann_data) = data
        category, _ = key
        image_path, image_buffer = image_data
        ann_path, ann_buffer = ann_data

        image = EncodedImage.from_file(image_buffer)
        ann = read_mat(ann_buffer)

        return dict(
            label=Label.from_category(category, categories=self._categories),
            image_path=image_path,
            image=image,
            ann_path=ann_path,
            bounding_box=BoundingBox(ann["box_coord"].astype(
                np.int64).squeeze()[[2, 0, 3, 1]],
                                     format="xyxy",
                                     image_size=image.image_size),
            contour=_Feature(ann["obj_contour"].T),
        )