diff --git a/components/rgbd-sources/src/offilter.cpp b/components/rgbd-sources/src/offilter.cpp index dbdde6904b9aceb3b34c035cacc6c09d7d2e3aaa..8344540b9f0dc1cea1ff62e694d7ed774201a5f5 100644 --- a/components/rgbd-sources/src/offilter.cpp +++ b/components/rgbd-sources/src/offilter.cpp @@ -31,8 +31,9 @@ void OFDisparityFilter::filter(ftl::rgbd::Frame &frame, cv::cuda::Stream &stream const cv::cuda::GpuMat &optflow = frame.getChannel<cv::cuda::GpuMat>(kChanFlow, stream); frame.getChannel<cv::cuda::GpuMat>(kChanDisparity, stream); stream.waitForCompletion(); - cv::cuda::GpuMat &disp = frame.setChannel<cv::cuda::GpuMat>(kChanDisparity); + if (optflow.empty()) { return; } + cv::cuda::GpuMat &disp = frame.setChannel<cv::cuda::GpuMat>(kChanDisparity); ftl::cuda::optflow_filter(disp, optflow, disp_old_, n_max_, threshold_, stream); }