Biomedical Image Analysis Library
The Biomedical Image Analysis Library is a poweful tool for developers, physicians, researchers, engineers, and so on.
|
#include <DrawSequence.hpp>
Public Member Functions | |
template<class D > | |
Sequence (const Image< D > &label, size_t start_pxl, Adjacency &adj, const Color color=Color(1)) | |
basic constructor. Creates a sequence of connected points from a connected component that begins at start_pxl and have the same label. More... | |
template<class D > | |
void | Draw (Image< D > &img) const |
Draws 2D or 3D sequence in input image. More... | |
template<class D > | |
void | Draw (Image< D > &img, const Vector< float > &displacement) const |
Draws 2D or 3D sequence in input image. More... | |
Vector< Vector< int > > | Pixels () const |
Returns a vector with coordinates of the pixels from this Figure. More... | |
Vector< Vector< int > > | Pixels (const Vector< float > &displacement) const |
Returns a vector with coordinates of the pixels from this figure. More... | |
template<class O > | |
void | Print (O &os) const |
Prints sequence information to stream. More... | |
double | size () const |
Returns the number of pixels in this sequence. More... | |
bool | ValidateSize (float min_sequence_size, float max_sequence_size=std::numeric_limits< float >::max()) |
Checks if the sequence in the expected range. More... | |
bool | ValidateCircularity (Vector< float > ¢er, float min_center_dist, float max_center_dist=std::numeric_limits< float >::max(), float min_radius=0.0f, float max_radius=std::numeric_limits< float >::max(), float min_circularity=0.0f, float max_circularity=std::numeric_limits< float >::max()) |
Calculate and updates sequence's Center, Radius, and Circularity variables. More... | |
Vector< float > | CircleCenter (float max_radius) |
Calculates the center of an estimated circle to the sequence. More... | |
float | MeanRadius (const Vector< float > ¢er, size_t begin, size_t end) |
Calculates the sequence's radius using Euclidian distance. More... | |
float | Circularity (const Vector< float > ¢er, float radius, size_t begin, size_t end) |
Calculates the sequence's circularity given its center and radius. More... | |
Public Member Functions inherited from Bial::Figure< Sequence > | |
Figure (const Color &color) | |
Basic Constructor. More... | |
void | Draw (Image< D > &img) |
Draws figure in input image. More... | |
void | Draw (Image< D > &img, const Vector< float > &displacement) const |
Draws n-dimensional figure in input image. More... | |
Vector< Vector< int > > | Pixels () const |
Returns a vector with coordinates of the pixels from this Figure. More... | |
Vector< Vector< int > > | Pixels (const Vector< float > &displacement) const |
Returns a vector with coordinates of the pixels from this figure. More... | |
void | Print (O &os) const |
Prints figure information to stream. More... | |
Public Attributes | |
Vector< Vector< float > > | point |
Public Attributes inherited from Bial::Figure< Sequence > | |
Color | color |
The color of the figure. More... | |
Definition at line 25 of file DrawSequence.hpp.
Bial::Sequence::Sequence | ( | const Image< D > & | label, |
size_t | start_pxl, | ||
Adjacency & | adj, | ||
const Color | color = Color(1) |
||
) |
basic constructor. Creates a sequence of connected points from a connected component that begins at start_pxl and have the same label.
label | Label image used just to get its dimensions. |
start_pxl | One of the sequence extremeties. |
adj | An adjacency relation to be used to follow sequence points. |
Vector< float > Bial::Sequence::CircleCenter | ( | float | max_radius | ) |
Calculates the center of an estimated circle to the sequence.
max_radius | Maximum expected radius. |
float Bial::Sequence::Circularity | ( | const Vector< float > & | center, |
float | radius, | ||
size_t | begin, | ||
size_t | end | ||
) |
Calculates the sequence's circularity given its center and radius.
center | Estimated circle center to the sequence. |
radius | Mean radius of the sequence. |
begin | First index of the sequence to take into account. |
last | Index of the sequence to take into account. |
void Bial::Sequence::Draw | ( | Image< D > & | img | ) | const |
Draws 2D or 3D sequence in input image.
img | An image. |
void Bial::Sequence::Draw | ( | Image< D > & | img, |
const Vector< float > & | displacement | ||
) | const |
Draws 2D or 3D sequence in input image.
img | An image. |
displacement | Displacement from sequence's coordinates to start drawing. |
Calculates the sequence's radius using Euclidian distance.
center | Estimated circle center to the sequence. |
begin | First index of the sequence to take into account. |
last | Index of the sequence to take into account. |
Returns a vector with coordinates of the pixels from this figure.
displacement | Displacement from low coordinate of the figure. |
void Bial::Sequence::Print | ( | O & | os | ) | const |
Prints sequence information to stream.
os | an output stream. |
double Bial::Sequence::size | ( | ) | const |
Returns the number of pixels in this sequence.
none. |
bool Bial::Sequence::ValidateCircularity | ( | Vector< float > & | center, |
float | min_center_dist, | ||
float | max_center_dist = std::numeric_limits< float >::max() , |
||
float | min_radius = 0.0f , |
||
float | max_radius = std::numeric_limits< float >::max() , |
||
float | min_circularity = 0.0f , |
||
float | max_circularity = std::numeric_limits< float >::max() |
||
) |
Calculate and updates sequence's Center, Radius, and Circularity variables.
center | Expected center for a circle composed by this sequence. |
min_center_dist | Minimum distance from expected to estimated center. |
max_center_dist | Maximum distance from expected to estimated center. |
min_radius | Minimum expected mean radius to estimated center. |
min_radius | Maximum expected mean radius to estimated center. |
min_circularity | Minimum circularity of the sequence given the estimated radius and center. |
max_circularity | Maximum circularity of the sequence given the estimated radius and center. |
bool Bial::Sequence::ValidateSize | ( | float | min_sequence_size, |
float | max_sequence_size = std::numeric_limits< float >::max() |
||
) |
Checks if the sequence in the expected range.
min_sequence_size | Minimum size of sequence to be validated. |
min_sequence_size | Maximum size of sequence to be validated. |
Definition at line 28 of file DrawSequence.hpp.