24 lines
596 B
Python
24 lines
596 B
Python
# Copyright (C) CVAT.ai Corporation
|
|
#
|
|
# SPDX-License-Identifier: MIT
|
|
|
|
|
|
from collections.abc import Iterable
|
|
|
|
|
|
def parse_frame_step(frame_filter: str) -> int:
|
|
return int((frame_filter or "step=1").split("=")[1])
|
|
|
|
|
|
def to_rel_frame(abs_frame: int, *, frame_step: int, task_start_frame: int) -> int:
|
|
return (abs_frame - task_start_frame) // frame_step
|
|
|
|
|
|
def to_rel_frames(
|
|
abs_frames: Iterable[int], *, frame_step: int, task_start_frame: int
|
|
) -> list[int]:
|
|
return [
|
|
to_rel_frame(f, frame_step=frame_step, task_start_frame=task_start_frame)
|
|
for f in abs_frames
|
|
]
|