diff --git a/modules/photo/include/opencv2/photo.hpp b/modules/photo/include/opencv2/photo.hpp index 1d85a87cbb..b3d3aaf203 100644 --- a/modules/photo/include/opencv2/photo.hpp +++ b/modules/photo/include/opencv2/photo.hpp @@ -60,7 +60,7 @@ enum }; //! the tonemapping algorithm -enum tonemap_algorithms +enum { TONEMAP_LINEAR, @@ -96,7 +96,7 @@ CV_EXPORTS_W void fastNlMeansDenoisingColoredMulti( InputArrayOfArrays srcImgs, CV_EXPORTS_W void makeHDR(InputArrayOfArrays srcImgs, const std::vector& exp_times, OutputArray dst, bool align = false); -CV_EXPORTS_W void tonemap(InputArray src, OutputArray dst, tonemap_algorithms algorithm, +CV_EXPORTS_W void tonemap(InputArray src, OutputArray dst, int algorithm, const std::vector& params = std::vector()); CV_EXPORTS_W void exposureFusion(InputArrayOfArrays srcImgs, OutputArray dst, bool align = false, float wc = 1, float ws = 1, float we = 0); diff --git a/modules/photo/src/tonemap.cpp b/modules/photo/src/tonemap.cpp index d3ab246167..1f0558686b 100644 --- a/modules/photo/src/tonemap.cpp +++ b/modules/photo/src/tonemap.cpp @@ -155,7 +155,7 @@ static void DurandMap(Mat& src_img, Mat& dst_img, const std::vector& para merge(channels, dst_img); } -void tonemap(InputArray _src, OutputArray _dst, tonemap_algorithms algorithm, +void tonemap(InputArray _src, OutputArray _dst, int algorithm, const std::vector& params) { typedef void (*tonemap_func)(Mat&, Mat&, const std::vector&); @@ -188,4 +188,4 @@ void tonemap(InputArray _src, OutputArray _dst, tonemap_algorithms algorithm, float gamma = getParam(params, 0, 1.0f); pow(dst, 1.0f / gamma, dst); } -} \ No newline at end of file +} diff --git a/modules/photo/test/test_hdr.cpp b/modules/photo/test/test_hdr.cpp index 5ea77ebf4d..1db617104a 100644 --- a/modules/photo/test/test_hdr.cpp +++ b/modules/photo/test/test_hdr.cpp @@ -111,7 +111,7 @@ TEST(Photo_Tonemap, regression) for(int i = TONEMAP_DURAND; i < TONEMAP_COUNT; i++) { Mat result; - tonemap(img, result, static_cast(i), param); + tonemap(img, result, i, param); result.convertTo(result, CV_8UC3, 255); double max = 1.0; minMaxLoc(abs(result - images[i]), NULL, &max); @@ -140,4 +140,4 @@ TEST(Photo_Align, regression) Point calc = getExpShift(img, res, max_bits); ASSERT_TRUE(calc == -shift); } -} \ No newline at end of file +}