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:

[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:

- Modules/ImageProcessor/ImageProcessorTools/ImageProcessorUtilityClasses.h