flashimgs / cfgs /default.yaml
opsiclear-admin's picture
FlashImgs ZeroGPU Space: Gradio SDK, AGPL-3.0 wrapper, vendored sm_120 wheels
28026e3 verified
Raw
History Blame Contribute Delete
4.2 kB
seed: 123
device: "cuda:0"
# Evaluation
eval: False # Render the optimized representation
render_height: 2048 # Image height for rendering (aspect ratio is maintained)
# Bit precision
quantize: False # Enable bit precision control of Gaussian parameters
pos_bits: 16 # Bit precision of individual coordinate dimension
scale_bits: 16 # Bit precision of individual scale dimension
rot_bits: 16 # Bit precision of Gaussian orientation angle
feat_bits: 16 # Bit precision of individual feature dimension
gate_bits: 16 # Bit precision of per-Gaussian positive activity gate
# Logging
log_root: "results"
exp_name: "default" # Path to the logging directory
log_level: "INFO"
save_image_format: "jpg"
save_plot_format: "jpg"
vis_gaussians: False # Visualize Gaussians during optimization
save_image_steps: 100000 # Frequency of rendering intermediate results during optimization
save_ckpt_steps: 100000 # Frequency of checkpointing during optimization
eval_steps: 100
# Target images
gamma: 1.0 # Optimize in a gamma-corrected space, modify with caution
data_root: "media"
input_path: "images/kodim01.png" # Path to an image file or a directory containing a texture stack
downsample: False # Load a downsampled version of the input image or texture stack as the optimization target to evaluate image upsampling performance
downsample_ratio: 2.0
# Mask-aware training (optional): fit Gaussians only inside a binary mask
mask_path: "" # Path to a binary mask image; empty = unmasked
mask_outside_weight: 0.25 # lambda_out: per-pixel weight on render error outside the mask (lower = softer edge, higher = sharper)
mask_hard_prune: True # After training, drop any Gaussian whose center lands outside the mask
mask_crop: True # Crop training to the mask bounding box (+margin) for efficiency; positions map back to original coords on export
mask_crop_margin: 0.06 # Margin around the mask bbox as a fraction of its size (keeps a hairline of background on interior sides for a sharp edge)
mask_border_padding: True # Add virtual outside-mask padding when the mask touches the image border, so border splats are penalized for bleeding past the frame
mask_keep_band: 0 # Allow Gaussian centers within this many px of the mask boundary (0 = strict no-centers-outside). >0 keeps the edge-carrying Gaussians (recovers PSNR-in) while the loss still uses the original mask for a sharp edge.
# Gaussians
num_gaussians: 0 # Number of Gaussians. 0 = auto count calibrated for ~40 dB final PSNR
init_scale: 1.5 # Initial Gaussian scale in number of pixels
rasterizer: "simple_sum" # Fixed in this branch
disable_inverse_scale: False # Disable inverse Gaussian scale optimization
ckpt_file: ""
disable_color_init: False
init_mode: "gradient" # Legacy model-side init mode; train/export/viz paths override this with adaptive partition init
init_random_ratio: 0.3 # Ratio of Gaussians with randomly initialized position
smap_filter_size: 20 # Gaussian filter size for smoothing saliency maps
# Loss functions
l1_loss_ratio: 0.0
l2_loss_ratio: 1.0
ssim_loss_ratio: 0.0
# Optimization
disable_tiles: False # Disable tile-based rendering (warning: optimization and rendering without tiles will be way slower)
max_steps: 2800 # Maximum number of optimization steps
pos_lr: 5.0e-4
scale_lr: 2.0e-3
rot_lr: 2.0e-3
feat_lr: 5.0e-3
gate_lr: 5.0e-3
disable_lr_schedule: False # Disable learning rate schedule and early stopping
decay_ratio: 10.0
check_decay_steps: 1000
max_decay_times: 1
decay_threshold: 1.0e-3
disable_prog_optim: True # Disable error-guided progressive optimization (start with all Gaussians)
initial_ratio: 0.5
add_steps: 500
add_times: 4
post_min_steps: 3000