diff --git a/lib/libstereo/src/algorithms/clustersf.cu b/lib/libstereo/src/algorithms/clustersf.cu
index 0ab9900ef8759c99a0f96da6a9d5c8e0fc75f17a..f6c944548f769271492fb135419aea7bda708f5d 100644
--- a/lib/libstereo/src/algorithms/clustersf.cu
+++ b/lib/libstereo/src/algorithms/clustersf.cu
@@ -38,21 +38,26 @@ void StereoCSF::compute(cv::InputArray l, cv::InputArray r, cv::OutputArray disp
 	mat2gray(l, impl_->l);
 	mat2gray(r, impl_->r);
 
-	short2 focal_pt = {short(1000), short(800)};
+	Array2D<float> disp_array(l.cols(), l.rows());
+	disp_array.toGpuMat().setTo(cv::Scalar(0.0f));
 
-	SalientGradient sgl = {focal_pt, 1000, impl_->l.data(), impl_->gl.data(), impl_->temp.data(), impl_->buckets_l.data(), impl_->l.width, impl_->l.height};
-	parallel1DWarpSM(sgl, l.rows(), l.cols());
 	SalientGradientGrouped sgr = {impl_->r.data(), impl_->gr.data(), impl_->temp.data(), impl_->buckets_r.data(), impl_->r.width, impl_->r.height};
 	parallel1DWarpSM(sgr, r.rows(), r.cols());
 
-	impl_->focal.toGpuMat().setTo(cv::Scalar(0));	
+	for (int fx = 200; fx < l.cols()-200; fx += 50) {
+	for (int fy = 200; fy < l.rows()-200; fy += 50) {
+		short2 focal_pt = {short(fx), short(fy)};
+		SalientGradient sgl = {focal_pt, 1000, impl_->l.data(), impl_->gl.data(), impl_->temp.data(), impl_->buckets_l.data(), impl_->l.width, impl_->l.height};
+		parallel1DWarpSM(sgl, l.rows(), l.cols());
+		impl_->focal.toGpuMat().setTo(cv::Scalar(0));	
 
-	FocalCluster fc = {focal_pt, impl_->buckets_l.data(), impl_->buckets_r.data(), impl_->focal.data(), 1024};
-	parallel1DWarp(fc, l.rows(), 1);
+		FocalCluster fc = {focal_pt, impl_->buckets_l.data(), impl_->buckets_r.data(), impl_->focal.data(), 1024};
+		parallel1DWarp(fc, l.rows(), 1);
 
-	Array2D<float> disp_array(l.cols(), l.rows());
-	FocalSelector fs = {focal_pt, impl_->buckets_l.data(), impl_->buckets_r.data(), impl_->focal.data(), disp_array.data(), 1024};
-	parallel1DWarp(fs, l.rows(), 1);
+		FocalSelector fs = {focal_pt, impl_->buckets_l.data(), impl_->buckets_r.data(), impl_->focal.data(), disp_array.data(), 1024};
+		parallel1DWarp(fs, l.rows(), 1);
+	}
+	}
 
 	disp_array.toGpuMat().download(disparity);