Table of Contents
Fetching ...

SurfPatch: Enabling Patch Matching for Exploratory Stream Surface Visualization

Delin An, Chaoli Wang

TL;DR

SurfPatch addresses the challenge of exploring surface-based flow visualization by reframing surface placement as selecting from a large set of traced stream surfaces and building a bottom-up pipeline that connects vertices to patches and patches to surfaces. The method comprises three pillars—vertex-level classification using HKS features with connectivity-aware AHC, patch-level matching via UMAP-aggregated patch embeddings with DR and AHC, and surface-level clustering that aggregates patch features to identify representative surfaces for cross-surface querying. This combination enables fine-grained, multiscale patch matching and flexible querying across multiple surfaces, demonstrated on steady and unsteady flows as well as isosurfaces, with an interactive interface supporting exploration. Quantitative evaluations show SurfPatch outperforms baselines like EdgeConv and SurfNet in patch similarity metrics, and the approach generalizes to time-varying fields and scalar isovalues, offering practical impact for CFD analysis and scientific visualization.

Abstract

Unlike their line-based counterparts, surface-based techniques have yet to be thoroughly investigated in flow visualization due to their significant placement, speed, perception, and evaluation challenges. This paper presents SurfPatch, a novel framework supporting exploratory stream surface visualization. To begin with, we translate the issue of surface placement to surface selection and trace a large number of stream surfaces from a given flow field dataset. Then, we introduce a three-stage process: vertex-level classification, patch-level matching, and surface-level clustering that hierarchically builds the connection between vertices and patches and between patches and surfaces. This bottom-up approach enables fine-grained, multiscale patch-level matching, sharply contrasts surface-level matching offered by existing works, and provides previously unavailable flexibility during querying. We design an intuitive visual interface for users to conveniently visualize and analyze the underlying collection of stream surfaces in an exploratory manner. SurfPatch is not limited to stream surfaces traced from steady flow datasets. We demonstrate its effectiveness through experiments on stream surfaces produced from steady and unsteady flows as well as isosurfaces extracted from scalar fields. The code is available at https://github.com/adlsn/SurfPatch.

SurfPatch: Enabling Patch Matching for Exploratory Stream Surface Visualization

TL;DR

SurfPatch addresses the challenge of exploring surface-based flow visualization by reframing surface placement as selecting from a large set of traced stream surfaces and building a bottom-up pipeline that connects vertices to patches and patches to surfaces. The method comprises three pillars—vertex-level classification using HKS features with connectivity-aware AHC, patch-level matching via UMAP-aggregated patch embeddings with DR and AHC, and surface-level clustering that aggregates patch features to identify representative surfaces for cross-surface querying. This combination enables fine-grained, multiscale patch matching and flexible querying across multiple surfaces, demonstrated on steady and unsteady flows as well as isosurfaces, with an interactive interface supporting exploration. Quantitative evaluations show SurfPatch outperforms baselines like EdgeConv and SurfNet in patch similarity metrics, and the approach generalizes to time-varying fields and scalar isovalues, offering practical impact for CFD analysis and scientific visualization.

Abstract

Unlike their line-based counterparts, surface-based techniques have yet to be thoroughly investigated in flow visualization due to their significant placement, speed, perception, and evaluation challenges. This paper presents SurfPatch, a novel framework supporting exploratory stream surface visualization. To begin with, we translate the issue of surface placement to surface selection and trace a large number of stream surfaces from a given flow field dataset. Then, we introduce a three-stage process: vertex-level classification, patch-level matching, and surface-level clustering that hierarchically builds the connection between vertices and patches and between patches and surfaces. This bottom-up approach enables fine-grained, multiscale patch-level matching, sharply contrasts surface-level matching offered by existing works, and provides previously unavailable flexibility during querying. We design an intuitive visual interface for users to conveniently visualize and analyze the underlying collection of stream surfaces in an exploratory manner. SurfPatch is not limited to stream surfaces traced from steady flow datasets. We demonstrate its effectiveness through experiments on stream surfaces produced from steady and unsteady flows as well as isosurfaces extracted from scalar fields. The code is available at https://github.com/adlsn/SurfPatch.
Paper Structure (23 sections, 5 equations, 21 figures, 3 tables)

This paper contains 23 sections, 5 equations, 21 figures, 3 tables.

Figures (21)

  • Figure 1: The SurfPatch framework consists of three stages: vertex-level classification, patch-level matching, and surface-level clustering. We aggregate HKS features from vertices to patches and from patches to surfaces, enabling patch matching within a single surface and across multiple surfaces.
  • Figure 1: Comparing vertex feature extraction methods in patch-level embedding using the two swirls dataset.
  • Figure 2: The screenshot of SurfPatch interface. Based on the selected patch, we query similar patches across two surfaces of interest retrieved from sample surfaces (highlighted with a light blue background).
  • Figure 2: Comparing vertex feature aggregation via DR in patch classification using the two swirls dataset.
  • Figure 3: An example patch generated using AHC. Each point in the UMAP projection view represents a patch; the selected patch is highlighted with a black boundary.
  • ...and 16 more figures