Basic Image AlgorithmS Library  2.8.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Static Protected Attributes | Friends | List of all members
BIAS::ProjectionParametersDynamicLoad Class Reference

can load exernally programmed child classes of ProjectionParametersBase More...

#include <Geometry/ProjectionParametersDynamicLoad.hh>

+ Inheritance diagram for BIAS::ProjectionParametersDynamicLoad:
+ Collaboration diagram for BIAS::ProjectionParametersDynamicLoad:

Public Member Functions

virtual ProjectionParametersBaseClone () const
 Covariant virtual copy constructor used in BIAS::Projection. More...
 
virtual bool CValid () const
 Check of current projection center is valid. More...
 
virtual bool Distort (BIAS::HomgPoint2D &point2d) const
 Interface defintion for lens distortion function, implemented by derived classes. More...
 
virtual bool DoesPointProjectIntoImage (const HomgPoint3D &X, HomgPoint2D &x, bool IgnoreDistortion=false) const
 Checks if 3D point projects into specified image and returns belonging 2D image point. More...
 
virtual bool DoesPointProjectIntoImageLocal (const Vector3< double > &localX, HomgPoint2D &x, bool IgnoreDistortion=false) const
 Checks if 3D point projects into specified image and returns belonging 2D image point. More...
 
virtual const bool DoExtrinsicsDiffer (const ProjectionParametersBase *p) const
 
virtual const bool DoIntrinsicsDiffer (const ProjectionParametersBase *p) const
 
virtual double GetAspectratio () const
 Return aspectratio (i.e. More...
 
virtual BIAS::Vector3< double > GetC () const
 Get projection center. More...
 
virtual BIAS::Matrix< POSE_TYPE > GetCov () const
 Return pose covariance as 7x7 matrix with respect to C, Q. More...
 
virtual BIAS::Vector< double > GetCQ () const
 Return pose as 7 vector (first projection center C, then unit quaternion Q representing orientation). More...
 
ProjectionParametersBaseGetDynPtr ()
 get base pointer to dynamically loaded object in order to handle it directly More...
 
virtual BIAS::Matrix3x4< double > GetExternals () const
 Return cached 3x4 representation of external matrix [R|C]. More...
 
virtual BIAS::KMatrix GetFakeKMatrix (double &imgsize, int resolution=0, const double &maxangle=1.4) const
 Returns a fake KMatrix for the camera. More...
 
virtual BIAS::KMatrix GetFakeKMatrix (int resolution=0, const double &maxangle=1.4) const
 
virtual void GetFirstBorderPixel (PixelIterator &it)
 call this to start a run at the outer boundary of an image. More...
 
virtual void GetFirstEdgePosition (PixelIterator &it)
 call this to start a run at the outer boundary of an image. More...
 
virtual std::string GetIdentifier () const
 
virtual const unsigned int & GetImageHeight () const
 Returns the image height. More...
 
virtual int GetImageSize (unsigned int &Width, unsigned int &Height) const
 Obtain image dimensions. More...
 
virtual const unsigned int & GetImageWidth () const
 Returns the image width. More...
 
virtual int GetMinimalAngularSamplingStep (double &minAngleStep)
 Delivers the assumed minimal angular distance between two optical rays belonging to integer image coordinates within the FoV. More...
 
virtual bool GetNextBorderPixel (PixelIterator &it)
 call this iteratively to run at the outer boundary of an image. More...
 
virtual bool GetNextEdgePosition (PixelIterator &it)
 call this iteratively to run at the outer edge of an image. More...
 
virtual const BIAS::PoseGetPose () const
 Return complete pose object. More...
 
virtual BIAS::PoseParametrization GetPoseParametrization () const
 Return copy of pose parametrization object. More...
 
virtual int GetPrincipal (double &PrincipalX, double &PrincipalY) const
 Get principal point (in pixels relative to top left corner). More...
 
virtual BIAS::Quaternion< double > GetQ () const
 Get orientation as unit quaternion. More...
 
virtual BIAS::RMatrix GetR () const
 Get orientation as rotation matrix R. More...
 
virtual int GetSphericalViewingRange (const CoordinateTransform3D &sphericalReferenceFrame, double &minPhi, double &maxPhi, double &centerPhi, double &minTheta, double &maxTheta)
 Determines the maximal and minimal viewing range in means of spherical coordinates. More...
 
virtual int GetUnProjectionJacobian (const HomgPoint2D &x, Matrix2x2< double > &Jac, const bool homogenized=true) const
 Get warp (local magnification/shear/...) when going from the real image to ideal image with focal length = 1. More...
 
virtual std::string GetVideoSourceType () const
 
virtual void InvalidatePose ()
 Invalidate currently set pose. More...
 
bool IsLeftOf (const ProjectionParametersBase &ppb) const
 Returns true if the camera represented by this ProjectionParametersBase is left of the given one. More...
 
const bool LookAt (const Vector3< double > &eye, const Vector3< double > &center, const Vector3< double > &up)
 Looks at given point, similar to gluLookAt. More...
 
const bool LookAt (const Vector3< double > &center, const Vector3< double > &up)
 Looks at given point, similar to gluLookAt. More...
 
const bool LookAtGL (const Vector3< double > &eye, const Vector3< double > &center, const Vector3< double > &up)
 Looks at given point, similar to gluLookAt. More...
 
const bool LookAtGL (const Vector3< double > &center, const Vector3< double > &up)
 Looks at given point, similar to gluLookAt. More...
 
ProjectionParametersDynamicLoadoperator= (const ProjectionParametersDynamicLoad &P)
 
virtual bool PoseValid () const
 Check if current pose is valid. More...
 
virtual HomgPoint2D Project (const HomgPoint3D &X, bool IgnoreDistortion=false) const
 calculates the projection of a point in the world coordinate system to a pixel in the image plane of the camera !warning! the function my return an invalid point (0,0,0) in certain cases (3d point) behind camera or 3d point to close to camera center More...
 
virtual int Project (const HomgPoint3D &X, HomgPoint2D &p2d, bool IgnoreDistortion=false) const
 calculates the projection of a point in the world coordinate system to a pixel in the image plane of the camera. More...
 
 ProjectionParametersDynamicLoad (const unsigned int width=0, const unsigned int height=0)
 
 ProjectionParametersDynamicLoad (const std::string &className, const unsigned int width=0, const unsigned int height=0)
 
 ProjectionParametersDynamicLoad (const ProjectionParametersDynamicLoad &P)
 
virtual HomgPoint2D ProjectLocal (const Vector3< double > &point, bool IgnoreDistortion=false) const
 calculates the projection of a point in the local camera coordinate system to a pixel in the image plane of the camera More...
 
virtual int ProjectLocal (const Vector3< double > &point, HomgPoint2D &p2d, bool IgnoreDistortion=false) const
 calculates the projection of a point in the local camera coordinate system to a pixel in the image plane of the camera. More...
 
virtual bool QValid () const
 Check if current orientation is valid. More...
 
virtual void Rescale (double ratio, const double offset=0.0)
 Adapt internal parameters to resampled image. More...
 
virtual void Rescale (unsigned int width, unsigned int height)
 adapt internal parameters to new image size More...
 
virtual void SetAspectratio (const double AspectRatio)
 Set CCD aspect ratio (i.e. More...
 
virtual void SetC (const BIAS::Vector3< double > &C)
 Set projection center. More...
 
void SetClassName (std::string &name)
 
virtual void SetCov (const Matrix< POSE_TYPE > &Cov)
 Set pose covariance matrix with respect to C, Q. More...
 
virtual void SetIdentifier (std::string name)
 Set the identification string. More...
 
virtual void SetImageSize (const unsigned int w, const unsigned int h)
 Set image dimensions (in pixels). More...
 
virtual void SetPose (const BIAS::Pose pose)
 Set pose from pose object. More...
 
virtual void SetPoseParametrization (const BIAS::PoseParametrization &pp)
 Set pose from pose parametrization. More...
 
virtual void SetPrincipal (const double x, const double y)
 Set principal point (in pixels relative to top left corner). More...
 
virtual void SetQ (const BIAS::Quaternion< double > &Q)
 Set orientation from unit quaternion Q. More...
 
virtual void SetQC (const BIAS::Quaternion< double > &Q, const BIAS::Vector3< double > &C)
 Set pose from unit quaternion Q and projection center C. More...
 
virtual void SetR (const BIAS::RMatrix &R)
 Set orientation from rotation matrix R. More...
 
virtual void SetVideoSourceType (const std::string &name)
 Set the camera source type. More...
 
virtual int Transform_ (const Vector< double > &src, Vector< double > &dst) const
 Worker function for Unscented Transform. More...
 
virtual bool Undistort (BIAS::HomgPoint2D &point2d) const
 Interface defintion for lens undistortion function, implemented by derived classes. More...
 
virtual Matrix3x3< double > UnProjectCovLocal (const HomgPoint2D &pos, const Matrix3x3< double > &cov2D, bool IgnoreDistortion=false, bool Normalize=false)
 unprojects the covariance matrices to K=Identity camera More...
 
virtual void UnProjectLocal (const HomgPoint2D &pos, Vector3< double > &pointOnRay, Vector3< double > &direction, bool IgnoreDistortion=false) const
 calculates the unit size viewing ray from the camera center (in the camera coordinate system) which belongs to the image position pos e.g. More...
 
virtual HomgPoint3D UnProjectToImagePlane (const HomgPoint2D &pos, const double &depth=1.0, bool IgnoreDistortion=false) const
 map points from image onto unit diameter image plane in 3D. More...
 
virtual HomgPoint3D UnProjectToPoint (const HomgPoint2D &pos, double depth, bool IgnoreDistortion=false) const
 calculates a 3D point in the global (not the rig) coordinate system, which belongs to the image position pos with distance depth to the camera center. More...
 
virtual HomgPoint3D UnProjectToPoint (const HomgPoint2D &pos, const double depth, const ProjectionParametersBase &proj, bool IgnoreDistortion=false) const
 
virtual Vector3< double > UnProjectToPointLocal (const HomgPoint2D &pos, const double &depth, bool IgnoreDistortion=false) const
 calculates a 3D point in the local camera coordinate system, which belongs to the image position pos in cam with distance depth to the camera center cam. More...
 
virtual void UnProjectToRay (const HomgPoint2D &pos, Vector3< double > &pointOnRay, Vector3< double > &direction, bool IgnoreDistortion=false) const
 calculates the viewing ray in the global coordinate frame from the camera center which belongs to the given image position. More...
 
virtual void UnProjectToRay (const HomgPoint2D &pos, Vector3< double > &pointOnRay, Vector3< double > &direction, const ProjectionParametersBase &proj, bool IgnoreDistortion=false) const
 Calculates the view ray, which belongs to the given position on the image plane, using the given projection. More...
 
virtual void UnProjectToRay (const HomgPoint2D &pos, Vector3< double > &direction, bool ignoreDistortion=false) const
 Calculates the view ray, which belongs to the given position on the image plane, in global coordinates. More...
 
virtual void ValidatePose ()
 Validate currently set pose. More...
 
virtual double ViewDifference (const ProjectionParametersBase *pPPB) const
 Returns difference between two projections like |C1-C2|. More...
 
xmlNodePtr XMLAdd (const xmlNodePtr Node, XMLIO &XMLObject) const
 call this to add the class to a node of a given xml tree More...
 
virtual int XMLGetClassName (std::string &TopLevelTag, double &Version) const
 specialization of XML block name function More...
 
virtual int XMLIn (const xmlNodePtr Node, XMLIO &XMLObject)
 specialization of XML read function More...
 
virtual int XMLOut (const xmlNodePtr Node, XMLIO &XMLObject) const
 specialization of XML write function More...
 
int XMLRead (const std::string &Filename)
 derived classes must implement the function XMLIn which is called by this function XMLRead to read everything with name Filename into (*this). More...
 
int XMLReadFromString (const std::string &str)
 reconstruct xml tree from string More...
 
int XMLWrite (const std::string &Filename, int CompressionLevel=0, bool AutoAddCompressionSuffix=true, std::string encoding="UTF-8") const
 call this to add the class to a new xml tree and write it to the file Filename. More...
 
int XMLWriteToString (std::string &str, std::string encoding="UTF-8") const
 serialize xml tree to string More...
 
virtual ~ProjectionParametersDynamicLoad ()
 

Protected Member Functions

void AddDebugLevel (const long int lv)
 
void AddDebugLevel (const std::string &name)
 
int ComputeSigmaPoints_ (const Vector< double > &src_mean, const Matrix< double > &src_cov, std::vector< WeightedSigmaPoint > &sigma_points) const
 The covariance of a n-dimensional vector is approximated using 2n+1 so called sigma points with associated weights. More...
 
long ConsumeNextFreeDebuglevel_ ()
 returns the next available debuglevel More...
 
bool DebugLevelIsSet (const long int lv) const
 
bool DebugLevelIsSet (const std::string &name) const
 
int GetDebugLevel () const
 
std::ostream & GetDebugStream () const
 
void GetDebugStream (std::ostream &os) const
 
void InitFactory_ ()
 
long int Name2DebugLevel (const std::string &name) const
 looks up a debuglevel in the internal map, returns 0 if not found More...
 
long int NewDebugLevel (const std::string &name)
 creates a new debuglevel More...
 
void PrintDebugLevel (std::ostream &os=std::cout) const
 
void RemoveDebugLevel (const long int lv)
 
void RemoveDebugLevel (const std::string &name)
 
void SetAlpha (const double alpha)
 Sets the alpha parameter. More...
 
void SetBeta (const double beta)
 Sets the beta parameter. More...
 
void SetDebugLevel (const long int lv)
 
void SetDebugLevel (const std::string &name)
 
void SetDebugStream (const std::ostream &os)
 
void SetUseSVD (const bool use_svd)
 
void ShowDebugLevel (std::ostream &os=std::cout) const
 prints all internally known debuglevels More...
 
int Transform (const Vector< double > &src_mean, const Matrix< double > &src_cov, Vector< double > &dst_mean, Matrix< double > &dst_cov) const
 computes the second order approximation of the transformations of the mean and the associated covariance for the point transformation Transform_(). More...
 

Static Protected Member Functions

static long int GetGlobalDebugLevel ()
 
static void SetGlobalDebugLevel (long int lev)
 

Protected Attributes

long int _liDebugLevel
 
long int _liNextDebugLevel
 new concept, debuglevel are managed here in the debug class More...
 
std::map< std::string, long int > _String2Debuglevel
 
double Alpha_
 the alpha parameter determines the spread of the sigma points More...
 
double aspectratio_
 aspect ratio of the camera CCD More...
 
double Beta_
 beta is used to incorporate prior knowledge of the distribution of x. More...
 
std::string className_
 
bool CValid_
 
ProjectionParametersBasedynptr_
 
std::map< std::string, maker_t,
std::less< std::string > > 
factory_
 
unsigned int height_
 height of image in pixels More...
 
void * hndl_
 
std::string identifier_
 Multifunctional identifier. More...
 
double Kappa_
 kappa is a secondary scaling parameter. More...
 
std::vector< std::string > libPaths_
 
Pose Pose_
 pose More...
 
double principalX_
 principal point in pixel coordinates (one for all zoom settings) More...
 
double principalY_
 
bool QValid_
 validity flag for orientation and position More...
 
bool UseSVD_
 
bool ustIgnoreDistortion_
 
bool ustNormalize_
 
bool ustTransformIntoImage_
 unscented transform worker variables More...
 
std::string videoSourceType_
 
unsigned int width_
 width of image in pixels More...
 

Static Protected Attributes

static std::ostream _zDebugStream
 
static long int GlobalDebugLevel = 0
 

Friends

std::ostream & operator<< (std::ostream &os, const ProjectionParametersDynamicLoad &p)
 

Detailed Description

can load exernally programmed child classes of ProjectionParametersBase

Author
sedlazeck
Examples:
ExampleProjectionParametersDynamicLoad.cpp.

Definition at line 45 of file ProjectionParametersDynamicLoad.hh.

Constructor & Destructor Documentation

BIAS::ProjectionParametersDynamicLoad::ProjectionParametersDynamicLoad ( const unsigned int  width = 0,
const unsigned int  height = 0 
)
inline

Definition at line 49 of file ProjectionParametersDynamicLoad.hh.

BIAS::ProjectionParametersDynamicLoad::ProjectionParametersDynamicLoad ( const std::string &  className,
const unsigned int  width = 0,
const unsigned int  height = 0 
)
inline

Definition at line 59 of file ProjectionParametersDynamicLoad.hh.

BIAS::ProjectionParametersDynamicLoad::ProjectionParametersDynamicLoad ( const ProjectionParametersDynamicLoad P)
inline

Definition at line 70 of file ProjectionParametersDynamicLoad.hh.

ProjectionParametersDynamicLoad::~ProjectionParametersDynamicLoad ( )
virtual

Definition at line 38 of file ProjectionParametersDynamicLoad.cpp.

Member Function Documentation

void BIAS::Debug::AddDebugLevel ( const long int  lv)
inlineinherited
void BIAS::Debug::AddDebugLevel ( const std::string &  name)
inlineinherited

Definition at line 362 of file Debug.hh.

virtual ProjectionParametersBase* BIAS::ProjectionParametersDynamicLoad::Clone ( ) const
inlinevirtual

Covariant virtual copy constructor used in BIAS::Projection.

Implements BIAS::ProjectionParametersBase.

Definition at line 507 of file ProjectionParametersDynamicLoad.hh.

int UnscentedTransform::ComputeSigmaPoints_ ( const Vector< double > &  src_mean,
const Matrix< double > &  src_cov,
std::vector< WeightedSigmaPoint > &  sigma_points 
) const
protectedinherited

The covariance of a n-dimensional vector is approximated using 2n+1 so called sigma points with associated weights.

The points and weights are computed in this function

Returns
0=ok, <0 on error (bad cov, ...)

Definition at line 138 of file UnscentedTransform.cpp.

References BIAS::UnscentedTransform::Alpha_, BIAS::UnscentedTransform::Beta_, BIAS::Debug::DebugLevelIsSet(), BIAS::Matrix< T >::GetCol(), BIAS::Matrix< T >::GetCols(), BIAS::UnscentedTransform::Kappa_, Lapack_Cholesky_SymmetricPositiveDefinit(), BIAS::Less(), TNT::Matrix< T >::num_cols(), TNT::Matrix< T >::num_rows(), BIAS::Vector< T >::Size(), BIAS::SVD::SqrtT(), and BIAS::UnscentedTransform::UseSVD_.

Referenced by BIAS::UnscentedTransform::Transform().

long BIAS::Debug::ConsumeNextFreeDebuglevel_ ( )
inlineprotectedinherited

returns the next available debuglevel

Author
woelk 09/2006

Definition at line 521 of file Debug.hh.

virtual bool BIAS::ProjectionParametersDynamicLoad::CValid ( ) const
inlinevirtual

Check of current projection center is valid.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 538 of file ProjectionParametersDynamicLoad.hh.

bool BIAS::Debug::DebugLevelIsSet ( const long int  lv) const
inlineinherited
bool BIAS::Debug::DebugLevelIsSet ( const std::string &  name) const
inlineinherited

Definition at line 350 of file Debug.hh.

bool ProjectionParametersDynamicLoad::Distort ( BIAS::HomgPoint2D point2d) const
virtual

Interface defintion for lens distortion function, implemented by derived classes.

Implements BIAS::ProjectionParametersBase.

Definition at line 186 of file ProjectionParametersDynamicLoad.cpp.

virtual bool BIAS::ProjectionParametersDynamicLoad::DoesPointProjectIntoImage ( const HomgPoint3D X,
HomgPoint2D x,
bool  IgnoreDistortion = false 
) const
inlinevirtual

Checks if 3D point projects into specified image and returns belonging 2D image point.

Parameters
Xassumes homogenized point!
Author
bartczak

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 186 of file ProjectionParametersDynamicLoad.hh.

bool ProjectionParametersDynamicLoad::DoesPointProjectIntoImageLocal ( const Vector3< double > &  localX,
HomgPoint2D x,
bool  IgnoreDistortion = false 
) const
virtual

Checks if 3D point projects into specified image and returns belonging 2D image point.

Parameters
localXassumes homogenized point!
Author
bartczak

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 144 of file ProjectionParametersDynamicLoad.cpp.

virtual const bool BIAS::ProjectionParametersDynamicLoad::DoExtrinsicsDiffer ( const ProjectionParametersBase p) const
inlinevirtual

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 172 of file ProjectionParametersDynamicLoad.hh.

const bool ProjectionParametersDynamicLoad::DoIntrinsicsDiffer ( const ProjectionParametersBase p) const
virtual

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 138 of file ProjectionParametersDynamicLoad.cpp.

virtual double BIAS::ProjectionParametersDynamicLoad::GetAspectratio ( ) const
inlinevirtual

Return aspectratio (i.e.

cellsizeX / cellsizeY).

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 446 of file ProjectionParametersDynamicLoad.hh.

virtual BIAS::Vector3<double> BIAS::ProjectionParametersDynamicLoad::GetC ( ) const
inlinevirtual

Get projection center.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 360 of file ProjectionParametersDynamicLoad.hh.

virtual BIAS::Matrix<POSE_TYPE> BIAS::ProjectionParametersDynamicLoad::GetCov ( ) const
inlinevirtual

Return pose covariance as 7x7 matrix with respect to C, Q.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 384 of file ProjectionParametersDynamicLoad.hh.

virtual BIAS::Vector<double> BIAS::ProjectionParametersDynamicLoad::GetCQ ( ) const
inlinevirtual

Return pose as 7 vector (first projection center C, then unit quaternion Q representing orientation).

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 373 of file ProjectionParametersDynamicLoad.hh.

int BIAS::Debug::GetDebugLevel ( ) const
inlineinherited
std::ostream& BIAS::Debug::GetDebugStream ( ) const
inlineinherited

Definition at line 405 of file Debug.hh.

void BIAS::Debug::GetDebugStream ( std::ostream &  os) const
inlineinherited

Definition at line 414 of file Debug.hh.

ProjectionParametersBase* BIAS::ProjectionParametersDynamicLoad::GetDynPtr ( )
inline

get base pointer to dynamically loaded object in order to handle it directly

Definition at line 623 of file ProjectionParametersDynamicLoad.hh.

Referenced by BIAS::ProjectionParametersFactory::Create().

virtual BIAS::Matrix3x4<double> BIAS::ProjectionParametersDynamicLoad::GetExternals ( ) const
inlinevirtual

Return cached 3x4 representation of external matrix [R|C].

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 405 of file ProjectionParametersDynamicLoad.hh.

virtual BIAS::KMatrix BIAS::ProjectionParametersDynamicLoad::GetFakeKMatrix ( double &  imgsize,
int  resolution = 0,
const double &  maxangle = 1.4 
) const
inlinevirtual

Returns a fake KMatrix for the camera.

Attention
Stolen from PPSpherical, since this is a general issue. THERE MAY BE PROBLEMS FOR OTHER THAN FISHEYE CAMERAS (UNTESTED) If this implementation is not correct for your derived projection parameters you have to reimplement it in the derived class.

The FoV of the KMatrix is specified by maxangle (PI*80/180 for 160deg) or the max angle, if this is <160deg.

Parameters
resolutionThe resolution parameter influences the Resolution of the perspective image that is represented by the camera. 0 - The perspective image has the same size as the this image 1 - The perspective image has the same resolution as this image in the center (highest resolution) 2 - The perspective image has the same resolution as this image near the border (lowest resolution)
imgsizereturns the image size
maxanglemaximum theta in rad, e.g. (PI*80/180 for 160deg fov)
Author
streckel 05/2006 (moved here by koeser)

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 576 of file ProjectionParametersDynamicLoad.hh.

virtual BIAS::KMatrix BIAS::ProjectionParametersDynamicLoad::GetFakeKMatrix ( int  resolution = 0,
const double &  maxangle = 1.4 
) const
inlinevirtual

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 580 of file ProjectionParametersDynamicLoad.hh.

void ProjectionParametersDynamicLoad::GetFirstBorderPixel ( PixelIterator it)
virtual

call this to start a run at the outer boundary of an image.

You get the first boundary position in it, e.g. (0,0) for a perspective image. Feed this into GetNextBorderPixel to get the next position.

Author
koeser 09/2007

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 114 of file ProjectionParametersDynamicLoad.cpp.

void ProjectionParametersDynamicLoad::GetFirstEdgePosition ( PixelIterator it)
virtual

call this to start a run at the outer boundary of an image.

You get the first edge position i.e. (-0.5, -0.5) for a perspective image. Feed this into GetNextBorderPixel to get the next position.

Author
bartczak 06/2009

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 122 of file ProjectionParametersDynamicLoad.cpp.

static long int BIAS::Debug::GetGlobalDebugLevel ( )
inlinestaticinherited

Definition at line 431 of file Debug.hh.

virtual std::string BIAS::ProjectionParametersDynamicLoad::GetIdentifier ( ) const
inlinevirtual

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 437 of file ProjectionParametersDynamicLoad.hh.

virtual const unsigned int& BIAS::ProjectionParametersDynamicLoad::GetImageHeight ( ) const
inlinevirtual

Returns the image height.

Returns
the image height

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 432 of file ProjectionParametersDynamicLoad.hh.

virtual int BIAS::ProjectionParametersDynamicLoad::GetImageSize ( unsigned int &  Width,
unsigned int &  Height 
) const
inlinevirtual

Obtain image dimensions.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 411 of file ProjectionParametersDynamicLoad.hh.

virtual const unsigned int& BIAS::ProjectionParametersDynamicLoad::GetImageWidth ( ) const
inlinevirtual

Returns the image width.

Returns
the image width

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 421 of file ProjectionParametersDynamicLoad.hh.

virtual int BIAS::ProjectionParametersDynamicLoad::GetMinimalAngularSamplingStep ( double &  minAngleStep)
inlinevirtual

Delivers the assumed minimal angular distance between two optical rays belonging to integer image coordinates within the FoV.

Author
bartczak 10/2007

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 166 of file ProjectionParametersDynamicLoad.hh.

bool ProjectionParametersDynamicLoad::GetNextBorderPixel ( PixelIterator it)
virtual

call this iteratively to run at the outer boundary of an image.

All returned coordinates must have valid local rays in the camera coordinate system (e.g. in fisheye cams, we run at the fov circle) and must be in the image. Two subsequent coordinates must not be more distant than 1 pixel.

Parameters
itmust be initialized by GetFirstBorderPixel
Returns
false if the returned position closes the loop around the image
Author
koeser 09/2007

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 118 of file ProjectionParametersDynamicLoad.cpp.

bool ProjectionParametersDynamicLoad::GetNextEdgePosition ( PixelIterator it)
virtual

call this iteratively to run at the outer edge of an image.

Like the GetNextBorderPixel() method, however runs along the outer rim of an image, i.e. the coordinate range (-0.5, -0.5) and (W-0.5, H-0.5). The positions returned are the upper left corner of the pixels. These are at the same time the upper right corners of the neighboring pixel.

Parameters
itmust be initialized by GetFirstBorderPixel
Returns
false if the returned position closes the loop around the image
Author
bartczak 06/2009

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 126 of file ProjectionParametersDynamicLoad.cpp.

virtual const BIAS::Pose& BIAS::ProjectionParametersDynamicLoad::GetPose ( ) const
inlinevirtual

Return complete pose object.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 389 of file ProjectionParametersDynamicLoad.hh.

virtual BIAS::PoseParametrization BIAS::ProjectionParametersDynamicLoad::GetPoseParametrization ( ) const
inlinevirtual

Return copy of pose parametrization object.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 395 of file ProjectionParametersDynamicLoad.hh.

virtual int BIAS::ProjectionParametersDynamicLoad::GetPrincipal ( double &  PrincipalX,
double &  PrincipalY 
) const
inlinevirtual

Get principal point (in pixels relative to top left corner).

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 451 of file ProjectionParametersDynamicLoad.hh.

virtual BIAS::Quaternion<double> BIAS::ProjectionParametersDynamicLoad::GetQ ( ) const
inlinevirtual

Get orientation as unit quaternion.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 366 of file ProjectionParametersDynamicLoad.hh.

virtual BIAS::RMatrix BIAS::ProjectionParametersDynamicLoad::GetR ( ) const
inlinevirtual

Get orientation as rotation matrix R.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 379 of file ProjectionParametersDynamicLoad.hh.

int ProjectionParametersDynamicLoad::GetSphericalViewingRange ( const CoordinateTransform3D sphericalReferenceFrame,
double &  minPhi,
double &  maxPhi,
double &  centerPhi,
double &  minTheta,
double &  maxTheta 
)
virtual

Determines the maximal and minimal viewing range in means of spherical coordinates.

The spherical coordinates are calculated relatively to the passed coordinate frame. The method is using the class SphericalCoordinates, see also the documentation there in order to understand the meaning of the sphericalReferenceFrame.

Attention
in order to make sense the sphericalReferenceFrame must have the same origin as the ProjectionParameters.
Parameters
sphericalReferenceFramereference frame for the calculation of spherical coordinates belonging to optical rays, must be defined in the same coordinate frame like the local frame of the ProjectionParameters.
Returns
minPhi phi angle from (-M_PI, M_PI] with smallest value within viewing range.
maxPhi phi angle from (-M_PI, M_PI] with largest value within viewing range.
centerPhi phi angle from (-M_PI, M_PI] belonging to the optical ray passing through the image center. This angle allows to determine which direction the camera was facing in the sphericalReferenceFrame.
minTheta theta angle from [0, M_PI] with smallest value within viewing range.
maxTheta theta angle from [0, M_PI] with largest value within viewing range.
Author
bartczak 10/2007

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 130 of file ProjectionParametersDynamicLoad.cpp.

virtual int BIAS::ProjectionParametersDynamicLoad::GetUnProjectionJacobian ( const HomgPoint2D x,
Matrix2x2< double > &  Jac,
const bool  homogenized = true 
) const
inlinevirtual

Get warp (local magnification/shear/...) when going from the real image to ideal image with focal length = 1.

When an image is undistorted to an ideal perspective camera with K=id, the region around each pixel must be warped. For perspective cameras without radial distortion this is the undoing (inverse) of the upper 2x2 part of the KMatrix (simply a rescale of coordinates). If radial distortion is present, the local warp depends on the image position. Same for most other camera models. This matrix is closely related to the absolute local image resolution.

Instead of going to the w=1 (homogenized) ideal image, we can as well go to a tangent image. This can be steered by the parameter homogenized (if false, we use normalized mode).

Author
koeser 06/2008

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 351 of file ProjectionParametersDynamicLoad.hh.

virtual std::string BIAS::ProjectionParametersDynamicLoad::GetVideoSourceType ( ) const
inlinevirtual

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 441 of file ProjectionParametersDynamicLoad.hh.

void ProjectionParametersDynamicLoad::InitFactory_ ( )
protected

add other library paths here

Definition at line 55 of file ProjectionParametersDynamicLoad.cpp.

virtual void BIAS::ProjectionParametersDynamicLoad::InvalidatePose ( )
inlinevirtual

Invalidate currently set pose.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 548 of file ProjectionParametersDynamicLoad.hh.

bool ProjectionParametersBase::IsLeftOf ( const ProjectionParametersBase ppb) const
inherited

Returns true if the camera represented by this ProjectionParametersBase is left of the given one.

Computes the baseline vector and rotates it so that this cam would have zero rotation. This cam is left of the given one if the x component of the transformed baseline is non-negative.

Note that the orientation of the given camere is not considered, only its position.

Parameters
ppbthe parameters of the cam to compare this to
Author
rwulff
Date
09/2011

Definition at line 711 of file ProjectionParametersBase.cpp.

References BIAS::ProjectionParametersBase::GetC(), and BIAS::Matrix3x3< T >::GetInverse().

const bool BIAS::ProjectionParametersBase::LookAt ( const Vector3< double > &  eye,
const Vector3< double > &  center,
const Vector3< double > &  up 
)
inlineinherited

Looks at given point, similar to gluLookAt.

Parameters
eyeEye coordinate
center3D point to look at
upUp vector of the camera
Returns
true, if everything is fine - false, otherwise

Definition at line 751 of file ProjectionParametersBase.hh.

const bool BIAS::ProjectionParametersBase::LookAt ( const Vector3< double > &  center,
const Vector3< double > &  up 
)
inlineinherited

Looks at given point, similar to gluLookAt.

Parameters
center3D point to look at
upUp vector of the camera
Returns
true, if everythings fine - false, otherwise

Definition at line 760 of file ProjectionParametersBase.hh.

const bool BIAS::ProjectionParametersBase::LookAtGL ( const Vector3< double > &  eye,
const Vector3< double > &  center,
const Vector3< double > &  up 
)
inlineinherited

Looks at given point, similar to gluLookAt.

Parameters
eyeEye coordinate
center3D point to look at
upUp vector of the camera
Returns
true, if everything is fine - false, otherwise

Definition at line 770 of file ProjectionParametersBase.hh.

const bool BIAS::ProjectionParametersBase::LookAtGL ( const Vector3< double > &  center,
const Vector3< double > &  up 
)
inlineinherited

Looks at given point, similar to gluLookAt.

Parameters
center3D point to look at
upUp vector of the camera
Returns
true, if everythings fine - false, otherwise

Definition at line 779 of file ProjectionParametersBase.hh.

long int BIAS::Debug::Name2DebugLevel ( const std::string &  name) const
inlineinherited

looks up a debuglevel in the internal map, returns 0 if not found

Author
woelk 09/2006

Definition at line 454 of file Debug.hh.

long int BIAS::Debug::NewDebugLevel ( const std::string &  name)
inlineinherited
ProjectionParametersDynamicLoad& BIAS::ProjectionParametersDynamicLoad::operator= ( const ProjectionParametersDynamicLoad P)
inline
virtual bool BIAS::ProjectionParametersDynamicLoad::PoseValid ( ) const
inlinevirtual

Check if current pose is valid.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 544 of file ProjectionParametersDynamicLoad.hh.

void BIAS::Debug::PrintDebugLevel ( std::ostream &  os = std::cout) const
inlineinherited

Definition at line 383 of file Debug.hh.

virtual HomgPoint2D BIAS::ProjectionParametersDynamicLoad::Project ( const HomgPoint3D X,
bool  IgnoreDistortion = false 
) const
inlinevirtual

calculates the projection of a point in the world coordinate system to a pixel in the image plane of the camera !warning! the function my return an invalid point (0,0,0) in certain cases (3d point) behind camera or 3d point to close to camera center

Author
woelk 05/2006

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 207 of file ProjectionParametersDynamicLoad.hh.

virtual int BIAS::ProjectionParametersDynamicLoad::Project ( const HomgPoint3D X,
HomgPoint2D p2d,
bool  IgnoreDistortion = false 
) const
inlinevirtual

calculates the projection of a point in the world coordinate system to a pixel in the image plane of the camera.

The only case when this function may not compute the 2d point is when the camera center and the 3d point coincide. This case must be indicated by a negative return value. In all other cases, a valid 2d point is computed, particularily when the 3d point is behind the camera or when the resulting 2d point is at infinity. returns negative, when 3d point and camera center coincide

Author
woelk 05/2006

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 221 of file ProjectionParametersDynamicLoad.hh.

HomgPoint2D ProjectionParametersDynamicLoad::ProjectLocal ( const Vector3< double > &  point,
bool  IgnoreDistortion = false 
) const
virtual

calculates the projection of a point in the local camera coordinate system to a pixel in the image plane of the camera

!warning! function return an invalid 2d point (0,0,0) in certain cases

In the simplest case perspective pinhole projection x = K * point where point is transformed of X using point = (R^T | -R^T C) X

Implements BIAS::ProjectionParametersBase.

Definition at line 154 of file ProjectionParametersDynamicLoad.cpp.

int ProjectionParametersDynamicLoad::ProjectLocal ( const Vector3< double > &  point,
HomgPoint2D p2d,
bool  IgnoreDistortion = false 
) const
virtual

calculates the projection of a point in the local camera coordinate system to a pixel in the image plane of the camera.

The only case when this function may not compute the 2d point is when the camera center and the 3d point coincide. This case must be indicated by a negative return value. In all other cases, a 2d point must be computed, particularily when the 3d point is behind the camera or when the resulting 2d point is at infinity.

In the simplest case perspective pinhole projection x = K * point where point is transformed of X using point = (R^T | -R^T C) X

Author
woelk 08/2008 (c) www.vision-n.de

Implements BIAS::ProjectionParametersBase.

Definition at line 161 of file ProjectionParametersDynamicLoad.cpp.

virtual bool BIAS::ProjectionParametersDynamicLoad::QValid ( ) const
inlinevirtual

Check if current orientation is valid.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 541 of file ProjectionParametersDynamicLoad.hh.

void BIAS::Debug::RemoveDebugLevel ( const long int  lv)
inlineinherited

Definition at line 369 of file Debug.hh.

void BIAS::Debug::RemoveDebugLevel ( const std::string &  name)
inlineinherited

Definition at line 376 of file Debug.hh.

virtual void BIAS::ProjectionParametersDynamicLoad::Rescale ( double  ratio,
const double  offset = 0.0 
)
inlinevirtual

Adapt internal parameters to resampled image.

@param ratio 2.0 = downsample by 2, 0.5 = upsample by 2.
Parameters
offsetOffset for principal point (applied before down/upsampling!)
Attention
Delivers only correct results if ratio is chosen to rescale image size to integral image dimensions in both directions. Image size is rounded!

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 492 of file ProjectionParametersDynamicLoad.hh.

virtual void BIAS::ProjectionParametersDynamicLoad::Rescale ( unsigned int  width,
unsigned int  height 
)
inlinevirtual

adapt internal parameters to new image size

Parameters
widthand height are the new images sizes
Attention
Delivers only correct results if ratio is chosen to rescale image size to integral image dimensions in both directions.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 502 of file ProjectionParametersDynamicLoad.hh.

void BIAS::UnscentedTransform::SetAlpha ( const double  alpha)
inlineinherited

Sets the alpha parameter.

The alpha parameter determines the spread of the sigma points

Definition at line 80 of file UnscentedTransform.hh.

virtual void BIAS::ProjectionParametersDynamicLoad::SetAspectratio ( const double  AspectRatio)
inlinevirtual

Set CCD aspect ratio (i.e.

cellsizeX / cellsizeY).

Author
streckel

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 459 of file ProjectionParametersDynamicLoad.hh.

void BIAS::UnscentedTransform::SetBeta ( const double  beta)
inlineinherited

Sets the beta parameter.

beta is used to incorporate prior knowledge of the distribution of x. For Gaussian distributions beta = 2.0 is optiomal

Definition at line 86 of file UnscentedTransform.hh.

virtual void BIAS::ProjectionParametersDynamicLoad::SetC ( const BIAS::Vector3< double > &  C)
inlinevirtual

Set projection center.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 516 of file ProjectionParametersDynamicLoad.hh.

void BIAS::ProjectionParametersDynamicLoad::SetClassName ( std::string &  name)
inline

Definition at line 625 of file ProjectionParametersDynamicLoad.hh.

virtual void BIAS::ProjectionParametersDynamicLoad::SetCov ( const Matrix< POSE_TYPE > &  Cov)
inlinevirtual

Set pose covariance matrix with respect to C, Q.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 534 of file ProjectionParametersDynamicLoad.hh.

void BIAS::Debug::SetDebugLevel ( const long int  lv)
inlineinherited
void BIAS::Debug::SetDebugLevel ( const std::string &  name)
inlineinherited

Definition at line 325 of file Debug.hh.

void BIAS::Debug::SetDebugStream ( const std::ostream &  os)
inlineinherited

Definition at line 398 of file Debug.hh.

static void BIAS::Debug::SetGlobalDebugLevel ( long int  lev)
inlinestaticinherited

Definition at line 424 of file Debug.hh.

virtual void BIAS::ProjectionParametersDynamicLoad::SetIdentifier ( std::string  name)
inlinevirtual

Set the identification string.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 476 of file ProjectionParametersDynamicLoad.hh.

virtual void BIAS::ProjectionParametersDynamicLoad::SetImageSize ( const unsigned int  w,
const unsigned int  h 
)
inlinevirtual

Set image dimensions (in pixels).

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 470 of file ProjectionParametersDynamicLoad.hh.

virtual void BIAS::ProjectionParametersDynamicLoad::SetPose ( const BIAS::Pose  pose)
inlinevirtual

Set pose from pose object.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 525 of file ProjectionParametersDynamicLoad.hh.

virtual void BIAS::ProjectionParametersDynamicLoad::SetPoseParametrization ( const BIAS::PoseParametrization pp)
inlinevirtual

Set pose from pose parametrization.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 401 of file ProjectionParametersDynamicLoad.hh.

virtual void BIAS::ProjectionParametersDynamicLoad::SetPrincipal ( const double  x,
const double  y 
)
inlinevirtual

Set principal point (in pixels relative to top left corner).

Author
streckel

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 465 of file ProjectionParametersDynamicLoad.hh.

virtual void BIAS::ProjectionParametersDynamicLoad::SetQ ( const BIAS::Quaternion< double > &  Q)
inlinevirtual

Set orientation from unit quaternion Q.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 512 of file ProjectionParametersDynamicLoad.hh.

virtual void BIAS::ProjectionParametersDynamicLoad::SetQC ( const BIAS::Quaternion< double > &  Q,
const BIAS::Vector3< double > &  C 
)
inlinevirtual

Set pose from unit quaternion Q and projection center C.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 520 of file ProjectionParametersDynamicLoad.hh.

virtual void BIAS::ProjectionParametersDynamicLoad::SetR ( const BIAS::RMatrix R)
inlinevirtual

Set orientation from rotation matrix R.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 529 of file ProjectionParametersDynamicLoad.hh.

void BIAS::UnscentedTransform::SetUseSVD ( const bool  use_svd)
inlineinherited

Definition at line 89 of file UnscentedTransform.hh.

virtual void BIAS::ProjectionParametersDynamicLoad::SetVideoSourceType ( const std::string &  name)
inlinevirtual

Set the camera source type.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 481 of file ProjectionParametersDynamicLoad.hh.

void BIAS::Debug::ShowDebugLevel ( std::ostream &  os = std::cout) const
inlineinherited

prints all internally known debuglevels

Author
woelk 09/2006

Definition at line 496 of file Debug.hh.

int UnscentedTransform::Transform ( const Vector< double > &  src_mean,
const Matrix< double > &  src_cov,
Vector< double > &  dst_mean,
Matrix< double > &  dst_cov 
) const
virtualinherited
virtual int BIAS::ProjectionParametersDynamicLoad::Transform_ ( const Vector< double > &  src,
Vector< double > &  dst 
) const
inlinevirtual

Worker function for Unscented Transform.

Author
koeser

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 611 of file ProjectionParametersDynamicLoad.hh.

bool ProjectionParametersDynamicLoad::Undistort ( BIAS::HomgPoint2D point2d) const
virtual

Interface defintion for lens undistortion function, implemented by derived classes.

Implements BIAS::ProjectionParametersBase.

Definition at line 193 of file ProjectionParametersDynamicLoad.cpp.

Matrix3x3< double > ProjectionParametersDynamicLoad::UnProjectCovLocal ( const HomgPoint2D pos,
const Matrix3x3< double > &  cov2D,
bool  IgnoreDistortion = false,
bool  Normalize = false 
)
virtual

unprojects the covariance matrices to K=Identity camera

This uses the unscented transform to propagate covariance. Use a faster or better specialization in derived class if you want.

Author
koeser 06/2006

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 234 of file ProjectionParametersDynamicLoad.cpp.

void ProjectionParametersDynamicLoad::UnProjectLocal ( const HomgPoint2D pos,
Vector3< double > &  pointOnRay,
Vector3< double > &  direction,
bool  IgnoreDistortion = false 
) const
virtual

calculates the unit size viewing ray from the camera center (in the camera coordinate system) which belongs to the image position pos e.g.

pos=principal point results in (0,0,1)=optical axis

Implements BIAS::ProjectionParametersBase.

Definition at line 171 of file ProjectionParametersDynamicLoad.cpp.

HomgPoint3D ProjectionParametersDynamicLoad::UnProjectToImagePlane ( const HomgPoint2D pos,
const double &  depth = 1.0,
bool  IgnoreDistortion = false 
) const
virtual

map points from image onto unit diameter image plane in 3D.

Implements BIAS::ProjectionParametersBase.

Definition at line 177 of file ProjectionParametersDynamicLoad.cpp.

virtual HomgPoint3D BIAS::ProjectionParametersDynamicLoad::UnProjectToPoint ( const HomgPoint2D pos,
double  depth,
bool  IgnoreDistortion = false 
) const
inlinevirtual

calculates a 3D point in the global (not the rig) coordinate system, which belongs to the image position pos with distance depth to the camera center.

Returns
: (0,0,0,0) is returned on failure

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 301 of file ProjectionParametersDynamicLoad.hh.

virtual HomgPoint3D BIAS::ProjectionParametersDynamicLoad::UnProjectToPoint ( const HomgPoint2D pos,
const double  depth,
const ProjectionParametersBase proj,
bool  IgnoreDistortion = false 
) const
inlinevirtual

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 306 of file ProjectionParametersDynamicLoad.hh.

virtual Vector3<double> BIAS::ProjectionParametersDynamicLoad::UnProjectToPointLocal ( const HomgPoint2D pos,
const double &  depth,
bool  IgnoreDistortion = false 
) const
inlinevirtual

calculates a 3D point in the local camera coordinate system, which belongs to the image position pos in cam with distance depth to the camera center cam.

Author
koeser

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 319 of file ProjectionParametersDynamicLoad.hh.

virtual void BIAS::ProjectionParametersDynamicLoad::UnProjectToRay ( const HomgPoint2D pos,
Vector3< double > &  pointOnRay,
Vector3< double > &  direction,
bool  IgnoreDistortion = false 
) const
inlinevirtual

calculates the viewing ray in the global coordinate frame from the camera center which belongs to the given image position.

The resulting vector3 may have any length.

Author
woelk 05/2006

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 281 of file ProjectionParametersDynamicLoad.hh.

virtual void BIAS::ProjectionParametersDynamicLoad::UnProjectToRay ( const HomgPoint2D pos,
Vector3< double > &  origin,
Vector3< double > &  direction,
const ProjectionParametersBase proj,
bool  ignoreDistortion = false 
) const
inlinevirtual

Calculates the view ray, which belongs to the given position on the image plane, using the given projection.

Parameters
posposition on the image plane
originorigin of the ray
directionwill be the direction of the ray
projreference to the projection which is used
ignoreDistortionoptional parameter which specifies if potential distortions are ignored (is false by default)
Author
Woelk, Husvogt
Date
May 2006, March 2012

In case of a perspective projection, the ray goes through the optical center of the given projection and the given position on the image plane.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 288 of file ProjectionParametersDynamicLoad.hh.

virtual void BIAS::ProjectionParametersBase::UnProjectToRay ( const HomgPoint2D pos,
Vector3< double > &  direction,
bool  ignoreDistortion = false 
) const
inlinevirtualinherited

Calculates the view ray, which belongs to the given position on the image plane, in global coordinates.

Parameters
posposition on the image plane
directionwill be the direction of the ray
ignoreDistortionoptional parameter which specifies if potential distortions are ignored (is false by default)
Author
Woelk, Husvogt
Date
May 2006, March 2012

In case of a perspective projection, the ray goes through the optical center of the projection and the given position on the image plane.

Definition at line 351 of file ProjectionParametersBase.hh.

References BIAS::Matrix3x3< T >::Mult().

virtual void BIAS::ProjectionParametersDynamicLoad::ValidatePose ( )
inlinevirtual

Validate currently set pose.

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 552 of file ProjectionParametersDynamicLoad.hh.

virtual double BIAS::ProjectionParametersDynamicLoad::ViewDifference ( const ProjectionParametersBase pPPB) const
inlinevirtual

Returns difference between two projections like |C1-C2|.

This function can be used to calculate inter-camera distance e.g. for ordering purposes.

Author
koeser 03/2006

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 591 of file ProjectionParametersDynamicLoad.hh.

xmlNodePtr XMLBase::XMLAdd ( const xmlNodePtr  Node,
XMLIO XMLObject 
) const
inherited

call this to add the class to a node of a given xml tree

Attention
interface changed 3/2008: return value now nodeptr of added node!

Definition at line 26 of file XMLBase.cpp.

References BIAS::XMLIO::addAttribute(), and BIAS::XMLIO::addChildNode().

int ProjectionParametersDynamicLoad::XMLGetClassName ( std::string &  TopLevelTag,
double &  Version 
) const
virtual

specialization of XML block name function

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 203 of file ProjectionParametersDynamicLoad.cpp.

int ProjectionParametersDynamicLoad::XMLIn ( const xmlNodePtr  Node,
XMLIO XMLObject 
)
virtual

specialization of XML read function

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 216 of file ProjectionParametersDynamicLoad.cpp.

int ProjectionParametersDynamicLoad::XMLOut ( const xmlNodePtr  Node,
XMLIO XMLObject 
) const
virtual

specialization of XML write function

Reimplemented from BIAS::ProjectionParametersBase.

Definition at line 209 of file ProjectionParametersDynamicLoad.cpp.

int XMLBase::XMLRead ( const std::string &  Filename)
inherited
int XMLBase::XMLReadFromString ( const std::string &  str)
inherited

reconstruct xml tree from string

Author
evers
Examples:
ExampleProjection.cpp.

Definition at line 111 of file XMLBase.cpp.

References BIAS::XMLIO::clear(), BIAS::XMLIO::getAttributeValueDouble(), BIAS::XMLIO::getNodeName(), and BIAS::XMLIO::ReadFromString().

Referenced by BIAS::IOUtils::GetProjection().

int XMLBase::XMLWrite ( const std::string &  Filename,
int  CompressionLevel = 0,
bool  AutoAddCompressionSuffix = true,
std::string  encoding = "UTF-8" 
) const
inherited
int XMLBase::XMLWriteToString ( std::string &  str,
std::string  encoding = "UTF-8" 
) const
inherited

serialize xml tree to string

Author
evers
Examples:
ExampleProjection.cpp.

Definition at line 61 of file XMLBase.cpp.

References BIAS::XMLIO::addAttribute(), BIAS::XMLIO::clear(), BIAS::XMLIO::create(), BIAS::XMLIO::SetEncoding(), and BIAS::XMLIO::WriteToString().

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const ProjectionParametersDynamicLoad p 
)
friend

Definition at line 642 of file ProjectionParametersDynamicLoad.hh.

Member Data Documentation

long int BIAS::Debug::_liDebugLevel
protectedinherited

Definition at line 510 of file Debug.hh.

Referenced by BIAS::Debug::operator=(), and BIAS::ImageBase::operator=().

long int BIAS::Debug::_liNextDebugLevel
protectedinherited

new concept, debuglevel are managed here in the debug class

Definition at line 516 of file Debug.hh.

Referenced by BIAS::Debug::operator=().

std::map<std::string, long int> BIAS::Debug::_String2Debuglevel
protectedinherited

Definition at line 517 of file Debug.hh.

Referenced by BIAS::Debug::operator=().

std::ostream BIAS::Debug::_zDebugStream
staticprotectedinherited

Definition at line 511 of file Debug.hh.

Referenced by BIAS::Debug::operator=().

double BIAS::UnscentedTransform::Alpha_
protectedinherited

the alpha parameter determines the spread of the sigma points

Definition at line 94 of file UnscentedTransform.hh.

Referenced by BIAS::UnscentedTransform::ComputeSigmaPoints_().

double BIAS::ProjectionParametersBase::aspectratio_
protectedinherited
double BIAS::UnscentedTransform::Beta_
protectedinherited

beta is used to incorporate prior knowledge of the distribution of x.

For Gaussian distributions beta = 2.0 is optiomal

Definition at line 97 of file UnscentedTransform.hh.

Referenced by BIAS::UnscentedTransform::ComputeSigmaPoints_().

std::string BIAS::ProjectionParametersDynamicLoad::className_
protected

Definition at line 635 of file ProjectionParametersDynamicLoad.hh.

Referenced by operator=().

bool BIAS::ProjectionParametersBase::CValid_
protectedinherited
ProjectionParametersBase* BIAS::ProjectionParametersDynamicLoad::dynptr_
protected

Definition at line 634 of file ProjectionParametersDynamicLoad.hh.

Referenced by BIAS::operator<<(), and operator=().

std::map<std::string, maker_t, std::less<std::string> > BIAS::ProjectionParametersDynamicLoad::factory_
protected

Definition at line 633 of file ProjectionParametersDynamicLoad.hh.

long int BIAS::Debug::GlobalDebugLevel = 0
staticprotectedinherited

Definition at line 513 of file Debug.hh.

unsigned int BIAS::ProjectionParametersBase::height_
protectedinherited
void* BIAS::ProjectionParametersDynamicLoad::hndl_
protected

Definition at line 632 of file ProjectionParametersDynamicLoad.hh.

Referenced by operator=().

std::string BIAS::ProjectionParametersBase::identifier_
protectedinherited

Multifunctional identifier.

Definition at line 806 of file ProjectionParametersBase.hh.

Referenced by BIAS::ProjectionParametersBase::operator=().

double BIAS::UnscentedTransform::Kappa_
protectedinherited

kappa is a secondary scaling parameter.

In other papers from Uhlman kappa is fixed to 1.0

Definition at line 100 of file UnscentedTransform.hh.

Referenced by BIAS::UnscentedTransform::ComputeSigmaPoints_().

std::vector<std::string> BIAS::ProjectionParametersDynamicLoad::libPaths_
protected

Definition at line 636 of file ProjectionParametersDynamicLoad.hh.

Pose BIAS::ProjectionParametersBase::Pose_
protectedinherited
double BIAS::ProjectionParametersBase::principalX_
protectedinherited

principal point in pixel coordinates (one for all zoom settings)

Definition at line 796 of file ProjectionParametersBase.hh.

Referenced by BIAS::ProjectionParametersBase::DoIntrinsicsDiffer(), BIAS::operator<<(), and BIAS::ProjectionParametersBase::operator=().

double BIAS::ProjectionParametersBase::principalY_
protectedinherited
bool BIAS::ProjectionParametersBase::QValid_
protectedinherited
bool BIAS::UnscentedTransform::UseSVD_
protectedinherited
bool BIAS::ProjectionParametersBase::ustIgnoreDistortion_
protectedinherited

Definition at line 803 of file ProjectionParametersBase.hh.

bool BIAS::ProjectionParametersBase::ustNormalize_
protectedinherited

Definition at line 804 of file ProjectionParametersBase.hh.

bool BIAS::ProjectionParametersBase::ustTransformIntoImage_
protectedinherited

unscented transform worker variables

Definition at line 802 of file ProjectionParametersBase.hh.

std::string BIAS::ProjectionParametersBase::videoSourceType_
protectedinherited
unsigned int BIAS::ProjectionParametersBase::width_
protectedinherited

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