Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes
gevd_detector Class Reference

#include <gevd_detector.h>

Inheritance diagram for gevd_detector:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 gevd_detector (gevd_detector_params &params)
 Constructors.
 gevd_detector (vil1_image, float smoothSigma=1.0f, float noiseSigma=2.0f, float contourFactor=1.0f, float junctionFactor=1.5f, int minLength=6, float maxGap=2.23606f, float minJump=1.0f)
 ~gevd_detector ()
 Destructor.
bool DoContour ()
 Detect the contour, a list of edges and vertices are generated.
void DoFoldContourDetector (vil1_image image, vcl_vector< vtol_edge_2d_sptr > &edgels)
void DoBreakCorners (vcl_vector< vtol_edge_2d_sptr > &in_edgels, vcl_vector< vtol_edge_2d_sptr > &out_edgels)
bool DoFoldContour ()
 Detect the fold contour, a list of edges and vertices are generated.
bool DoCorner (float angle=10, float separation=1, int length=5, int cycle=2, int ndimension=2)
 number of dimension
bool DoStep ()
 Detect step profiles in the image, using dG+NMS+extension.
bool DoFold ()
gevd_bufferxyGetBufferFromImage ()
 Transform data in the image as float buffer.
vcl_vector< vtol_vertex_2d_sptr > * GetVertices ()
vcl_vector< vtol_edge_2d_sptr > * GetEdges ()
void SetImage (vil1_image img)
void print (vcl_ostream &strm=vcl_cout) const
bool SanityCheck ()
 Checks that parameters are within acceptable bounds.
void set_noise_weight (float noise_weight)
void set_noise_multiplier (float noise_multiplier)
void set_automatic_threshold (bool automatic_threshold)
void set_aggressive_junction_closure (int aggressive_junction_closure)
void set_close_borders (bool close_borders)
bool Valid () const
const char * GetErrorMsg () const
void SetErrorMsg (const char *msg)
 Set the error message for this parameter block.

Public Attributes

float smooth
float noise_weight
 The weight between sensor noise and texture noise.
float noise_multiplier
bool automatic_threshold
int aggressive_junction_closure
 Close junctions aggressively.
int minLength
float contourFactor
 Threshold along contours.
float junctionFactor
 Threshold at junctions.
bool junctionp
float minJump
float maxGap
bool spacingp
bool borderp
bool peaks_only
 Only return peaks, d^2I/dn^2 < 0, n is normal dir to ridge.
bool valleys_only
 Only return valeys, d^2I/dn^2 > 0.
float corner_angle
float separation
int min_corner_length
int cycle
int ndimension

Protected Member Functions

void UnProtectLists ()
 UnProtect lists that are protected by Contour::.
void ClearData ()
 clear buffer
void InitParams (float smooth_sigma, float noise_w, float noise_m, bool automatic_t, int aggressive_jc, int minl, float maxgp, float minjmp, float contour_f, float junction_f, bool recover_j, bool equal_spacing, bool follow_b, bool peaks_only, bool valleys_only, float ang, float sep, int min_corner_len, int cyc, int ndim)

Protected Attributes

vil1_image image
gevd_bufferxyimage_float_buf_
float noise
 noise estimation/threshold
gevd_bufferxyedgel
 output from DoStep
gevd_bufferxydirection
gevd_bufferxylocationx
gevd_bufferxylocationy
gevd_bufferxygrad_mag
gevd_bufferxyangle
 detect step/fold
int * junctionx
int * junctiony
int njunction
 junctions found
vcl_vector< vtol_vertex_2d_sptr > * vertices
 network of linked edges/vertices
vcl_vector< vtol_edge_2d_sptr > * edges
float filterFactor
 factor in convolution filter
float hysteresisFactor
 hysteresis factor
float noiseThreshold

Detailed Description

Definition at line 83 of file gevd_detector.h.


Constructor & Destructor Documentation

gevd_detector::gevd_detector ( gevd_detector_params params)

Constructors.

Definition at line 21 of file gevd_detector.cxx.

gevd_detector::gevd_detector ( vil1_image  img,
float  smoothSigma = 1.0f,
float  noiseSigma = 2.0f,
float  contourFactor = 1.0f,
float  junctionFactor = 1.5f,
int  minLength = 6,
float  maxGap = 2.23606f,
float  minJump = 1.0f 
)

Definition at line 37 of file gevd_detector.cxx.

gevd_detector::~gevd_detector ( )

Destructor.

Caller has an obligation to clear all the created edges and vertices.

Definition at line 74 of file gevd_detector.cxx.


Member Function Documentation

void gevd_detector::ClearData ( ) [protected]

clear buffer

Clear data buffer. Protected.

Definition at line 82 of file gevd_detector.cxx.

void gevd_detector::DoBreakCorners ( vcl_vector< vtol_edge_2d_sptr > &  in_edgels,
vcl_vector< vtol_edge_2d_sptr > &  out_edgels 
)
bool gevd_detector::DoContour ( )

Detect the contour, a list of edges and vertices are generated.

Definition at line 95 of file gevd_detector.cxx.

bool gevd_detector::DoCorner ( float  angle = 10,
float  separation = 1,
int  length = 5,
int  cycle = 2,
int  ndimension = 2 
)

number of dimension

Parameters:
anglesmallest angle at corner
separation|mean1-mean2|/sigma
lengthmin length to find cornersxo
cyclenumber of corners in a cycle
bool gevd_detector::DoFold ( )
bool gevd_detector::DoFoldContour ( )

Detect the fold contour, a list of edges and vertices are generated.

Definition at line 144 of file gevd_detector.cxx.

void gevd_detector::DoFoldContourDetector ( vil1_image  image,
vcl_vector< vtol_edge_2d_sptr > &  edgels 
)
bool gevd_detector::DoStep ( )

Detect step profiles in the image, using dG+NMS+extension.

Definition at line 185 of file gevd_detector.cxx.

gevd_bufferxy * gevd_detector::GetBufferFromImage ( )

Transform data in the image as float buffer.

Definition at line 258 of file gevd_detector.cxx.

vcl_vector<vtol_edge_2d_sptr>* gevd_detector::GetEdges ( ) [inline]

Definition at line 121 of file gevd_detector.h.

const char* gevd_param_mixin::GetErrorMsg ( ) const [inline, inherited]

Definition at line 50 of file gevd_param_mixin.h.

vcl_vector<vtol_vertex_2d_sptr>* gevd_detector::GetVertices ( ) [inline]

Definition at line 120 of file gevd_detector.h.

void gevd_detector_params::InitParams ( float  smooth_sigma,
float  noise_w,
float  noise_m,
bool  automatic_t,
int  aggressive_jc,
int  minl,
float  maxgp,
float  minjmp,
float  contour_f,
float  junction_f,
bool  recover_j,
bool  equal_spacing,
bool  follow_b,
bool  peaks_only,
bool  valleys_only,
float  ang,
float  sep,
int  min_corner_len,
int  cyc,
int  ndim 
) [protected, inherited]

Definition at line 43 of file gevd_detector_params.cxx.

void gevd_detector::print ( vcl_ostream &  strm = vcl_cout) const

Definition at line 324 of file gevd_detector.cxx.

bool gevd_detector_params::SanityCheck ( ) [virtual, inherited]

Checks that parameters are within acceptable bounds.

This method is always called after a parameter modifier has changed the prms.

Reimplemented from gevd_param_mixin.

Definition at line 123 of file gevd_detector_params.cxx.

void gevd_detector_params::set_aggressive_junction_closure ( int  aggressive_junction_closure) [inherited]

Definition at line 107 of file gevd_detector_params.cxx.

void gevd_detector_params::set_automatic_threshold ( bool  automatic_threshold) [inherited]

Definition at line 102 of file gevd_detector_params.cxx.

void gevd_detector_params::set_close_borders ( bool  close_borders) [inherited]

Definition at line 112 of file gevd_detector_params.cxx.

void gevd_detector_params::set_noise_multiplier ( float  noise_multiplier) [inherited]

Definition at line 97 of file gevd_detector_params.cxx.

void gevd_detector_params::set_noise_weight ( float  noise_weight) [inherited]

Definition at line 92 of file gevd_detector_params.cxx.

void gevd_param_mixin::SetErrorMsg ( const char *  msg) [inherited]

Set the error message for this parameter block.

If the message is not empty, this sets the valid flag to be false. An empty message resets the valid flag to be true.

Definition at line 47 of file gevd_param_mixin.cxx.

void gevd_detector::SetImage ( vil1_image  img)

Definition at line 306 of file gevd_detector.cxx.

void gevd_detector::UnProtectLists ( ) [protected]

UnProtect lists that are protected by Contour::.

Definition at line 57 of file gevd_detector.cxx.

bool gevd_param_mixin::Valid ( ) const [inline, inherited]

Definition at line 49 of file gevd_param_mixin.h.


Member Data Documentation

Close junctions aggressively.

Definition at line 115 of file gevd_detector_params.h.

detect step/fold

Definition at line 136 of file gevd_detector.h.

Definition at line 114 of file gevd_detector_params.h.

Definition at line 124 of file gevd_detector_params.h.

Threshold along contours.

Definition at line 117 of file gevd_detector_params.h.

Definition at line 133 of file gevd_detector_params.h.

int gevd_detector_params::cycle [inherited]

Definition at line 136 of file gevd_detector_params.h.

Definition at line 136 of file gevd_detector.h.

output from DoStep

Definition at line 136 of file gevd_detector.h.

vcl_vector<vtol_edge_2d_sptr >* gevd_detector::edges [protected]

Definition at line 140 of file gevd_detector.h.

float gevd_detector::filterFactor [protected]

factor in convolution filter

Reimplemented from gevd_detector_params.

Definition at line 142 of file gevd_detector.h.

Definition at line 136 of file gevd_detector.h.

hysteresis factor

Definition at line 143 of file gevd_detector.h.

vil1_image gevd_detector::image [protected]

Definition at line 131 of file gevd_detector.h.

Definition at line 132 of file gevd_detector.h.

Threshold at junctions.

Definition at line 118 of file gevd_detector_params.h.

Definition at line 120 of file gevd_detector_params.h.

int* gevd_detector::junctionx [protected]

Definition at line 138 of file gevd_detector.h.

int * gevd_detector::junctiony [protected]

Definition at line 138 of file gevd_detector.h.

Definition at line 136 of file gevd_detector.h.

Definition at line 136 of file gevd_detector.h.

float gevd_detector_params::maxGap [inherited]

Definition at line 122 of file gevd_detector_params.h.

Definition at line 135 of file gevd_detector_params.h.

float gevd_detector_params::minJump [inherited]

Definition at line 121 of file gevd_detector_params.h.

Definition at line 116 of file gevd_detector_params.h.

Definition at line 137 of file gevd_detector_params.h.

int gevd_detector::njunction [protected]

junctions found

Definition at line 138 of file gevd_detector.h.

float gevd_detector::noise [protected]

noise estimation/threshold

Definition at line 134 of file gevd_detector.h.

Definition at line 113 of file gevd_detector_params.h.

The weight between sensor noise and texture noise.

Definition at line 112 of file gevd_detector_params.h.

float gevd_detector::noiseThreshold [protected]

Definition at line 144 of file gevd_detector.h.

Only return peaks, d^2I/dn^2 < 0, n is normal dir to ridge.

Definition at line 128 of file gevd_detector_params.h.

Definition at line 134 of file gevd_detector_params.h.

float gevd_detector_params::smooth [inherited]

Definition at line 111 of file gevd_detector_params.h.

Definition at line 123 of file gevd_detector_params.h.

Only return valeys, d^2I/dn^2 > 0.

Definition at line 129 of file gevd_detector_params.h.

vcl_vector<vtol_vertex_2d_sptr >* gevd_detector::vertices [protected]

network of linked edges/vertices

Definition at line 139 of file gevd_detector.h.


The documentation for this class was generated from the following files: