Public Member Functions | Public Attributes | Private Member Functions | Friends | List of all members
aruco::Marker Class Reference

This class represents a marker. It is a vector of the fours corners ot the marker. More...

#include <marker.h>

Inheritance diagram for aruco::Marker:
Inheritance graph
[legend]

Public Member Functions

void calculateExtrinsics (float markerSize, const CameraParameters &CP, bool setYPerpendicular=true) throw (cv::Exception)
 
void calculateExtrinsics (float markerSize, cv::Mat CameraMatrix, cv::Mat Distorsion=cv::Mat(), bool setYPerpendicular=true) throw (cv::Exception)
 
void draw (cv::Mat &in, cv::Scalar color, int lineWidth=1, bool writeId=true) const
 
float getArea () const
 
cv::Point2f getCenter () const
 
float getPerimeter () const
 
void glGetModelViewMatrix (double modelview_matrix[16]) throw (cv::Exception)
 
bool isValid () const
 
 Marker ()
 
 Marker (const Marker &M)
 
 Marker (const std::vector< cv::Point2f > &corners, int _id=-1)
 
void OgreGetPoseParameters (double position[3], double orientation[4]) throw (cv::Exception)
 
 ~Marker ()
 

Public Attributes

int id
 
cv::Mat Rvec
 
float ssize
 
cv::Mat Tvec
 

Private Member Functions

void rotateXAxis (cv::Mat &rotation)
 

Friends

bool operator< (const Marker &M1, const Marker &M2)
 
ostream & operator<< (ostream &str, const Marker &M)
 

Detailed Description

This class represents a marker. It is a vector of the fours corners ot the marker.

Definition at line 41 of file marker.h.

Constructor & Destructor Documentation

◆ Marker() [1/3]

aruco::Marker::Marker ( )

Definition at line 40 of file marker.cpp.

◆ Marker() [2/3]

aruco::Marker::Marker ( const Marker M)

Definition at line 51 of file marker.cpp.

◆ Marker() [3/3]

aruco::Marker::Marker ( const std::vector< cv::Point2f > &  corners,
int  _id = -1 
)

Definition at line 61 of file marker.cpp.

◆ ~Marker()

aruco::Marker::~Marker ( )
inline

Definition at line 61 of file marker.h.

Member Function Documentation

◆ calculateExtrinsics() [1/2]

void aruco::Marker::calculateExtrinsics ( float  markerSize,
const CameraParameters CP,
bool  setYPerpendicular = true 
)
throw (cv::Exception
)

Calculates the extrinsics (Rvec and Tvec) of the marker with respect to the camera

Parameters
markerSizesize of the marker side expressed in meters
CPparmeters of the camera
setYPerpendicularIf set the Y axis will be perpendicular to the surface. Otherwise, it will be the Z axis

Definition at line 242 of file marker.cpp.

◆ calculateExtrinsics() [2/2]

void aruco::Marker::calculateExtrinsics ( float  markerSize,
cv::Mat  CameraMatrix,
cv::Mat  Distorsion = cv::Mat(),
bool  setYPerpendicular = true 
)
throw (cv::Exception
)

Calculates the extrinsics (Rvec and Tvec) of the marker with respect to the camera

Parameters
markerSizesize of the marker side expressed in meters
CameraMatrixmatrix with camera parameters (fx,fy,cx,cy)
Distorsionmatrix with distorsion parameters (k1,k2,p1,p2)
setYPerpendicularIf set the Y axis will be perpendicular to the surface. Otherwise, it will be the Z axis

Definition at line 252 of file marker.cpp.

◆ draw()

void aruco::Marker::draw ( cv::Mat &  in,
cv::Scalar  color,
int  lineWidth = 1,
bool  writeId = true 
) const

Draws this marker in the input image

Definition at line 215 of file marker.cpp.

◆ getArea()

float aruco::Marker::getArea ( ) const

Returns the area

Definition at line 331 of file marker.cpp.

◆ getCenter()

cv::Point2f aruco::Marker::getCenter ( ) const

Returns the centroid of the marker

Definition at line 318 of file marker.cpp.

◆ getPerimeter()

float aruco::Marker::getPerimeter ( ) const

Returns the perimeter of the marker

Definition at line 344 of file marker.cpp.

◆ glGetModelViewMatrix()

void aruco::Marker::glGetModelViewMatrix ( double  modelview_matrix[16])
throw (cv::Exception
)

Given the extrinsic camera parameters returns the GL_MODELVIEW matrix for opengl. Setting this matrix, the reference coordinate system will be set in this marker

Definition at line 73 of file marker.cpp.

◆ isValid()

bool aruco::Marker::isValid ( ) const
inline

Indicates if this object is valid

Definition at line 64 of file marker.h.

◆ OgreGetPoseParameters()

void aruco::Marker::OgreGetPoseParameters ( double  position[3],
double  orientation[4] 
)
throw (cv::Exception
)

Returns position vector and orientation quaternion for an Ogre scene node or entity. Use: ... Ogre::Vector3 ogrePos (position[0], position[1], position[2]); Ogre::Quaternion ogreOrient (orientation[0], orientation[1], orientation[2], orientation[3]); mySceneNode->setPosition( ogrePos ); mySceneNode->setOrientation( ogreOrient ); ...

Definition at line 128 of file marker.cpp.

◆ rotateXAxis()

void aruco::Marker::rotateXAxis ( cv::Mat &  rotation)
private

Definition at line 298 of file marker.cpp.

Friends And Related Function Documentation

◆ operator<

bool operator< ( const Marker M1,
const Marker M2 
)
friend

Definition at line 114 of file marker.h.

◆ operator<<

ostream& operator<< ( ostream &  str,
const Marker M 
)
friend

Definition at line 117 of file marker.h.

Member Data Documentation

◆ id

int aruco::Marker::id

Definition at line 44 of file marker.h.

◆ Rvec

cv::Mat aruco::Marker::Rvec

Definition at line 48 of file marker.h.

◆ ssize

float aruco::Marker::ssize

Definition at line 46 of file marker.h.

◆ Tvec

cv::Mat aruco::Marker::Tvec

Definition at line 48 of file marker.h.


The documentation for this class was generated from the following files:


asr_aruco_marker_recognition
Author(s): Allgeyer Tobias, Meißner Pascal, Qattan Mohamad
autogenerated on Mon Feb 28 2022 21:41:30