diff --git a/src/pipeline/hdb_clusterer.rs b/src/pipeline/hdb_clusterer.rs index fd630cc..0254015 100644 --- a/src/pipeline/hdb_clusterer.rs +++ b/src/pipeline/hdb_clusterer.rs @@ -52,13 +52,11 @@ impl Label for Pointcloud { .min_cluster_size(30) .build(); - let labels = Hdbscan::new(self, params).cluster().unwrap(); - - let pointcloud_labeled: PointcloudLabeled = Arc::new(zip(self.iter(), labels) - .map(|(point, label)| (point.clone(), label)) - .collect()); - - Some(pointcloud_labeled) + if let Ok(labels) = Hdbscan::new(self, params).cluster() { + Some(Arc::new(zip(self.iter(), labels) + .map(|(point, label)| (point.clone(), label)) + .collect())) + } else { None } } }