Generates synthetic visual reasoning tasks demonstrating sequential transformations: first size scaling, then outline-only conversion (filled to outline). The task presents a two-row analogy (A→B→C :: D→?→?) where shapes undergo the same two-step transformation pattern.
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.
| Property | Value |
|---|---|
| Task ID | O-14 |
| Task | Shape Scale Then Outline |
| Category | Abstraction |
| Resolution | 1024×1024 px |
| FPS | 16 fps |
| Duration | varies |
| Output | PNG images + MP4 video |
# Clone the repository
git clone https://github.com/VBVR-DataFactory/O-14_shape_scale_then_outline_data-generator.git
cd O-14_shape_scale_then_outline_data-generator
# Install dependencies
pip install -r requirements.txt# 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| 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 |
--no-videos |
flag | Skip video generation | False |
Complete the analogy by revealing the shape with the correct scale and outline style.
![]() |
![]() |
![]() |
| Initial Frame Two-row analogy with shapes |
Animation Size scales then filled to outline |
Final Frame Completed transformation sequence |
Complete a visual analogy by applying a two-step sequential transformation: first changing size (scaling), then converting a filled shape to outline-only style. The bottom row shape must follow the same transformation pattern demonstrated in the top row.
- Two-Row Analogy: Top row shows example transformation (A→B→C), bottom row requires completion (D→?→?)
- Sequential Transformations: Two distinct steps applied in order (scaling first, then outline conversion)
- Size Scaling: Shape scales up or down - this generator modifies the scale parameter first, then the style parameter, demonstrating sequential modifications of both size and style properties
- Outline Conversion: Filled shape becomes outline-only (hollow) shape after scaling
- Shape Variation: Different shapes in top and bottom rows (e.g., circle vs square)
- Sequential reasoning: Tests ability to recognize and apply multi-step transformations in correct order
- Transformation decomposition: Separates size change and style change (filled to outline) into distinct steps
- Pattern generalization: Applies learned pattern from one shape to a different shape
- Temporal ordering: Size scaling occurs before outline conversion
- Visual analogy: A→B→C :: D→?→? structure tests analogical reasoning
- Combined geometric and style transformation: Tests understanding of both size scaling and rendering mode changes
- Shape preservation: Shape type remains constant while size and fill style change
- Large-scale diversity: 20 distinct shapes, 400 colors, 6 scale factors, and 4 style types for extensive variety (54M+ unique combinations)
data/questions/shape_scale_then_outline_task/shape_scale_then_outline_00000000/
├── first_frame.png # Initial state (two-row analogy setup)
├── final_frame.png # Final state (completed transformation)
├── 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, duration varies by task complexity.
sequential-transformation visual-analogy size-scaling outline-conversion fill-to-outline multi-step-reasoning pattern-recognition analogical-reasoning


