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.
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.
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.
In addition to the update sites, two manual downloads concerning OMERO are necessary:
π‘ 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.
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.
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")- See the Split_TIFFs_By_Channels_And_Slices.py script.
- See the FluoView_OIF_OIB_OIR_Simple_Stitcher.py script.