9c861105f7
- Add comprehensive work plan for ArUco-based multi-camera calibration - Add recording_multi.py for multi-camera SVO recording - Add streaming_receiver.py for network streaming - Add svo_playback.py for synchronized playback - Add zed_network_utils.py for camera configuration - Add AGENTS.md with project context
1.5 KiB
1.5 KiB
Python Agent Context
Environment
- Directory:
/workspaces/zed-playground/py_workspace - Package Manager:
uv - Python Version: 3.12+ (Managed by
uv) - Dependencies: Defined in
pyproject.tomlpyzed: ZED SDK Python wrapperopencv-python: GUI and image processingclick: CLI argument parsingnumpy,cupy-cuda12x: Data manipulation
Workflow & Commands
- Run Scripts: Always use
uv runto ensure correct environment.uv run streaming_receiver.py --help uv run recording_multi.py - New Dependencies: Add with
uv add <package>(e.g.,uv add requests).
Architecture & Patterns
- Network Camera Handling:
- Use
zed_network_utils.pyfor all network config parsing. - Config file:
/workspaces/zed-playground/zed_settings/inside_network.json
- Use
- Threading Model:
- Main Thread: MUST handle all OpenCV GUI (
cv2.imshow,cv2.waitKey). - Worker Threads: Handle
camera.grab()and data retrieval. - Communication: Use
queue.Queueto pass frames from workers to main.
- Main Thread: MUST handle all OpenCV GUI (
- ZED API Patterns:
- Streaming Input:
init_params.set_from_stream(ip, port) - Serial Number: Use
camera.get_camera_information().serial_number.
- Streaming Input:
Documentation & References
- Python API Docs:
/usr/local/zed/doc/API/html/python/index.html - ZED SDK General Docs:
/usr/local/zed/doc/ - C++ Headers (Reference):
/usr/local/zed/include/sl/- Useful for understanding underlying enum values or behaviors not fully detailed in Python docstrings.