Image Component Library (ICL)
MarkerGridBasedUndistortionOptimizer.h
Go to the documentation of this file.
1 /********************************************************************
2 ** Image Component Library (ICL) **
3 ** **
4 ** Copyright (C) 2006-2013 CITEC, University of Bielefeld **
5 ** Neuroinformatics Group **
6 ** Website: www.iclcv.org and **
7 ** http://opensource.cit-ec.de/projects/icl **
8 ** **
9 ** File : ICLMarkers/src/ICLMarkers/ **
10 ** MarkerGridBasedUndistortionOptimizer.h **
11 ** Module : ICLMarkers **
12 ** Authors: Christof Elbrechter **
13 ** **
14 ** **
15 ** GNU LESSER GENERAL PUBLIC LICENSE **
16 ** This file may be used under the terms of the GNU Lesser General **
17 ** Public License version 3.0 as published by the **
18 ** **
19 ** Free Software Foundation and appearing in the file LICENSE.LGPL **
20 ** included in the packaging of this file. Please review the **
21 ** following information to ensure the license requirements will **
22 ** be met: http://www.gnu.org/licenses/lgpl-3.0.txt **
23 ** **
24 ** The development of this software was supported by the **
25 ** Excellence Cluster EXC 277 Cognitive Interaction Technology. **
26 ** The Excellence Cluster EXC 277 is a grant of the Deutsche **
27 ** Forschungsgemeinschaft (DFG) in the context of the German **
28 ** Excellence Initiative. **
29 ** **
30 ********************************************************************/
31 
32 #pragma once
33 
35 
36 namespace icl{
37  namespace markers{
41  struct Data;
42  Data *m_data;
43 
44 
45  void undistort(const MarkerGrid &src,
46  MarkerGrid &dst, const float k[9]) const;
47 
48  public:
51 
52  int size() const;
53  void add(const MarkerGrid &grid);
54 
55  void clear();
56 
57  void setUseOpenCL(bool on);
58 
60  float computeError(const float k[9]);
61 
62  std::vector<float> optimizeSample(const float kInit[9],
63  int idx, float min, float max,
64  const std::vector<int> steps=std::vector<int>(3,10));
65 
66  std::vector<float> optimizeAutoSample(const utils::Size &imageSize);
67 
68  std::vector<float> optimizeAutoSimplex(const utils::Size &imageSize);
69 
70 
71  };
72  }
73 }
undocument this line if you encounter any issues!
Definition: Any.h:37
AdvancedMarkerGridDetector::Marker Marker
Definition: MarkerGridBasedUndistortionOptimizer.h:39
AdvancedMarkerGridDetector::MarkerGrid MarkerGrid
Definition: MarkerGridBasedUndistortionOptimizer.h:40
Data * m_data
Definition: MarkerGridBasedUndistortionOptimizer.h:41
Size class of the ICL.
Definition: Size.h:61
Definition: MarkerGridBasedUndistortionOptimizer.h:38
internal data-class the represents a more sophisticated
Definition: AdvancedMarkerGridDetector.h:81
Represents whole grid of markers.
Definition: AdvancedMarkerGridDetector.h:170
#define ICLMarkers_API
Definition: CompatMacros.h:180