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 <string>
10 #include <unordered_map>
11 #include <iostream>
12 #include <opencv2/core/core.hpp>
13 #include <memory>
14 
15 namespace core
16 {
17  class ObjectData;
18  typedef std::shared_ptr<ObjectData> ObjectDataPtr;
19 
20  //TODO RENAME ObjectDataBase / ObjectBase / DataBase / AObject / DetectionBase ...
25  class ObjectData
26  {
27  private:
31  const bool is_virtual_;
32 
36  std::size_t frame_index_;
37 
42  double detection_score_;
43 
48  virtual void Print(std::ostream& os) const;
49  public:
53  ObjectData();
54 
59  ObjectData(std::size_t frame_index);
60 
65  std::size_t GetFrameIndex() const;
66 
71  void SetFrameIndex(size_t index);
72 
77  void SetDetectionScore(double score);
78 
83  double GetDetectionScore() const;
84 
89  bool IsVirtual() const;
90 
91  //TODO RENAME ObjectDataComparable / IComparable ...
97  virtual double CompareTo(ObjectDataPtr obj) const;
98 
108  virtual ObjectDataPtr Interpolate(ObjectDataPtr obj, double fraction) const;
109 
117  virtual void Visualize(cv::Mat& image, cv::Scalar& color) const;
118 
126  friend std::ostream& operator<<(std::ostream& os, const ObjectData& obj);
127  };
128 }
129 
130 
131 #endif //GBMOT_NODEDATA_H
friend std::ostream & operator<<(std::ostream &os, const ObjectData &obj)
Definition: ObjectData.cpp:59
virtual ObjectDataPtr Interpolate(ObjectDataPtr obj, double fraction) const
Definition: ObjectData.cpp:51
Definition: DetectionSequence.cpp:7
double GetDetectionScore() const
Definition: ObjectData.cpp:80
virtual double CompareTo(ObjectDataPtr obj) const
Definition: ObjectData.cpp:45
std::size_t GetFrameIndex() const
Definition: ObjectData.cpp:23
bool IsVirtual() const
Definition: ObjectData.cpp:28
void SetFrameIndex(size_t index)
Definition: ObjectData.cpp:65
Definition: ObjectData.h:25
virtual void Visualize(cv::Mat &image, cv::Scalar &color) const
Definition: ObjectData.cpp:70
ObjectData()
Definition: ObjectData.cpp:11
void SetDetectionScore(double score)
Definition: ObjectData.cpp:75