Public Member Functions | Private Attributes
slamNode Class Reference

Manages the SLAM procedure. More...

#include <monoslam.hpp>

List of all members.

Public Member Functions

void assignPose (geometry_msgs::PoseStamped &pPose, cv::Mat &C)
double assignStartingFrames (unsigned int best_iii, unsigned int best_jjj, double *keyframe_scores, cv::Mat &startingTrans)
bool checkForKeyframe ()
void clearSystem ()
void estimatePose (vector< unsigned int > &basisNodes, unsigned int idx)
bool findStartingFrames ()
bool formInitialStructure ()
void getBasisNodes (vector< unsigned int > &basisNodes, unsigned int idx)
void getGuidingPose (cv::Mat *srcs, cv::Mat &dst, unsigned int idx)
void handle_info (const sensor_msgs::CameraInfoConstPtr &info_msg)
void handle_tracks (const thermalvis::feature_tracksConstPtr &msg)
void main_loop (const ros::TimerEvent &event)
void prepareForTermination ()
void processNextFrame ()
void processScorecard ()
void refreshPoses ()
void serverCallback (thermalvis::monoslamConfig &config, uint32_t level)
void show_poses ()
 slamNode (ros::NodeHandle &nh, slamData startupData)
bool stillTracking ()
void update_cameras_to_pnp ()
void update_display ()

Private Attributes

cv::Mat ACM [MAX_FRAMES]
cv::Mat ACM2 [MAX_FRAMES]
unsigned int baseConnectionNum
int bicolor
cv::Mat blank
timeAnalyzer bundleAdjustmentTime
boost::mutex cam_mutex
ros::Publisher camera_pub
cv::Point3d cloudCentroid [MAX_SEGMENTS]
cv::Point3d cloudStdDeviation [MAX_SEGMENTS]
slamData configData
geometry_msgs::PoseStamped currentPose
int currentPoseIndex
struct timeval cycle_timer
int decimation
SysSBA display_sys
double distanceConstraint
double elapsedTime
ofstream error_file
char error_filename [256]
bool evaluationCompleted
ofstream evaluationStream
cv::Mat eye4
dynamic_reconfigure::Server
< thermalvis::monoslamConfig >
::CallbackType 
f
bool f1
cv::Mat F_arr [MAX_FRAMES]
vector< featureTrackfeatureTrackVector
bool firstIteration
vector< unsigned int > framesReceived
cv::Mat H_arr [MAX_FRAMES]
ros::Subscriber info_sub
bool infoProcessed
bool isTracking
keyframeStore keyframe_store
boost::mutex keyframes_mutex
cv::Mat keyframeTestFlags
cv::Mat keyframeTestScores
unsigned int lastBasePose
int latestFrame
boost::mutex main_mutex
double minimumKeyframeScore
unsigned int nextFrame
char nodeName [256]
ros::Publisher path_pub
ros::Publisher points_pub
ros::Publisher pose_pub
char pose_pub_name [256]
timeAnalyzer poseEstimationTime
unsigned int putativelyEstimatedFrames
bool repetitionNoted
double ** scorecardParams
dynamic_reconfigure::Server
< thermalvis::monoslamConfig > 
server
unsigned int startingTracksCount
bool structureFormed
bool structureValid
SysSBA sys
ros::Timer timer
timeAnalyzer trackHandlingTime
boost::mutex tracks_mutex
ros::Subscriber tracks_sub
timeAnalyzer triangulationTime

Detailed Description

Manages the SLAM procedure.

Definition at line 117 of file monoslam.hpp.


Constructor & Destructor Documentation

slamNode::slamNode ( ros::NodeHandle nh,
slamData  startupData 
)

Definition at line 2150 of file monoslam.cpp.


Member Function Documentation

void slamNode::assignPose ( geometry_msgs::PoseStamped &  pPose,
cv::Mat &  C 
)

Definition at line 2063 of file monoslam.cpp.

double slamNode::assignStartingFrames ( unsigned int  best_iii,
unsigned int  best_jjj,
double *  keyframe_scores,
cv::Mat &  startingTrans 
)

Definition at line 1478 of file monoslam.cpp.

Definition at line 115 of file monoslam.cpp.

Definition at line 1455 of file monoslam.cpp.

void slamNode::estimatePose ( vector< unsigned int > &  basisNodes,
unsigned int  idx 
)

Definition at line 342 of file monoslam.cpp.

Definition at line 1280 of file monoslam.cpp.

Definition at line 1502 of file monoslam.cpp.

void slamNode::getBasisNodes ( vector< unsigned int > &  basisNodes,
unsigned int  idx 
)

Definition at line 414 of file monoslam.cpp.

void slamNode::getGuidingPose ( cv::Mat *  srcs,
cv::Mat &  dst,
unsigned int  idx 
)

Definition at line 235 of file monoslam.cpp.

void slamNode::handle_info ( const sensor_msgs::CameraInfoConstPtr &  info_msg)

Definition at line 1148 of file monoslam.cpp.

void slamNode::handle_tracks ( const thermalvis::feature_tracksConstPtr &  msg)

Definition at line 865 of file monoslam.cpp.

void slamNode::main_loop ( const ros::TimerEvent event)

Definition at line 976 of file monoslam.cpp.

Definition at line 1276 of file monoslam.cpp.

Definition at line 494 of file monoslam.cpp.

Definition at line 55 of file monoslam.cpp.

Definition at line 1237 of file monoslam.cpp.

void slamNode::serverCallback ( thermalvis::monoslamConfig &  config,
uint32_t  level 
)

Definition at line 2100 of file monoslam.cpp.

Definition at line 211 of file monoslam.cpp.

bool slamNode::stillTracking ( ) [inline]

Definition at line 248 of file monoslam.hpp.

Definition at line 854 of file monoslam.cpp.

Definition at line 818 of file monoslam.cpp.


Member Data Documentation

cv::Mat slamNode::ACM[MAX_FRAMES] [private]

Definition at line 179 of file monoslam.hpp.

cv::Mat slamNode::ACM2[MAX_FRAMES] [private]

Definition at line 179 of file monoslam.hpp.

unsigned int slamNode::baseConnectionNum [private]

Definition at line 129 of file monoslam.hpp.

int slamNode::bicolor [private]

Definition at line 121 of file monoslam.hpp.

cv::Mat slamNode::blank [private]

Definition at line 160 of file monoslam.hpp.

Definition at line 203 of file monoslam.hpp.

boost::mutex slamNode::cam_mutex [private]

Definition at line 206 of file monoslam.hpp.

Definition at line 153 of file monoslam.hpp.

cv::Point3d slamNode::cloudCentroid[MAX_SEGMENTS] [private]

Definition at line 175 of file monoslam.hpp.

cv::Point3d slamNode::cloudStdDeviation[MAX_SEGMENTS] [private]

Definition at line 175 of file monoslam.hpp.

Definition at line 133 of file monoslam.hpp.

geometry_msgs::PoseStamped slamNode::currentPose [private]

Definition at line 188 of file monoslam.hpp.

Definition at line 190 of file monoslam.hpp.

struct timeval slamNode::cycle_timer [private]

Definition at line 168 of file monoslam.hpp.

int slamNode::decimation [private]

Definition at line 120 of file monoslam.hpp.

SysSBA slamNode::display_sys [private]

Definition at line 151 of file monoslam.hpp.

double slamNode::distanceConstraint [private]

Definition at line 171 of file monoslam.hpp.

double slamNode::elapsedTime [private]

Definition at line 169 of file monoslam.hpp.

ofstream slamNode::error_file [private]

Definition at line 145 of file monoslam.hpp.

char slamNode::error_filename[256] [private]

Definition at line 146 of file monoslam.hpp.

Definition at line 127 of file monoslam.hpp.

ofstream slamNode::evaluationStream [private]

Definition at line 135 of file monoslam.hpp.

cv::Mat slamNode::eye4 [private]

Definition at line 141 of file monoslam.hpp.

dynamic_reconfigure::Server<thermalvis::monoslamConfig>::CallbackType slamNode::f [private]

Definition at line 212 of file monoslam.hpp.

bool slamNode::f1 [private]

Definition at line 125 of file monoslam.hpp.

cv::Mat slamNode::F_arr[MAX_FRAMES] [private]

Definition at line 177 of file monoslam.hpp.

Definition at line 173 of file monoslam.hpp.

bool slamNode::firstIteration [private]

Definition at line 158 of file monoslam.hpp.

vector<unsigned int> slamNode::framesReceived [private]

Definition at line 194 of file monoslam.hpp.

cv::Mat slamNode::H_arr[MAX_FRAMES] [private]

Definition at line 177 of file monoslam.hpp.

Definition at line 149 of file monoslam.hpp.

bool slamNode::infoProcessed [private]

Definition at line 166 of file monoslam.hpp.

bool slamNode::isTracking [private]

Definition at line 123 of file monoslam.hpp.

Definition at line 176 of file monoslam.hpp.

boost::mutex slamNode::keyframes_mutex [private]

Definition at line 208 of file monoslam.hpp.

cv::Mat slamNode::keyframeTestFlags [private]

Definition at line 181 of file monoslam.hpp.

cv::Mat slamNode::keyframeTestScores [private]

Definition at line 181 of file monoslam.hpp.

unsigned int slamNode::lastBasePose [private]

Definition at line 196 of file monoslam.hpp.

int slamNode::latestFrame [private]

Definition at line 164 of file monoslam.hpp.

boost::mutex slamNode::main_mutex [private]

Definition at line 209 of file monoslam.hpp.

Definition at line 192 of file monoslam.hpp.

unsigned int slamNode::nextFrame [private]

Definition at line 137 of file monoslam.hpp.

char slamNode::nodeName[256] [private]

Definition at line 183 of file monoslam.hpp.

Definition at line 152 of file monoslam.hpp.

Definition at line 154 of file monoslam.hpp.

Definition at line 185 of file monoslam.hpp.

char slamNode::pose_pub_name[256] [private]

Definition at line 186 of file monoslam.hpp.

Definition at line 202 of file monoslam.hpp.

unsigned int slamNode::putativelyEstimatedFrames [private]

Definition at line 139 of file monoslam.hpp.

bool slamNode::repetitionNoted [private]

Definition at line 143 of file monoslam.hpp.

double** slamNode::scorecardParams [private]

Definition at line 131 of file monoslam.hpp.

dynamic_reconfigure::Server<thermalvis::monoslamConfig> slamNode::server [private]

Definition at line 211 of file monoslam.hpp.

unsigned int slamNode::startingTracksCount [private]

Definition at line 198 of file monoslam.hpp.

bool slamNode::structureFormed [private]

Definition at line 162 of file monoslam.hpp.

bool slamNode::structureValid [private]

Definition at line 162 of file monoslam.hpp.

SysSBA slamNode::sys [private]

Definition at line 151 of file monoslam.hpp.

Definition at line 156 of file monoslam.hpp.

Definition at line 200 of file monoslam.hpp.

boost::mutex slamNode::tracks_mutex [private]

Definition at line 207 of file monoslam.hpp.

Definition at line 148 of file monoslam.hpp.

Definition at line 201 of file monoslam.hpp.


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


thermalvis
Author(s): Stephen Vidas
autogenerated on Sun Jan 5 2014 11:38:45