Drive Engine  1.0.0
Plateforme de reconstruction 3D
DefaultCalibrationInfoList.h
1 // Copyright (c) 2015. All rights reserved to DriveEngine Team.
2 
3 #pragma once
4 
5 #include "Collections/ICalibrationInfoList.h"
6 #include "Datatypes/ICalibrationInfo.h"
7 #include "Datatypes/ICalibrationInfoListPair.h"
8 #include "ImplementationUtilities/ImplementationUtilities.h"
9 #include "ImplementationUtilities/DictionnaryImplementationUtilities.h"
10 #include <map>
11 
12 namespace DriveEngine
13 {
14  typedef std::pair<const IImage*, const IImage*> ImagesPair;
15  typedef std::map<ImagesPair, double*> FundamentalMatrixes;
16  typedef std::pair<ImagesPair, double*> FundamentalMatrixesPair;
17 
24  {
26  DESTRUCTOR_H(DefaultCalibrationInfoList);
27 
28  GENERATE_DICTIONNARY_H(IImage, ICalibrationInfo, ICalibrationInfoListPair);
29 
30  private:
31  FundamentalMatrixes fundamenalMats;
32 
33  public:
34  virtual double* GetFundamentalMatrix(const IImage &firstImage, const IImage &secondImage) const;
35  virtual void AddFundamentalMatrix(const IImage &firstImage, const IImage &secondImage, double (&fundamentalMatrix)[16]);
36  };
37 }
The image datatype interface.
Definition: IImage.h:22
virtual void AddFundamentalMatrix(const IImage &firstImage, const IImage &secondImage, double(&fundamentalMatrix)[16])
Adds an element of a fundamental matrix.
Definition: DefaultCalibrationInfoList.cpp:34
The calibration info list interface.
Definition: ICalibrationInfoList.h:14
The camera matrix pair interface.
Definition: ICalibrationInfoListPair.h:13
Definition: DefaultCalibrationInfoList.h:12
Default implementation of a CalibrationInfoList.
Definition: DefaultCalibrationInfoList.h:23
virtual double * GetFundamentalMatrix(const IImage &firstImage, const IImage &secondImage) const
Gets a 4 by 4 fundamental matrix.
Definition: DefaultCalibrationInfoList.cpp:20
The camera matrix datatype interface.
Definition: ICalibrationInfo.h:11