#include <CGAL/Classification/Label_set.h>
sets of Label used as input by classification algorithms.
|
|
| Label_set () |
| |
|
| Label_set (std::initializer_list< const char * > labels) |
| | constructs a label set from a set of label names.
|
| |
|
| template<typename LabelIndexRange > |
| bool | is_valid_ground_truth (const LabelIndexRange &ground_truth, bool verbose=false) const |
| | checks the validity of the ground truth with respect to the label set.
|
| |
◆ add() [1/2]
| Label_handle CGAL::Classification::Label_set::add |
( |
const char * |
name | ) |
|
adds a label with default standard index and color.
This functions tries to map label names to standard ASPRS labels and automatically picks the standard_index and color of the label:
"unassigned" is given standard index 2 and color (0, 0, 0)
"ground" is given standard index 2 and color (186, 189, 182)
"low_vegetation" is given standard index 3 and color (78, 154, 6)
"medium_vegetation" is given standard index 4 and color (138, 226, 52)
"high_vegetation" is given standard index 5 and color (204, 255, 201)
"building" is given standard index 6 and color (245, 121, 0)
"noise" is given standard index 7 and color (128, 0, 0)
"reserved" is given standard index 8 and color (233, 185, 110)
"water" is given standard index 9 and color (114, 159, 207)
"rail" is given standard index 10 and color (136, 46, 25)
"road_surface" is given standard index 11 and color (56, 56, 56)
"reserved_2" is given standard index 12 and color (193, 138, 51)
"wire_guard" is given standard index 13 and color (37, 61, 136)
"wire_conductor" is given standard index 14 and color (173, 127, 168)
"transmission_tower" is given standard index 15 and color (136, 138, 133)
"wire_connect" is given standard index 16 and color (145, 64, 236)
"bridge_deck" is given standard index 17 and color (213, 93, 93)
"high_noise" is given standard index 18 and color (255, 0, 0)
If the name is not found, the label is given standard index std::size_t(-1) and a random color.
- Note
- Names are not used for identification: two labels in the same set can have the same name but not the same handle. Each call to
add() generates a new distinct label.
- Parameters
-
- Returns
- a handle to the newly added label.
◆ add() [2/2]
adds a label.
- Note
- Names, standard indices and colors are not used for identification: two labels in the same set can have the same name, standard index or color, but not the same handle. Each call to
add() generates a new distinct label.
- Parameters
-
| name | name of the label. |
| color | used to represent the label. |
| standard_index | standard index of the classification label (i.e. index in the ASPRS standard). |
- Returns
- a handle to the newly added label.
◆ is_valid_ground_truth()
template<typename LabelIndexRange >
| bool CGAL::Classification::Label_set::is_valid_ground_truth |
( |
const LabelIndexRange & |
ground_truth, |
|
|
bool |
verbose = false |
|
) |
| const |
checks the validity of the ground truth with respect to the label set.
- Parameters
-
| ground_truth | range of label indices. This function checks that all these indices are either -1 (for unclassified) or a valid index of one of the labels. If at least one of the indices is out of range, this function returns false, otherwise it returns true. |
| verbose | if set to true, the number of inliers of each label, the number of unclassified items and the potential number of out-of-range items are displayed. Otherwise, this function does not display anything. |
◆ remove()
| bool CGAL::Classification::Label_set::remove |
( |
Label_handle |
label | ) |
|
removes a label.
- Parameters
-
| label | the handle to the label that must be removed. |
- Returns
true if the label was correctly removed, false if its handle was not found.