Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Camera model wrapper for camera_models C++ library via pybind11. Use when working with pywayne.cv.camera_model module to load camera models from YAML configu...
Camera model wrapper for camera_models C++ library via pybind11. Use when working with pywayne.cv.camera_model module to load camera models from YAML configu...
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
This module wraps the camera_models C++ library via pybind11, providing a Python interface for camera operations.
from pywayne.cv.camera_model import CameraModel from pywayne.cv.tools import write_cv_yaml import numpy as np # Create camera model camera = CameraModel() # Load from YAML file camera.load_from_yaml('camera_config.yaml') # Access properties print(f"Model: {camera.model_type}") print(f"Size: {camera.image_width}x{camera.image_height}")
from pathlib import Path # Sample YAML configuration yaml_data = { "model_type": "PINHOLE", "camera_name": "my_camera", "image_width": 1280, "image_height": 720, "distortion_parameters": {"k1": 0.0, "k2": 0.0}, "projection_parameters": {"fx": 600.0, "fy": 600.0, "cx": 640.0, "cy": 360.0} } # Write YAML file write_cv_yaml('camera_config.yaml', yaml_data) # Load model camera.load_from_yaml('camera_config.yaml')
Model TypeDescriptionPINHOLEStandard pinhole camera with radial distortionPINHOLE_FULLFull pinhole model with all distortion parametersCATACatadioptric camera modelEQUIDISTANTEquidistant camera modelOCAMUnified camera model
Lifts a 2D image point to a 3D projective ray: # Input can be tuple, list, or numpy array ray_3d = camera.lift_projective([u, v]) # Returns np.ndarray (x, y, z)
Projects a 3D point onto the 2D image plane: # Input can be tuple, list, or numpy array uv = camera.space_to_plane([x, y, z]) # Returns np.ndarray (u, v)
PropertyDescriptionmodel_typeCamera model type (enum)camera_nameName of the loaded cameraimage_widthImage width in pixelsimage_heightImage height in pixels
Export all camera parameters as a dictionary: params = camera.get_parameters_as_dict() print(params) Includes model-specific parameters: Pinhole: k1, k2, p1, p2, fx, fy, cx, cy Pinhole Full: k1-k6, p1-p2, fx, fy, cx, cy CATA: xi, k1-k2, p1-p2, gamma1-2, u0, v0 Equidistant: k2-k5, mu, mv, u0, v0 OCAM: C, D, E, center_x, center_y, poly, inv_poly
camera_models - C++ library (auto-downloaded via gettool if missing) numpy - Array operations pywayne.cv.tools.write_cv_yaml - For writing YAML files
Library is automatically checked and downloaded via gettool if not found Supports both tuple/list and numpy array inputs for projection methods Output from projection methods is always np.ndarray with dtype=np.float64
Agent frameworks, memory systems, reasoning layers, and model-native orchestration.
Largest current source with strong distribution and engagement signals.