ALLandMarkDetection API¶

NAOqi Vision - Overview | API | Tutorials

Namespace : AL


#include <alproxies/allandmarkdetectionproxy.h>



Method list ¶

class ALLandMarkDetectionProxy

Events ¶

Event: "LandmarkDetected"
callback(std::string eventName, AL::ALValue value, std::string subscriberIdentifier)

Raised when one or several landmarks are currently being detected.

Parameters: eventName (std::string) – “LandmarkDetected” value – Informations related to the detected landmarks. Further details below. subscriberIdentifier (std::string) –

LandMarkDetected Value Structure ¶

The output ALValue is organized as follows:

ALLandMarkDetection ¶


ALLandMarkDetection {
TimeStamp,
MarkInfo[N],
CameraPoseInFrameTorso,
CameraPoseInFrameRobot,
CurrentCameraName
}


with as many mark_info tags as marks currently detected.

TimeStamp ¶

This field is the time stamp of the image that was used to perform the detection.


TimeStamp {
TimeStamp_Seconds,
Timestamp_Microseconds
}


MarkInfo ¶

For each detected mark, we have one MarkInfo field:


MarkInfo {
ShapeInfo,
MarkID
}


ShapeInfo


ShapeInfo {
1,
alpha,
beta,
sizeX,
sizeY,
heading
}

• alpha and beta represent the location of the NaoMark’s center in terms of camera angles in radian.
• sizeX and sizeY are the mark’s size in camera angles.
• the heading angle describes how the Naomark is oriented about the vertical axis with regards to the robot’s head.

MarkID

is the number written on the Naomark and which corresponds to its pattern.

CameraPoseInFrameTorso ¶

Position6D of the camera at the time the image was taken, in FRAME_TORSO.

CameraPoseInFrameRobot ¶

Position6D of the camera at the time the image was taken, in FRAME_ROBOT.

CurrentCameraName ¶

Name of the camera that was used to take the image (“CameraTop”, or “CameraBottom”).