Skip to main content

Mostly ImageJ/Fiji-related Python helper functions.

Project description

IMCFlibs 🐍 ☕ 🔩 🔧 🪛

Linting ⚡ Pytest-Python2 🧪🐍 Pytest-Poetry 🧪🎭 codecov

Build Status DOI

This package contains a diverse collection of Python functions dealing with paths, I/O (file handles, ...), strings etc. and tons of Fiji / ImageJ2 convenience wrappers to simplify scripting and reduce cross-script redundancies.

Initially this has been a multi-purpose package where a substantial part had been useful in CPython as well. However, since the latest Jython release is still based on Python 2.7 (see the Jython 3 roadmap for more info), imcflibs is now basically limited to the Fiji / ImageJ2 ecosystem.

Releases are made through Maven and published to the SciJava Maven repository. The easiest way to use the lib is by adding the IMCF Uni Basel update site to your ImageJ installation.

The pip installable package is probably only useful for two cases: running pytest (where applicable) and rendering HTML-based API docs using pdoc. Let us know in case you're having another use case 🎪 for it.

Developed and provided by the Imaging Core Facility (IMCF) of the Biozentrum, University of Basel, Switzerland.

Installation Instructions

Two ways of installing the imcflibs package are described here, the "easy" one through the Fiji Update Sites and the "manual" method using packages explicitly downloaded from SciJava Maven.

🧿 Default: Installation via Update Sites

After a fresh install of Fiji, navigate to Help -> Update and in the resulting window, press Manage Update Sites. Here, search for and tick the following necessary update sites for this package.

  • ImageJ
  • Fiji
  • 3D ImageJ-Suite
  • clij2
  • IJPB-plugins
  • IMCF Uni Basel
  • StarDist
  • CALM
  • TrackMate-Cellpose
  • TrackMate-Helper
  • TrackMate-StarDist
  • TrackMate-Weka
  • TrackMate-MorpholibJ

The IMCF Uni Basel update-site will always provide the latest compatible combination of official.jar file to use this package.

🏗 Alternative: SciJava Maven Package 👷

💡 IMPORTANT: 💡 same as for the default installation previously described, you will need to enable all Update Sites listed above in your Fiji as well when using the method described here!

The most up-to-date .jar (or any other published version, including pre-releases) for this package can be always found on the Scijava Maven repository. Navigate to the python-imcflibs folder, pick the desired version (can also be a pre-release) and download the contained .jar file, e.g. python-imcflibs-2.0.0.jar.

Then simply place that file in the jars folder of your Fiji installation, e.g D:\Development\Fiji.app\jars\ or /opt/Fiji.app/jars/, possibly removing other versions of the same package from that folder - then (re-)start Fiji.

If you'd prefer to use the cutting-edge version from GitHub, look into the development instructions for details.

Installation Testing

To check the package's correct installation in Fiji, search for Script Interpreter in the Search bar, and type :lang python, followed by e.g. import imcflibs.imagej.misc. If no errors are shown, the installation was successful. Alternatively, you can scroll in the sidebar of the Interpreter to search for imcflibs.

Example usage

Shading correction / projection

Apply a shading correction model and create a maximum-intensity projection:

from imcflibs.imagej.shading import correct_and_project

model = "/path/to/shading_model.tif"
raw_image = "/path/to/raw_data/image.ome.tif"
out_path = "/path/to/processed_data/"

correct_and_project(raw_image, out_path, model, "Maximum", ".ics")

Split TIFFs by channels and slices

Use status and progress bar updates

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

imcflibs-2.0.0a5.tar.gz (72.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

imcflibs-2.0.0a5-py2.py3-none-any.whl (81.0 kB view details)

Uploaded Python 2Python 3

File details

Details for the file imcflibs-2.0.0a5.tar.gz.

File metadata

  • Download URL: imcflibs-2.0.0a5.tar.gz
  • Upload date:
  • Size: 72.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imcflibs-2.0.0a5.tar.gz
Algorithm Hash digest
SHA256 b9b87b471662b8d4b88368cba74b3569fd3d33ad193505af1f92af00f71b1023
MD5 ffa80690d9a181873948c30a2ba77a3f
BLAKE2b-256 23f3f9c26da59daf81387f7eb0ab2dba10ce9b88976acade62648f4887626697

See more details on using hashes here.

Provenance

The following attestation bundles were made for imcflibs-2.0.0a5.tar.gz:

Publisher: build.yml on imcf/python-imcflibs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file imcflibs-2.0.0a5-py2.py3-none-any.whl.

File metadata

  • Download URL: imcflibs-2.0.0a5-py2.py3-none-any.whl
  • Upload date:
  • Size: 81.0 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imcflibs-2.0.0a5-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 ce10d124e2911d973afef46b1181e8245da913ba96775d559afa38ab3873a4e7
MD5 2f6be3a91747911e4df7db4ec748904d
BLAKE2b-256 5c2fa608e811b9ed9f19e309218d6b1374223d28140f4f0fe80a565942e24ebb

See more details on using hashes here.

Provenance

The following attestation bundles were made for imcflibs-2.0.0a5-py2.py3-none-any.whl:

Publisher: build.yml on imcf/python-imcflibs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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