Skip to main content

Software for the Practical Analysis of Materials

Project description

https://img.shields.io/badge/license-GPLv3-blue.svg https://gricad-gitlab.univ-grenoble-alpes.fr/ttk/spam/badges/master/pipeline.svg https://gricad-gitlab.univ-grenoble-alpes.fr/ttk/spam/badges/master/coverage.svg https://badge.fury.io/py/spam.svg https://joss.theoj.org/papers/10.21105/joss.02286/status.svg

Spam is a piece of Python software built upon NumPy and SciPy for the analysis and manipulation of 3D and 2D data sets in material science, be they from x-ray tomography, random fields or any other source.

A number of common functions are provided that are either lacking or slow in Numpy and Scipy, which are expected to be used by users within new python scripts. These functions are in the tools/ directory, and include tools to work with random fields, morphological operations, digital image correlation, and labelled images. Some of spam’s functions transparently call C/C++ functions for speed.

Some user-callable scipts are also provided – they are more complex pieces of code that combine a number of functions and which have a command-line interface. For the moment the scripts are 3 different image correlation techniques.

Please have a look at our online documentation for:

If you find bugs, need help, or want to talk to the developers, we use a element.io/matrix.org chat room for organisation, please join it here and come and talk to us – it is easy, there is a chat client that can run in your web broswer. All you need to do is choose a user name!

Changelog

Version

Date

Notes

Version 0.5.3.4

2021-03-19

Last version to support python 3.5. Update gradient option in spam-ldic, new function to generate pixelated spheroids: spam.kalisphera.makeBlurryNoisySpheroid()

Version 0.5.3.3

2020-11-27

spam-reg script, spam-ereg-discrete writing fix, spam-ldic update gradient option, implementation of Geers in 2D

Version 0.5.3.2

2020-10-27

spam-ereg-discrete mask option reinstated, many fixes for spam-ldic and registerMultiscale() for 2D images

Version 0.5.3.1

2020-10-23

spam-ereg-discrete make safer with slicePadded and moveGrains now renamed to moveLabels and proposed as function with erodeLabels

Version 0.5.3

2020-10-07

Improvements in edge cases in spam-ldic and spam-ddic, thanks to a helper function called spam.helpers.slicePadded(). New debug mode for spam-ddic as well as a graphical tool to manually align labels called spam-ereg-discrete

Version 0.5.2.1

2020-07-20

This is the version in the JOSS paper. Making python 3.8 package for PyPI, along with classifiers. Python 2.7 dropped

Version 0.5.2

2020-06-03

Big improvements in spam-mmr and spam-mmr-graphical, all TSVs im1->im2 and gradients always computed in im2

Version 0.5.1.5

2020-05-28

Don’t recompute Jacobian in register if not needed. Safety in pixel search

Version 0.5.1.4

2020-05-16

Fix spam-deformImageFromField, C++14

Version 0.5.1.3

2020-04-20

Fix spam-mmr and improvements to pixel search in spam-ddic

Version 0.5.1.2

2020-04-20

Fix and test for large initial guesses in register(), spam-mmr-graphical revived

Version 0.5.1.1

2020-04-08

Fix for running spam-ldic for pixel search

Version 0.5.1

2020-04-07

Fix for running spam-ddic with mpi, implementation of S. Brisard’s Directional Erosion

Version 0.5.0

2020-03-27

Big rename of scripts, functions, variables, parameters, with some backwards compatibility in TSV file reading. Some examples:

  • spam.correlate.lucasKanade -> spam.correlate.register

  • spam.helpers.readTSV -> spam.helpers.readCorrelationTSV

New framework for the calculation of strains, where the computation of F is separated from its decomposition. Output fields from correlation with prefixes “SubPix” and “SubPixel” become prefixless In TSV outputs from correlation the components like “F12” are now called “Fzy”

Version 0.4.3

2020-01-16

Various fixes to graphical clients (able to save TSV from spam-mmr-graphical and do a last, precise run with spam-mmr). Improvement to triangulation (now with CGAL alpha shapes) and discrete strain calculator (tested results)

Version 0.4.2

2019-09-25

spam-mmr-graphical now working, improvements in spam-mmr.

Version 0.4.1

2019-09-13

spam-mmr-graphical now working (c-python type error). Various bugfixes in clients. spam-ITKwatershed now accepts markers

Version 0.4.0

2019-07-18

c++ now bound with pybind11. New graphical script spam-mmr-graphical for multi-modal registration. New graphical script spam-ereg for eye (manual) registration. Python3 upgrade recommended for all users

Version 0.3.3.1

2019-05-27

Binning 2^31 fix, remove lines for immediate prints that are not py3 compatible First version with CGAL triangulation

Version 0.3.2.1

2019-05-14

Update pip documentation and changelog

Version 0.3.2

2019-04-30

Fix segfault with images larger than 2^31 voxels, and output both subtracted and original fields in spam-ldic

Version 0.3.1

2019-04-08

Fix a number of forgotten spam.DIC.transformationOperator functions

Version 0.3.0

2019-03-28

Consistent naming in DIC: Phi is 4x4 homogeneous deformation function and F is its internal 3x3 displacement gradient

Version 0.2.2.2

2019-03-21

First version on pip with complete dependencies. This version of spam runs fully in a venv with pip install spam

Version 0.2.2.1

2019-03-20

Pull in requirements.txt into setup.py automatically. This aligns the build from git with the build from pip.

Version 0.2.2

2019-02-21

Approximate python3 compatibility

Version 0.2.1

2019-02-18

Add PyPI documentation to pip in RST

Version 0.2.0

2019-02-18

Add PyPI documentation to README.rst to appear on pip. Note that the build status and coverage badges won’t appear until access to gitlab is opened

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

spam-0.5.3.4-cp38-cp38-manylinux2014_x86_64.whl (26.0 MB view details)

Uploaded CPython 3.8

spam-0.5.3.4-cp37-cp37m-manylinux2014_x86_64.whl (25.8 MB view details)

Uploaded CPython 3.7m

spam-0.5.3.4-cp36-cp36m-manylinux2014_x86_64.whl (25.8 MB view details)

Uploaded CPython 3.6m

spam-0.5.3.4-cp35-cp35m-manylinux2014_x86_64.whl (25.8 MB view details)

Uploaded CPython 3.5m

File details

Details for the file spam-0.5.3.4-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

  • Download URL: spam-0.5.3.4-cp38-cp38-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 26.0 MB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.8

File hashes

Hashes for spam-0.5.3.4-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 738d849142be82a92c1e4a1f8774ae9fdb0982ca8ff36df805395e5696601582
MD5 a15082d7fe300627b8a96d8e2be3ba14
BLAKE2b-256 82e69f88973f84708532ca1058e5d54105beb38acca8d01fa3fbe1f5cf814a87

See more details on using hashes here.

File details

Details for the file spam-0.5.3.4-cp37-cp37m-manylinux2014_x86_64.whl.

File metadata

  • Download URL: spam-0.5.3.4-cp37-cp37m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 25.8 MB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.8

File hashes

Hashes for spam-0.5.3.4-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 51bff300011431e0e422032ddddd9ea7ff8d1ccc83675097b0d15c8df3034c61
MD5 140f5bed273c2ad8fdf77260b6cf9171
BLAKE2b-256 fe2656fdea006a082c3a4aec6aab08e96aa32215596db7c5d18e3331f77d367b

See more details on using hashes here.

File details

Details for the file spam-0.5.3.4-cp36-cp36m-manylinux2014_x86_64.whl.

File metadata

  • Download URL: spam-0.5.3.4-cp36-cp36m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 25.8 MB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.8

File hashes

Hashes for spam-0.5.3.4-cp36-cp36m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f66160d6a69d0b1e963e784eda1849908815b4124d1c583479f8ccb64694cfa0
MD5 2fedb30fc1127c7920e956d608b333de
BLAKE2b-256 86e38f867a50da9f27c5c937f83b0dcb66ee07c9834a29382f326b84d8281855

See more details on using hashes here.

File details

Details for the file spam-0.5.3.4-cp35-cp35m-manylinux2014_x86_64.whl.

File metadata

  • Download URL: spam-0.5.3.4-cp35-cp35m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 25.8 MB
  • Tags: CPython 3.5m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.8

File hashes

Hashes for spam-0.5.3.4-cp35-cp35m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5f0eacb2702d0ee2d85cf35d6240f12aea98cc481e6ff508d283dda0a2eab47d
MD5 9c10eae8fe59e3f604588c1a5327adfb
BLAKE2b-256 bef7c89ba01dccc06e26b36eb714531d85f9e6c27cb5b92ea5e59b3b3014e476

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page