Scalismo is a library for statistical shape modeling and model-based image analysis in Scala. It has its origin in the research done at the Graphics and Vision Research Group at the University of Basel.
The vision of the project is to provide an environment for modelling and image analysis which
- makes it easy and fun to try out ideas and build research prototypes
- is powerful enough to build full-scale industrial applications
- makes it feasible to deploy it in complex, distributed imaging pipelines.
We aim to achieve these properties by leveraging two core technologies:
- A simple but versatile mathematical approach to shape modeling and registration, based on the theory of Gaussian processes.
- The Scala and Java ecosystem for reducing the software complexity.
There is also a scalismo google group for general questions and discussions.
To use scalismo in your own project, add the following lines to your build.sbt
:
resolvers ++= Seq(
"shapemodelling unibas" at "http://shapemodelling.cs.unibas.ch/repository/public"
)
libraryDependencies ++= Seq(
// other dependencies here
"ch.unibas.cs.gravis" %% "scalismo" % "0.9.+"
// scalismo depends on some native libraries, which must be added explicitly for your system
"ch.unibas.cs.gravis" % "scalismo-native-all" % "3.0.+"
)
Scalismo works best together with a GUI toolkit, scalismo-ui, which allows you to quickly visualize shapes and shape models. To use scalismo-ui (which is currently not open source) also add the following dependency
libraryDependencies ++= Seq(
"ch.unibas.cs.gravis" %% "scalismo-ui" % "0.5.+"
)
To build scalismo, run sbt
and then any of the following commands
compile
: Compile sbttest
: Run the unit testdoc
: Generate the api docsscalastyle
: Run the style checker
While scalismo is already fully usable for shape modeling and simple image processing task, its functionality is currently targeted to support the needs that arise in the research at the Gravis and Vision research group. In particular, many standard image and mesh processing algorithms are missing.
If you find scalismo useful for your work, you can help us to make it more complete by implementing missing features, in particular filters for image and mesh processing, and support for more image formats.
We are also always grateful if you report bugs or if give us feedback on how you use scalismo in your work and how you think we can improve it.
The project is currently developed and maintained by the Graphics and Vision Research group, University of Basel. The current maintainers of the project (people who can merge pull requests) are:
Scalismo is closely related to the statismo project, and some of the scalismo developers are also actively working on statismo. In fact, scalismo had been started as an attempt to provide the core functionality of Statismo and the ITK registration toolkit, but without the complexity that is induced by these toolkits.
The design of the registration approach used in scalismo is strongly influenced by ITK and Elastix.
All code is available to you under the Apache license, version 2, available at http://www.apache.org/licenses/LICENSE-2.0.
Copyright, University of Basel, 2015.