Skip to content

ShapeWorks in Python

ShapeWorks with Python support

ShapeWorks Python library is currently under active development and is part of our major releases as of ShapeWorks 6.

There is no one-size-fits-all when it comes to grooming your data for shape modeling. Instead, there are general guidelines that one could consider when deciding on his/her own workflow.

NO one-size-fits-all workflow

Looking at your data as it goes through different processing steps is a must-do!

To support your workflow discovery process, we have been making significant strides in developing ShapeWorks tools to be more modular, generic, and transparent. Our efforts entail consolidating the underlying computational libraries, providing a flexible and unified shapeworks command line tool, and now the ShapeWorks Python library!.

Why ShapeWorks in Python?

One primary goal of the ShapeWorks Python library is to open and reveal what is in the ShapeWorks black box and lay down all steps involved in preprocessing your data, optimizing and analyzing your statistical shape models in a way that supports interactive workflow discovery and makes you as a user takes the full control of your own study and analysis.

In Examples/notebooks/tutorials, we provide step-by-step, hands-on tutorials on different aspects of the shape modeling workflow in a transparent, reproducible, and sharable manner. For this purpose, we have chosen Juypter Notebooks as the front-end tools for these demonstrations. These hands-on tutorials are designed to reflect the thought process that a non-expert user could go through at different shape modeling phases, starting from processing or grooming your data to analyzing your optimized shape model.

Diving into ShapeWorks' "Clear" Box

A growing list of fully-documented and self-contained notebooks demonstrate various ShapeWorks tools and shape modeling workflows.

To actually try the following notebooks out, open a terminal, conda activate shapeworks, change to the Examples\Python\notebooks\tutorials directory and run jupyter notebook to start the notebook server.

Getting Started with Juypter Notebooks

Getting Started with Segmentations

Getting Started with Meshes

Getting Started with Segmentations

Getting Started with Exploring Segmentations

Getting Started with Shape Cohort Generation

Getting Started with Data Augmentation