Module for configuration of deepflash2.

Config class

class Config[source]

Config(project_dir:str='.', vote_undec:int=0, n_models:int=5, max_splits:int=5, random_state:int=42, use_gpu:bool=True, arch:str='Unet', encoder_name:str='tu-convnext_tiny', encoder_weights:str='imagenet', num_classes:int=2, tile_shape:int=512, scale:float=1.0, instance_labels:bool=False, base_lr:float=0.001, batch_size:int=4, weight_decay:float=0.001, mixed_precision_training:bool=True, optim:str='Adam', loss:str='CrossEntropyDiceLoss', n_epochs:int=25, sample_mult:int=0, gamma_limit_lower:int=80, gamma_limit_upper:int=120, CLAHE_clip_limit:float=0.0, brightness_limit:float=0.0, contrast_limit:float=0.0, flip:bool=True, rot:int=360, distort_limit:float=0, mode:str='multiclass', loss_alpha:float=0.5, loss_beta:float=0.5, loss_gamma:float=2.0, loss_smooth_factor:float=0.0, use_tta:bool=True, max_tile_shift:float=0.5, border_padding_factor:float=0.25, use_gaussian:bool=True, gaussian_kernel_sigma_scale:float=0.125, min_pixel_export:int=0, cellpose_model:str='nuclei', cellpose_diameter:int=0, cellpose_export_class:int=1, cellpose_flow_threshold:float=0.4, instance_segmentation_metrics:bool=False, gt_dir:str='GT_Estimation', train_dir:str='Training', pred_dir:str='Prediction', ens_dir:str='models', val_dir:str='valid')

Config class for settings.

t1 = Config(n_models=3)
path = t1.save('test_config')
t2 = Config()
t2.load(path)
test_eq(t1, t2)
path.unlink()
Saved current configuration to test_config.json.json
Successsfully loaded configuration from test_config.json