ReUseX  0.0.5
3D Point Cloud Processing for Building Reuse
Loading...
Searching...
No Matches
gsplat.hpp
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2026 Povl Filip Sonne-Frederiksen
2//
3// SPDX-License-Identifier: GPL-3.0-or-later
4
5#pragma once
7#include <CLI/CLI.hpp>
8#include <cstdint>
9#include <memory>
10#include <string>
11#include <vector>
12
23 std::string seed_cloud = "cloud";
24 std::size_t max_points = 0;
25 int sh_degree = 0;
29 float lr_sh_rest = 2.5e-3f / 20.0f;
30
31 int iterations = 2000;
32 float lambda_dssim = 0.2f;
33 unsigned seed = 42;
34 bool no_prune = false;
35
36 // Held-out evaluation (TrainOptions::holdout_every / eval_interval /
37 // eval_max_views).
39 int eval_interval = 1000;
41
42 // MCMC density control (TrainOptions::mcmc).
43 bool mcmc = false;
44 double mcmc_cap_factor = 2.0;
45 std::int64_t mcmc_cap = 0;
47 float mcmc_noise_lr = 5e5f;
48 float mcmc_opacity_reg = 0.0f;
49 float mcmc_scale_reg = 0.0f;
50
51 int frame_stride = 1;
52 int first_frame = -1;
53 int last_frame = -1;
55 std::size_t max_views = 0;
56
57 bool use_panoramas = false;
58 int pano_n_yaw = 8;
59 double pano_fov_deg = 90.0;
60 int pano_tile = 1024;
61
62 std::string splat_name = "splat";
63 std::string out_ply;
64 std::string render_dir;
65 std::vector<int> render_iterations;
66 std::size_t render_view_index = 0;
67
68 // Periodic checkpointing (TrainOptions::checkpoint_every / checkpoint_keep /
69 // checkpoint_dir).
72 std::string checkpoint_dir;
73};
74
76 std::shared_ptr<RuxOptions> global_opt);
77
79 const RuxOptions &global_opt);
void setup_subcommand_create_gsplat(CLI::App &app, std::shared_ptr< RuxOptions > global_opt)
int run_subcommand_create_gsplat(SubcommandCreateGsplatOptions const &opt, const RuxOptions &global_opt)
Options for rux create gsplat.
Definition gsplat.hpp:22
int sh_degree_interval
TrainOptions::sh_degree_interval / lr_sh_rest — the view-dependent-colour warm-up.
Definition gsplat.hpp:28
std::vector< int > render_iterations
Definition gsplat.hpp:65