Command Line Interface#
This page documents the command-line entry points shipped with Infinigen.
Infinigen 2.0#
infinigen2#
The main Infinigen 2.0 generation CLI: build one or more generators into a scene and render or export the result.
usage: infinigen2 [-h] [--list [CATEGORY ...]] [--output OUTPUT] [--seed SEED]
[--frames FRAMES FRAMES]
[--exporter_frames EXPORTER_FRAMES EXPORTER_FRAMES]
[-d [DEBUG ...]] [-q]
[--loglevel {CRITICAL,FATAL,ERROR,WARN,WARNING,INFO,DEBUG,NOTSET}]
[--passes {camera,rgb,rgb-denoised,rgb-hdr,rgb-denoised-hdr,scene,cam-trajectory-imu-tum,obj-trajectory-imu-tum,mesh,objects,optical-flow,depth-change,flow-3d,flow-mask-matched,flow-mask-cycle-consistency,inv-flow-3d,point-trajectories-3d,inv-point-trajectories-3d,depth,surface-normal,surface-normal-world,occlusion,semantic-segmentation,instance-segmentation,material-segmentation,object-index-table,material-index-table,attribute-mask,visualizations,diffuse-color,ambient-occlusion,diffuse-direct,diffuse-indirect,glossy-direct,glossy-indirect,transmission-direct,transmission-indirect,volume-direct,emission,environment} [{camera,rgb,rgb-denoised,rgb-hdr,rgb-denoised-hdr,scene,cam-trajectory-imu-tum,obj-trajectory-imu-tum,mesh,objects,optical-flow,depth-change,flow-3d,flow-mask-matched,flow-mask-cycle-consistency,inv-flow-3d,point-trajectories-3d,inv-point-trajectories-3d,depth,surface-normal,surface-normal-world,occlusion,semantic-segmentation,instance-segmentation,material-segmentation,object-index-table,material-index-table,attribute-mask,visualizations,diffuse-color,ambient-occlusion,diffuse-direct,diffuse-indirect,glossy-direct,glossy-indirect,transmission-direct,transmission-indirect,volume-direct,emission,environment} ...]]
[--save_blend [SAVE_BLEND]]
[--displacement_mode {NONE,BUMP,DISPLACEMENT,DISPLACEMENT_AND_BUMP,REALIZE_MESH}]
[--trace {codegen,codestats,graph} [{codegen,codestats,graph} ...]]
[--trace_level {GRAMMAR,RANDOM_CONTROL,RANDOM_PARAMS,GENERATORS,NODEGROUPS,PRIMITIVES}]
[-r RESOLUTION RESOLUTION] [-s SAMPLES]
[--focal_length_mm FOCAL_LENGTH_MM]
[--cameras CAMERAS [CAMERAS ...]] [--fps FPS]
[--on_interrupt {delete,cleanstate,exit,none}]
[generators ...]
Positional Arguments#
- generators
Any sequence of generators to run, e.g. bricks_rand material_sphere render_cycles. The CLI chains generators together by connecting outputs to inputs. See the documentation for function names, or run infinigen2 --list for a list.
Named Arguments#
- --list
List the available generators and exit, optionally filtering by category (e.g. infinigen2 --list Scene). Categories are case-insensitive. For more listing options (presets, custom columns, filtering) run python -m infinigen2.list.
- --output
Output directory for generated scenes and renders
Default:
outputs/myresult- --seed
Random seed for reproducible generation
- --frames
Frame range to render (start, end)
Default:
(0, 0)- --exporter_frames
Frame range for Exporter generators only; defaults to --frames. Lets the scene/camera span the full range while exporters render a subset.
- -d, --debug
- -q, --quiet
Default:
'INFO'- --loglevel
Possible choices: CRITICAL, FATAL, ERROR, WARN, WARNING, INFO, DEBUG, NOTSET
Default:
'INFO'- --passes
Possible choices: ExportType.CAMERA, ExportType.IMAGE, ExportType.IMAGE_DENOISED, ExportType.IMAGE_HDR, ExportType.IMAGE_DENOISED_HDR, ExportType.BLENDER_FILE, ExportType.CAM_IMU_TUM_TRAJ, ExportType.OBJ_IMU_TUM_TRAJ, ExportType.MESH, ExportType.OBJECTS_FILE, ExportType.OPTICAL_FLOW, ExportType.DEPTH_CHANGE, ExportType.FLOW_3D, ExportType.FLOW_MASK_MATCHED, ExportType.FLOW_MASK_CYCLECONSISTENCY, ExportType.INV_FLOW, ExportType.POINT_TRAJECTORIES, ExportType.INV_POINT_TRAJECTORIES, ExportType.DEPTH, ExportType.SURFACE_NORMAL, ExportType.SURFACE_NORMAL_WORLD, ExportType.OCCLUSION_BOUNDARIES, ExportType.OBJECT_INDEX, ExportType.INSTANCE_SEGMENTATION, ExportType.MATERIAL_INDEX, ExportType.OBJECT_INDEX_TABLE, ExportType.MATERIAL_INDEX_TABLE, ExportType.ATTRIBUTE_MASK, ExportType.VISUALIZATIONS, ExportType.DIFFUSE_COLOR, ExportType.AMBIENT_OCCLUSION, ExportType.DIFFUSE_DIRECT, ExportType.DIFFUSE_INDIRECT, ExportType.GLOSSY_DIRECT, ExportType.GLOSSY_INDIRECT, ExportType.TRANSMISSION_DIRECT, ExportType.TRANSMISSION_INDIRECT, ExportType.VOLUME_DIRECT, ExportType.EMISSION, ExportType.ENVIRONMENT
Default:
[<ExportType.IMAGE: 'rgb'>]- --save_blend
Save a blender file to a given path, or to the output folder if not provided
- --displacement_mode
Possible choices: NONE, BUMP, DISPLACEMENT, DISPLACEMENT_AND_BUMP, REALIZE_MESH
Default:
'DISPLACEMENT_AND_BUMP'- --trace
Possible choices: codegen, codestats, graph
Trace execution pipeline. Specify one or more of: codegen, codestats, graph.
- --trace_level
Possible choices: GRAMMAR, RANDOM_CONTROL, RANDOM_PARAMS, GENERATORS, NODEGROUPS, PRIMITIVES
Trace granularity. choice() peeks through all options at >= RANDOM_CONTROL, resolves to chosen branch when finer.
Default:
'GENERATORS'- -r, --resolution
Resolution of the output images
Default:
(512, 512)- -s, --samples
Number of samples for the rendering
Default:
1024- --focal_length_mm
Camera focal length in mm
Default:
15- --cameras
Camera indices to render (e.g. --cameras 0 1 for stereo)
Default:
[0]- --fps
Frames per second (overrides Blender default of 24)
- --on_interrupt
Possible choices: delete, cleanstate, exit, none
Default:
'none'
To list the available generators, run infinigen2 --list (optionally filtering by category, e.g. infinigen2 --list Scene).
Infinigen 1.0#
infinigen.datagen.manage_jobs#
The Infinigen 1.0 datagen job manager: orchestrate large-scale scene generation across a local machine or a SLURM cluster.
usage: python -m infinigen.datagen.manage_jobs [-h] [-o OUTPUT_FOLDER]
[--num_scenes NUM_SCENES]
[--meta_seed META_SEED]
[--specific_seed SPECIFIC_SEED [SPECIFIC_SEED ...]]
[--use_existing]
[--warmup_sec WARMUP_SEC]
[--cleanup {all,big_files,none,except_logs,except_crashed}]
[--configs [CONFIGS ...]]
[-p OVERRIDES [OVERRIDES ...]]
[--wandb_mode {online,offline,disabled}]
[--pipeline_configs PIPELINE_CONFIGS [PIPELINE_CONFIGS ...]]
[--pipeline_overrides PIPELINE_OVERRIDES [PIPELINE_OVERRIDES ...]]
[--overwrite] [-d] [-v]
[--print_stats PRINT_STATS]
Named Arguments#
- -o, --output_folder
- --num_scenes
Number of scenes to attempt before terminating
Default:
1- --meta_seed
What seed should be used to determine the random seeds of each scene? Leave as None unless deliberately replicating past runs
- --specific_seed
The default, None, will choose a random seed per scene. Otherwise, all scenes will have the specified seed. Interpreted as an integer if possible.
- --use_existing
If set, then assume output_folder is an existing folder from a terminated run, and make a best-possible-effort to resume from where it left off
Default:
False- --warmup_sec
Perform a staggered start over the specified period, so that jobs dont sync up or all write to disk at similar times.
Default:
0- --cleanup
Possible choices: all, big_files, none, except_logs, except_crashed
What files should be cleaned up by the manager as it runs?
Default:
'none'- --configs
List of gin config names to pass through to all underlying scene generation jobs.
Default:
[]- -p, --overrides
List of gin overrides to pass through to all underlying scene generation jobs
Default:
[]- --wandb_mode
Possible choices: online, offline, disabled
Mode kwarg for wandb.init(). Set up wandb before use.
Default:
'disabled'- --pipeline_configs
List of gin config names from tools/pipeline_configs to configure this execution
- --pipeline_overrides
List of gin overrides to configure this execution
Default:
[]- --overwrite
Default:
False- -d, --debug
Default:
30- -v, --verbose
- --print_stats
Default:
1