⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mappoint.h

📁 this is software for visual SLAM
💻 H
字号:
// -*- c++ -*-// Copyright 2008 Isis Innovation Limited// // This file declares the MapPoint class// // The map is made up of a bunch of mappoints.// Each one is just a 3D point in the world;// it also includes information on where and in which key-frame the point was// originally made from, so that pixels from that keyframe can be used// to search for that point.// Also stores stuff like inlier/outlier counts, and privat information for // both Tracker and MapMaker.#ifndef __MAP_POINT_H#define __MAP_POINT_H#include <TooN/numerics.h>#include <cvd/image_ref.h>#include <cvd/timer.h>#include <set>class KeyFrame;class TrackerData;class MapMakerData;struct MapPoint{  // Constructor inserts sensible defaults and zeros pointers.  inline MapPoint()  {    bBad = false;    pTData = NULL;    pMMData = NULL;    nMEstimatorOutlierCount = 0;    nMEstimatorInlierCount = 0;    dCreationTime = CVD::timer.get_time();  };    // Where in the world is this point? The main bit of information, really.  Vector<3> v3WorldPos;  // Is it a dud? In that case it'll be moved to the trash soon.  bool bBad;    // What pixels should be used to search for this point?  KeyFrame *pPatchSourceKF; // The KeyFrame the point was originally made in  int nSourceLevel;         // Pyramid level in source KeyFrame  CVD::ImageRef irCenter;   // This is in level-coords in the source pyramid level    // What follows next is a bunch of intermediate vectors - they all lead up  // to being able to calculate v3Pixel{Down,Right}_W, which the PatchFinder  // needs for patch warping!    Vector<3> v3Center_NC;             // Unit vector in Source-KF coords pointing at the patch center  Vector<3> v3OneDownFromCenter_NC;  // Unit vector in Source-KF coords pointing towards one pixel down of the patch center  Vector<3> v3OneRightFromCenter_NC; // Unit vector in Source-KF coords pointing towards one pixel right of the patch center  Vector<3> v3Normal_NC;             // Unit vector in Source-KF coords indicating patch normal    Vector<3> v3PixelDown_W;           // 3-Vector in World coords corresponding to a one-pixel move down the source image  Vector<3> v3PixelRight_W;          // 3-Vector in World coords corresponding to a one-pixel move right the source image  void RefreshPixelVectors();        // Calculates above two vectors    // Info for the Mapmaker (not to be trashed by the tracker:)  MapMakerData *pMMData;    // Info for the Tracker (not to be trashed by the MapMaker:)  TrackerData *pTData;    // Info provided by the tracker for the mapmaker:  int nMEstimatorOutlierCount;  int nMEstimatorInlierCount;    // Random junk (e.g. for visualisation)  double dCreationTime; //timer.get_time() time of creation};#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -