ObjectData.cpp 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. //
  2. // Created by wrede on 19.04.16.
  3. //
  4. #include <cmath>
  5. #include "ObjectData.h"
  6. #include "../util/MyMath.h"
  7. namespace core
  8. {
  9. ObjectData::ObjectData()
  10. {
  11. frame_index_ = 0;
  12. is_virtual_ = true;
  13. detection_score_ = 0.0;
  14. }
  15. ObjectData::ObjectData(std::size_t frame_index)
  16. {
  17. frame_index_ = frame_index;
  18. is_virtual_ = false;
  19. detection_score_ = 0.0;
  20. }
  21. std::size_t ObjectData::GetFrameIndex() const
  22. {
  23. return frame_index_;
  24. }
  25. bool ObjectData::IsVirtual() const
  26. {
  27. return is_virtual_;
  28. }
  29. void ObjectData::Print(std::ostream &os) const
  30. {
  31. os << "Object in frame " << frame_index_;
  32. }
  33. double ObjectData::CompareTo(ObjectDataPtr obj) const
  34. {
  35. return 0.0;
  36. }
  37. ObjectDataPtr ObjectData::Interpolate(ObjectDataPtr obj,
  38. double fraction) const
  39. {
  40. size_t index = static_cast<size_t>(
  41. util::MyMath::Lerp(
  42. GetFrameIndex(), obj->GetFrameIndex(), fraction));
  43. return ObjectDataPtr(new ObjectData(index));
  44. }
  45. std::ostream& operator<<(std::ostream &os, const ObjectData &obj)
  46. {
  47. obj.Print(os);
  48. return os;
  49. }
  50. void ObjectData::SetFrameIndex(size_t index)
  51. {
  52. frame_index_ = index;
  53. }
  54. void ObjectData::Visualize(cv::Mat& image, cv::Scalar& color) const
  55. {
  56. /* EMPTY */
  57. }
  58. void ObjectData::SetDetectionScore(double score)
  59. {
  60. detection_score_ = score;
  61. }
  62. double ObjectData::GetDetectionScore()
  63. {
  64. return detection_score_;
  65. }
  66. }