Spaces:
Sleeping
Sleeping
Download models/detectors/base.py from BiasLab2025/perception2: direct link, hf CLI and curl.
- Browser
- Download file 739 Bytes
-
https://huggingface.co/spaces/BiasLab2025/perception2/resolve/main/models/detectors/base.py
- Command line
-
hf download hf://spaces/BiasLab2025/perception2/models/detectors/base.py
-
curl -L -o base.py https://huggingface.co/spaces/BiasLab2025/perception2/resolve/main/models/detectors/base.py
739 Bytes
| from typing import NamedTuple, Optional, Sequence | |
| import numpy as np | |
| class DetectionResult(NamedTuple): | |
| boxes: np.ndarray | |
| scores: Sequence[float] | |
| labels: Sequence[int] | |
| label_names: Optional[Sequence[str]] = None | |
| class ObjectDetector: | |
| """Detector interface to keep inference agnostic to model details.""" | |
| name: str | |
| supports_batch: bool = False | |
| max_batch_size: int = 1 | |
| def predict(self, frame: np.ndarray, queries: Sequence[str]) -> DetectionResult: | |
| raise NotImplementedError | |
| def predict_batch(self, frames: Sequence[np.ndarray], queries: Sequence[str]) -> Sequence[DetectionResult]: | |
| """Default: sequential fallback""" | |
| return [self.predict(f, queries) for f in frames] | |