Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
DopplerSegmentProber Class Reference
Inheritance diagram for DopplerSegmentProber:
Inheritance graph
[legend]
Collaboration diagram for DopplerSegmentProber:
Collaboration graph
[legend]

Public Member Functions

 DopplerSegmentProber (const Channel &s, Channel &d)
 
 DopplerSegmentProber (Channel &d)
 
virtual void init ()
 Update srcOdim.
 
virtual void clear ()
 Called before processing each segment. Compare with init(), which is called once for each image. More...
 
- Public Member Functions inherited from SegmentProber< double, double, drain::image::SegmentProberConf< double, double > >
 SegmentProber (const Channel &s)
 
 SegmentProber (const Channel &s, Channel &d)
 
void setDst (Channel &d)
 Set new target channel. Needed in multichannel operations.
 
void scan ()
 A convenience function for traversing a whole image. More...
 
void probe (int i, int j, bool HORIZONTAL)
 Start probings.
 
bool isValidPixel (int i, int j) const
 Returns isValidSegment(i,j) and !isVisited(i,j).
 

Public Attributes

double relative_NI_threshold
 
int counter
 Nyquist wrap measure.
 
int size
 
PolarODIM srcODIM
 
- Public Attributes inherited from SegmentProber< double, double, drain::image::SegmentProberConf< double, double > >
ProberControlcontrol
 
conf_t conf
 
const Channelsrc
 
Channeldst
 

Protected Member Functions

virtual bool isValidSegment (int i, int j) const
 Returns true, if value in location (i,j) is not nodata nor undetect .
 
virtual bool isValidMove (int i0, int j0, int i, int j) const
 Application dependent. More...
 
virtual void visit (int i, int j)
 Visiting a single pixel when not coming from any direction. More...
 
- Protected Member Functions inherited from SegmentProber< double, double, drain::image::SegmentProberConf< double, double > >
virtual void update (int i, int j)
 Application dependent operation performed in each segment location (i,j).
 
virtual bool isVisited (int i, int j) const
 Experimental.
 
bool move (int &i, int &j)
 Try to move; change coords in success, else keep them intact.
 
void scanHorzProbeVert (int i, int j)
 A semi-recursive approach that turns the 2D recursion to 1D traversal + 1D recursion. More...
 
void scanVertProbeHorz (int i, int j)
 

Protected Attributes

double NI_threshold
 NI divided by 2.
 
drain::typeLimiter< double >::value_t limit
 
- Protected Attributes inherited from SegmentProber< double, double, drain::image::SegmentProberConf< double, double > >
SimpleProberControl basicControl
 

Additional Inherited Members

- Public Types inherited from SegmentProber< double, double, drain::image::SegmentProberConf< double, double > >
typedef double src_t
 
typedef double dst_t
 
typedef drain::image::SegmentProberConf< double, double > conf_t
 

Member Function Documentation

◆ clear()

virtual void clear ( )
inlinevirtual

Called before processing each segment. Compare with init(), which is called once for each image.

Application dependent initialisation for statistics updated with update(int i, int j) function.

Reimplemented from SegmentProber< double, double, drain::image::SegmentProberConf< double, double > >.

◆ isValidMove()

virtual bool isValidMove ( int  i0,
int  j0,
int  i,
int  j 
) const
inlineprotectedvirtual

Application dependent.

Returns
true, if the jump is small enough

TODO: add diff check to both normal and wrapped step.

Reimplemented from SegmentProber< double, double, drain::image::SegmentProberConf< double, double > >.

◆ visit()

virtual void visit ( int  i,
int  j 
)
inlineprotectedvirtual

Visiting a single pixel when not coming from any direction.

Visiting means

  • updating the status of this prober, for example by updating statistics like segment size
  • marking the pixel visited in dst image
Parameters
i0- current i coordinate (always valid)
j0- current j coordinate (always valid)

Mark visited

Reimplemented from SegmentProber< double, double, drain::image::SegmentProberConf< double, double > >.


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