Tracore
ObjectData.h
1 //
2 // Created by wrede on 19.04.16.
3 //
4 
5 #ifndef GBMOT_NODEDATA_H
6 #define GBMOT_NODEDATA_H
7 
8 
9 #include "Definitions.h"
10 #include <string>
11 #include <unordered_map>
12 #include <iostream>
13 #include <opencv2/core/core.hpp>
14 
15 namespace core
16 {
17  //TODO RENAME ObjectDataBase / ObjectBase / DataBase / AObject / DetectionBase ...
22  class ObjectData
23  {
24  private:
28  bool is_virtual_;
29 
33  std::size_t frame_index_;
34 
39  double detection_score_;
40 
45  virtual void Print(std::ostream& os) const;
46  public:
50  ObjectData();
51 
56  ObjectData(std::size_t frame_index);
57 
62  std::size_t GetFrameIndex() const;
63 
68  void SetFrameIndex(size_t index);
69 
74  void SetDetectionScore(double score);
75 
80  double GetDetectionScore();
81 
86  bool IsVirtual() const;
87 
88  //TODO RENAME ObjectDataComparable / IComparable ...
94  virtual double CompareTo(ObjectDataPtr obj) const;
95 
105  virtual ObjectDataPtr Interpolate(ObjectDataPtr obj, double fraction) const;
106 
114  virtual void Visualize(cv::Mat& image, cv::Scalar& color) const;
115 
123  friend std::ostream& operator<<(std::ostream& os, const ObjectData& obj);
124  };
125 }
126 
127 
128 #endif //GBMOT_NODEDATA_H
friend std::ostream & operator<<(std::ostream &os, const ObjectData &obj)
Definition: ObjectData.cpp:55
virtual double CompareTo(ObjectDataPtr obj) const
Definition: ObjectData.cpp:40
Definition: Definitions.h:11
virtual void Visualize(cv::Mat &image, cv::Scalar &color) const
Definition: ObjectData.cpp:66
bool IsVirtual() const
Definition: ObjectData.cpp:30
virtual ObjectDataPtr Interpolate(ObjectDataPtr obj, double fraction) const
Definition: ObjectData.cpp:45
void SetFrameIndex(size_t index)
Definition: ObjectData.cpp:61
Definition: ObjectData.h:22
std::size_t GetFrameIndex() const
Definition: ObjectData.cpp:25
ObjectData()
Definition: ObjectData.cpp:11
double GetDetectionScore()
Definition: ObjectData.cpp:76
void SetDetectionScore(double score)
Definition: ObjectData.cpp:71