#include <VLCFlagSpecialist.h>
Collaboration diagram for VLCFlagSpecialist:

Public Member Functions | |
| VLCFlagSpecialist (const ColorCorrector &) | |
| void | init (const Image &image) |
| Initializes the flag specialist. | |
| void | searchFlags (const Image &image, const ColorTable &colorTable, const CameraMatrix &cameraMatrix, colorClass color, bool pinkIsTop, const Geometry::Line horizonLine, int x, int y) |
| Searches for the flag in the image, starting from the specified point. | |
| void | getFlagPercept (const CameraMatrix &cameraMatrix, const CameraMatrix &prevCameraMatrix, const CameraInfo &cameraInfo, const Geometry::Line horizonLine, LandmarksPercept &landmarksPercept) |
| void | setBestColorTable (ColorTable *newBestColorTable) |
| DECLARE_DEBUG_IMAGE (imageProcessorFlags) | |
| Used for visualization of the flag scans. | |
Private Types | |
| enum | { maxNumberOfBoundingBoxes = 6 } |
| enum | { numberOfHorizontalScans = 5, numberOfVerticalScans = 3 } |
| enum | Direction { up, down, left, right } |
| enum | DebugType { initial, vertical, horizontal } |
Private Member Functions | |
| void | estimateOffsetForFlags (LandmarksPercept &landmarksPercept, const Vector2< double > &cameraOffset) |
| bool | findEndOfFlag (const Image &image, const CameraInfo &bwCameraInfo, const ColorTable &colorTable, const Vector2< int > start, Vector2< double > horizonDirection, Direction direction, Vector2< int > &destination, colorClass color, bool pinkIsTop, bool startIsInTop, DebugType type, int &countPixel, int &countTop, int &countBottom) |
Private Attributes | |
| const ColorCorrector & | colorCorrector |
| int | imageWidth |
| int | imageHeight |
| Vector2< int > | north |
| Vector2< int > | east |
| Vector2< int > | south |
| Vector2< int > | west |
| Vector2< int > | start |
| Vector2< int > | destination |
| double | boundingBoxTop [maxNumberOfBoundingBoxes][6] |
| double | boundingBoxBottom [maxNumberOfBoundingBoxes][6] |
| double | boundingBoxLeft [maxNumberOfBoundingBoxes][6] |
| double | boundingBoxRight [maxNumberOfBoundingBoxes][6] |
| bool | boundingBoxTopValid [maxNumberOfBoundingBoxes][6] |
| bool | boundingBoxBottomValid [maxNumberOfBoundingBoxes][6] |
| bool | boundingBoxLeftValid [maxNumberOfBoundingBoxes][6] |
| bool | boundingBoxRightValid [maxNumberOfBoundingBoxes][6] |
| int | numberOfBoundingBoxes [6] |
| int | bestBoundingBox [6] |
| ColorTable * | bestColorTable |
Definition at line 22 of file VLCFlagSpecialist.h.
|
|
Definition at line 74 of file VLCFlagSpecialist.h. |
|
|
Definition at line 75 of file VLCFlagSpecialist.h. |
|
|
Definition at line 91 of file VLCFlagSpecialist.h. |
|
|
Definition at line 92 of file VLCFlagSpecialist.h. |
|
|
Definition at line 16 of file VLCFlagSpecialist.cpp. |
|
|
Initializes the flag specialist.
Definition at line 21 of file VLCFlagSpecialist.cpp. References INIT_DEBUG_IMAGE. Referenced by VLCBeaconDetector::execute(). |
|
||||||||||||||||||||||||||||||||||||
|
Searches for the flag in the image, starting from the specified point.
Definition at line 31 of file VLCFlagSpecialist.cpp. References Geometry::Line::base, DEBUG_IMAGE_SET_PIXEL_BLUE, DEBUG_IMAGE_SET_PIXEL_GREEN, DEBUG_IMAGE_SET_PIXEL_RED, DEBUG_IMAGE_SET_PIXEL_YELLOW, Geometry::Line::direction, DOT, Flag::FlagType, CameraInfo::focalLength, CameraInfo::focalLengthInv, Geometry::getDistanceToLine(), CameraInfo::opticalCenter, CameraInfo::resolutionHeight, CameraInfo::resolutionWidth, sqr, Vector2< V >::x, Vector2< double >::x, Vector2< V >::y, and Vector2< double >::y. Referenced by VLCBeaconDetector::scanForBeaconEdges(). |
Here is the call graph for this function:

|
||||||||||||||||||||||||
Here is the call graph for this function:

|
|
Definition at line 49 of file VLCFlagSpecialist.h. Referenced by VLCBeaconDetector::setBestColorTable(). |
|
||||||||||||
Here is the call graph for this function:

|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Definition at line 271 of file VLCFlagSpecialist.cpp. References CORRECTED_COLOR_CLASS, DEBUG_IMAGE_SET_PIXEL_RED, DEBUG_IMAGE_SET_PIXEL_Y, Vector2< V >::x, Vector2< double >::x, Vector2< V >::y, and Vector2< double >::y. |
|
|
Used for visualization of the flag scans.
|
|
|
Definition at line 56 of file VLCFlagSpecialist.h. |
|
|
Definition at line 58 of file VLCFlagSpecialist.h. |
|
|
Definition at line 59 of file VLCFlagSpecialist.h. |
|
|
Definition at line 62 of file VLCFlagSpecialist.h. |
|
|
Definition at line 63 of file VLCFlagSpecialist.h. |
|
|
Definition at line 64 of file VLCFlagSpecialist.h. |
|
|
Definition at line 65 of file VLCFlagSpecialist.h. |
|
|
Definition at line 66 of file VLCFlagSpecialist.h. |
|
|
Definition at line 67 of file VLCFlagSpecialist.h. |
|
|
Definition at line 77 of file VLCFlagSpecialist.h. |
|
|
Definition at line 78 of file VLCFlagSpecialist.h. |
|
|
Definition at line 79 of file VLCFlagSpecialist.h. |
|
|
Definition at line 80 of file VLCFlagSpecialist.h. |
|
|
Definition at line 82 of file VLCFlagSpecialist.h. |
|
|
Definition at line 83 of file VLCFlagSpecialist.h. |
|
|
Definition at line 84 of file VLCFlagSpecialist.h. |
|
|
Definition at line 85 of file VLCFlagSpecialist.h. |
|
|
Definition at line 87 of file VLCFlagSpecialist.h. |
|
|
Definition at line 89 of file VLCFlagSpecialist.h. |
|
|
Definition at line 113 of file VLCFlagSpecialist.h. |
1.3.6