Source code for samgis_core.utilities.type_hints
"""custom type hints"""
from enum import Enum
from typing import TypedDict, NewType
from PIL.Image import Image
from numpy import ndarray
[docs]
class DictStrInt(dict[str, int]): pass
[docs]
class DictStr(dict[str]): pass
[docs]
class DictStrAny(dict[str, any]): pass
[docs]
class ListDict(list[dict]): pass
[docs]
class ListFloat(list[float]): pass
[docs]
class ListInt(list[int]): pass
[docs]
class TupleInt(tuple[int]): pass
TupleInt2 = NewType("TupleInt", tuple[int, int])
[docs]
class TupleNdarrayInt(tuple[ndarray, int]): pass
[docs]
class TupleNdarrayFloat(tuple[ndarray, float]): pass
[docs]
class LlistFloat(ListFloat): pass
[docs]
class TupleFloat(tuple[float]): pass
[docs]
class TupleFloatAny(tuple[float, any]): pass
PIL_Image = Image
[docs]
class StrEnum(str, Enum):
pass
[docs]
class EmbeddingImage(TypedDict):
image_embedding: ndarray
original_size: TupleInt
transform_matrix: ndarray
[docs]
class EmbeddingPILImage(TypedDict):
image_embedding: ndarray
original_size: TupleInt2
resized_size: TupleInt2
EmbeddingDict = dict[str, EmbeddingImage]
EmbeddingPILDict = dict[str, EmbeddingPILImage]