Generates synthetic datasets for training and evaluating vision models on spatial reasoning and constraint satisfaction tasks. Each sample contains colored shapes that must be connected by curves following specific color-matching and non-crossing constraints.
Each sample pairs a task (first frame + prompt describing what needs to happen) with its ground truth solution (final frame showing the result + video demonstrating how to achieve it). This structure enables both model evaluation and training.
| Property | Value |
|---|---|
| Task ID | G-54 |
| Task | Connecting Color |
| Category | Perception |
| Resolution | 1024×1024 px |
| FPS | 16 fps |
| Duration | ~3 seconds |
| Output | PNG images + MP4 video |
# 1. Clone the repository
git clone https://github.com/VBVR-DataFactory/G-54_connecting_color_data-generator.git
cd G-54_connecting_color_data-generator
# 2. Create and activate virtual environment
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# 3. Install dependencies
pip install --upgrade pip
pip install -r requirements.txt
pip install -e .# Generate 50 samples
python examples/generate.py --num-samples 50
# Custom output directory
python examples/generate.py --num-samples 100 --output data/my_dataset
# Reproducible generation with seed
python examples/generate.py --num-samples 50 --seed 42
# Without videos (faster)
python examples/generate.py --num-samples 50 --no-videos| Argument | Description |
|---|---|
--num-samples |
Number of tasks to generate (required) |
--output |
Output directory (default: data/questions) |
--seed |
Random seed for reproducibility |
--no-videos |
Skip video generation (images only) |
The scene shows colored shapes in 3 different colors. Each color appears exactly 2 times. First, for each color, draw one smooth curve connecting the leftmost and rightmost shapes of that color. Only connect shapes with the exact same color, and do not connect different colors. Keep the curves from crossing any shapes or other curves. Show the complete drawing process step by step.
![]() |
![]() |
![]() |
| Initial Frame Colored shapes without connections |
Animation Curves drawn connecting matching colors |
Final Frame All same-color shapes connected |
Connect shapes of the same color with smooth curves while avoiding crossings with other shapes or curves. This generator involves color matching and connection tasks, requiring identification of color attributes and spatial reasoning based on color properties.
- Shapes: Multiple colored shapes (2 colors, 2 shapes per color)
- Pairing rule: Connect leftmost to rightmost shape of same color
- Color constraint: Only connect shapes with exact same color
- Crossing constraint: Curves must not cross shapes or other curves
- Curve type: Smooth, continuous lines
- Background: White with clear visibility
- Goal: Connect all same-color pairs without violations
- Color-based pairing and matching
- Constraint satisfaction (no crossings)
- Path planning around obstacles
- Tests spatial reasoning and planning
- Smooth curve drawing between endpoints
- Multiple simultaneous connections
data/questions/connecting_color_task/connecting_color_00000000/
├── first_frame.png # Colored shapes without connections
├── final_frame.png # Shapes connected by color-matching curves
├── prompt.txt # Connection with constraints instruction
├── ground_truth.mp4 # Animation of curve drawing process
└── question_metadata.json # Task metadata
File specifications:
- Images: 1024×1024 PNG format
- Video: MP4 format, 16 fps
- Duration: ~3 seconds
visual-reasoning color-matching constraint-satisfaction path-planning spatial-reasoning curve-drawing


