MiniPatch.h
Go to the documentation of this file.
00001 // -*- c++ -*-
00002 // Copyright 2008 Isis Innovation Limited
00003 //
00004 // MiniPatch.h
00005 //
00006 // Declares MiniPatch class
00007 // 
00008 // This is a simple pixel-patch class, used for tracking small patches
00009 // it's used by the tracker for building the initial map
00010 
00011 #ifndef __MINI_PATCH_H
00012 #define __MINI_PATCH_H
00013 
00014 #include <cvd/image.h>
00015 #include <cvd/byte.h>
00016 #include <cvd/utility.h>
00017 #include <TooN/TooN.h>
00018 using namespace TooN;
00019 #include <vector>
00020 
00021 struct MiniPatch
00022 {
00023   void SampleFromImage(CVD::ImageRef irPos, CVD::BasicImage<CVD::byte> &im);  // Copy pixels out of source image
00024   bool FindPatch(CVD::ImageRef &irPos,           // Find patch in a new image
00025                  CVD::BasicImage<CVD::byte> &im,
00026                  int nRange,
00027                  std::vector<CVD::ImageRef> &vCorners,
00028                  std::vector<int> *pvRowLUT = NULL);
00029 
00030   inline int SSDAtPoint(CVD::BasicImage<CVD::byte> &im, const CVD::ImageRef &ir); // Score function
00031   static int mnHalfPatchSize;     // How big is the patch?
00032   static int mnRange;             // How far to search? 
00033   static int mnMaxSSD;            // Max SSD for matches?
00034   CVD::Image<CVD::byte> mimOrigPatch;  // Original pixels
00035 };
00036 
00037 #endif


ptam
Author(s): Stephan Weiss, Markus Achtelik, Simon Lynen
autogenerated on Tue Jan 7 2014 11:12:22