Skip to main content

按相机型号(DESAYSV/PONY)解析内参,返回统一 dict,支持保存为与 D02 一致的 YAML 格式。

Project description

mini-camera-intrinsic

按相机型号解析内参,返回统一字典;支持保存为与 D02(pb_calibration)一致的本地 YAML 格式。

当前版本:0.0.6

安装

pip install mini-camera-intrinsic

功能

  • **parse_intrinsics_from_dir(camera_model, root_dir, kwargs):按相机型号 + 根目录自动遍历子目录,发现对应格式的 log / camera_id 后调用上层解析逻辑,返回 List[dict]
  • save_intrinsics_to_dir(intrinsics_list, output_dir):将上述列表写入 output_dir/intrinsics/*.yaml

支持的相机型号(硬编码):DESAYSVPONY

快速开始:按目录自动解析(统一方式)

当你已经有一整个相机日志目录(例如本仓库的 tests/fixtures),可以仅传入根目录,由库内部自动遍历子文件夹并发现需要的 log / camera_id 文件:

from mini_camera_intrinsic import (
    CAMERA_MODEL_DESAYSV,
    CAMERA_MODEL_PONY,
    parse_intrinsics_from_dir,
    save_intrinsics_to_dir,
)

# DESAYSV:传入包含 .log 和 camera_id 的根目录
items_desay = parse_intrinsics_from_dir(
    CAMERA_MODEL_DESAYSV,
    root_dir="./tests/fixtures/DESAYSV",  # 相对路径或绝对路径均可
)

# PONY:传入包含 pony log 的根目录
items_pony = parse_intrinsics_from_dir(
    CAMERA_MODEL_PONY,
    root_dir="./tests/fixtures/PONY",
)

# 统一保存为 D02 风格的 YAML
save_intrinsics_to_dir(items_desay, "./output_desay")
save_intrinsics_to_dir(items_pony, "./output_pony")

典型工程用法:只要日志目录结构与 tests/fixtures 类似(DESAYSV 目录下有若干 *.log 和一个 camera_id 文件,PONY 目录下有 *.INFO**.log*),即可直接将该目录路径作为 root_dir 传入。

返回格式(dict)

每条内参与 D02 单组 intrinsic YAML 一致,例如:

  • frame_id: str
  • model_type: "PINHOLE" | "FISHEYE"
  • pinhole(或 fisheye): width, height, intrinsic(9 个数), distortion(4 或 8 个数)

畸变顺序与位数约定

  • PINHOLE-8k1,k2,p1,p2,k3,k4,k5,k6
  • FISHEYE-4k1,k2,k3,k4
  • 本包当前主要输出 4/8 位;version_update.md 中提到的“每相机最多 5 条记录”是聚合条数,不是 distortion 位数。

便于 API 调用与 save_intrinsics_to_dir 入参。

依赖

  • Python >= 3.10
  • PyYAML >= 6.0

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mini_camera_intrinsic-0.0.6.tar.gz (12.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mini_camera_intrinsic-0.0.6-py3-none-any.whl (13.9 kB view details)

Uploaded Python 3

File details

Details for the file mini_camera_intrinsic-0.0.6.tar.gz.

File metadata

  • Download URL: mini_camera_intrinsic-0.0.6.tar.gz
  • Upload date:
  • Size: 12.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for mini_camera_intrinsic-0.0.6.tar.gz
Algorithm Hash digest
SHA256 576a2b3bba9d9eb974292442f32b079c8ddc80576778332bfc3e2d12dc97a819
MD5 0346e769e3ac2470320f262e73a327d0
BLAKE2b-256 384bc686fe0b0f30293896777e8318df3565a2e2a368fde8d30455a6e9030ab9

See more details on using hashes here.

File details

Details for the file mini_camera_intrinsic-0.0.6-py3-none-any.whl.

File metadata

File hashes

Hashes for mini_camera_intrinsic-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 8cba6068cf0fca85ee781928cb51aba2d04ca13541b09837be221d64340dce8b
MD5 3aa41704b9f05ad74385f614bb739241
BLAKE2b-256 7faa80383360f532169e1eea7105fcc2eea7588058f2feb07d6fcc025d016ba8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page