ReUseX
0.0.5
3D Point Cloud Processing for Building Reuse
Toggle main menu visibility
Loading...
Searching...
No Matches
instances.hpp
Go to the documentation of this file.
1
// SPDX-FileCopyrightText: 2025 Povl Filip Sonne-Frederiksen
2
// SPDX-License-Identifier: GPL-3.0-or-later
3
4
#pragma once
5
#include "
global-params.hpp
"
6
7
#include <CLI/CLI.hpp>
8
#include <filesystem>
9
#include <memory>
10
#include <string>
11
#include <vector>
12
13
namespace
fs = std::filesystem;
14
24
struct
SubcommandSegInstancesOptions
{
26
float
cluster_tolerance
= 0.5F;
27
29
int
min_cluster_size
= 50;
30
32
int
max_cluster_size
= 1000000;
33
35
std::string
semantic_cloud_name
=
"labels"
;
36
38
std::string
output_cloud_name
=
"instances"
;
39
41
std::vector<uint32_t>
labels_to_process
;
42
};
43
47
void
setup_subcommand_create_instances
(CLI::App &app,
48
std::shared_ptr<RuxOptions> global_opt);
49
53
int
run_subcommand_segment_instances
(
const
SubcommandSegInstancesOptions
&opt,
54
const
RuxOptions
&global_opt);
global-params.hpp
run_subcommand_segment_instances
int run_subcommand_segment_instances(const SubcommandSegInstancesOptions &opt, const RuxOptions &global_opt)
Execute instance segmentation subcommand.
setup_subcommand_create_instances
void setup_subcommand_create_instances(CLI::App &app, std::shared_ptr< RuxOptions > global_opt)
Setup CLI11 subcommand for instance segmentation.
RuxOptions
Definition
global-params.hpp:44
SubcommandSegInstancesOptions
CLI options for instance segmentation subcommand.
Definition
instances.hpp:24
SubcommandSegInstancesOptions::semantic_cloud_name
std::string semantic_cloud_name
Name of input semantic labels cloud in ProjectDB.
Definition
instances.hpp:35
SubcommandSegInstancesOptions::min_cluster_size
int min_cluster_size
Minimum points per instance cluster.
Definition
instances.hpp:29
SubcommandSegInstancesOptions::max_cluster_size
int max_cluster_size
Maximum points per instance cluster.
Definition
instances.hpp:32
SubcommandSegInstancesOptions::labels_to_process
std::vector< uint32_t > labels_to_process
Optional: only process these semantic labels (comma-separated list).
Definition
instances.hpp:41
SubcommandSegInstancesOptions::cluster_tolerance
float cluster_tolerance
Euclidean distance threshold for clustering (meters).
Definition
instances.hpp:26
SubcommandSegInstancesOptions::output_cloud_name
std::string output_cloud_name
Name of output instance labels cloud in ProjectDB.
Definition
instances.hpp:38
apps
rux
include
create
instances.hpp
Generated by
1.17.0