From 826b77e567f170c4208ce2faff7e82ffee091e95 Mon Sep 17 00:00:00 2001 From: Julian Seuffert Date: Fri, 29 Mar 2019 13:43:22 +0100 Subject: [PATCH] ximgproc: Fix support for CV_32F WLS Filter If the disparity maps have the depth CV_32F, they are wls-filtered in `DisparityWLSFilterImpl::filter` but the result is not saved in the OutputArray of the method. Now, the result is copied to that array. --- modules/ximgproc/src/disparity_filters.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/modules/ximgproc/src/disparity_filters.cpp b/modules/ximgproc/src/disparity_filters.cpp index 2bc826d0a..b384eaefc 100644 --- a/modules/ximgproc/src/disparity_filters.cpp +++ b/modules/ximgproc/src/disparity_filters.cpp @@ -244,6 +244,8 @@ void DisparityWLSFilterImpl::filter(InputArray disparity_map_left, InputArray le filter_(left, left_view, filt_disp, right, ROI); if (disparity_map_left.depth() != CV_32F){ filt_disp.convertTo(filtered_disparity_map, disparity_map_left.depth()); + } else { + filt_disp.copyTo(filtered_disparity_map); } }