8#ifndef META_OCEAN_TRACKING_SLAM_SLAM_DEBUG_ELEMENTS_H
9#define META_OCEAN_TRACKING_SLAM_SLAM_DEBUG_ELEMENTS_H
51 static constexpr bool allowDebugging_ =
false;
78 inline void setOutputRotation(
const int angle);
146 int outputRotationAngle_ = 0;
151 ocean_assert(angle % 90 == 0);
This class implements the abstract base class for all AnyCamera objects.
Definition AnyCamera.h:131
This class implements the base class for a container for debug elements.
Definition DebugElements.h:29
This class implements Ocean's image class.
Definition Frame.h:1879
This template class is the base class for all singleton objects.
Definition Singleton.h:71
This class holds the camera pose of a camera in relation to the world.
Definition CameraPose.h:46
This class implements an occupancy array allowing to keep track of occupied and unoccupied bins in a ...
Definition OccupancyArray.h:32
The class extends DebugElements to provide visual debugging output for various SLAM components such a...
Definition SLAMDebugElements.h:45
void updateImagePoints(const Frame &yFrame, const Index32 frameIndex, const PointTrackMap &pointTrackMap)
Updates the debug element based on 2D image point tracks.
int outputRotationAngle_
The angle of the output rotation, in degrees.
Definition SLAMDebugElements.h:146
void updateObjectPoints(const Frame &yFrame, const AnyCamera &camera, const CameraPose &cameraPose, const Index32 frameIndex, const LocalizedObjectPointMap &localizedObjectPointMap, const bool showAll=true)
Updates the debug element based on projected 3D object points.
void updateResult(const Frame &yFrame, const AnyCamera &camera, const CameraPose &cameraPose, const Index32 frameIndex, const PointTrackMap &pointTrackMap, const LocalizedObjectPointMap &localizedObjectPointMap, const Triangle3 *objectTriangles, const size_t numberObjectTriangles)
Updates the debug element based on the comprehensive SLAM tracking result.
void updateTrackedImagePoints(const Frame &yFrame, const Vector2 *previousImagePoints, const Vector2 *currentImagePoints, uint8_t *validCorrespondences, const size_t numberCorrespondences)
Updates the debug element based on tracked image point correspondences.
void setOutputRotation(const int angle)
Sets the angle of the output rotation.
Definition SLAMDebugElements.h:149
void updateOccupancyArray(const Frame &yFrame, const OccupancyArray &occupancyArray)
Updates the debug element based on the occupancy array.
ElementId
Definition of element identifiers for debug visualizations.
Definition SLAMDebugElements.h:57
@ EI_OCCUPANCY_ARRAY
The id of the debug element for the occupancy array visualization.
Definition SLAMDebugElements.h:61
@ EI_NEW_FEATURES
The id of the debug element for newly detected features.
Definition SLAMDebugElements.h:65
@ EI_OBJECT_POINTS
The id of the debug element for 3D object point projections.
Definition SLAMDebugElements.h:67
@ EI_TRACKED_IMAGE_POINTS
The id of the debug element for tracked image point correspondences.
Definition SLAMDebugElements.h:63
@ EI_IMAGE_POINTS
The id of the debug element for 2D image point tracks.
Definition SLAMDebugElements.h:69
This class implements a 3D triangle.
Definition Triangle3.h:80
uint32_t Index32
Definition of a 32 bit index value.
Definition Base.h:84
std::unordered_map< Index32, LocalizedObjectPoint > LocalizedObjectPointMap
Definition of an unordered map mapping object point ids to localized object points.
Definition LocalizedObjectPoint.h:43
std::unordered_map< Index32, PointTrack > PointTrackMap
Definition of an unordered map mapping object point ids to point tracks.
Definition PointTrack.h:32
The namespace covering the entire Ocean framework.
Definition Accessor.h:15