pyopencv_linemod.hpp 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. #ifdef HAVE_OPENCV_RGBD
  2. #include "opencv2/core/saturate.hpp"
  3. template<> struct pyopencvVecConverter<linemod::Match>
  4. {
  5. static bool to(PyObject* obj, std::vector<linemod::Match>& value, const ArgInfo& info)
  6. {
  7. return pyopencv_to_generic_vec(obj, value, info);
  8. }
  9. static PyObject* from(const std::vector<linemod::Match>& value)
  10. {
  11. return pyopencv_from_generic_vec(value);
  12. }
  13. };
  14. template<> struct pyopencvVecConverter<linemod::Template>
  15. {
  16. static bool to(PyObject* obj, std::vector<linemod::Template>& value, const ArgInfo& info)
  17. {
  18. return pyopencv_to_generic_vec(obj, value, info);
  19. }
  20. static PyObject* from(const std::vector<linemod::Template>& value)
  21. {
  22. return pyopencv_from_generic_vec(value);
  23. }
  24. };
  25. template<> struct pyopencvVecConverter<linemod::Feature>
  26. {
  27. static bool to(PyObject* obj, std::vector<linemod::Feature>& value, const ArgInfo& info)
  28. {
  29. return pyopencv_to_generic_vec(obj, value, info);
  30. }
  31. static PyObject* from(const std::vector<linemod::Feature>& value)
  32. {
  33. return pyopencv_from_generic_vec(value);
  34. }
  35. };
  36. template<> struct pyopencvVecConverter<Ptr<linemod::Modality> >
  37. {
  38. static bool to(PyObject* obj, std::vector<Ptr<linemod::Modality> >& value, const ArgInfo& info)
  39. {
  40. return pyopencv_to_generic_vec(obj, value, info);
  41. }
  42. static PyObject* from(const std::vector<Ptr<linemod::Modality> >& value)
  43. {
  44. return pyopencv_from_generic_vec(value);
  45. }
  46. };
  47. typedef std::vector<linemod::Match> vector_Match;
  48. typedef std::vector<linemod::Template> vector_Template;
  49. typedef std::vector<linemod::Feature> vector_Feature;
  50. typedef std::vector<Ptr<linemod::Modality> > vector_Ptr_Modality;
  51. #endif