cut_point_rs_reid.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. //cut point reid for rootstock plant
  2. #pragma once
  3. #include <time.h>
  4. #include <opencv.hpp>
  5. #include "data_def_api.h"
  6. #include "data_def.h"
  7. #include "logger.h"
  8. #include "imstorage_manager.h"
  9. using namespace cv;
  10. namespace graft_cv{
  11. class CRootStockCutPointReid{
  12. public:
  13. CRootStockCutPointReid(ConfigParam&c,CGcvLogger*pLog=0);
  14. ~CRootStockCutPointReid();
  15. int cut_point_reid( //切后切割点识别
  16. ImgInfo*, //切后图片
  17. Mat&, //切后图片,测试用
  18. const char * pre_img_id, //切前图像id
  19. PositionInfo& posinfo,
  20. map<string, Mat>& img_cache
  21. );
  22. void set_image_saver(CImStoreManager** ppis){m_ppImgSaver=ppis;}
  23. private:
  24. Mat m_preGrayImg;// gray image
  25. //Mat m_binImg;// binary image
  26. Mat m_grayImg;// gray image
  27. Mat m_edgeImg;
  28. string m_imgId;
  29. CImStoreManager** m_ppImgSaver;
  30. //返回图片,用于调试
  31. ImgInfo* m_pImginfoBinFork;//fork-y, right-x
  32. ImgInfo* m_pImgCorners;//corners, reference-point, candidate box
  33. ImgInfo* m_pImgCutPoint;//reference-point, cutpoint
  34. //global configure parameters
  35. ConfigParam& m_cparam;
  36. CGcvLogger * m_pLogger;
  37. // image segment
  38. void img_preprocess(Mat&);
  39. void clear_imginfo();
  40. };
  41. };