From b8b976261e4312d89c25b19a59800f75e7504b71 Mon Sep 17 00:00:00 2001
From: Sebastian Hahta <joseha@utu.fi>
Date: Fri, 8 Nov 2019 12:07:52 +0200
Subject: [PATCH] bilateral filter: ndisp

---
 components/operators/include/ftl/operators/disparity.hpp | 2 +-
 components/operators/src/disparity/bilateral_filter.cpp  | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/components/operators/include/ftl/operators/disparity.hpp b/components/operators/include/ftl/operators/disparity.hpp
index efa3a5128..b28bafcb2 100644
--- a/components/operators/include/ftl/operators/disparity.hpp
+++ b/components/operators/include/ftl/operators/disparity.hpp
@@ -53,7 +53,7 @@ class DisparityBilateralFilter : public::ftl::operators::Operator {
 	double scale_;
 	int radius_;
 	int iter_;
-	int max_disp_;
+	int n_disp_;
 };
 
 /*
diff --git a/components/operators/src/disparity/bilateral_filter.cpp b/components/operators/src/disparity/bilateral_filter.cpp
index 8489e6a4b..09e92024a 100644
--- a/components/operators/src/disparity/bilateral_filter.cpp
+++ b/components/operators/src/disparity/bilateral_filter.cpp
@@ -12,9 +12,10 @@ DisparityBilateralFilter::DisparityBilateralFilter(ftl::Configurable* cfg) :
 		ftl::operators::Operator(cfg) {
 	
 	scale_ = 16.0;
+	n_disp_ = cfg->value("n_disp", 256);
 	radius_ = cfg->value("radius", 7);
 	iter_ = cfg->value("iter", 13);
-	filter_ = cv::cuda::createDisparityBilateralFilter(max_disp_ << 4, radius_, iter_);
+	filter_ = cv::cuda::createDisparityBilateralFilter(n_disp_ * scale_, radius_, iter_);
 }
 
 bool DisparityBilateralFilter::apply(ftl::rgbd::Frame &in, ftl::rgbd::Frame &out,
-- 
GitLab