wheel-detector.h 706 B

1234567891011121314151617181920212223242526272829
  1. #pragma once
  2. #include "inference.h"
  3. struct Object {
  4. cv::Rect_<float> rect;
  5. int label = 0;
  6. float prob = 0.0;
  7. cv::Mat boxMask;
  8. };
  9. class TensorrtWheelDetector{
  10. public:
  11. TensorrtWheelDetector(const std::string &model_file, const std::string &class_file);
  12. ~TensorrtWheelDetector();
  13. bool detect(cv::Mat& img,std::vector<Object>& objs);
  14. bool detect(cv::Mat& img,std::vector<Object>& objs,cv::Mat& res);
  15. static std::vector<cv::Point> getPointsFromObj(const Object &obj);
  16. private:
  17. Inference* yolov8_;
  18. cv::Size imgsz_;
  19. int seg_h_ = 120;
  20. int seg_w_ = 160;
  21. int seg_channels_ = 32;
  22. };