Basic Image AlgorithmS Library  2.8.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
SphericalRectification.hh
1 /*
2  This file is part of the BIAS library (Basic ImageAlgorithmS).
3 
4  Copyright (C) 2003-2009 (see file CONTACT for details)
5  Multimediale Systeme der Informationsverarbeitung
6  Institut fuer Informatik
7  Christian-Albrechts-Universitaet Kiel
8 
9 
10  BIAS is free software; you can redistribute it and/or modify
11  it under the terms of the GNU Lesser General Public License as published by
12  the Free Software Foundation; either version 2.1 of the License, or
13  (at your option) any later version.
14 
15  BIAS is distributed in the hope that it will be useful,
16  but WITHOUT ANY WARRANTY; without even the implied warranty of
17  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  GNU Lesser General Public License for more details.
19 
20  You should have received a copy of the GNU Lesser General Public License
21  along with BIAS; if not, write to the Free Software
22  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
23 */
24 
25 #include <Base/Common/BIASpragmaStart.hh>
26 
27 #ifndef __SphericalRectification_hh__
28 #define __SphericalRectification_hh__
29 
30 #include <Image/RectificationViaProjectionMappingBase.hh>
31 
32 namespace BIAS {
33 
34  /** Class implements rectification by image \b projection onto a sphere.
35  * The sphere is resampled using the great circles camera implementation
36  * from ProjectionParametersGreatCircles. The input projections are for now
37  * restricted to *Spherical cameras.
38  *
39  * \ingroup g_filter
40  * \author bartczak 12/2006
41  */
42  template <class InputStorageType, class OutputStorageType>
43  class BIASImage_EXPORT SphericalRectification :
44  public RectificationViaProjectionMappingBase<InputStorageType,
45  OutputStorageType>
46  {
47  public:
48  virtual ~SphericalRectification();
50 
51  /** only spherical cameras are allowed for now */
52  virtual bool
53  IsInputCameraValid(const BIAS::Image<InputStorageType>& img,
54  const BIAS::ProjectionParametersBase* proj);
55 
56  protected:
57  virtual int DetermineRectificationParameters_();
58  };
59 
60 }//namespace
61 #endif
62 #include <Base/Common/BIASpragmaEnd.hh>
63 
Base class for rectification implementations that make use of projections to represent rectified stat...
Class implements rectification by image projection onto a sphere.
Camera parameters which define the mapping between rays in the camera coordinate system and pixels in...