90 lines
2.1 KiB
Python
90 lines
2.1 KiB
Python
from __future__ import annotations
|
|
|
|
from collections.abc import Sequence
|
|
from typing import TYPE_CHECKING
|
|
|
|
from ._core import (
|
|
Camera,
|
|
CameraModel,
|
|
TriangulationConfig,
|
|
TriangulationOptions,
|
|
CoreProposalDebug,
|
|
FullProposalDebug,
|
|
GroupingDebug,
|
|
MergeDebug,
|
|
PairCandidate,
|
|
PreviousPoseFilterDebug,
|
|
PreviousPoseMatch,
|
|
ProposalGroupDebug,
|
|
TriangulationTrace,
|
|
build_pair_candidates,
|
|
filter_pairs_with_previous_poses,
|
|
make_camera,
|
|
triangulate_debug,
|
|
triangulate_poses,
|
|
)
|
|
|
|
if TYPE_CHECKING:
|
|
import numpy as np
|
|
import numpy.typing as npt
|
|
|
|
from ._helpers import CameraLike, PoseViewLike
|
|
|
|
|
|
def convert_cameras(cameras: "Sequence[CameraLike]") -> list[Camera]:
|
|
from ._helpers import convert_cameras as _convert_cameras
|
|
|
|
return _convert_cameras(cameras)
|
|
|
|
|
|
def pack_poses_2d(
|
|
views: "Sequence[PoseViewLike]", *, joint_count: int | None = None
|
|
) -> "tuple[npt.NDArray[np.float32], npt.NDArray[np.uint32]]":
|
|
from ._helpers import pack_poses_2d as _pack_poses_2d
|
|
|
|
return _pack_poses_2d(views, joint_count=joint_count)
|
|
|
|
|
|
def make_triangulation_config(
|
|
cameras: "Sequence[CameraLike]",
|
|
roomparams: "npt.NDArray[np.generic] | Sequence[Sequence[float]]",
|
|
joint_names: "Sequence[str]",
|
|
*,
|
|
min_match_score: float = 0.95,
|
|
min_group_size: int = 1,
|
|
) -> TriangulationConfig:
|
|
from ._helpers import make_triangulation_config as _make_triangulation_config
|
|
|
|
return _make_triangulation_config(
|
|
cameras,
|
|
roomparams,
|
|
joint_names,
|
|
min_match_score=min_match_score,
|
|
min_group_size=min_group_size,
|
|
)
|
|
|
|
|
|
__all__ = [
|
|
"Camera",
|
|
"CameraModel",
|
|
"TriangulationConfig",
|
|
"TriangulationOptions",
|
|
"CoreProposalDebug",
|
|
"FullProposalDebug",
|
|
"GroupingDebug",
|
|
"MergeDebug",
|
|
"PairCandidate",
|
|
"PreviousPoseFilterDebug",
|
|
"PreviousPoseMatch",
|
|
"ProposalGroupDebug",
|
|
"TriangulationTrace",
|
|
"build_pair_candidates",
|
|
"convert_cameras",
|
|
"filter_pairs_with_previous_poses",
|
|
"make_camera",
|
|
"make_triangulation_config",
|
|
"pack_poses_2d",
|
|
"triangulate_debug",
|
|
"triangulate_poses",
|
|
]
|