Skip to content

VBVR-DataFactory/O-61_symbol_edit_data-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

O-61: Symbol Edit Data Generator

Generates synthetic symbol sequence editing tasks with constraints. The goal is to edit a sequence to satisfy a count constraint (at least N occurrences of a specific symbol) by inserting additional symbols at specified positions.

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-61
Task Symbol Edit
Category Transformation
Resolution 1024×1024 px
FPS 16 fps
Duration ~3-5 seconds
Output PNG images + MP4 video

🚀 Usage

Installation

# Clone the repository
git clone https://github.com/Jiaqi-Gong/Gong_VBVR_Data.git
cd Gong_VBVR_Data/O-61_symbol_edit_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 Required
--seed int Random seed for reproducibility Random
--output str Output directory data/questions
--no-videos flag Skip video generation False

📖 Task Example

Prompt

The sequence currently has 1 of symbol ▲. Constraint: at least 3 of symbol ▲. Insert 2 ▲ symbols at positions 4 and 7 to satisfy the constraint.

Visual

Initial Frame
Sequence before constraint satisfaction
Animation
Inserting symbols to meet constraint
Final Frame
Sequence satisfying constraint

📖 Task Description

Objective

Edit a symbol sequence to satisfy a count constraint by inserting additional symbols at specified positions, ensuring the sequence has at least N occurrences of a target symbol.

Task Setup

  • Sequence Length: 4-6 symbols (before editing)
  • Symbol Set: Shapes (circles, triangles, squares, stars, diamonds, hearts, etc.)
  • Target Count: 3-4 occurrences required (constraint)
  • Initial Count: Less than target count
  • Insert Positions: Multiple positions where symbols are inserted
  • Symbol Size: 85 pixels (adjustable 40-120)
  • Animation: Insert symbols at specified positions to meet constraint

Key Features

  • Constraint satisfaction: Tests ability to understand and satisfy count constraints
  • Sequence editing: Requires inserting multiple symbols at specific positions
  • Counting reasoning: Must count current occurrences and determine needed insertions
  • Position awareness: Requires identifying multiple insertion positions
  • Visual animation: Shows symbols being inserted at target positions
  • Symbol variety: Multiple symbol types for diversity

📦 Data Format

data/questions/symbol_edit_task/symbol_edit_00000000/
├── first_frame.png      # Initial state (sequence before editing)
├── final_frame.png      # Goal state (sequence satisfying constraint)
├── prompt.txt           # Task instructions
├── ground_truth.mp4     # Solution video (16 fps)
└── question_metadata.json # Task metadata

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


🏷️ Tags

symbol-edit constraint-satisfaction sequence-manipulation counting-reasoning abstraction symbol-editing


About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages