5.3.2.9. Struct RoIs_basic_t

5.3.2.9.1. Struct Documentation

struct RoIs_basic_t

Basic features: bounding box, surface & centroid. A bounding box represents a rectangular box around the RoI. The surface is the number of pixels that are in the connected-component (CC). The centroid is the center of mass of the RoI. The memory layout is a Structure of Arrays (SoA), each field is an array of _max_size capacity (except for _max_size itself and _size fields that are both scalar values).

Public Members

uint32_t *id

RoI unique identifiers. A RoI identifier should starts from 1 while 0 should be reserved for uninitialized structure.

uint32_t *xmin

Minimum \(x\) coordinates of the bounding box.

uint32_t *xmax

Maximum \(x\) coordinates of the bounding box.

uint32_t *ymin

Minimum \(y\) coordinates of the bounding box.

uint32_t *ymax

Maximum \(y\) coordinates of the bounding box.

uint32_t *S

Numbers of points/pixels = surfaces of the RoIs.

uint32_t *Sx

Sums of \(x\) properties.

uint32_t *Sy

Sums of \(y\) properties.

float *x

\(x\) coordinates of the centroid ( \( x = S_x / S \)).

float *y

\(y\) coordinates of the centroid ( \( y = S_y / S \)).

size_t *_size

Current number of RoIs in each feature field. Note: this field a pointer but it has to be a scalar value.

size_t *_max_size

Maximum capacity of each feature field (= maximum number of elements in the arrays). Note: this field a pointer but it has to be a scalar value.