|
Public Member Functions | |
SizeProber (const Channel &s, Channel &d) | |
virtual void | clear () |
Called before processing each segment. Compare with init(), which is called once for each image. More... | |
virtual void | visit (int i, int j) |
Visiting a single pixel when not coming from any direction. More... | |
virtual bool | isVisited (int i, int j) const |
Experimental. | |
virtual void | update (int i, int j) |
Application dependent operation performed in each segment location (i,j). | |
virtual bool | isValidSegment (int i, int j) const |
Application dependent, to be redefined. Assumes checked coordinates. More... | |
Public Member Functions inherited from SegmentProber< int, int, SegmentProberConf< int, int > > | |
SegmentProber (const Channel &s) | |
SegmentProber (const Channel &s, Channel &d) | |
void | setDst (Channel &d) |
Set new target channel. Needed in multichannel operations. | |
virtual void | init () |
Fills the segment having intensity between min and max. More... | |
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 | |
size_t | size |
Public Attributes inherited from SegmentProber< int, int, SegmentProberConf< int, int > > | |
ProberControl & | control |
conf_t | conf |
const Channel & | src |
Channel * | dst |
Additional Inherited Members | |
Public Types inherited from SegmentProber< int, int, SegmentProberConf< int, int > > | |
typedef int | src_t |
typedef int | dst_t |
typedef SegmentProberConf< int, int > | conf_t |
Protected Member Functions inherited from SegmentProber< int, int, SegmentProberConf< int, int > > | |
virtual bool | isValidMove (int i0, int j0, int i, int j) const |
Application dependent, to be redefined. Note: assumes checked coordinates. More... | |
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 inherited from SegmentProber< int, int, SegmentProberConf< int, int > > | |
SimpleProberControl | basicControl |
|
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< int, int, SegmentProberConf< int, int > >.
|
inlinevirtual |
Application dependent, to be redefined. Assumes checked coordinates.
Determines if the current position is within a segment. The criterion of "segment" depends on the application.
Note: does not check coordinates, assumes them to be checked by the calling scope.
Implements SegmentProber< int, int, SegmentProberConf< int, int > >.
|
inlinevirtual |
Visiting a single pixel when not coming from any direction.
Visiting means
i0 | - current i coordinate (always valid) |
j0 | - current j coordinate (always valid) |
Mark visited
Reimplemented from SegmentProber< int, int, SegmentProberConf< int, int > >.