Skip to content

VBVR-DataFactory/G-163_identify_one_and_nine_data-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

G-163: Identify One and Nine Data Generator

Generates synthetic datasets for training and evaluating vision models on digit recognition and selective marking tasks. Each sample contains multiple digits (1-9) where only digits '1' and '9' must be identified and circled.

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 G-163
Task Identify One and Nine
Category Knowledge
Resolution 1024×1024 px
FPS 16 fps
Duration ~3 seconds
Output PNG images + MP4 video

🚀 Usage

Installation

# 1. Clone the repository
git clone https://github.com/VBVR-DataFactory/G-163_identify_one_and_nine_data-generator.git
cd G-163_identify_one_and_nine_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 Data

# 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

Command-Line Options

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)

📖 Task Example

Prompt

The image shows a subset of digits chosen from 1 to 9 placed in different positions.
Find digit 1 and digit 9.
Only circle digits '1' and '9'. Do not circle other digits.
Draw a red circle around each target digit.

Visual

Initial Frame
Multiple digits (1-9) scattered on canvas
Animation
Digits '1' and '9' circled individually
Final Frame
Red circles around all '1' and '9' digits

📖 Task Description

Objective

Identify and circle all occurrences of digits '1' and '9', ignoring all other digits.

Task Setup

  • Digits: Subset of digits from 1 to 9 scattered on canvas
  • Target digits: Only '1' and '9'
  • Other digits: Present but should not be circled
  • Task: Read digits, identify targets, circle each
  • Marking: One red circle per target digit
  • Constraint: Do not circle digits other than 1 and 9
  • Background: White with clear visibility
  • Goal: Circle all and only the '1' and '9' digits

Key Features

  • Digit recognition (OCR)
  • Selective marking based on specific values
  • Tests understanding of digit shapes
  • Multiple target identification
  • Ignoring non-target digits
  • Precise digit classification

📦 Data Format

data/questions/identify_one_and_nine_task/identify_one_and_nine_00000000/
├── first_frame.png      # Multiple digits without marking
├── final_frame.png      # Digits '1' and '9' circled
├── prompt.txt           # Digit identification instruction
├── ground_truth.mp4     # Animation of circling process
└── question_metadata.json # Task metadata

File specifications:

  • Images: 1024×1024 PNG format
  • Video: MP4 format, 16 fps
  • Duration: ~3 seconds

🏷️ Tags

visual-reasoning digit-recognition ocr selective-marking number-identification pattern-matching


About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages