SRBA: Sparser Relative Bundle Adjustment
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends
Public Attributes
srba::TRBA_Problem_state< kf2kf_pose_t, landmark_t, obs_t, RBA_OPTIONS >::TSpanningTree::TSpanningTreeSym Struct Reference

Detailed Description

template<class kf2kf_pose_t, class landmark_t, class obs_t, class RBA_OPTIONS>
struct srba::TRBA_Problem_state< kf2kf_pose_t, landmark_t, obs_t, RBA_OPTIONS >::TSpanningTree::TSpanningTreeSym

The "symbolic" part of the spanning tree

Definition at line 591 of file srba_types.h.

#include <srba_types.h>

List of all members.

Public Attributes

next_edge_maps_t next_edge
all_edges_maps_t all_edges

Member Data Documentation

template<class kf2kf_pose_t, class landmark_t, class obs_t, class RBA_OPTIONS>
all_edges_maps_t srba::TRBA_Problem_state< kf2kf_pose_t, landmark_t, obs_t, RBA_OPTIONS >::TSpanningTree::TSpanningTreeSym::all_edges

From the previous data, we can build this alternative, more convenient representation: map[SOURCE] |-> map[TARGET] |-> vector of edges to follow.

Note:
This table is symmetric since the shortest path i=>j is the same (in reverse order) than that for j=>i. So, we only store the entries for [i][j], i>j.

Definition at line 607 of file srba_types.h.

template<class kf2kf_pose_t, class landmark_t, class obs_t, class RBA_OPTIONS>
next_edge_maps_t srba::TRBA_Problem_state< kf2kf_pose_t, landmark_t, obs_t, RBA_OPTIONS >::TSpanningTree::TSpanningTreeSym::next_edge

Given all interesting spanning tree roots (=SOURCE), this structure holds: map[SOURCE] |-> map[TARGET] |-> next node to follow

Note:
This defines a table with symmetric distances D(i,j)=D(j,i) but with asymetric next nodes N(i,j)!=N(j,i). So, we store both [i][j] and [j][i] in all cases.

Definition at line 599 of file srba_types.h.


The documentation for this struct was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends