Skip to content

Config

dataphy.visionpack.config

Configuration models for VisionPack augmentation pipeline.

This module defines Pydantic models for configuring vision augmentation pipelines, including individual transform steps, pipeline composition, and I/O settings.

Classes

Step

Bases: BaseModel

Configuration for a single augmentation transform step.

This model defines all possible parameters for any transform in the VisionPack pipeline. Parameters are optional and only relevant ones for each transform type will be used.

Attributes
name: Literal['random_crop_pad', 'random_translate', 'random_scale', 'random_rotate', 'random_affine', 'random_hflip', 'color_jitter', 'wb_shift', 'gamma', 'to_grayscale', 'motion_blur', 'gaussian_blur', 'gaussian_noise', 'poisson_noise', 'speckle_noise', 'salt_pepper_noise', 'jpeg_compress', 'bit_depth', 'vignette', 'lens_distortion', 'occluder_patch', 'synthetic_shadow', 'cutout', 'random_conv', 'lighting_rand', 'camera_intrinsics_jitter', 'camera_extrinsics_jitter', 'rgb_sensor_noise', 'depth_noise', 'depth_quantize'] instance-attribute
p: Optional[float] = None class-attribute instance-attribute
apply_to: Optional[List[str]] = None class-attribute instance-attribute
sync_views: Optional[bool] = None class-attribute instance-attribute
update_intrinsics: Optional[bool] = None class-attribute instance-attribute
mask_protect: Optional[List[str]] = None class-attribute instance-attribute
min_visible_mask_pct: Optional[float] = None class-attribute instance-attribute
resample: Optional[Literal['nearest', 'bilinear', 'bicubic']] = None class-attribute instance-attribute
border_mode: Optional[Literal['reflect', 'replicate', 'constant']] = None class-attribute instance-attribute
pad_mode: Optional[Literal['reflect', 'replicate', 'constant']] = None class-attribute instance-attribute
pad_value: Optional[float] = None class-attribute instance-attribute
seed_policy: Optional[Literal['per_frame', 'per_episode', 'global']] = None class-attribute instance-attribute
keep_ratio_min: Optional[float] = None class-attribute instance-attribute
center_bias: Optional[float] = None class-attribute instance-attribute
min_object_iou: Optional[float] = None class-attribute instance-attribute
resize_to: Optional[List[int]] = None class-attribute instance-attribute
px: Optional[int] = None class-attribute instance-attribute
units: Optional[Literal['px', 'percent']] = None class-attribute instance-attribute
distribution: Optional[Literal['uniform', 'normal']] = None class-attribute instance-attribute
std_px: Optional[float] = None class-attribute instance-attribute
lock_axis: Optional[Literal['both', 'x', 'y']] = None class-attribute instance-attribute
wrap: Optional[bool] = None class-attribute instance-attribute
max_pad_pct: Optional[float] = None class-attribute instance-attribute
magnitude: Optional[float] = None class-attribute instance-attribute
brightness: Optional[float] = None class-attribute instance-attribute
contrast: Optional[float] = None class-attribute instance-attribute
saturation: Optional[float] = None class-attribute instance-attribute
hue: Optional[float] = None class-attribute instance-attribute
order: Optional[List[str]] = None class-attribute instance-attribute
space: Optional[Literal['rgb', 'hsv', 'hsl']] = None class-attribute instance-attribute
clip_range: Optional[List[float]] = None class-attribute instance-attribute
temperature_shift: Optional[float] = None class-attribute instance-attribute
correlate_views: Optional[float] = None class-attribute instance-attribute
kernel_variance: Optional[float] = None class-attribute instance-attribute
kernel_size: Optional[int] = None class-attribute instance-attribute
normalize_gain: Optional[bool] = None class-attribute instance-attribute
alpha_identity: Optional[List[float]] = None class-attribute instance-attribute
sample_mode: Optional[Literal['gaussian', 'bank', 'hybrid']] = None class-attribute instance-attribute
kernel_bank: Optional[List] = None class-attribute instance-attribute
bank_prob: Optional[float] = None class-attribute instance-attribute
passes: Optional[int] = None class-attribute instance-attribute
boundary: Optional[Literal['reflect', 'replicate', 'zeros']] = None class-attribute instance-attribute
holes: Optional[int] = None class-attribute instance-attribute
size_range: Optional[Union[Tuple[int, int], List[int]]] = None class-attribute instance-attribute
size_units: Optional[Literal['px', 'percent']] = None class-attribute instance-attribute
aspect_ratio_range: Optional[List[float]] = None class-attribute instance-attribute
fill_value: Optional[float] = None class-attribute instance-attribute
soft_edges: Optional[float] = None class-attribute instance-attribute
position_bias: Optional[Literal['center', 'edges', 'uniform']] = None class-attribute instance-attribute
target_masks_only: Optional[bool] = None class-attribute instance-attribute
depth_fill: Optional[Literal['nan', 'const', 'interp']] = None class-attribute instance-attribute
occlusion_budget: Optional[float] = None class-attribute instance-attribute
scale_range: Optional[List[float]] = None class-attribute instance-attribute
preserve_aspect: Optional[bool] = None class-attribute instance-attribute
deg: Optional[float] = None class-attribute instance-attribute
shear_deg: Optional[float] = None class-attribute instance-attribute
allow_when: Optional[List[str]] = None class-attribute instance-attribute
kelvin_shift: Optional[float] = None class-attribute instance-attribute
mired_shift: Optional[float] = None class-attribute instance-attribute
per_channel_gain: Optional[List[float]] = None class-attribute instance-attribute
gamma: Optional[Union[float, List[float]]] = None class-attribute instance-attribute
per_channel: Optional[bool] = None class-attribute instance-attribute
keep_channels: Optional[int] = None class-attribute instance-attribute
kernel: Optional[List[int]] = None class-attribute instance-attribute
angle_deg: Optional[List[float]] = None class-attribute instance-attribute
prob: Optional[float] = None class-attribute instance-attribute
sigma: Optional[List[float]] = None class-attribute instance-attribute
scale: Optional[List[float]] = None class-attribute instance-attribute
amount: Optional[List[float]] = None class-attribute instance-attribute
salt_vs_pepper: Optional[float] = None class-attribute instance-attribute
quality: Optional[List[int]] = None class-attribute instance-attribute
bits: Optional[List[int]] = None class-attribute instance-attribute
strength: Optional[List[float]] = None class-attribute instance-attribute
softness: Optional[List[float]] = None class-attribute instance-attribute
center_bias_vignette: Optional[List[float]] = None class-attribute instance-attribute
k1: Optional[List[float]] = None class-attribute instance-attribute
k2: Optional[List[float]] = None class-attribute instance-attribute
crop_or_pad: Optional[Literal['crop', 'pad']] = None class-attribute instance-attribute
count: Optional[List[int]] = None class-attribute instance-attribute
size_rel: Optional[List[float]] = None class-attribute instance-attribute
fill_mode: Optional[Union[str, List[str]]] = None class-attribute instance-attribute
rotation_deg: Optional[float] = None class-attribute instance-attribute
patch_bank: Optional[List] = None class-attribute instance-attribute
dir_deg: Optional[List[float]] = None class-attribute instance-attribute
intensity: Optional[List[float]] = None class-attribute instance-attribute
shape: Optional[Union[str, List[str]]] = None class-attribute instance-attribute
sigma_mm_at_1m: Optional[List[float]] = None class-attribute instance-attribute
quad_scale: Optional[bool] = None class-attribute instance-attribute
missing_prob: Optional[List[float]] = None class-attribute instance-attribute
hole_fill: Optional[Literal['none', 'interp']] = None class-attribute instance-attribute
profile: Optional[Literal['tof', 'stereo', 'structured_light', 'generic']] = None class-attribute instance-attribute
holes_prob: Optional[List[float]] = None class-attribute instance-attribute
edge_dropout_prob: Optional[List[float]] = None class-attribute instance-attribute
speckle: Optional[List[float]] = None class-attribute instance-attribute
guidance: Optional[Literal['none', 'rgb_edges']] = None class-attribute instance-attribute
ambient_tint: Optional[List[float]] = None class-attribute instance-attribute
directional_intensity: Optional[List[float]] = None class-attribute instance-attribute
direction_deg: Optional[List[float]] = None class-attribute instance-attribute
spot_count: Optional[List[int]] = None class-attribute instance-attribute
spot_radius: Optional[List[float]] = None class-attribute instance-attribute
spot_intensity: Optional[List[float]] = None class-attribute instance-attribute
shadow_prob: Optional[float] = None class-attribute instance-attribute
preserve_robot_color: Optional[bool] = None class-attribute instance-attribute
fx_jitter: Optional[List[float]] = None class-attribute instance-attribute
fy_jitter: Optional[List[float]] = None class-attribute instance-attribute
cx_jitter_px: Optional[List[int]] = None class-attribute instance-attribute
cy_jitter_px: Optional[List[int]] = None class-attribute instance-attribute
antialias: Optional[bool] = None class-attribute instance-attribute
keep_size: Optional[bool] = None class-attribute instance-attribute
intrinsics_key: Optional[str] = None class-attribute instance-attribute
rot_deg: Optional[List[float]] = None class-attribute instance-attribute
transl_px: Optional[List[int]] = None class-attribute instance-attribute
perspective: Optional[float] = None class-attribute instance-attribute
extrinsics_key: Optional[str] = None class-attribute instance-attribute
same_delta_per_seq: Optional[bool] = None class-attribute instance-attribute
shot_k: Optional[List[float]] = None class-attribute instance-attribute
read_sigma: Optional[List[float]] = None class-attribute instance-attribute
iso_range: Optional[List[int]] = None class-attribute instance-attribute
exposure_shift: Optional[List[float]] = None class-attribute instance-attribute
analog_gain: Optional[List[float]] = None class-attribute instance-attribute
crosstalk: Optional[float] = None class-attribute instance-attribute
black_level: Optional[float] = None class-attribute instance-attribute
saturation_level: Optional[float] = None class-attribute instance-attribute
clip: Optional[bool] = None class-attribute instance-attribute

BackgroundConfig

Bases: BaseModel

Configuration for background replacement/adaptation in augmentation pipeline.

This model configures how background images are handled during augmentation, supporting various background adaptation strategies like GreenAug, RoboEngine, or inpainting-based approaches.

Attributes
adapter: Literal['none', 'greenaug', 'roboengine', 'inpaint'] = 'none' class-attribute instance-attribute
roboengine: dict = Field(default_factory=dict) class-attribute instance-attribute
greenaug: dict = Field(default_factory=dict) class-attribute instance-attribute
inpaint: dict = Field(default_factory=dict) class-attribute instance-attribute

PipelineConfig

Bases: BaseModel

Configuration for the complete augmentation pipeline.

This model defines the overall structure of the augmentation pipeline, including the sequence of transforms, view synchronization settings, and background adaptation configuration.

Attributes
sync_views: bool = True class-attribute instance-attribute
steps: List[Step] instance-attribute
background: BackgroundConfig = BackgroundConfig() class-attribute instance-attribute

IOConfig

Bases: BaseModel

Configuration for input/output operations in the augmentation pipeline.

This model defines settings for data loading, processing, and output, including batch sizes, worker processes, and file paths.

Attributes
input: str instance-attribute
output: Optional[str] = None class-attribute instance-attribute
batch_size: int = 64 class-attribute instance-attribute
num_workers: int = 8 class-attribute instance-attribute

Config

Bases: BaseModel

Root configuration model for VisionPack augmentation.

This is the top-level configuration model that contains all settings for a complete VisionPack augmentation pipeline, including version information, pipeline configuration, I/O settings, and random seed.

Attributes
version: int = 1 class-attribute instance-attribute
pipeline: PipelineConfig instance-attribute
io: Optional[IOConfig] = None class-attribute instance-attribute
seed: int = 1337 class-attribute instance-attribute