10,000 nonspherical bubble meshes, each with a boundary-element ground-truth resonant frequency and eight scale-invariant shape descriptors.
Every entry is one closed triangle mesh of a single bubble, taken from a fluid simulation rather than generated analytically, so the shapes carry the dimples, tails and pinch points that real entrained bubbles have. Two solvers contributed them.
| Source | Bubbles | What it is |
|---|---|---|
VOF | 6,000 | volume-of-fluid simulation |
LBM | 4,000 | lattice Boltzmann simulation, generally the more deformed shapes |
Every mesh is rescaled to unit volume before anything is computed. That is what makes the frequencies comparable across the set: size is divided out, so what remains is the effect of shape alone. A unit-volume sphere sounds at 5.2926 Hz, and the benchmark spans 5.2937 to 7.1796 Hz, so the most deformed bubbles ring about 36 % sharp of the spherical prediction. To recover a physical frequency, scale by the cube root of the volume you want.
mesh_filename column. Distributed separately on Google
Drive because of its size.
Google Drive
Mesh thumbnails
A 100×100 render of every bubble, grouped by
source. These ship in the repository, so no mesh download is needed to
look at a shape.
in the repo
Explore it first
All 10,000 bubbles in 3D on any three descriptors you
pick. Hover a point for its mesh, click to hear the pitch.
interactive
The CSV names meshes but does not contain them. Download the archive only if you need the geometry itself; the descriptors and frequencies in the CSV are enough to reproduce every model and figure in the paper.
Nineteen columns, one row per bubble. Quantities are computed after the unit-volume rescaling.
| Column | Meaning |
|---|---|
mesh_id, mesh_filename |
identity of the mesh in the archive; mesh_id carries
the source folder, which matters because some stems occur under
both sources |
source | VOF or LBM |
surface_area, volume, M |
area, volume (1 by construction) and integrated mean curvature |
W_vertex |
Willmore energy, from the cotangent Laplacian with mixed Voronoi vertex areas |
V_hull, A_hull, M_hull |
the same three quantities for the convex hull |
eta_V, eta_A, eta_M |
ratios of the bubble to its hull; these measure concavity, so a convex shape sits at 1 |
Phi_VM |
one of the three nonsphericity measures; the other two derive from the columns above |
i00, i11, i22 |
principal moments of inertia; the model uses the two ratios
i11/i00 and i22/i00 |
frequency |
the label. Resonant frequency in Hz from the Galerkin boundary-element solver |
f_strasberg |
the analytic ellipsoidal-proxy prediction, for comparison |
The eight model inputs are the two inertia ratios, the three nonsphericity measures and the three convex-hull ratios. All eight are dimensionless and invariant to scale and rotation, which is why one model covers every bubble size.
Closed, watertight, oriented triangle meshes, one OBJ per bubble, laid out
in VOF/ and LBM/ folders that match the
mesh_id column.
| Vertices | Triangles | |
|---|---|---|
| mean, whole set | 3,959 | 7,914 |
| median | 3,866 | 7,727 |
| range | 362 to 10,000 | — |
| VOF alone | 3,187 | 6,370 |
| LBM alone | 5,117 | 10,231 |
| total | 39.6 M | 79.1 M |
Resolution is the reason the two sources differ in cost as well as shape: the lattice Boltzmann bubbles carry roughly 60 % more triangles apiece. Meshes are stored at their simulation scale, and the pipeline rescales each to unit volume before computing descriptors, so re-deriving any column from the archive means applying that step first.
Reading the benchmark needs nothing beyond pandas. Reproducing the frequency column needs the mesh archive and a boundary-element solver.
import pandas as pd
df = pd.read_csv("dataset/bubble_gym/dataset_bubblegym_10k.csv")
The shape descriptors are computed by
python/shape_feature/, the reference frequencies by
python/bem/, and the trained models live in
python/freq_model/ with their weights. The scene datasets
beside this one, used for the figures, are described in
the directory README, which also gives the
trackedBubInfo file format.