Skip to content

Latest commit

Β 

History

History
135 lines (96 loc) Β· 4.74 KB

File metadata and controls

135 lines (96 loc) Β· 4.74 KB

G-273: High Density Liquid Data Generator

Generates synthetic tasks demonstrating buoyancy principles. Multiple cups contain liquids of different densities, with identical objects above each cup. The task is to predict and show the final floating or sinking state of each object based on liquid density.

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-273
Task High Density Liquid
Category Knowledge
Resolution 1024Γ—1024 px
FPS 16 fps
Duration ~7.9 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-273_high_density_liquid_data-generator

# Install dependencies
pip install -r requirements.txt

Generate Data

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

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

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

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

Command-Line Options

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

πŸ“– Task Example

Prompt

There are 3 cups of liquid; above each cup is one identical object (same mass and density), which will fall into the corresponding cup. One cup has a different liquid color from the others, and that cup's liquid color is darker; that cup's liquid density is higher than the object, and the others are lower. By buoyancy: when the liquid density is higher than the object, the object floats; when lower, it sinks. Show where each object should be in each cup and the final floating or sunk state.

Visual

Initial Frame
Objects suspended above cups
Animation
Objects fall and reach equilibrium
Final Frame
Objects floating or sunk based on density

πŸ“– Task Description

Objective

Demonstrate understanding of buoyancy by showing where identical objects will float or sink in liquids of different densities.

Task Setup

  • Cup Count: 3-4 cups per scene (randomly selected)
  • Objects: Identical objects (same mass and density) positioned above each cup
  • Liquid Densities:
    • One "special" cup with different liquid density (higher or lower than object)
    • Other cups have opposite density relationship
  • Visual Cues: Special cup has visibly different liquid color (darker if higher density, lighter if lower density)
  • Physics Rule: Objects float when liquid density > object density; objects sink when liquid density < object density
  • Animation: Objects fall into cups and settle at appropriate depth based on buoyancy

Key Features

  • Density variation: One cup differs in liquid density from the others
  • Color coding: Liquid color intensity correlates with density difference
  • Multiple scenarios: Both 3-cup and 4-cup configurations
  • Density reversal: Tasks include both high-density and low-density special cups
  • Realistic physics: Objects follow buoyancy principles accurately
  • Clear visualization: Final positions clearly show floating vs. sinking states

πŸ“¦ Data Format

data/questions/high_density_liquid_task/high_density_liquid_00000000/
β”œβ”€β”€ first_frame.png      # Initial state (objects above cups)
β”œβ”€β”€ final_frame.png      # Goal state (objects at equilibrium)
β”œβ”€β”€ 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 7.9 seconds long showing objects falling and reaching equilibrium.


🏷️ Tags

physics buoyancy density liquid-mechanics reasoning prediction