Source code for luna_handlers.classes.schemas.detector
"""
Module contains schemas for detector handler
"""
from pydantic import model_validator
from classes.schemas.handler import FaceInputEstimationsModel
from crutches_on_wheels.cow.errors.pydantic_errors import PydanticError
[docs]
class Detector(FaceInputEstimationsModel):
"""Model for detector handler with urls or samples"""
[docs]
@staticmethod
def checkRequiredFaceBBox(values: dict):
"""Check required face bounding box for incoming image"""
if values.get("image") is not None and values.get("face_bounding_boxes") is None:
raise PydanticError.PydanticValidationError.format(
"Error path: '('face_bounding_boxes',)'. Error msg: 'field required'"
)()
[docs]
@model_validator(mode="before")
def validateHandler(cls, values: dict) -> dict:
cls.checkRequiredFaceBBox(values)
return super().validateHandler(values)