Skip to content

liblaf.melon.io.wrap.polygons ยค

Functions:

  • get_polygons_path โ€“
  • load_polygons โ€“
  • save_polygons โ€“

get_polygons_path ยค

get_polygons_path(path: str | PathLike[str]) -> Path
Source code in src/liblaf/melon/io/wrap/polygons/_utils.py
5
6
7
8
9
def get_polygons_path(path: str | os.PathLike[str]) -> Path:
    path: Path = Path(path)
    if path.suffix != ".json":
        return path.with_suffix(".polygons.json")
    return path

load_polygons ยค

load_polygons(path: StrPath) -> Integer[ndarray, ' N']
Source code in src/liblaf/melon/io/wrap/polygons/_reader.py
17
18
19
20
def load_polygons(path: StrPath) -> Integer[np.ndarray, " N"]:
    path: Path = get_polygons_path(path)
    data: list[int] = grapes.load(path)
    return np.asarray(data)

save_polygons ยค

save_polygons(
    path: str | PathLike[str],
    polygons: Bool[ArrayLike, " N"]
    | Integer[ArrayLike, " N"],
) -> None
Source code in src/liblaf/melon/io/wrap/polygons/_writer.py
12
13
14
15
16
17
18
19
20
def save_polygons(
    path: str | os.PathLike[str],
    polygons: Bool[ArrayLike, " N"] | Integer[ArrayLike, " N"],
) -> None:
    path: Path = get_polygons_path(path)
    polygons = np.asarray(polygons)
    if np.isdtype(polygons.dtype, "bool"):
        polygons = np.flatnonzero(polygons)
    grapes.save(path, polygons.tolist())