Skip to main content

Software for the Practical Analysis of Materials

Reason this release was yanked:

premature windows release

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 https://pepy.tech/badge/spam/month

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.6.2.1

2023-03-21

Imports in graphical tools fixed

Version 0.6.2

2023-03-17

Fixes to registration, pep8 and black the whole code, dev on global and projection

Version 0.6.1.3

2022-10-25

Fix for histogramTools, a number of library calls updated for deprecation warnings

Version 0.6.1.2

2022-09-22

Parallelised tetLabel, safety in spam-pixelSearch, -skp in spam-ldic

Version 0.6.1.1

2022-01-20

Registration subtraction option for spam-passPhiField (-regs)

Version 0.6.1

2021-10-29

New package spam.orientations and segmentations functions

Version 0.6.0.3

2021-07-08

Fixed -applyF check. Now registration guess is correctly applied to a set of points

Version 0.6.0.2

2021-06-23

Fixed spam-mmr-graphical and PyQt5 dependencies. New spam.plotting.plotSphericalHistogram renders a 3D orientation distribution!

Version 0.6.0.1

2021-05-20

Small fixes to spam-filterPhifield and spam-regularStrain

Version 0.6.0

2021-05-04

Massive rewrite of image correlation scripts, introduction of spam-pixelSearchPropagate, spam-filterPhiField, spam-passPhiField. The spam-pixelSearch is now separate from spam-ldic and spam-ddic, and works both in grid and labelled mode. Please check out new script documentation for a flowchart of how these should be used in series. Loads of scripts and quite a few functions are now multiprocess, and MPI parallelisation is completely dropped along with mpi4py. pygmsh dependency is also now dropped

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.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.5 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

spam-0.7-cp311-cp311-macosx_12_0_arm64.whl (6.9 MB view details)

Uploaded CPython 3.11 macOS 12.0+ ARM64

spam-0.7-cp311-cp311-macosx_11_0_x86_64.whl (6.9 MB view details)

Uploaded CPython 3.11 macOS 11.0+ x86-64

spam-0.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.5 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

spam-0.7-cp310-cp310-macosx_12_0_arm64.whl (6.9 MB view details)

Uploaded CPython 3.10 macOS 12.0+ ARM64

spam-0.7-cp310-cp310-macosx_11_0_x86_64.whl (6.9 MB view details)

Uploaded CPython 3.10 macOS 11.0+ x86-64

spam-0.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.5 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

spam-0.7-cp39-cp39-macosx_12_0_arm64.whl (6.9 MB view details)

Uploaded CPython 3.9 macOS 12.0+ ARM64

spam-0.7-cp39-cp39-macosx_11_0_x86_64.whl (6.9 MB view details)

Uploaded CPython 3.9 macOS 11.0+ x86-64

File details

Details for the file spam-0.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for spam-0.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2a125db075fda1584e758c33be82bf950fc565c2ae521735115ca7fbaec6c6fb
MD5 f5118a5957f224bd1cef995fd3facc92
BLAKE2b-256 ff227c72448b70b0665b6bd5c384e19e645e7d9d9fdef2b27d1c5f718f0f7783

See more details on using hashes here.

File details

Details for the file spam-0.7-cp311-cp311-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for spam-0.7-cp311-cp311-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 7c129517f720a0020ae64b41cd363388386e4a04dec6b1ff6ad11a20bc921230
MD5 5d9c99f4afce387611614bfc68325dab
BLAKE2b-256 ba7dea3db2551c5bd19232f55eefd6889239e70e5b93a498f0ace2d6d7f1a8dc

See more details on using hashes here.

File details

Details for the file spam-0.7-cp311-cp311-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for spam-0.7-cp311-cp311-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 6e98a3d9f9c3d1d161e137ed38d611e2ad30313933bbc639b4b3112d693eff3c
MD5 d85e9d8dd0e6619744a965beb37929c1
BLAKE2b-256 7e9fe1ce7abb8bceea86954be3e68028e22564cf8b6667ccea176bce0517d046

See more details on using hashes here.

File details

Details for the file spam-0.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for spam-0.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4bf74a5a39bacd40c2ba4bac21213130fd566199b7f9e452065e2420e6d125f1
MD5 23ce21bf31663b305a81c207c27ae526
BLAKE2b-256 18d3f6c4427aff768c2d78d0a73ccef243182a1e19caefc838c198f7026aee60

See more details on using hashes here.

File details

Details for the file spam-0.7-cp310-cp310-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for spam-0.7-cp310-cp310-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 fa6fcf49f65dd12c10a915adfaa5ca1537bb2f2db99e277886560c20ce69aa93
MD5 08363518f1338b703717d56514bcefb5
BLAKE2b-256 0425303abd91a509faef88350fe1b8899b380f449f7a919c76b178d5e153e829

See more details on using hashes here.

File details

Details for the file spam-0.7-cp310-cp310-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for spam-0.7-cp310-cp310-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 aa22d64b1ecc1f088964a9501972ecd11ed72265960dbeb0edfc43827f97f2ff
MD5 73dd603843a224b1ba5156a845930da5
BLAKE2b-256 e25882f2a3a851879e6d826436dd0bbcce8d1bb99695b948a4ef1224b03e101c

See more details on using hashes here.

File details

Details for the file spam-0.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for spam-0.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 842f39fe3e35057df271ce0402da0fa556cb53e7cb7fa09e6bf59ad5103f10cd
MD5 642fbc2ba0bc0ed0cdadd99fd7eb1239
BLAKE2b-256 41f1b44572041337c3e2e511ff950a7ee55b9dc0fe39310c5eaf3d69a2595e6e

See more details on using hashes here.

File details

Details for the file spam-0.7-cp39-cp39-macosx_12_0_arm64.whl.

File metadata

  • Download URL: spam-0.7-cp39-cp39-macosx_12_0_arm64.whl
  • Upload date:
  • Size: 6.9 MB
  • Tags: CPython 3.9, macOS 12.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for spam-0.7-cp39-cp39-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 018f3075d3a1a3f3b865d95ee77d74c1140003ceaf638ba52f3aa41707421439
MD5 d9369f428f7718e54d1782d9072e56c2
BLAKE2b-256 84a8ce55e3b13583f9749c7889424e104ee57a9d8527a242759edd4929c2d979

See more details on using hashes here.

File details

Details for the file spam-0.7-cp39-cp39-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for spam-0.7-cp39-cp39-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 ccbe1cf905a660b9835e8523ffac78770b3bce41fff88045ece89b383a7c90a1
MD5 e7670ff581b1d89a8282cd6c146da620
BLAKE2b-256 7f97549667d33d6de075d1faf215fd25ede352eff305542b1be98e313b9925e3

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