| 96 | |
| 97 | |
| 98 | class OptimizationParams(ParamGroup): |
| 99 | def __init__(self, parser): |
| 100 | self._iterations = 30_000 # 90_000 |
| 101 | self.position_lr_init = 0.00016 |
| 102 | self.position_lr_final = 0.0000016 # 0.00000016 |
| 103 | self.position_lr_delay_mult = 0.01 |
| 104 | self.position_lr_max_steps = 30_000 # 90_000 |
| 105 | self.feature_lr = 0.0025 |
| 106 | self.opacity_lr = 0.025 |
| 107 | self.scaling_lr = 0.005 |
| 108 | self.rotation_lr = 0.001 |
| 109 | self.map_generator_lr = 1e-3 * 2 |
| 110 | |
| 111 | self.color_net_lr = 5e-4 |
| 112 | |
| 113 | self.box_coord_lr = 1 |
| 114 | self.warm_up_iter = 0 |
| 115 | |
| 116 | self.disc_lr = 0.005 |
| 117 | self.lambda_disc = 0.01 |
| 118 | |
| 119 | self.percent_dense = 0.01 # 0.0025 |
| 120 | self.lambda_dssim = 0.2 |
| 121 | self.densification_interval = 100 |
| 122 | self.opacity_reset_interval = 3000 |
| 123 | self.densify_from_iter = 500 |
| 124 | self.densify_until_iter = 15_000 # 25_000 |
| 125 | self.densify_grad_threshold = 0.0004 # 0.0001 |
| 126 | self.opacity_threshold = 0.005 |
| 127 | self.random_background = False |
| 128 | |
| 129 | self.use_scaling_loss = False |
| 130 | self.use_lpips_loss = True |
| 131 | self.use_box_coord_loss = True |
| 132 | self.scaling_loss_coef = 0.005 # * 0.2 |
| 133 | self.lpips_loss_coef = 0.005 |
| 134 | self.box_coord_loss_coef = 0.005 * 0.2 |
| 135 | |
| 136 | self.use_depth_loss = False |
| 137 | self.depth_is_inverted = False |
| 138 | self.depth_l1_weight_init = 1.0 |
| 139 | self.depth_l1_weight_final = 0.01 |
| 140 | |
| 141 | self.bezier_order = 7 |
| 142 | self.deblur_mode = "Linear" # Linear, Spline, Bezier |
| 143 | self.blur_sample_num = 2 |
| 144 | self.deblur = False |
| 145 | self.non_uniform = False |
| 146 | self.use_masks = False |
| 147 | self.prune_more = True # False |
| 148 | super().__init__(parser, "Optimization Parameters") |
| 149 | |
| 150 | |
| 151 | def get_combined_args(parser: ArgumentParser): |
no outgoing calls
no test coverage detected