#include <CheckerboardDetector.h>
Inheritance diagram for CheckerboardDetector:
Public Member Functions | |
CheckerboardDetector (const ImageProcessorInterfaces &interfaces) | |
Constructor. | |
virtual void | execute () |
Executes the module. | |
Private Types | |
typedef Vector2< double > | v2dArray [100] |
typedef bool | bArray [100] |
Private Member Functions | |
DECLARE_DEBUG_IMAGE (imageProcessorGeneral) | |
double | getAngleBetweenScreenPoints (const Vector2< double > &p1, const Vector2< double > &p2) |
calculates the exact middle of an black white transition in a PixeledLine. | |
Vector2< double > | getExactTransitionMiddle (const Geometry::PixeledLine lin, const int start, const int amount) |
calculates the exact middle of an black white transition in a PixeledLine. | |
void | getTransitionsOnLine (const Geometry::PixeledLine lin, v2dArray *transPos, bArray *transWhiteBlack, int &numOfTrans) |
finds all black white transitions in a PixeledLine | |
Vector2< double > | getTransitionToWhite (const Geometry::PixeledLine lin) |
finds the first transition to white starting from within a black block | |
Vector2< double > | getMiddleAndLengthOfPerpendicular (const Vector2< double > t1, const Vector2< double > t2, double &len) |
calculate a middle perpendicular to t1-t2, find transitions to white on that perpendicular and return the middle between the transitions to white. | |
bool | getLineThroughPixelsCandidate (const v2dArray *points, const int numOfPoints, double &m, double &n) |
approximates a line f(x)=m*x+n through a number of points | |
bool | getLineThroughPixels (const v2dArray *points, const int numOfPoints, Geometry::PixeledLine &lin) |
approximates a PixeledLine through a number of points without found elopers | |
Vector2< double > | getPositionFromAngles (const double alpha2, const double a2, const double alpha1, const double a1) |
calculate a position relative to the checkerboard | |
double | yPosFromTransitionIndex (int index) |
calculate the real y position of a black white transition on the checkerboard | |
Private Attributes | |
int | minY |
int | maxY |
int | maxDelta |
Definition at line 28 of file CheckerboardDetector.h.
|
Definition at line 44 of file CheckerboardDetector.h. Referenced by execute(), getLineThroughPixels(), getLineThroughPixelsCandidate(), and getTransitionsOnLine(). |
|
Definition at line 45 of file CheckerboardDetector.h. Referenced by execute(), and getTransitionsOnLine(). |
|
Constructor.
Definition at line 12 of file CheckerboardDetector.cpp. |
|
Here is the call graph for this function:
|
|
|
calculates the exact middle of an black white transition in a PixeledLine.
Definition at line 277 of file CheckerboardDetector.cpp. References Image::cameraInfo, CameraInfo::openingAngleHeight, CameraInfo::openingAngleWidth, CameraInfo::resolutionHeight, CameraInfo::resolutionWidth, Vector2< V >::x, and Vector2< V >::y. Referenced by execute(). |
|
calculates the exact middle of an black white transition in a PixeledLine.
Definition at line 17 of file CheckerboardDetector.cpp. References Geometry::PixeledLine::getPixelX(), Geometry::PixeledLine::getPixelY(), Image::image, Vector2< V >::x, and Vector2< V >::y. Referenced by getTransitionsOnLine(), and getTransitionToWhite(). |
Here is the call graph for this function:
|
finds all black white transitions in a PixeledLine
Definition at line 36 of file CheckerboardDetector.cpp. References bArray, DEBUG_IMAGE_SET_PIXEL_BLUE, DEBUG_IMAGE_SET_PIXEL_RED, getExactTransitionMiddle(), Geometry::PixeledLine::getNumberOfPixels(), Geometry::PixeledLine::getPixelX(), Geometry::PixeledLine::getPixelY(), Image::image, maxDelta, and v2dArray. Referenced by execute(). |
Here is the call graph for this function:
|
finds the first transition to white starting from within a black block
Definition at line 107 of file CheckerboardDetector.cpp. References getExactTransitionMiddle(), Geometry::PixeledLine::getNumberOfPixels(), Geometry::PixeledLine::getPixelX(), Geometry::PixeledLine::getPixelY(), Image::image, maxDelta, maxY, and minY. Referenced by getMiddleAndLengthOfPerpendicular(). |
Here is the call graph for this function:
|
calculate a middle perpendicular to t1-t2, find transitions to white on that perpendicular and return the middle between the transitions to white. This gives a better and more secure black block middle than the the middle between t1 and t2 itself.
Definition at line 148 of file CheckerboardDetector.cpp. References Image::cameraInfo, Geometry::clipLineWithRectangleCohenSutherland(), getTransitionToWhite(), pi_2, CameraInfo::resolutionHeight, CameraInfo::resolutionWidth, Vector2< V >::x, and Vector2< V >::y. Referenced by execute(). |
Here is the call graph for this function:
|
approximates a line f(x)=m*x+n through a number of points
Definition at line 178 of file CheckerboardDetector.cpp. References v2dArray. Referenced by getLineThroughPixels(). |
|
approximates a PixeledLine through a number of points without found elopers
Definition at line 207 of file CheckerboardDetector.cpp. References Image::cameraInfo, Geometry::clipLineWithRectangleCohenSutherland(), getLineThroughPixelsCandidate(), CameraInfo::resolutionHeight, CameraInfo::resolutionWidth, and v2dArray. Referenced by execute(). |
Here is the call graph for this function:
|
calculate a position relative to the checkerboard
Definition at line 249 of file CheckerboardDetector.cpp. References pi, Vector2< V >::x, and Vector2< V >::y. Referenced by execute(). |
|
calculate the real y position of a black white transition on the checkerboard
Definition at line 330 of file CheckerboardDetector.cpp. Referenced by execute(). |
|
Definition at line 43 of file CheckerboardDetector.h. Referenced by execute(), and getTransitionToWhite(). |
|
Definition at line 43 of file CheckerboardDetector.h. Referenced by execute(), and getTransitionToWhite(). |
|
Definition at line 43 of file CheckerboardDetector.h. Referenced by execute(), getTransitionsOnLine(), and getTransitionToWhite(). |