Skip to content

TheBeachLab/zyklopen

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Zyklopen

Stereo vision system built around a Raspberry Pi and two Camera Module 3 sensors, with depth estimation accelerated by a Hailo AI module.

Zyklopen MK I

Hardware

  • Raspberry Pi (with Hailo AI accelerator)
  • 2x Raspberry Pi Camera Module 3 (4608x2592)
  • CNC-machined POM-C stereo rig (~100 mm baseline)
  • ChArUco / checkerboard calibration targets (A4, 11x8 squares, 24 mm)

Design files for the rig are in hw/.

Calibration

Two calibration methods are provided, both outputting ROS-compatible YAML (left.yaml, right.yaml, stereo.yaml):

ChArUco board (recommended)

More robust to partial occlusion. Uses DICT_4X4 ArUco markers.

cd calib/charuco
python charuco.py

Checkerboard

Traditional approach using a plain checkerboard pattern (10x7 inner corners).

cd calib/checker
python calib.py

Capturing stereo pairs

On the Raspberry Pi, use the capture script to grab synchronized image pairs:

bash calib/stereo_capture.sh

Images are saved as left_<timestamp>.jpg / right_<timestamp>.jpg. Place them in the corresponding uncommited/ folder before running calibration.

Depth estimation

calib/checker/stereo_depth_view.py computes a disparity map (SGBM) and reprojects to a 3D PLY point cloud using the stereo calibration results.

Pre-compiled Hailo models (.hef) for real-time depth inference are in stereo/:

  • scdepthv3.hef — monocular depth (SCDepthV3)
  • stereonet.hef — stereo depth (StereoNet)

Dependencies

opencv-python (with cv2.aruco)
numpy
pyyaml

On Raspberry Pi, also requires rpicam-apps for the capture script.

About

Stereo vision system for Raspberry Pi with Hailo AI depth estimation

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors