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 files to use this package.

Manual Downloads for OMERO

In addition to the update sites, two manual downloads concerning OMERO are necessary:

🏗 Alternative: SciJava Maven Package 👷

💡 IMPORTANT: 💡 same as for the default installation previously described, you will need to enable all Update Sites listed above (and obviously the respective OMERO downloads) 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.0a6.tar.gz (72.8 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.0a6-py2.py3-none-any.whl (81.1 kB view details)

Uploaded Python 2Python 3

File details

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

File metadata

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

File hashes

Hashes for imcflibs-2.0.0a6.tar.gz
Algorithm Hash digest
SHA256 469a789351fe54cae0ca9aa49bf41782f10d23de372a8aded5e63b30bc432ebb
MD5 a2ce64b5ded92915424fd42b5b98cb20
BLAKE2b-256 4ce3d156b53c38ab063f81a1f7a372898fb9b55398a5a00d11e47e9e29d9832e

See more details on using hashes here.

Provenance

The following attestation bundles were made for imcflibs-2.0.0a6.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.0a6-py2.py3-none-any.whl.

File metadata

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

File hashes

Hashes for imcflibs-2.0.0a6-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 867c6e5bf7b2667a5980040a1fcf41168bffa94093569e0cfdac71a5e67ea484
MD5 07900a22e22d328c01091eadc1f7ca0d
BLAKE2b-256 0b6b98661a9442f23f74ce820114f3a6d05e5d02a9438e8d3a611d9c10d46140

See more details on using hashes here.

Provenance

The following attestation bundles were made for imcflibs-2.0.0a6-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