Case study 03 · Computer Vision / ML Research
Stereo Perception & Semantic Segmentation
A stereo vision pipeline for segmentation, dataset automation, disparity refinement, and dense spatial perception.
50K
Stereo images auto-annotated
11 FPS
Dense spatial perception
Overview
A computer vision research system combining semantic segmentation and stereo depth estimation for robot-environment understanding.
Context
Dense spatial perception under strict size, weight, and power constraints required both an efficient model and a scalable data pipeline.
My Role
Built the PyTorch model, automated annotation for 50,000 stereo images with YOLOv8, and integrated CREStereo depth estimation.
Architecture / Approach
Stereo input passes through segmentation and disparity estimation to produce a denser spatial representation for downstream robotic perception.
- 01Stereo Input
- 02YOLOv8 Segmentation
- 03CREStereo Disparity
- 04Dense Spatial Perception

Decisions & Tradeoffs
- 01
Automated annotation with YOLOv8
Instead ofManual labeling of the dataset
WhyHand-labeling 50,000 stereo pairs was not feasible on the project timeline. Automated annotation introduced label noise, which was the accepted cost — the dataset scale mattered more to model performance than per-label precision.
- 02
CREStereo for dense disparity
Instead ofClassical block matching (SGBM) or monocular depth estimation
WhyBlock matching degrades badly on the textureless surfaces common indoors, and monocular estimation gives relative rather than metric depth. CREStereo produced dense metric disparity at the cost of significantly more compute.
- 03
Tuned for 11 FPS under SWaP constraints
Instead ofMaximizing accuracy offline
WhyThe pipeline had to run on power- and weight-limited onboard hardware. Model size and input resolution were traded down to hold a usable real-time rate, since perception that arrives late is not useful to a robot in motion.
Outcome
50K
Stereo images auto-annotated
11 FPS
Dense spatial perception
Technologies
- Python
- PyTorch
- OpenCV
- YOLOv8
- CREStereo