imgproc.hpp 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. // This file is part of OpenCV project.
  2. // It is subject to the license terms in the LICENSE file found in the top-level directory
  3. // of this distribution and at http://opencv.org/license.html.
  4. #ifndef OPENCV_NDSRVP_IMGPROC_HPP
  5. #define OPENCV_NDSRVP_IMGPROC_HPP
  6. struct cvhalFilter2D;
  7. namespace cv {
  8. namespace ndsrvp {
  9. enum InterpolationMasks {
  10. INTER_BITS = 5,
  11. INTER_BITS2 = INTER_BITS * 2,
  12. INTER_TAB_SIZE = 1 << INTER_BITS,
  13. INTER_TAB_SIZE2 = INTER_TAB_SIZE * INTER_TAB_SIZE
  14. };
  15. // ################ integral ################
  16. int integral(int depth, int sdepth, int sqdepth,
  17. const uchar* src, size_t _srcstep,
  18. uchar* sum, size_t _sumstep,
  19. uchar* sqsum, size_t,
  20. uchar* tilted, size_t,
  21. int width, int height, int cn);
  22. #undef cv_hal_integral
  23. #define cv_hal_integral (cv::ndsrvp::integral)
  24. // ################ warpAffine ################
  25. int warpAffineBlocklineNN(int *adelta, int *bdelta, short* xy, int X0, int Y0, int bw);
  26. #undef cv_hal_warpAffineBlocklineNN
  27. #define cv_hal_warpAffineBlocklineNN (cv::ndsrvp::warpAffineBlocklineNN)
  28. int warpAffineBlockline(int *adelta, int *bdelta, short* xy, short* alpha, int X0, int Y0, int bw);
  29. #undef cv_hal_warpAffineBlockline
  30. #define cv_hal_warpAffineBlockline (cv::ndsrvp::warpAffineBlockline)
  31. // ################ warpPerspective ################
  32. int warpPerspectiveBlocklineNN(const double *M, short* xy, double X0, double Y0, double W0, int bw);
  33. #undef cv_hal_warpPerspectiveBlocklineNN
  34. #define cv_hal_warpPerspectiveBlocklineNN (cv::ndsrvp::warpPerspectiveBlocklineNN)
  35. int warpPerspectiveBlockline(const double *M, short* xy, short* alpha, double X0, double Y0, double W0, int bw);
  36. #undef cv_hal_warpPerspectiveBlockline
  37. #define cv_hal_warpPerspectiveBlockline (cv::ndsrvp::warpPerspectiveBlockline)
  38. // ################ remap ################
  39. int remap32f(int src_type, const uchar *src_data, size_t src_step, int src_width, int src_height,
  40. uchar *dst_data, size_t dst_step, int dst_width, int dst_height, float* mapx, size_t mapx_step,
  41. float* mapy, size_t mapy_step, int interpolation, int border_type, const double border_value[4]);
  42. #undef cv_hal_remap32f
  43. #define cv_hal_remap32f (cv::ndsrvp::remap32f)
  44. // ################ threshold ################
  45. int threshold(const uchar* src_data, size_t src_step,
  46. uchar* dst_data, size_t dst_step,
  47. int width, int height, int depth, int cn,
  48. double thresh, double maxValue, int thresholdType);
  49. #undef cv_hal_threshold
  50. #define cv_hal_threshold (cv::ndsrvp::threshold)
  51. // ################ filter ################
  52. int filterInit(cvhalFilter2D **context,
  53. uchar *kernel_data, size_t kernel_step,
  54. int kernel_type, int kernel_width,
  55. int kernel_height, int max_width, int max_height,
  56. int src_type, int dst_type, int borderType,
  57. double delta, int anchor_x, int anchor_y,
  58. bool allowSubmatrix, bool allowInplace);
  59. #undef cv_hal_filterInit
  60. #define cv_hal_filterInit (cv::ndsrvp::filterInit)
  61. int filter(cvhalFilter2D *context,
  62. const uchar *src_data, size_t src_step,
  63. uchar *dst_data, size_t dst_step,
  64. int width, int height,
  65. int full_width, int full_height,
  66. int offset_x, int offset_y);
  67. #undef cv_hal_filter
  68. #define cv_hal_filter (cv::ndsrvp::filter)
  69. int filterFree(cvhalFilter2D *context);
  70. #undef cv_hal_filterFree
  71. #define cv_hal_filterFree (cv::ndsrvp::filterFree)
  72. // ################ medianBlur ################
  73. int medianBlur(const uchar* src_data, size_t src_step,
  74. uchar* dst_data, size_t dst_step,
  75. int width, int height, int depth, int cn, int ksize);
  76. #undef cv_hal_medianBlur
  77. #define cv_hal_medianBlur (cv::ndsrvp::medianBlur)
  78. // ################ bilateralFilter ################
  79. int bilateralFilter(const uchar* src_data, size_t src_step,
  80. uchar* dst_data, size_t dst_step, int width, int height, int depth,
  81. int cn, int d, double sigma_color, double sigma_space, int border_type);
  82. #undef cv_hal_bilateralFilter
  83. #define cv_hal_bilateralFilter (cv::ndsrvp::bilateralFilter)
  84. } // namespace ndsrvp
  85. } // namespace cv
  86. #endif