python123-ops/moon-cv-geometry/camera does not have a README file
fn CalibrationObservation::new(world~ : Point3, pixel~ : Point2, weight? : Double) -> CalibrationObservationfn CalibrationObservation::residual(observation : CalibrationObservation, intrinsics : CameraIntrinsics, pose : CameraPose, distortion? : Distortion) -> Vec2 raise GeometryErrorfn CameraIntrinsics::for_centered_image(focal~ : Double, size : ImageSize, skew? : Double) -> CameraIntrinsics raise GeometryErrorfn CameraIntrinsics::new(fx~ : Double, fy~ : Double, cx~ : Double, cy~ : Double, skew? : Double) -> CameraIntrinsicsfn CameraIntrinsics::scaled(k : CameraIntrinsics, scale_x~ : Double, scale_y~ : Double) -> CameraIntrinsics raise GeometryErrorfn CameraIntrinsics::with_principal_point(k : CameraIntrinsics, principal : Point2) -> CameraIntrinsicsfn Distortion::brown_conrady(k1? : Double, k2? : Double, p1? : Double, p2? : Double, k3? : Double) -> Distortionfn Frustum::from_intrinsics(k : CameraIntrinsics, size : ImageSize, near~ : Double, far~ : Double) -> Frustum raise GeometryErrorpub(all) struct ImagePyramidLevel {
size : ImageSize
intrinsics : CameraIntrinsics
level : Int
} derive(Eq, Debug)fn RollingShutter::new(readout_seconds~ : Double, image_height~ : Int) -> RollingShutter raise GeometryErrorpub(all) struct StereoPair {
left : CameraIntrinsics
right : CameraIntrinsics
baseline : Double
} derive(Eq, Debug)fn StereoPair::depth_point(pair : StereoPair, left_pixel : Point2, disparity : Double) -> Point3 raise GeometryErrorfn StereoPair::new(left~ : CameraIntrinsics, right~ : CameraIntrinsics, baseline~ : Double) -> StereoPair raise GeometryErrorfn bearing_from_pixel(pixel : Point2, intrinsics : CameraIntrinsics, distortion? : Distortion) -> Vec3 raise GeometryErrorfn bearing_rays(pixels : ArrayView[Point2], intrinsics : CameraIntrinsics, distortion? : Distortion) -> Array[Vec3] raise GeometryErrorfn calibration_acceptance(report : CalibrationReport, coverage : Double, minimum_coverage? : Double) -> Boolfn calibration_report(observations : ArrayView[CalibrationObservation], intrinsics : CameraIntrinsics, pose : CameraPose, distortion? : Distortion) -> CalibrationReport raise GeometryErrorfn depth_from_disparity(focal~ : Double, baseline~ : Double, disparity~ : Double) -> Double raise GeometryErrorfn depth_uncertainty(focal~ : Double, baseline~ : Double, disparity~ : Double, disparity_error~ : Double) -> Double raise GeometryErrorfn disparity_from_depth(focal~ : Double, baseline~ : Double, depth~ : Double) -> Double raise GeometryErrorfn estimate_focal_from_depth(points : ArrayView[Point3], pixels : ArrayView[Point2], principal : Point2) -> CameraIntrinsics raise GeometryErrorfn image_pyramid(size : ImageSize, intrinsics : CameraIntrinsics, levels~ : Int) -> Array[ImagePyramidLevel] raise GeometryErrorfn motion_blur_displacement(velocity : Vec3, depth~ : Double, intrinsics : CameraIntrinsics, exposure~ : Double) -> Vec2 raise GeometryErrorfn pixel_ray_depth(pixel : Point2, intrinsics : CameraIntrinsics, depth : Double) -> Point3 raise GeometryErrorfn project_depth_map(points : ArrayView[Point3], intrinsics : CameraIntrinsics) -> Array[Double] raise GeometryErrorfn project_point(camera_point : Point3, intrinsics : CameraIntrinsics, distortion? : Distortion) -> Point2 raise GeometryErrorfn project_point_with_pose(world_point : Point3, intrinsics : CameraIntrinsics, pose : CameraPose, distortion? : Distortion) -> Point2 raise GeometryErrorfn project_points(points : ArrayView[Point3], intrinsics : CameraIntrinsics, pose? : CameraPose, distortion? : Distortion) -> Array[Point2] raise GeometryErrorfn projection_jacobian(point : Point3, intrinsics : CameraIntrinsics) -> ProjectionJacobian raise GeometryErrorfn reprojection_cost(observations : ArrayView[CalibrationObservation], intrinsics : CameraIntrinsics, pose : CameraPose, distortion? : Distortion) -> Double raise GeometryErrorfn residual_histogram(residuals : ArrayView[Double], bins~ : Int, maximum~ : Double) -> Array[Int] raise GeometryErrorfn rolling_project(point : Point3, intrinsics : CameraIntrinsics, pose : CameraPose, model : RollingShutter, velocity : Vec3) -> Point2 raise GeometryErrorfn stereo_depth_error(pair : StereoPair, disparity : Double, disparity_error : Double) -> Double raise GeometryErrorfn stereo_depths(pair : StereoPair, disparities : ArrayView[Double]) -> Array[Double] raise GeometryErrorfn undistort_point_iterative(distorted : Point2, distortion : Distortion, iterations? : Int) -> Point2fn valid_observations(observations : ArrayView[CalibrationObservation], size : ImageSize) -> Array[CalibrationObservation]fn weighted_reprojection_cost(observations : ArrayView[CalibrationObservation], intrinsics : CameraIntrinsics, pose : CameraPose) -> Double raise GeometryErrorCamera and multi-view geometry foundations for MoonBit: small fixed-size math, projection, distortion, homography, epipolar constraints, and RANSAC.