NODE holds graph nodes corresponding to frames, for use in sparse bundle adjustment. Each node has a 6DOF pose, encoded as a translation vector and rotation unit quaternion (Eigen classes). These represent the pose of the node in the world frame.  
 More...
| 
Public Member Functions | 
| void | normRot () | 
|  | Normalize quaternion to unit. Problem with global derivatives near w=0, solved by a hack for now. 
 | 
| void | normRotLocal () | 
|  | Normalize quaternion to unit, without w=0 considerations. 
 | 
| void | project2im (Eigen::Vector2d &pi, const Point &p) const | 
| void | projectMono (const Point &pt, Eigen::Vector3d &proj) | 
|  | Project a 3D point into the image frame as a monocular point. 
 | 
| void | projectStereo (const Point &pt, Eigen::Vector3d &proj) | 
|  | Project a 3D point into the image frame as a stereo point. 
 | 
| void | setDr (bool local=false) | 
|  | Set angle derivates. 
 | 
| void | setDri () | 
|  | Set local angle derivatives. 
 | 
| void | setKcam (const fc::CamParams &cp) | 
|  | Sets the Kcam and baseline matrices from frame_common::CamParams. 
 | 
| void | setProjection () | 
| void | setTransform () | 
|  | Sets the transform matrices of the node. 
 | 
| 
Static Public Member Functions | 
| static void | initDr () | 
|  | Sets up constant matrices for derivatives. 
 | 
| 
Public Attributes | 
| double | baseline | 
|  | baseline for stereo 
 | 
| Eigen::Matrix< double, 3, 3 > | dRdx | 
|  | Derivatives of the rotation matrix transpose wrt quaternion xyz, used for calculating Jacobian wrt pose of a projection. 
 | 
| Eigen::Matrix< double, 3, 3 > | dRdy | 
| Eigen::Matrix< double, 3, 3 > | dRdz | 
| bool | isFixed | 
|  | For SBA, is this camera fixed or free? 
 | 
| Eigen::Matrix< double, 3, 3 > | Kcam | 
|  | Projection to frame image coordinates. pre-multiply by the frame camera matrix. 
 | 
| Eigen::Quaternion< double > | oldqrot | 
|  | Previous quaternion rotation, saved for downdating within LM. 
 | 
| Eigen::Matrix< double, 4, 1 > | oldtrans | 
|  | Previous translation, saved for downdating within LM. 
 | 
| Eigen::Quaternion< double > | qrot | 
|  | Rotation of the node expressed as a Quaternion. 
 | 
| EIGEN_MAKE_ALIGNED_OPERATOR_NEW Eigen::Matrix< double, 4, 1 >
 | trans | 
|  | Translation in homogeneous coordinates, last element is 1.0. 
 | 
| Eigen::Matrix< double, 3, 4 > | w2i | 
|  | The transform from world to image coordinates. 
 | 
| Eigen::Matrix< double, 3, 4 > | w2n | 
|  | Resultant transform from world to node coordinates. 
 | 
| 
Static Public Attributes | 
| static Eigen::Matrix3d | dRidx | 
|  | Constant matrices for derivatives. 
 | 
| static Eigen::Matrix3d | dRidy | 
| static Eigen::Matrix3d | dRidz | 
NODE holds graph nodes corresponding to frames, for use in sparse bundle adjustment. Each node has a 6DOF pose, encoded as a translation vector and rotation unit quaternion (Eigen classes). These represent the pose of the node in the world frame. 
The pose generates a 3x4 homogenous transform, taking a point in world coordinates into the node coordinates.
Additionally a 3x4 homogenous transform is composed from the pose transform and a projection transform to the frame image coordinates.
Projections from points to features are in a list. There should also be a reverse index from features to projections and points, so that matched features can tie in to points. 
Definition at line 63 of file node.h.