Skip to content

VBVR-DataFactory/G-199_locate_line_intersections_data-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

G-199: Locate Line Intersections Data Generator

Generates synthetic tasks where multiple line segments are displayed. The goal is to locate and mark all intersection points where line segments cross each other with red circles.

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-199
Task Locate Line Intersections
Category Perception
Resolution 1024×1024 px
FPS 10 fps
Duration ~1.4 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/G-199_locate_line_intersections_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

Circle all intersection points of the line segments with red circles.

Visual

Initial Frame
Line segments displayed
Animation
Red circles drawn at intersections
Final Frame
All intersection points marked

📖 Task Description

Objective

Identify all points where line segments intersect each other and mark each intersection point with a red circle.

Task Setup

  • Line Segments: Multiple line segments arranged in the scene
  • Intersections: Points where two or more line segments cross
  • Marking Method: Red circles placed at each intersection point
  • Complete Identification: All intersection points must be found and marked
  • Endpoint Exclusion: Only mark where segments cross, not their endpoints
  • Multiple Intersections: May have zero, one, or many intersection points

Key Features

  • Intersection detection: Tests ability to identify where lines cross
  • Complete enumeration: All intersection points must be identified
  • Precise location: Circles placed exactly at intersection coordinates
  • Spatial reasoning: Requires analyzing line segment relationships
  • Concise task: Short, direct prompt with clear objective
  • Quick animation: Brief video showing each intersection being marked

📦 Data Format

data/questions/locate_line_intersections_task/locate_line_intersections_00000000/
├── first_frame.png      # Initial state (line segments)
├── final_frame.png      # Goal state (intersections circled)
├── prompt.txt           # Task instructions
├── ground_truth.mp4     # Solution video (10 fps)
└── question_metadata.json # Task metadata

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


🏷️ Tags

geometry line-intersections point-location spatial-reasoning intersection-detection


About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages