napari-aicsimageio
AICSImageIO bindings for napari
Features¶
- Supports reading metadata and imaging data for:
OME-TIFF
TIFF
CZI
(Zeiss)LIF
(Leica)ND2
(Nikon)DV
(DeltaVision)- Any formats supported by aicsimageio
- Any formats supported by bioformats
SLD
(Slidebook)SVS
(Aperio)- Full List
- Any additional format supported by imageio
PNG
JPG
GIF
AVI
- Full List
While upstream aicsimageio
is released under BSD-3 license, this plugin is released under GPLv3 license because it installs all format reader dependencies.
Reading Mode Threshold¶
This image reading plugin will load the provided image directly into memory if it meets the following two conditions:
- The filesize is less than 4GB.
- The filesize is less than 30% of machine memory available.
If either of these conditions isn't met, the image is loaded in chunks only as needed.
Examples of Features¶
General Image Reading¶
All image file formats supported by aicsimageio will be read and all raw data will be available in the napari viewer.
In addition, when reading an OME-TIFF, you can view all OME metadata directly in the
napari viewer thanks to ome-types
.
Multi-Scene Selection¶
When reading a multi-scene file, a widget will be added to the napari viewer to manage scene selection (clearing the viewer each time you change scene or adding the scene content to the viewer) and a list of all scenes in the file.
Access to the AICSImage Object and Metadata¶
You can access the AICSImage
object used to load the image pixel data and
image metadata using the built-in napari console:
img = viewer.layers[0].metadata["aicsimage"]
img.dims.order # TCZYX
img.channel_names # ["Bright", "Struct", "Nuc", "Memb"]
img.get_image_dask_data("ZYX") # dask.array.Array
The napari layer metadata dictionary also stores a shorthand for the raw image metadata:
viewer.layers[0].metadata["raw_image_metadata"]
The metadata is returned in whichever format is used by the underlying
file format reader, i.e. for CZI the raw metadata is returned as
an xml.etree.ElementTree.Element
, for OME-TIFF the raw metadata is returned
as an OME
object from ome-types
.
Lastly, if the underlying file format reader has an OME metadata conversion function,
you may additionally see a key in the napari layer metadata dictionary
called "ome_types"
. For example, because the AICSImageIO
CZIReader
and BioformatsReader
both support converting raw image metadata
to OME metadata, you will see an "ome_types"
key that stores the metadata transformed
into the OME metadata model.
viewer.layers[0].metadata["ome_types"] # OME object from ome-types
Mosaic Reading¶
When reading CZI or LIF images, if the image is a mosaic tiled image, napari-aicsimageio
will return the reconstructed image:
Citation¶
If you find aicsimageio
(or napari-aicsimageio
) useful, please cite as:
AICSImageIO Contributors (2021). AICSImageIO: Image Reading, Metadata Conversion, and Image Writing for Microscopy Images in Pure Python [Computer software]. GitHub. https://github.com/AllenCellModeling/aicsimageio
Free software: GPLv3
Supported data:
- Information not submitted
Plugin type:
Open extension:
- *.kdc
- *.j2c
- *.mtb
- *.bufr
- *.fli
- *.l2d
- *.mkv
- *.rgba
- *.iff
- *.dds
- *.pgm
- *.afm
- *.mvd2
- *.jpf
- *.sdt
- *.mdb
- *.ftc
- *.lim
- *.jif
- *.pxn
- *.ct
- *.tga
- *.his
- *.am
- *.lbm
- *.png
- *.afi
- *.dcx
- *.sm3
- *.psd
- *.3fr
- *.nrw
- *.mha
- *.dti
- *.nii
- *.arf
- *.nd
- *.iim
- *.scn
- *.crw
- *.hed
- *.qtk
- *.lei
- *.raw
- *.tnb
- *.vms
- *.mnc
- *.qptiff
- *.sld
- *.pcx
- *.mpg
- *.jp2
- *.al3d
- *.htm
- *.im3
- *.vtk
- *.emf
- *.hdf5
- *.koa
- *.wav
- *.r3d
- *.dicom
- *.xml
- *.ome.tif
- *.st
- *.1sc
- *.lif
- *.ims
- *.fid
- *.gif
- *.mov
- *.jpg
- *.mdc
- *.pnl
- *.nd2
- *.wdp
- *.oir
- *.wap
- *.vff
- *.pef
- *.ras
- *.dat
- *.mef
- *.ia
- *.mhd
- *.thm
- *.tim
- *.jxr
- *.tif
- *.avi
- *.sr2
- *.msr
- *.v
- *.ome.tiff
- *.dsc
- *.cif
- *.dm2
- *.gdcm
- *.ipm
- *.naf
- *.exr
- *.xdce
- *.mpeg
- *.pct
- *.mpo
- *.dng
- *.cap
- *.ppm
- *.jpk
- *.ps
- *.rw2
- *.vsi
- *.lms
- *.pfm
- *.zfr
- *.lfr
- *.flex
- *.2fl
- *.msp
- *.fts
- *.ipl
- *.rwl
- *.frm
- *.zfp
- *.swf
- *.apl
- *.ico
- *.cat
- *.gel
- *.db
- *.fake
- *.nef
- *.jng
- *.mp4
- *.img
- *.oif
- *.par
- *.wmv
- *.array-like
- *.arw
- *.fit
- *.stk
- *.wbmp
- *.nii.gz
- *.ct.img
- *.sif
- *.bw
- *.top
- *.nhdr
- *.rec
- *.mic
- *.gipl
- *.mrc
- *.ch5
- *.nrrd
- *.icns
- *.klb
- *.epsi
- *.seq
- *.pict
- *.sxm
- *.fdf
- *.grib
- *.iiq
- *.erf
- *.cut
- *.xqf
- *.niigz
- *.jpx
- *.bif
- *.df3
- *.fz
- *.wmf
- *.svs
- *.cine
- *.zip
- *.pcoraw
- *.nia
- *.fff
- *.obf
- *.g3
- *.spe
- *.txt
- *.aim
- *.fits
- *.j2k
- *.bmp
- *.xv
- *.csv
- *.ftu
- *.pcd
- *.cr2
- *.i2i
- *.cs1
- *.cxd
- *.htd
- *.grey
- *.mri
- *.rcpnl
- *.html
- *.sm2
- *.tiff
- *.pic
- *.ptx
- *.stp
- *.mnc2
- *.bmq
- *.fpx
- *.gbr
- *.czi
- *.jfif
- *.ipw
- *.jpc
- *.oib
- *.sti
- *.xys
- *.cfg
- *.ali
- *.eps
- *.dcr
- *.dc2
- *.acqp
- *.bin
- *.dv
- *.kc2
- *.ffr
- *.spi
- *.xbm
- *.exp
- *.hdr
- *.drf
- *.xqd
- *.hx
- *.lsm
- *.bsdf
- *.webp
- *.mgh
- *.acff
- *.mng
- *.npz
- *.imggz
- *.targa
- *.tfr
- *.liff
- *.bip
- *.zvi
- *.wlz
- *.mos
- *.raf
- *.ano
- *.dm3
- *.srw
- *.wat
- *.rgb
- *.h5
- *.ndpi
- *.hdp
- *.ids
- *.im
- *.pbm
- *.pr3
- *.rdc
- *.inf
- *.srf
- *.dcm
- *.jpeg
- *.k25
- *.mrw
- *.ecw
- *.xpm
- *.lfp
- *.amiramesh
- *.labels
- *.inr
- *.mod
- *.pxr
- *.spc
- *.zpo
- *.wpi
- *.c01
- *.orf
- *.rwz
- *.scan
- *.jpe
- *.wbm
- *.flc
- *.ics
- *.ome
- *.bay
- *.vws
- *.cur
- *.hdf
- *.ndpis
GitHub activity:
- Stars: 33
- Forks: 10
- Issues + PRs: 19