Lumps: Shape Model directly from Mesh
What and Where is the Use Case?
This use case demonstrates a minimal example to run ShapeWorks directly on a mesh using a synthetic dataset.
The use case is located at: Examples/Python/lumps.py
Running the Use Case
To run the use case, run RunUseCase.py
(in Examples/Python/
).
$ cd /path/to/shapeworks/Examples/Python
$ python RunUseCase.py --use_case lumps
This calls lumps.py
(in Examples/Python/
) to perform the following.
- Loads the lumps dataset using a local version if it exists (i.e., previously downloaded); otherwise, the dataset is automatically downloaded from the ShapeWorks Data Portal.
- Optimizes particle distribution (i.e., the shape/correspondence model) by calling optimization functions in
OptimizeUtils.py
(inExamples/Python/
). See Optimizing Shape Model for details about algorithmic parameters for optimizing the shape model. - Launches ShapeWorksStudio to visualize the use case results (i.e., the optimized shape model and the groomed data) by calling functions in
AnalyzeUtils.py
(inExamples/Python/
).
Grooming Data
This is a synthetic dataset that does not require grooming.
Optimizing Shape Model
Below are the default optimization parameters when running this use case. For a description of the optimize tool and its algorithmic parameters, see: How to Optimize Your Shape Model.
$ python RunUseCase.py --use_case lumps
{
"number_of_particles": 512,
"use_normals": 0,
"normal_weight": 10.0,
"checkpointing_interval": 100,
"keep_checkpoints": 0,
"iterations_per_split": 2000,
"optimization_iterations": 500,
"starting_regularization": 10,
"ending_regularization": 1,
"recompute_regularization_interval": 1,
"domains_per_shape": 1,
"domain_type": "mesh",
"relative_weighting": 10,
"initial_relative_weighting": 1,
"procrustes_interval": 0,
"procrustes_scaling": 0,
"save_init_splits": 0,
"verbosity": 1
}
Analyzing Shape Model
ShapeWorksStudio visualizes/analyzes the optimized particle-based shape model by visualizing the mean shape, individual shape samples, and the shape modes of variations. For more information, see: How to Analyze Your Shape Model?.
Here is the mean shape of the optimized shape mode using single-scale optimization. Note the two tiny lumps at the top, and towards the right.
Here are lumps samples with their optimized correspondences.
Here is a video showing the shape modes of variation (computed using principal component analysis - PCA) of the lumps dataset using single-scale optimization.