Laboratory for Fluorescence Dynamics (LFD) file formats
Project description
Lfdfiles is a Python library and console script for reading, writing, converting, and viewing many of the proprietary file formats used to store experimental data and metadata at the Laboratory for Fluorescence Dynamics. For example:
SimFCS VPL, VPP, JRN, BIN, INT, CYL, REF, BH, BHZ B64, I64, Z64, R64
FLIMbox FBD, FBF
GLOBALS LIF, ASCII
CCP4 MAP
Vaa3D RAW
Bio-Rad(r) PIC
ISS Vista IFLI, IFI
FlimFast FLIF
- Author:
- License:
BSD 3-Clause
- Version:
2023.8.1
Quickstart
Install the lfdfiles package and all dependencies from the Python Package Index:
python -m pip install -U lfdfiles[all]
Print the console script usage:
python -m lfdfiles --help
The lfdfiles library is type annotated and documented via docstrings.
See Examples for using the programming interface.
Source code and support are available on GitHub.
Requirements
This revision was tested with the following requirements and dependencies (other versions may work):
CPython 3.9.13, 3.10.11, 3.11.4, 3.12.0b4
Cython 0.29.36 (build)
NumPy 1.25.1
Tifffile 2023.7.18 (optional)
Czifile 2019.7.2 (optional)
Oiffile 2022.9.29 (optional)
Netpbmfile 2023.6.15 (optional)
Matplotlib 3.7.2 (optional, for plotting)
Click 8.1.6 (optional, for command line apps)
Revisions
2023.8.1
Specify encoding of text files.
Fix linting issues.
2023.4.20
Improve type hints.
Drop support for Python 3.8 and numpy < 1.21 (NEP29).
2022.9.29
Fix setup.py.
2022.9.20
Update metadata.
2022.6.10
Fix LfdFileSequence with tifffile 2022.4.22.
Add fbd2b64 conversion function and script.
Add decoder for 32-bit, 8 windows, 4 channels FLIMbox data from Spartan-6.
Convert docstrings to Google style with Sphinx directives.
2022.2.2
Add type hints.
SimfcsFit.asarray returns dc_ref only; use p_fit for fit params (breaking).
Remove additional positional arguments to LfdFile init (breaking).
Guess SimfcsBin shape and dtype if not provided (breaking).
Use TiffWriter.write instead of deprecated save.
Drop support for Python 3.7 and NumPy < 1.19 (NEP29).
2021.7.15
Refactor SimfcsFbd initialization.
Print tracebacks of failing plugins in LfdFile.
2021.7.11
Calculate pixel_dwell_time and frame_size for FBD files with header.
Disable simfcsfbd_decode and simfcsfbd_histogram Python code (breaking).
2021.6.25
…
Refer to the CHANGES file for older revisions.
Notes
The API is not stable yet and might change between revisions.
Python <= 3.8 is no longer supported. 32-bit versions are deprecated.
The latest Microsoft Visual C++ Redistributable for Visual Studio 2015-2022 is required on Windows.
Many of the LFD’s file formats are not documented and might change arbitrarily. This implementation is mostly based on reverse engineering existing files. No guarantee can be made as to the correctness of code and documentation.
Experimental data are often stored in plain binary files with metadata available in separate, human readable journal files (.jrn).
Unless specified otherwise, data are stored in little-endian, C contiguous order.
References
The following software is referenced in this module:
SimFCS, a.k.a. Globals for Images, is software for fluorescence image acquisition, analysis, and simulation, developed by Enrico Gratton at UCI.
Globals, a.k.a. Globals for Spectroscopy, is software for the analysis of multiple files from fluorescence spectroscopy, developed by Enrico Gratton at UIUC and UCI.
ImObj is software for image analysis, developed by LFD at UIUC. Implemented on Win16.
FlimFast is software for frequency-domain, full-field, fluorescence lifetime imaging at video rate, developed by Christoph Gohlke at UIUC.
FLImage is software for frequency-domain, full-field, fluorescence lifetime imaging, developed by Christoph Gohlke at UIUC. Implemented in LabVIEW.
FLIez is software for frequency-domain, full-field, fluorescence lifetime imaging, developed by Glen Redford at UIUC.
Flie is software for frequency-domain, full-field, fluorescence lifetime imaging, developed by Peter Schneider at MPIBPC. Implemented on a Sun UltraSPARC.
FLOP is software for frequency-domain, cuvette, fluorescence lifetime measurements, developed by Christoph Gohlke at MPIBPC. Implemented in LabVIEW.
VistaVision is commercial software for instrument control, data acquisition and data processing by ISS Inc (Champaign, IL).
Vaa3D is software for multi-dimensional data visualization and analysis, developed by the Hanchuan Peng group at the Allen Institute.
Voxx is a volume rendering program for 3D microscopy, developed by Jeff Clendenon et al. at the Indiana University.
CCP4, the Collaborative Computational Project No. 4, is software for macromolecular X-Ray crystallography.
Examples
Create a Bio-Rad PIC file from a NumPy array:
>>> data = numpy.arange(1000000).reshape(100, 100, 100).astype('u1') >>> bioradpic_write('_biorad.pic', data)
Read the volume data from the PIC file as NumPy array, and access metadata:
>>> with BioradPic('_biorad.pic') as f: ... f.shape ... f.spacing ... data = f.asarray() (100, 100, 100) (1.0, 1.0, 1.0)
Convert the PIC file to a compressed TIFF file:
>>> with BioradPic('_biorad.pic') as f: ... f.totiff('_biorad.tif', compression='zlib')
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for lfdfiles-2023.8.1-pp310-pypy310_pp73-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 72a7f20244a11a1dc1cab2679429858c6de25c6a109c55a9942d5f62631cf118 |
|
MD5 | 175fe72102ab5ea611478009f55447df |
|
BLAKE2b-256 | 421ae2495925aa5dfd1888216e8b4157e3ef073b35432471f49f13c96a8f8751 |
Hashes for lfdfiles-2023.8.1-cp312-cp312-win_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 769bcc4559c3c75cb61c3def8948558ecb6d455e3aa1496a2721de99b5b9505b |
|
MD5 | 47ed4e14194f831af432a0007664fbae |
|
BLAKE2b-256 | b1625de446be4f562f3987c2cf31562f8b323dcb2bdf3c8b02d2a3c2a1387f9c |
Hashes for lfdfiles-2023.8.1-cp312-cp312-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3aefe7ea7d0ecc6aac5b939016b977f97ef3cce39cebb5c2009b5f48dc3116ee |
|
MD5 | bdf67ae967f67e97d6227fce99968006 |
|
BLAKE2b-256 | 66fdbb98a7ba6566eec8a6d4bdcf7d278fc2916f175956ddfe130b5914edf082 |
Hashes for lfdfiles-2023.8.1-cp312-cp312-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4eb6fca4535b822e5183dcf0474658352ab8df864659aafa6c118b9dc7d2379b |
|
MD5 | 78fdfc361c5685a45ebe602c0c379545 |
|
BLAKE2b-256 | a5459584299c15d8759603215a7ae4fbe999ab4ebca177902b1993eb29a4ffb5 |
Hashes for lfdfiles-2023.8.1-cp311-cp311-win_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 27728aba4eb78652dfb953ea62ae7881240c17fe587928fe00e3ae59b58206d4 |
|
MD5 | d701186bca2ba0a4a0860c38f439a1c6 |
|
BLAKE2b-256 | bf729659a47546a243f341ed009e408924f5e6ad9433d2bfda3f6119feb2f973 |
Hashes for lfdfiles-2023.8.1-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dd81bbda4a050d3b01b9bafe1c0a4334b0b002e8f1ac032bf2270d111d9665a4 |
|
MD5 | 0a5ab85b8d27cd3e378831f3178ae8b9 |
|
BLAKE2b-256 | d4aa7dbcda2f75617dfd1c1ecc88ed01f3c279632050b91377b0ae60bab02aa1 |
Hashes for lfdfiles-2023.8.1-cp311-cp311-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 00eb9621bcfb002e73f515b8fa39a6c90c03c8360e5919381ffec905727cf2e2 |
|
MD5 | 17955db40741679e0247acbb1685a854 |
|
BLAKE2b-256 | 21e3ab7d015dd800c3aec93f03b632b54d4bf4b10814a29ba6acecd7a944e3fb |
Hashes for lfdfiles-2023.8.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d82d2267dba08031a649731cdff5cec05fca756c4c3be5dde8fa5c444fd33fb9 |
|
MD5 | ee0fffb4d5fdad32a08ba926acca6e9f |
|
BLAKE2b-256 | 68838bf58304c1d1ef11467738d8fbe935250fe17ce1d6bf1c268d970e245a45 |
Hashes for lfdfiles-2023.8.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bd374c59dc4c459f4e56639201261d4a2cd96d0a6dfc992c743e811ee2eba162 |
|
MD5 | df7870f0120045c93049ee698e3a08ad |
|
BLAKE2b-256 | ee3584692395e5ec630e86a5e10b4aec2fc133eac7cbaf64c3f109b2ddc65e4d |
Hashes for lfdfiles-2023.8.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f66d6ba7ca143e0a8031b702dfe24917948d023dc7ca2fe155d07a723274ae9b |
|
MD5 | 14ccadbbb2ba04600cbf01d93171ac5f |
|
BLAKE2b-256 | 43c21341cac41becac60be94c9d99a03891c4fc06cdf6d60d312ec40fece7890 |
Hashes for lfdfiles-2023.8.1-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4a53b8a5e41008f66001364859bb41fd9b6c2be64bec3f4b84e845fbfe47d592 |
|
MD5 | d55235a46a2d2a2490c0b318731a147f |
|
BLAKE2b-256 | 36818567348a62a4b856c272afb63a1443ea76c6462656c781fdb7be4be3ff22 |
Hashes for lfdfiles-2023.8.1-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0dedffa4957310984d4e4b93ed6176784323bf7667be81eca5b92ced48e49a9b |
|
MD5 | 969ee99cef18c9088f8124031adf088a |
|
BLAKE2b-256 | f50e5dc902fb2929862705517d4039b6052656dbf9dfc28c4434e0b07d8dcc6c |
Hashes for lfdfiles-2023.8.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 90a681419fbd2f504617ca4b1a3884f42f3496a48a102ad752303ccfe1440294 |
|
MD5 | c49303b9bea57cc48136adfbd559867d |
|
BLAKE2b-256 | ac88ccf88fbcaa2b29755a4142258cf8b9f42dcf8d7ddeed6f2756367983c477 |
Hashes for lfdfiles-2023.8.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5653ebd3972a3fe7de8ac650b4ed4ecc39582c4f4c214c14fc9b9e84fcfcd047 |
|
MD5 | 0628e9565e60cd3f1e3bba20667c33dd |
|
BLAKE2b-256 | 280cb9bf56e4b31e64858eee77e06acbf2bbac46d860ac94320e9e3d31e69b5a |
Hashes for lfdfiles-2023.8.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f596ea008c326f294c2d0e711192a7ebf4af0d61d022c906680c66c26f73a8ad |
|
MD5 | c3fe349429a44e6877b9b64404e6537b |
|
BLAKE2b-256 | 59a955f4377a2ab4cc191b8ccc579893cf561466d85e39e11534fa22c9cbac17 |
Hashes for lfdfiles-2023.8.1-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 79ba4ca435079d85691d24b1594c11d143158a56c3d541c0658df77b29c7d5ce |
|
MD5 | fc8b1d1fa0df3255c673b2fb1d72707f |
|
BLAKE2b-256 | a428c419536c0f32a7c1fb67b2c6761aa3d9e09f9eea55c45649979eb1821779 |
Hashes for lfdfiles-2023.8.1-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d1fb2e1972dee9b3e211c87809c30621571f176632062d346fc83c1fe0521eb3 |
|
MD5 | 3f32ead1f9dd9400cc97933d506c0271 |
|
BLAKE2b-256 | 9f8a8e5d33a633f69ee926a0e8887de433bb489fb69288540809d4aadd9c357c |
Hashes for lfdfiles-2023.8.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9deb3fc5c56bc32f563bc7cc4bb212b5686adbc38d1ef03e581f92033154a399 |
|
MD5 | 03b4908ec3400d8e44b7a0aecfb99fd9 |
|
BLAKE2b-256 | b3284456172512506c35c09d73c576ae3135bad1cc6f9a1becff3918e3151bd5 |
Hashes for lfdfiles-2023.8.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 80532c1f947e81b3802755174d7aab545ec612ca98f38e2b4b9f1edfcd00d98a |
|
MD5 | 0b8bfff0ff786e300bf6835938f428fe |
|
BLAKE2b-256 | 3cbf0351512326e3e149a6c00f79a0b88a396ec997a645ae255afc30f8d5b16a |
Hashes for lfdfiles-2023.8.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 177e263e406e707194ca72469fb1f2e64f8edc8e64ad8c0e0617ae9c8d388875 |
|
MD5 | 13627bf2335475442d54196c89ba8721 |
|
BLAKE2b-256 | 6c2c51bf3b503f901081db4c603392530070b3d7ebd23d18b551e1af58f62403 |