Skip to content

Action Recognition Schema

CATEGORY_NAMES = Literal["apple", "banana"]
CATEGORY_NAMES_LIST = get_args(CATEGORY_NAMES)


class RawFrameEntry(BaseModel):
    frame_dir: str
    total_frames: conint(gt=0)
    label: List[conint(ge=0, lt=len(CATEGORY_NAMES_LIST))]


class VideoEntry(BaseModel):
    filename: str
    label: List[conint(ge=0, lt=len(CATEGORY_NAMES_LIST))]


class ActionRecognitionDataset(BaseModel):
    videos: Union[
        List[VideoEntry],
        List[RawFrameEntry]
    ]
    categories: List[CATEGORY_NAMES]