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

📄 levelhelpers.h

📁 this is software for visual SLAM
💻 H
字号:
// -*- c++ -*-// Copyright 2008 Isis Innovation Limited// LevelHelpers.h - a few handy tools to ease using levels.// The important thing is the XXXPos functions, which convert// image positions from one level to another. Use these whenever// transforming positions to ensure consistent operation!!#ifndef __LEVEL_HELPERS_H#define __LEVEL_HELPERS_H#include <TooN/numerics.h>#include <cvd/image_ref.h>// Set of global colours useful for drawing stuff:extern Vector<3> gavLevelColors[];// (These are filled in in KeyFrame.cc)// What is the scale of a level?inline int LevelScale(int nLevel){  return 1 << nLevel;}// 1-D transform to level zero:inline double LevelZeroPos(double dLevelPos, int nLevel){  return (dLevelPos + 0.5) * LevelScale(nLevel) - 0.5;}// 2-D transforms to level zero:inline Vector<2> LevelZeroPos(Vector<2> v2LevelPos, int nLevel){  Vector<2> v2Ans;  v2Ans[0] = LevelZeroPos(v2LevelPos[0], nLevel);  v2Ans[1] = LevelZeroPos(v2LevelPos[1], nLevel);  return v2Ans;}inline Vector<2> LevelZeroPos(CVD::ImageRef irLevelPos, int nLevel) {  Vector<2> v2Ans;  v2Ans[0] = LevelZeroPos(irLevelPos.x, nLevel);  v2Ans[1] = LevelZeroPos(irLevelPos.y, nLevel);  return v2Ans;}// 1-D transform from level zero to level N:inline double LevelNPos(double dRootPos, int nLevel){  return (dRootPos + 0.5) / LevelScale(nLevel) - 0.5;}// 2-D transform from level zero to level N:inline Vector<2> LevelNPos(Vector<2> v2RootPos, int nLevel){  Vector<2> v2Ans;  v2Ans[0] = LevelNPos(v2RootPos[0], nLevel);  v2Ans[1] = LevelNPos(v2RootPos[1], nLevel);  return v2Ans;}#endif

⌨️ 快捷键说明

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