#include <vifa_int_face_attr_common.h>
Public Member Functions | |
vifa_int_face_attr_common (void) | |
Default constructor. | |
vifa_int_face_attr_common (vdgl_fit_lines_params *fitter_params, vifa_group_pgram_params *gpp_s, vifa_group_pgram_params *gpp_w, vifa_coll_lines_params *cpp, vifa_norm_params *np) | |
Full constructor. | |
virtual | ~vifa_int_face_attr_common () |
Destructor. | |
virtual bool | ComputeAttributes ()=0 |
virtual bool | GetAttributes (vcl_vector< float > &attrs)=0 |
virtual bool | GetNativeAttributes (vcl_vector< float > &attrs)=0 |
virtual bool | valid_p () const |
virtual edge_2d_list & | GetEdges ()=0 |
edge_2d_list & | GetFittedEdges () |
double | fitted_max () |
double | fitted_min () |
double | fitted_var () |
double | fitted_mean () |
coll_list & | get_collinear_lines () |
double | col_span_mean () |
double | col_span_var () |
double | col_support_mean () |
double | col_support_var () |
double | col_contrib_mean () |
double | col_contrib_var () |
double | col_collapse () |
vifa_group_pgram_params_sptr | get_strong_group_pgram_params () |
vifa_group_pgram_params_sptr | get_weak_group_pgram_params () |
void | set_strong_group_pgram_params (const vifa_group_pgram_params &gp) |
void | set_weak_group_pgram_params (const vifa_group_pgram_params &gp) |
void | set_norm_params (const vifa_norm_params &np) |
float | normalize_intensity (float raw_intensity) |
double | get_contrast_across_edge (vtol_edge_sptr e, double dflt_cont=0.0) |
vifa_coll_lines_sptr | get_line_along_edge (vtol_edge *edge) |
virtual float | Xo ()=0 |
virtual float | Yo ()=0 |
virtual float | Area ()=0 |
virtual float | AspectRatio ()=0 |
virtual float | PerimeterLength ()=0 |
virtual float | WeightedPerimeterLength ()=0 |
virtual float | Complexity ()=0 |
virtual float | WeightedComplexity ()=0 |
float | StrongParallelSal () |
Get proportion of edges with projective parallelism. | |
float | WeakParallelSal () |
Get proportion of edges with "weak" projective parallelism. | |
virtual float | TwoPeakParallel ()=0 |
virtual float | FourPeakParallel ()=0 |
virtual float | EightyPercentParallel ()=0 |
vdgl_fit_lines_params_sptr | fitter_params () |
Line fitting parameters (incl. fit_length). | |
vifa_group_pgram_params_sptr | gpp_s () |
Strong projected parallelism parameters. | |
vifa_group_pgram_params_sptr | gpp_w () |
Weak projected parallelism parameters. | |
vifa_coll_lines_params_sptr | cpp () |
Collinearization parameters. | |
vifa_norm_params_sptr | np () |
Pixel normalization parameters. | |
void | set_params (const vifa_int_face_attr_common_params &ifap) |
Publicly available setting of parameters. | |
bool | SanityCheck () |
Check that parameters are within acceptable bounds. | |
void | print_info (void) |
Output contents. | |
bool | Valid () const |
const char * | GetErrorMsg () const |
void | SetErrorMsg (const char *msg) |
void | touch () |
unsigned long | get_time_stamp () const |
bool | older (vul_timestamp const &t) const |
bool | older (vul_timestamp const *t) const |
void | ref () |
void | unref () |
int | get_references () const |
bool | is_referenced () const |
Protected Member Functions | |
virtual void | init () |
void | fit_lines () |
void | find_collinear_lines () |
bool | find_collinear_match (vtol_edge_2d_sptr edge, coll_list &lines, double dist_threshold, coll_iterator &result) |
float | compute_parallel_sal (vifa_group_pgram_params_sptr gpp) |
void | init_params (vdgl_fit_lines_params *fitter_params, vifa_group_pgram_params *gpp_s, vifa_group_pgram_params *gpp_w, vifa_coll_lines_params *cpp, vifa_norm_params *np) |
Assign internal parameter blocks. | |
void | init_params (const vdgl_fit_lines_params &fitter_params, const vifa_group_pgram_params &gpp_s, const vifa_group_pgram_params &gpp_w, const vifa_coll_lines_params &cpp, const vifa_norm_params &np) |
Assign internal parameter blocks. | |
Protected Attributes | |
bool | attributes_valid_ |
Have the attributes been computed?. | |
edge_2d_list | edges_ |
Cache of all edges from face(s). | |
edge_2d_list | fitted_edges_ |
Cache of fitted line segments. | |
vifa_incr_var | fitted_edges_stats_ |
Statistics about fitted edges in cache. | |
coll_list | collinear_lines_ |
Cache of collinear lines. | |
vifa_incr_var | col_span_ |
vifa_incr_var | col_support_ |
vifa_incr_var | col_contrib_ |
float | area_ |
Face area, in pixels. | |
float | aspect_ratio_ |
Ratio of major face moments. | |
float | complexity_ |
Edge length^2 / detection area. | |
float | weighted_complexity_ |
Weighted complexity measure. | |
float | peri_length_ |
Length of boundary. | |
float | weighted_peri_length_ |
Weighted length of boundary. | |
float | para_sal_strong_ |
float | para_sal_weak_ |
vdgl_fit_lines_params_sptr | fitter_params_ |
vifa_group_pgram_params_sptr | gpp_s_ |
vifa_group_pgram_params_sptr | gpp_w_ |
vifa_coll_lines_params_sptr | cpp_ |
vifa_norm_params_sptr | np_ |
unsigned long | timestamp_ |
Definition at line 32 of file vifa_int_face_attr_common.h.
vifa_int_face_attr_common::vifa_int_face_attr_common | ( | void | ) |
Default constructor.
vifa_int_face_attr_common::vifa_int_face_attr_common | ( | vdgl_fit_lines_params * | fitter_params, |
vifa_group_pgram_params * | gpp_s, | ||
vifa_group_pgram_params * | gpp_w, | ||
vifa_coll_lines_params * | cpp, | ||
vifa_norm_params * | np | ||
) |
Full constructor.
Definition at line 15 of file vifa_int_face_attr_common.cxx.
vifa_int_face_attr_common::~vifa_int_face_attr_common | ( | ) | [virtual] |
Destructor.
Definition at line 25 of file vifa_int_face_attr_common.cxx.
virtual float vifa_int_face_attr_common::Area | ( | ) | [pure virtual] |
Implemented in vifa_int_faces_attr, and vifa_int_face_attr.
virtual float vifa_int_face_attr_common::AspectRatio | ( | ) | [pure virtual] |
Implemented in vifa_int_faces_attr, and vifa_int_face_attr.
double vifa_int_face_attr_common::col_collapse | ( | ) |
Definition at line 57 of file vifa_int_face_attr_common.cxx.
double vifa_int_face_attr_common::col_contrib_mean | ( | ) | [inline] |
Definition at line 113 of file vifa_int_face_attr_common.h.
double vifa_int_face_attr_common::col_contrib_var | ( | ) | [inline] |
Definition at line 114 of file vifa_int_face_attr_common.h.
double vifa_int_face_attr_common::col_span_mean | ( | ) | [inline] |
Definition at line 109 of file vifa_int_face_attr_common.h.
double vifa_int_face_attr_common::col_span_var | ( | ) | [inline] |
Definition at line 110 of file vifa_int_face_attr_common.h.
double vifa_int_face_attr_common::col_support_mean | ( | ) | [inline] |
Definition at line 111 of file vifa_int_face_attr_common.h.
double vifa_int_face_attr_common::col_support_var | ( | ) | [inline] |
Definition at line 112 of file vifa_int_face_attr_common.h.
virtual float vifa_int_face_attr_common::Complexity | ( | ) | [pure virtual] |
Implemented in vifa_int_faces_attr, and vifa_int_face_attr.
float vifa_int_face_attr_common::compute_parallel_sal | ( | vifa_group_pgram_params_sptr | gpp | ) | [protected] |
Definition at line 368 of file vifa_int_face_attr_common.cxx.
virtual bool vifa_int_face_attr_common::ComputeAttributes | ( | ) | [pure virtual] |
Implemented in vifa_int_faces_attr, vifa_int_faces_adj_attr, and vifa_int_face_attr.
vifa_coll_lines_params_sptr vifa_int_face_attr_common_params::cpp | ( | ) | [inline, inherited] |
Collinearization parameters.
Definition at line 55 of file vifa_int_face_attr_common_params.h.
virtual float vifa_int_face_attr_common::EightyPercentParallel | ( | ) | [pure virtual] |
Implemented in vifa_int_faces_attr, and vifa_int_face_attr.
void vifa_int_face_attr_common::find_collinear_lines | ( | ) | [protected] |
Definition at line 243 of file vifa_int_face_attr_common.cxx.
bool vifa_int_face_attr_common::find_collinear_match | ( | vtol_edge_2d_sptr | edge, |
coll_list & | lines, | ||
double | dist_threshold, | ||
coll_iterator & | result | ||
) | [protected] |
Definition at line 341 of file vifa_int_face_attr_common.cxx.
void vifa_int_face_attr_common::fit_lines | ( | ) | [protected] |
Definition at line 186 of file vifa_int_face_attr_common.cxx.
double vifa_int_face_attr_common::fitted_max | ( | ) | [inline] |
Definition at line 103 of file vifa_int_face_attr_common.h.
double vifa_int_face_attr_common::fitted_mean | ( | ) | [inline] |
Definition at line 106 of file vifa_int_face_attr_common.h.
double vifa_int_face_attr_common::fitted_min | ( | ) | [inline] |
Definition at line 104 of file vifa_int_face_attr_common.h.
double vifa_int_face_attr_common::fitted_var | ( | ) | [inline] |
Definition at line 105 of file vifa_int_face_attr_common.h.
vdgl_fit_lines_params_sptr vifa_int_face_attr_common_params::fitter_params | ( | ) | [inline, inherited] |
Line fitting parameters (incl. fit_length).
Definition at line 46 of file vifa_int_face_attr_common_params.h.
virtual float vifa_int_face_attr_common::FourPeakParallel | ( | ) | [pure virtual] |
Implemented in vifa_int_faces_attr, and vifa_int_face_attr.
coll_list & vifa_int_face_attr_common::get_collinear_lines | ( | ) |
Definition at line 45 of file vifa_int_face_attr_common.cxx.
double vifa_int_face_attr_common::get_contrast_across_edge | ( | vtol_edge_sptr | e, |
double | dflt_cont = 0.0 |
||
) |
Definition at line 78 of file vifa_int_face_attr_common.cxx.
vifa_coll_lines_sptr vifa_int_face_attr_common::get_line_along_edge | ( | vtol_edge * | edge | ) |
Definition at line 96 of file vifa_int_face_attr_common.cxx.
vifa_group_pgram_params_sptr vifa_int_face_attr_common::get_strong_group_pgram_params | ( | ) | [inline] |
Definition at line 117 of file vifa_int_face_attr_common.h.
vifa_group_pgram_params_sptr vifa_int_face_attr_common::get_weak_group_pgram_params | ( | ) | [inline] |
Definition at line 118 of file vifa_int_face_attr_common.h.
virtual bool vifa_int_face_attr_common::GetAttributes | ( | vcl_vector< float > & | attrs | ) | [pure virtual] |
Implemented in vifa_int_faces_attr, vifa_int_faces_adj_attr, and vifa_int_face_attr.
virtual edge_2d_list& vifa_int_face_attr_common::GetEdges | ( | ) | [pure virtual] |
Implemented in vifa_int_faces_attr, and vifa_int_face_attr.
edge_2d_list & vifa_int_face_attr_common::GetFittedEdges | ( | ) |
Definition at line 36 of file vifa_int_face_attr_common.cxx.
virtual bool vifa_int_face_attr_common::GetNativeAttributes | ( | vcl_vector< float > & | attrs | ) | [pure virtual] |
Implemented in vifa_int_faces_attr, vifa_int_faces_adj_attr, and vifa_int_face_attr.
vifa_group_pgram_params_sptr vifa_int_face_attr_common_params::gpp_s | ( | ) | [inline, inherited] |
Strong projected parallelism parameters.
Definition at line 49 of file vifa_int_face_attr_common_params.h.
vifa_group_pgram_params_sptr vifa_int_face_attr_common_params::gpp_w | ( | ) | [inline, inherited] |
Weak projected parallelism parameters.
Definition at line 52 of file vifa_int_face_attr_common_params.h.
void vifa_int_face_attr_common::init | ( | void | ) | [protected, virtual] |
Reimplemented in vifa_int_faces_attr, and vifa_int_faces_adj_attr.
Definition at line 170 of file vifa_int_face_attr_common.cxx.
void vifa_int_face_attr_common_params::init_params | ( | vdgl_fit_lines_params * | fitter_params, |
vifa_group_pgram_params * | gpp_s, | ||
vifa_group_pgram_params * | gpp_w, | ||
vifa_coll_lines_params * | cpp, | ||
vifa_norm_params * | np | ||
) | [protected, inherited] |
Assign internal parameter blocks.
Definition at line 112 of file vifa_int_face_attr_common_params.cxx.
void vifa_int_face_attr_common_params::init_params | ( | const vdgl_fit_lines_params & | fitter_params, |
const vifa_group_pgram_params & | gpp_s, | ||
const vifa_group_pgram_params & | gpp_w, | ||
const vifa_coll_lines_params & | cpp, | ||
const vifa_norm_params & | np | ||
) | [protected, inherited] |
Assign internal parameter blocks.
Definition at line 144 of file vifa_int_face_attr_common_params.cxx.
float vifa_int_face_attr_common::normalize_intensity | ( | float | raw_intensity | ) | [inline] |
Definition at line 126 of file vifa_int_face_attr_common.h.
vifa_norm_params_sptr vifa_int_face_attr_common_params::np | ( | ) | [inline, inherited] |
Pixel normalization parameters.
Definition at line 58 of file vifa_int_face_attr_common_params.h.
virtual float vifa_int_face_attr_common::PerimeterLength | ( | ) | [pure virtual] |
Implemented in vifa_int_faces_attr, and vifa_int_face_attr.
void vifa_int_face_attr_common_params::print_info | ( | void | ) | [inherited] |
Output contents.
Definition at line 80 of file vifa_int_face_attr_common_params.cxx.
bool vifa_int_face_attr_common_params::SanityCheck | ( | ) | [virtual, inherited] |
Check that parameters are within acceptable bounds.
Checks that parameters are within acceptable bounds.
Reimplemented from gevd_param_mixin.
Definition at line 53 of file vifa_int_face_attr_common_params.cxx.
void vifa_int_face_attr_common::set_norm_params | ( | const vifa_norm_params & | np | ) | [inline] |
Definition at line 124 of file vifa_int_face_attr_common.h.
void vifa_int_face_attr_common_params::set_params | ( | const vifa_int_face_attr_common_params & | ifap | ) | [inherited] |
Publicly available setting of parameters.
Definition at line 43 of file vifa_int_face_attr_common_params.cxx.
void vifa_int_face_attr_common::set_strong_group_pgram_params | ( | const vifa_group_pgram_params & | gp | ) | [inline] |
Definition at line 119 of file vifa_int_face_attr_common.h.
void vifa_int_face_attr_common::set_weak_group_pgram_params | ( | const vifa_group_pgram_params & | gp | ) | [inline] |
Definition at line 121 of file vifa_int_face_attr_common.h.
float vifa_int_face_attr_common::StrongParallelSal | ( | ) |
Get proportion of edges with projective parallelism.
Definition at line 130 of file vifa_int_face_attr_common.cxx.
virtual float vifa_int_face_attr_common::TwoPeakParallel | ( | ) | [pure virtual] |
Implemented in vifa_int_faces_attr, and vifa_int_face_attr.
virtual bool vifa_int_face_attr_common::valid_p | ( | ) | const [inline, virtual] |
Definition at line 98 of file vifa_int_face_attr_common.h.
float vifa_int_face_attr_common::WeakParallelSal | ( | ) |
Get proportion of edges with "weak" projective parallelism.
Definition at line 147 of file vifa_int_face_attr_common.cxx.
virtual float vifa_int_face_attr_common::WeightedComplexity | ( | ) | [pure virtual] |
Implemented in vifa_int_faces_attr, and vifa_int_face_attr.
virtual float vifa_int_face_attr_common::WeightedPerimeterLength | ( | ) | [pure virtual] |
Implemented in vifa_int_faces_attr, and vifa_int_face_attr.
virtual float vifa_int_face_attr_common::Xo | ( | ) | [pure virtual] |
Implemented in vifa_int_faces_attr, and vifa_int_face_attr.
virtual float vifa_int_face_attr_common::Yo | ( | ) | [pure virtual] |
Implemented in vifa_int_faces_attr, and vifa_int_face_attr.
float vifa_int_face_attr_common::area_ [protected] |
Face area, in pixels.
Definition at line 54 of file vifa_int_face_attr_common.h.
float vifa_int_face_attr_common::aspect_ratio_ [protected] |
Ratio of major face moments.
Definition at line 57 of file vifa_int_face_attr_common.h.
bool vifa_int_face_attr_common::attributes_valid_ [protected] |
Have the attributes been computed?.
Definition at line 36 of file vifa_int_face_attr_common.h.
vifa_incr_var vifa_int_face_attr_common::col_contrib_ [protected] |
Definition at line 51 of file vifa_int_face_attr_common.h.
vifa_incr_var vifa_int_face_attr_common::col_span_ [protected] |
Definition at line 49 of file vifa_int_face_attr_common.h.
vifa_incr_var vifa_int_face_attr_common::col_support_ [protected] |
Definition at line 50 of file vifa_int_face_attr_common.h.
coll_list vifa_int_face_attr_common::collinear_lines_ [protected] |
Cache of collinear lines.
Definition at line 48 of file vifa_int_face_attr_common.h.
float vifa_int_face_attr_common::complexity_ [protected] |
Edge length^2 / detection area.
Definition at line 60 of file vifa_int_face_attr_common.h.
vifa_coll_lines_params_sptr vifa_int_face_attr_common_params::cpp_ [protected, inherited] |
Definition at line 41 of file vifa_int_face_attr_common_params.h.
edge_2d_list vifa_int_face_attr_common::edges_ [protected] |
Cache of all edges from face(s).
Definition at line 39 of file vifa_int_face_attr_common.h.
edge_2d_list vifa_int_face_attr_common::fitted_edges_ [protected] |
Cache of fitted line segments.
Definition at line 42 of file vifa_int_face_attr_common.h.
Statistics about fitted edges in cache.
Definition at line 45 of file vifa_int_face_attr_common.h.
vdgl_fit_lines_params_sptr vifa_int_face_attr_common_params::fitter_params_ [protected, inherited] |
Definition at line 38 of file vifa_int_face_attr_common_params.h.
vifa_group_pgram_params_sptr vifa_int_face_attr_common_params::gpp_s_ [protected, inherited] |
Definition at line 39 of file vifa_int_face_attr_common_params.h.
vifa_group_pgram_params_sptr vifa_int_face_attr_common_params::gpp_w_ [protected, inherited] |
Definition at line 40 of file vifa_int_face_attr_common_params.h.
vifa_norm_params_sptr vifa_int_face_attr_common_params::np_ [protected, inherited] |
Definition at line 42 of file vifa_int_face_attr_common_params.h.
float vifa_int_face_attr_common::para_sal_strong_ [protected] |
Definition at line 72 of file vifa_int_face_attr_common.h.
float vifa_int_face_attr_common::para_sal_weak_ [protected] |
Definition at line 75 of file vifa_int_face_attr_common.h.
float vifa_int_face_attr_common::peri_length_ [protected] |
Length of boundary.
Definition at line 66 of file vifa_int_face_attr_common.h.
float vifa_int_face_attr_common::weighted_complexity_ [protected] |
Weighted complexity measure.
Definition at line 63 of file vifa_int_face_attr_common.h.
float vifa_int_face_attr_common::weighted_peri_length_ [protected] |
Weighted length of boundary.
Definition at line 69 of file vifa_int_face_attr_common.h.