Skip to content
Snippets Groups Projects
utils.py 609 B
# -*- coding: utf-8 -*-
import json
import logging
from logging import Logger
from urllib.parse import urljoin

from arkindex_worker.image import BoundingBox, polygon_bounding_box

logger: Logger = logging.getLogger(__name__)


def build_image_url(image, polygon: str) -> str:
    bbox: BoundingBox = polygon_bounding_box(json.loads(polygon))
    x: int
    y: int
    width: int
    height: int
    x, y, width, height = bbox
    return urljoin(image.url + "/", f"{x},{y},{width},{height}/full/0/default.jpg")


def get_id_or_null(value: dict | None) -> str | None:
    return value["id"] if value else None