Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

ImageInfo Class Reference

Useful information about the current image, computed by the ImageProcessor. More...

#include <ImageProcessorUtilityClasses.h>

Collaboration diagram for ImageInfo:

Collaboration graph
[legend]
List of all members.

Public Member Functions

Vector2< double > toHorizonAligned (const Vector2< int > &imageCoord) const
 Converts image coordintates into coordinates in the horizon-aligned coordinate system.

double horizonAlignedXOf (const Vector2< int > &imageCoord) const
 Calculates the x-coordinate in the horizon-aligned coordinate system of a point in image coordinates.

double horizonAlignedYOf (const Vector2< int > &imageCoord) const
 Calculates the y-coordinate in the horizon-aligned coordinate system of a point in image coordinates.

Vector2< int > toImageCoordinates (const Vector2< double > &horizonAlignedCoord) const
 Converts coordintates in the horizon-aligned coordinate system into image coordinates.

Vector2< int > toImageCoordinates (double x, double y) const
 Converts coordintates in the horizon-aligned coordinate system into image coordinates.

void clipToImageBoundary (Vector2< int > &point) const
 Clip the point to the image boundary.


Public Attributes

Geometry::Line horizon
 The horizon (normalized).

Geometry::Line vertLine
 A line perpendicular to the horizon (normalized).

bool horizonInImage
 Flag, indicates whether the horizon is in the image or not.

Vector2< int > horizonStart
 The starting point of the horizon.

Vector2< int > horizonEnd
 The end point of the horizon.

Vector2< int > maxImageCoordinates
 The bottom right corner of the image.

CameraMatrix previousCameraMatrix
 The cameraMatrix of the previous image (more precisely, the last image processed by the ImageProcessor.

Matrix2x2< double > rotation
 The rotation from a horizon-aligned coordinate system to the image coordinate system.

Matrix2x2< double > invRotation
 The rotation from the image coordinates to the horizon-aligned coordinates.

double distanceTopLeftCorner
 The distance of the top left corner to the horizon.


Detailed Description

Useful information about the current image, computed by the ImageProcessor.

The Specialists may use this information without the need to recompute it.

Definition at line 15 of file ImageProcessorUtilityClasses.h.


Member Function Documentation

Vector2<double> ImageInfo::toHorizonAligned const Vector2< int > &  imageCoord  )  const [inline]
 

Converts image coordintates into coordinates in the horizon-aligned coordinate system.

Parameters:
point The point in image coordinates.
Returns:
The point in horizon-aligned coordinates.

Definition at line 64 of file ImageProcessorUtilityClasses.h.

References invRotation, Vector2< V >::x, and Vector2< V >::y.

Referenced by VLCGoalRecognizer::analyzeGoalpost(), GT2005GoalRecognizer::analyzeGoalpost(), VLCGoalRecognizer::calculateLockedPixels(), GT2005GoalRecognizer::calculateLockedPixels(), VLCGoalRecognizer::scanCrossBar(), and GT2005GoalRecognizer::scanCrossBar().

double ImageInfo::horizonAlignedXOf const Vector2< int > &  imageCoord  )  const [inline]
 

Calculates the x-coordinate in the horizon-aligned coordinate system of a point in image coordinates.

Parameters:
point The point in image coordinates.
Returns:
The x-coordinate of the point in horizon-aligned coordinates.

Definition at line 75 of file ImageProcessorUtilityClasses.h.

References Matrix2x2< double >::c, invRotation, Vector2< V >::x, Vector2< double >::x, and Vector2< V >::y.

Referenced by VLCGoalRecognizer::interpretResults(), GT2005GoalRecognizer::notifyAboutFlags(), and GT2005GoalRecognizer::publishResults().

double ImageInfo::horizonAlignedYOf const Vector2< int > &  imageCoord  )  const [inline]
 

Calculates the y-coordinate in the horizon-aligned coordinate system of a point in image coordinates.

Parameters:
point The point in image coordinates.
Returns:
The y-coordinate of the point in horizon-aligned coordinates.

Definition at line 87 of file ImageProcessorUtilityClasses.h.

References Matrix2x2< double >::c, invRotation, Vector2< V >::x, Vector2< V >::y, and Vector2< double >::y.

Referenced by VLCGoalRecognizer::recalculateLockedPixels(), and GT2005GoalRecognizer::recalculateLockedPixels().

Vector2<int> ImageInfo::toImageCoordinates const Vector2< double > &  horizonAlignedCoord  )  const [inline]
 

Converts coordintates in the horizon-aligned coordinate system into image coordinates.

No clipping is done.

Parameters:
point The point in horizon-aligned coordinates.
Returns:
The point in image coordinates.

Definition at line 99 of file ImageProcessorUtilityClasses.h.

References Vector2< V >::x, and Vector2< V >::y.

Referenced by VLCGoalRecognizer::calculateLockedPixels(), GT2005GoalRecognizer::calculateLockedPixels(), VLCGoalRecognizer::detectFreePartOfGoal(), GT2005GoalRecognizer::detectFreePartOfGoal(), VLCGoalRecognizer::interpretResults(), GT2005GoalRecognizer::publishResults(), VLCGoalRecognizer::recalculateLockedPixels(), and GT2005GoalRecognizer::recalculateLockedPixels().

Vector2<int> ImageInfo::toImageCoordinates double  x,
double  y
const [inline]
 

Converts coordintates in the horizon-aligned coordinate system into image coordinates.

No clipping is done.

Parameters:
x The x-coordinate in the horizon-aligned coordinate system.
y The y-coordinate in the horizon-aligned coordinate system.
Returns:
The point in image coordinates.

Definition at line 112 of file ImageProcessorUtilityClasses.h.

References Matrix2x2< double >::c, Vector2< double >::x, and Vector2< double >::y.

void ImageInfo::clipToImageBoundary Vector2< int > &  point  )  const [inline]
 

Clip the point to the image boundary.

Parameters:
point Point that is moved so that it is within the image boundary.

Definition at line 122 of file ImageProcessorUtilityClasses.h.

References maxImageCoordinates, point, Vector2< int >::x, and Vector2< int >::y.

Referenced by VLCGoalRecognizer::analyzeGoalpost(), GT2005GoalRecognizer::analyzeGoalpost(), VLCGoalRecognizer::detectFreePartOfGoal(), and GT2005GoalRecognizer::detectFreePartOfGoal().


Member Data Documentation

Geometry::Line ImageInfo::horizon
 

The horizon (normalized).

Definition at line 20 of file ImageProcessorUtilityClasses.h.

Referenced by SlamBeaconDetector::analyzeBeacon(), VLCGoalRecognizer::analyzeGoal(), GT2005GoalRecognizer::analyzeGoal(), SlamBeaconDetector::characterizeNewFlag(), VLCBeaconDetector::clusterPinkBeaconParts(), SlamBeaconDetector::clusterPinkBeaconParts(), GT2005BeaconDetector::clusterPinkBeaconParts(), VLCGoalRecognizer::detectFreePartOfGoal(), GT2005GoalRecognizer::detectFreePartOfGoal(), VLCImageProcessor::execute(), VLCBeaconDetector::execute(), SlamImageProcessor::execute(), SlamBeaconDetector::execute(), GT2005ImageProcessor::execute(), GT2005BeaconDetector::execute(), VLCLineFinder_DeterministicApproach::findLines(), SlamBorderFinder::findLines(), GT2005LineFinder_DeterministicApproach::findLines(), SlamBeaconDetector::findSpecial(), GT2005ImageProcessor::pixelBelowHorizon(), VLCRobotSpecialist::scan(), GT2005RobotSpecialist::scan(), VLCImageProcessor::scanColumns(), SlamImageProcessor::scanColumns(), GT2005ImageProcessor::scanColumns(), VLCGoalRecognizer::scanCrossBar(), GT2005GoalRecognizer::scanCrossBar(), VLCBeaconDetector::scanForBeaconEdges(), SlamBeaconDetector::scanForBeaconEdges(), GT2005BeaconDetector::scanForBeaconEdges(), VLCImageProcessor::scanRows(), SlamImageProcessor::scanRows(), and GT2005ImageProcessor::scanRows().

Geometry::Line ImageInfo::vertLine
 

A line perpendicular to the horizon (normalized).

Definition at line 22 of file ImageProcessorUtilityClasses.h.

Referenced by VLCGoalRecognizer::analyzeGoalpost(), GT2005GoalRecognizer::analyzeGoalpost(), VLCGoalRecognizer::detectFreePartOfGoal(), GT2005GoalRecognizer::detectFreePartOfGoal(), VLCGoalRecognizer::detectGreenBelowGoalpost(), GT2005GoalRecognizer::detectGreenBelowGoalpost(), VLCImageProcessor::execute(), VLCBeaconDetector::execute(), SlamImageProcessor::execute(), SlamBeaconDetector::execute(), GT2005ImageProcessor::execute(), GT2005BeaconDetector::execute(), VLCImageProcessor::scanColumns(), SlamImageProcessor::scanColumns(), GT2005ImageProcessor::scanColumns(), VLCGoalRecognizer::scanCrossBar(), GT2005GoalRecognizer::scanCrossBar(), VLCBeaconDetector::scanForBeaconEdges(), SlamBeaconDetector::scanForBeaconEdges(), GT2005BeaconDetector::scanForBeaconEdges(), VLCImageProcessor::scanRows(), SlamImageProcessor::scanRows(), and GT2005ImageProcessor::scanRows().

bool ImageInfo::horizonInImage
 

Flag, indicates whether the horizon is in the image or not.

Definition at line 24 of file ImageProcessorUtilityClasses.h.

Referenced by VLCImageProcessor::execute(), SlamImageProcessor::execute(), GT2005ImageProcessor::execute(), and GT2005ImageProcessor::pixelBelowHorizon().

Vector2<int> ImageInfo::horizonStart
 

The starting point of the horizon.

Definition at line 26 of file ImageProcessorUtilityClasses.h.

Referenced by VLCImageProcessor::execute(), SlamImageProcessor::execute(), and GT2005ImageProcessor::execute().

Vector2<int> ImageInfo::horizonEnd
 

The end point of the horizon.

Definition at line 28 of file ImageProcessorUtilityClasses.h.

Referenced by VLCImageProcessor::execute(), SlamImageProcessor::execute(), and GT2005ImageProcessor::execute().

Vector2<int> ImageInfo::maxImageCoordinates
 

The bottom right corner of the image.

Definition at line 30 of file ImageProcessorUtilityClasses.h.

Referenced by SlamBeaconDetector::analyzeBeacon(), GT2005PlayerSpecialist::checkForWhiteLineBetweenBlue(), GT2005PlayerSpecialist::checkForWhiteLineBetweenRed(), clipToImageBoundary(), GT2005PlayerSpecialist::detectBlueRobots(), VLCGoalRecognizer::detectEdge(), GT2005GoalRecognizer::detectEdge(), VLCGoalRecognizer::detectGreenBelowGoalpost(), GT2005GoalRecognizer::detectGreenBelowGoalpost(), GT2005PlayerSpecialist::detectRedRobots(), VLCImageProcessor::execute(), VLCBeaconDetector::execute(), SlamImageProcessor::execute(), SlamBeaconDetector::execute(), GT2005ImageProcessor::execute(), GT2005BeaconDetector::execute(), GT2005PlayerSpecialist::findBlueFootPointYAxis(), GT2005PlayerSpecialist::findRedFootPointYAxis(), GT2005PlayerSpecialist::inspectColorArea(), VLCGoalRecognizer::nearImageBorder(), GT2005GoalRecognizer::nearImageBorder(), SlamImageProcessor::scan(), VLCGoalRecognizer::scanAlongLine(), GT2005GoalRecognizer::scanAlongLine(), VLCImageProcessor::scanColumns(), SlamImageProcessor::scanColumns(), GT2005ImageProcessor::scanColumns(), VLCBeaconDetector::scanForBeaconEdges(), SlamBeaconDetector::scanForBeaconEdges(), GT2005BeaconDetector::scanForBeaconEdges(), VLCGoalRecognizer::scanOnImageBorder(), GT2005GoalRecognizer::scanOnImageBorder(), VLCImageProcessor::scanRows(), SlamImageProcessor::scanRows(), and GT2005ImageProcessor::scanRows().

CameraMatrix ImageInfo::previousCameraMatrix
 

The cameraMatrix of the previous image (more precisely, the last image processed by the ImageProcessor.

Definition at line 34 of file ImageProcessorUtilityClasses.h.

Referenced by VLCImageProcessor::calcEdgeAngle(), SlamImageProcessor::calcEdgeAngle(), GT2005ImageProcessor::calcEdgeAngle(), VLCImageProcessor::clusterRobots(), SlamImageProcessor::clusterRobots(), GT2005PlayerSpecialist::detectBlueRobots(), GT2005PlayerSpecialist::detectRedRobots(), VLCImageProcessor::execute(), SlamImageProcessor::execute(), GT2005ImageProcessor::execute(), SlamImageProcessor::filterPercepts(), VLCGoalRecognizer::interpretResults(), GT2005GoalRecognizer::publishResults(), VLCImageProcessor::scan(), SlamImageProcessor::scan(), and GT2005ImageProcessor::scan().

Matrix2x2<double> ImageInfo::rotation
 

The rotation from a horizon-aligned coordinate system to the image coordinate system.

The horizon-aligned coordinate system is defined as follows:

  • the x-coordinate points parallel to the horizon to the right
  • the y-coordinate points perpendicular to the horizon downwards
  • the origin is the top left corner of the image, i.e. the same as the the origin of the image coordinate system. Thus the transformation from horizon-aligned to image coordinates only requires the rotation matrix.
    Author:
    Tobias Oberlies

Definition at line 46 of file ImageProcessorUtilityClasses.h.

Referenced by VLCImageProcessor::execute(), GT2005ImageProcessor::execute(), VLCImageProcessor::scanColumns(), and GT2005ImageProcessor::scanColumns().

Matrix2x2<double> ImageInfo::invRotation
 

The rotation from the image coordinates to the horizon-aligned coordinates.

Definition at line 51 of file ImageProcessorUtilityClasses.h.

Referenced by VLCGoalRecognizer::analyzeGoalpost(), GT2005GoalRecognizer::analyzeGoalpost(), VLCImageProcessor::execute(), GT2005ImageProcessor::execute(), horizonAlignedXOf(), horizonAlignedYOf(), VLCImageProcessor::scanColumns(), GT2005ImageProcessor::scanColumns(), and toHorizonAligned().

double ImageInfo::distanceTopLeftCorner
 

The distance of the top left corner to the horizon.

This value is the same as the y-coordinate of the horizon in the horizon-aligned coordinate system.

Definition at line 57 of file ImageProcessorUtilityClasses.h.

Referenced by VLCImageProcessor::execute(), GT2005ImageProcessor::execute(), VLCGoalRecognizer::interpretResults(), GT2005GoalRecognizer::interpretResults(), VLCImageProcessor::scanColumns(), and GT2005ImageProcessor::scanColumns().


The documentation for this class was generated from the following file:
Generated on Mon Mar 20 22:16:23 2006 for GT2005 by doxygen 1.3.6