Skip to content

VBVR-DataFactory/O-1_color_mixing_data-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

O-1: Color Mixing Data Generator

Generates synthetic tasks where two colored light sources are shown on the left and right. The goal is to calculate the additive color mixing result and fill the center mixing zone with the resulting color.

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.


📌 Basic Information

Property Value
Task ID O-1
Task Color Mixing (Additive)
Category Perception
Resolution 1024×1024 px
FPS 16 fps
Duration ~4 seconds
Output PNG images + MP4 video

🚀 Usage

Installation

# Clone the repository
git clone https://github.com/VBVR-DataFactory/O-1_color_mixing_data-generator.git
cd O-1_color_mixing_data-generator

# Install dependencies
pip install -r requirements.txt

Generate Data

# Generate 100 samples
python examples/generate.py --num-samples 100

# Generate with specific seed
python examples/generate.py --num-samples 100 --seed 42

# Generate without videos
python examples/generate.py --num-samples 100 --no-videos

# Custom output directory
python examples/generate.py --num-samples 100 --output data/my_output

Command-Line Options

Argument Type Description Default
--num-samples int Number of samples to generate 100
--seed int Random seed for reproducibility Random
--output str Output directory data/questions
--no-videos flag Skip video generation False

📖 Task Example

Prompt

The scene has two colored light sources positioned on the left and right sides, and a mixing zone marked by a white rectangular border in the center. In additive color mixing (light mixing), when two lights overlap, their RGB components add together: result_R = min(color1_R + color2_R, 255), same for G and B, with each channel clamped to 255 maximum. First identify the RGB values of the left light (an RGB(127, 47, 114) colored light) and the right light (an RGB(111, 111, 52) colored light), then calculate the mixed color by adding their RGB components channel by channel. Fill the white-bordered mixing zone in the center with the resulting mixed color and show the full calculation process step by step.

Visual

Initial Frame
Two light sources and empty mixing zone
Animation
Mixing zone fills with calculated color
Final Frame
Mixing zone shows additive result

📖 Task Description

Objective

Calculate the additive color mixing result of two colored light sources and fill the center mixing zone with the resulting color. This generator involves color calculations and modifications through additive color mixing, demonstrating understanding of color theory and RGB color space operations.

Task Setup

  • Light Sources: Two colored lights positioned on left and right sides (closer to edges, radius 280px)
    • Each light source has a solid center (30% of radius) in its own color
    • Radial gradient from center to edge for glowing effect
  • Mixing Zone: White-bordered rectangular area in the center
  • Color Model: Additive RGB color mixing (light mixing)
  • Calculation: result_R = min(color1_R + color2_R, 255), same for G and B
  • RGB Range: Each color channel ranges from 0-128 for input colors (to avoid always getting white when mixed)
  • Display: Show step-by-step calculation process

Key Features

  • Additive color theory: Tests understanding of how light colors mix
  • RGB calculation: Requires channel-by-channel addition with clamping
  • Mathematical reasoning: Applying arithmetic operations to color channels
  • Visual representation: Translating calculation result to visual color
  • Step-by-step solution: Animation demonstrates the mixing process
  • Clamping logic: Understanding that RGB values are capped at 255

📦 Data Format

data/questions/color_mixing_(additive)_task/color_mixing_(additive)_00000000/
├── first_frame.png      # Initial state (empty mixing zone)
├── final_frame.png      # Goal state (filled mixing zone)
├── prompt.txt           # Task instructions with RGB values
├── ground_truth.mp4     # Solution video (10 fps)
└── question_metadata.json # Task metadata

File specifications: Images are 1024×1024 PNG. Videos are MP4 at 16 fps, approximately 4 seconds long.


🏷️ Tags

color-theory additive-mixing rgb-calculation mathematical-reasoning light-mixing color-computation visual-math


About

RGB additive color mixing data generator

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages