Skip to content

GARfVDB: Cluster visualization enhancements#51

Merged
swahtz merged 13 commits intoopenvdb:mainfrom
swahtz:cluster_viz_cleanup
Feb 1, 2026
Merged

GARfVDB: Cluster visualization enhancements#51
swahtz merged 13 commits intoopenvdb:mainfrom
swahtz:cluster_viz_cleanup

Conversation

@swahtz
Copy link
Contributor

@swahtz swahtz commented Feb 1, 2026

Moved clustering and filtering logic into a module
Added GaussianSplat3d filtering for outlier positions, opacities and scales
Added filtering of spatially incoherent clusters

swahtz and others added 11 commits January 30, 2026 16:35
…aussian

Signed-off-by: Jonathan Swartz <jonathan@jswartz.info>
Signed-off-by: Jonathan Swartz <jonathan@jswartz.info>
Signed-off-by: Jonathan Swartz <jonathan@jswartz.info>
Signed-off-by: Jonathan Swartz <jonathan@jswartz.info>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Jonathan Swartz <jonathan@jswartz.info>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Jonathan Swartz <jonathan@jswartz.info>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Jonathan Swartz <jonathan@jswartz.info>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Jonathan Swartz <jonathan@jswartz.info>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Jonathan Swartz <jonathan@jswartz.info>
Signed-off-by: Jonathan Swartz <jonathan@jswartz.info>
Filtering outlier positions, opacities and scales in trained scene
Filtering out spatially incoherent clusters

Signed-off-by: Jonathan Swartz <jonathan@jswartz.info>
Signed-off-by: Jonathan Swartz <jonathan@jswartz.info>
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR enhances the GARfVDB segmentation visualization capabilities by introducing a new clustering and filtering module for instance segmentation, along with a dedicated cluster visualization script. The changes move clustering logic into a reusable module and add filtering capabilities for outlier removal and spatial coherence validation.

Changes:

  • Added a new clustering module (garfvdb/evaluation/clustering) with PCA, UMAP, and HDBSCAN-based clustering pipeline
  • Created visualize_segmentation_clusters.py to visualize pre-computed segmentation clusters with spatial variance filtering
  • Refactored encoder grid sampling in model.py into a reusable method and added get_gaussian_affinity_output for per-Gaussian feature extraction
  • Added world_to_camera parameter to view_checkpoint.py rendering pipeline
  • Updated dependencies to include cuml, cupy, and matplotlib

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
visualize_segmentation_clusters.py New script for visualizing segmentation clusters with filtering options based on spatial variance
garfvdb/evaluation/clustering/clustering.py New module implementing GPU-accelerated clustering pipeline (PCA → UMAP → HDBSCAN)
garfvdb/evaluation/clustering/init.py Module initialization exposing clustering functions
garfvdb/model.py Refactored encoder grid sampling into _sample_encoder_grids_at_gaussians() and added get_gaussian_affinity_output() for per-Gaussian feature extraction
view_checkpoint.py Added world_to_camera parameter to rendering pipeline and reorganized imports
pyproject.toml Added cuml dependency for GPU-accelerated machine learning
garfvdb_environment.yml Added rapidsai cuml, cupy, and matplotlib to conda environment

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Signed-off-by: Jonathan Swartz <jonathan@jswartz.info>
@swahtz swahtz merged commit 9d496bf into openvdb:main Feb 1, 2026
8 checks passed
@swahtz swahtz deleted the cluster_viz_cleanup branch February 1, 2026 23:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant