Skip to main content

Pystack3D: A Python package for fast image stack correction

Project description

PyPI Github Doc

Introduction

PyStack3D is a package dedicated to images correction intended -for instance- to FIB-SEM stack images postprocessing before image segmentation.

The pystack3d workflow includes the following process steps which can be activated or not and executed in any order:

  • cropping to reduce the image field of view to a ROI (Region Of Interest)

  • background removal to reduce from polynomial approximations artefacts issued for instance from shadowing, charging, ...

  • intensity rescaling to homogenize the 'gray' intensity distribution between successive frames/slices

  • registration to correct the images misalignment due to shifting, drift, rotation, ... during the images acquisition

  • destriping to minimize artefacts like stripes that can appear in some image acquisition technics

  • resampling to correct non uniform spatial steps

An additional step named cropping_final can be used to eliminate artefacts produced near the edges during the image processing or to select another ROI at the end.


a) Synthetic case illustrating the defects to be removed by PyStack3D. b) Corrected stack. c) Ground truth.


Illustration of a FIB-SEM image correction using some of the PyStack3D process steps.

Installation

pip install pystack3d

Tests and examples execution

For tests and examples execution, the full pystack3d project has to be installed via git:

    git clone https://github.com/CEA-MetroCarac/pystack3d.git
    cd [path_to_your_pystack3d_project]

Once the project has been cloned, the python environment has to be created and completed with the pytest package (for testing):

    pip install .
    pip install pytest

Then the tests and the examples can be executed as follows:

    pytest
    cd examples
    python ex_synthetic_stack.py
    python ex_real_stack.py

Usage

Refer to the PyStack3D documentation.

Contributing / Reporting an issue

Contributions and issue reporting are more than welcome! Please read through our Developers notes.

Acknowledgements

This work, carried out on the CEA - Platform for Nanocharacterisation (PFNC), was supported by the “Recherche Technologique de Base” program of the French National Research Agency (ANR).

Warm thanks to the JOSS reviewers (@kasasxav, @sklumpe and @xiuliren) and editor (@mstimberg) for their contributions to enhancing PyStack3D.

Citations

In case you use the results of this code in an article, please cite:

  • Quéméré P., David T. (2024). PyStack3D: A Python package for fast image stack correction. Journal of Open Source Software. (submitted)

additional citations for the destriping:

  • Pavy K., Quéméré P. (2024). Pyvsnr 2.0.0. Zenodo. https://doi.org/10.5281/zenodo.10623640

  • Fehrenbach J., Weiss P., Lorenzo C. (2012). Variational algorithms to remove stationary noise: applications to microscopy imaging. IEEE Transactions on Image Processing 21.10 (2012): 4420-4430.

additional citation for the registration:

  • Thévenaz P., Ruttimann U.E., Unser M. (1998), A Pyramid Approach to Subpixel Registration Based on Intensity, IEEE Transactions on Image Processing, vol. 7, no. 1, pp. 27-41, January 1998

Project details


Download files

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

Source Distribution

pystack3d-2024.2.tar.gz (45.6 kB view details)

Uploaded Source

Built Distribution

pystack3d-2024.2-py3-none-any.whl (51.8 kB view details)

Uploaded Python 3

File details

Details for the file pystack3d-2024.2.tar.gz.

File metadata

  • Download URL: pystack3d-2024.2.tar.gz
  • Upload date:
  • Size: 45.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.11

File hashes

Hashes for pystack3d-2024.2.tar.gz
Algorithm Hash digest
SHA256 5ffc7e226f367d1b3f0a4c903c0e36e9fbe5e31e3008597b51781617eadfe013
MD5 313fa74db4154470d41818aac7812854
BLAKE2b-256 0ee75129cee9828426a2032c8382261ca3be34af7b753142865a9fc4d4a27ac1

See more details on using hashes here.

File details

Details for the file pystack3d-2024.2-py3-none-any.whl.

File metadata

  • Download URL: pystack3d-2024.2-py3-none-any.whl
  • Upload date:
  • Size: 51.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.11

File hashes

Hashes for pystack3d-2024.2-py3-none-any.whl
Algorithm Hash digest
SHA256 991b7c589b981df07aecf6ffbb3bcfc322a9b9faefd6c1d59d309fbba946ea17
MD5 67c4db0d454ac2034ae5daff3994d566
BLAKE2b-256 05b980be3ab696ccff2533913ff68951d68d7590800e7ea57b1b6bfb175500a7

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