Vision Overview
Introduction to computer vision in FTC robotics
What is Computer Vision?
Computer vision allows your robot to "see" and understand its environment using cameras. In FTC, vision processing is crucial for:
- Autonomous navigation - Detecting and aligning with game elements
- Object detection - Identifying game pieces, signals, and team props
- Localization - Using AprilTags to determine robot position
- Color recognition - Distinguishing between alliance colors and zones
Vision Approaches in FTC
FTC provides two main frameworks for vision processing:
EasyOpenCV (Legacy)
EasyOpenCV is a simplified wrapper around OpenCV, the industry-standard computer vision library. It provides direct access to powerful image processing functions.
Best for:
- Teams familiar with OpenCV
- Custom image processing algorithms
- Complex color detection pipelines
- Full control over processing
VisionPortal (Modern)
VisionPortal is the newer, structured approach introduced by FTC. It provides a standardized interface with built-in processors.
Best for:
- Teams new to vision processing
- Quick implementation of common tasks
- Built-in AprilTag detection
- ColorBlobLocatorProcessor for simple detection
- Managing multiple vision processors
Typical Workflow
- Development - Write and test your vision pipeline locally using EOCV-Sim
- Integration - Add the pipeline to your robot code
- Tuning - Adjust parameters using FTC Dashboard while testing
- Competition - Use processed data for autonomous routines
What You'll Learn
This section covers:
- Setting up EasyOpenCV and writing custom pipelines
- Using EOCV-Sim to test vision code offline
- Implementing VisionPortal with built-in processors
- AprilTag detection for localization
- Creating custom VisionProcessors
- Migrating between different approaches
- Advanced techniques and troubleshooting
Starting Point: If you're new to vision, start with EasyOpenCV Basics to understand core concepts. If you want quick results, jump to VisionPortal for the modern approach.