TrackerGOTURN.h 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. //
  2. // This file is auto-generated. Please don't modify it!
  3. //
  4. #pragma once
  5. #ifdef __cplusplus
  6. //#import "opencv.hpp"
  7. #import "opencv2/video.hpp"
  8. #import "opencv2/video/tracking.hpp"
  9. #else
  10. #define CV_EXPORTS
  11. #endif
  12. #import <Foundation/Foundation.h>
  13. #import "Tracker.h"
  14. @class TrackerGOTURNParams;
  15. NS_ASSUME_NONNULL_BEGIN
  16. // C++: class TrackerGOTURN
  17. /**
  18. * the GOTURN (Generic Object Tracking Using Regression Networks) tracker
  19. *
  20. * GOTURN (CITE: GOTURN) is kind of trackers based on Convolutional Neural Networks (CNN). While taking all advantages of CNN trackers,
  21. * GOTURN is much faster due to offline training without online fine-tuning nature.
  22. * GOTURN tracker addresses the problem of single target tracking: given a bounding box label of an object in the first frame of the video,
  23. * we track that object through the rest of the video. NOTE: Current method of GOTURN does not handle occlusions; however, it is fairly
  24. * robust to viewpoint changes, lighting changes, and deformations.
  25. * Inputs of GOTURN are two RGB patches representing Target and Search patches resized to 227x227.
  26. * Outputs of GOTURN are predicted bounding box coordinates, relative to Search patch coordinate system, in format X1,Y1,X2,Y2.
  27. * Original paper is here: <http://davheld.github.io/GOTURN/GOTURN.pdf>
  28. * As long as original authors implementation: <https://github.com/davheld/GOTURN#train-the-tracker>
  29. * Implementation of training algorithm is placed in separately here due to 3d-party dependencies:
  30. * <https://github.com/Auron-X/GOTURN_Training_Toolkit>
  31. * GOTURN architecture goturn.prototxt and trained model goturn.caffemodel are accessible on opencv_extra GitHub repository.
  32. *
  33. * Member of `Video`
  34. */
  35. CV_EXPORTS @interface TrackerGOTURN : Tracker
  36. #ifdef __cplusplus
  37. @property(readonly)cv::Ptr<cv::TrackerGOTURN> nativePtrTrackerGOTURN;
  38. #endif
  39. #ifdef __cplusplus
  40. - (instancetype)initWithNativePtr:(cv::Ptr<cv::TrackerGOTURN>)nativePtr;
  41. + (instancetype)fromNative:(cv::Ptr<cv::TrackerGOTURN>)nativePtr;
  42. #endif
  43. #pragma mark - Methods
  44. //
  45. // static Ptr_TrackerGOTURN cv::TrackerGOTURN::create(TrackerGOTURN_Params parameters = TrackerGOTURN::Params())
  46. //
  47. /**
  48. * Constructor
  49. * @param parameters GOTURN parameters TrackerGOTURN::Params
  50. */
  51. + (TrackerGOTURN*)create:(TrackerGOTURNParams*)parameters NS_SWIFT_NAME(create(parameters:));
  52. /**
  53. * Constructor
  54. */
  55. + (TrackerGOTURN*)create NS_SWIFT_NAME(create());
  56. @end
  57. NS_ASSUME_NONNULL_END