Skip to main content

A collection of tools and helpers to work with the JetRaw compression libraries.

Project description

🚀 JetRaw_tools

Welcome to jetraw_tools! This repository contains a collection of supplementary tools to work with the JetRaw compression tool. JetRaw is an innovative image compression format that allows a file reduction ~70-80% while keeping absolute original image resolution. The reasoning for developing these complementary tools was that our team mainly worked with nd2 images of high order (TZCXY) and we needed to preserve the metadata of the images.

🛠️ Installation

To install jetraw_tools, follow these simple steps:

  1. Make sure you have Python installed on your system (version 3.8 or higher).
  2. Install the Jetraw app and add it to the PATH environment as described in the JetRaw repository and install the dpcore python libraries. These are unfortunately not available to install via pip but you can find the wheel in the JetRaw.
  3. Install this repository to your local machine using the following command:
pip install git+https://github.com/phisanti/jetraw_tools.git

Dependencies

The package requires the following main dependencies:

  • nd2
  • ome-types
  • tifffile
  • numpy

These will be automatically installed when you install the package.

📖 Usage

Once installed, you can use the jetraw_tools from the command line or from a python script.

You can directly compress an image via:

jetraw_tools -c /path/to/image_or_folder --calibration_file "calibration_file.dat" -i "identifier"  --extension ".ome.tiff"

The calibration file and identifier are required for compression. You can provide these parameters with each command or configure them once using the settings command.

By default, compressed files are saved in a new folder with your original folder's name plus the _compressed suffix. For custom output locations, use the --output parameter.

jetraw_tools --settings

The configuration tool will guide you through each step with interactive prompts, making setup straightforward even for first-time users. This command will:

  • Create the ~/.config/jetraw_tools folder if it doesn't exist
  • Copy a calibration .dat file to the configuration folder
  • Store a list of camera identifiers for easy reference
  • Detect and configure Jetraw and DPCore installation paths
    • Automatically finds installed binaries when possible
    • Allows manual entry of installation directories if needed
  • Add your license key for JetRaw functionality

After configuration, the default calibration .dat file, identifier, and paths don't need to be specified each time you run the tool. Therefore, you can run simpler commands like:

jetraw_tools -c "sample_images/" --extension ".ome.tiff"
jetraw_tools -d "sample_images/" --extension ".ome.p.tiff"

📋 Options

  • -c, --compress: path to image(s) to compress
  • -d, --decompress: path to image(s) to decompress
  • -s, --settings: Re-initialize configuration
  • --calibration_file: Path to calibration .dat file
  • --identifier: Image capture mode identifier
  • --extension: Input image file extension (default: .tif)
  • --metadata: Process metadata (default: True)
  • --json: Save metadata as JSON (default: True)
  • --key: Pass licence key to JetRaw (default: None)
  • --remove: Delete original images after compression (default: False)
  • --output: Specify a custom output folder for processed images (default: None)
  • --verbose: Enable detailed logging output (default: False)

The compressed JetRaw files will be saved in a jetraw_compressed folder alongside the original images.

📜 Disclaimer

This library is not affiliated with Dotphoton or Jetraw in any way, but we are grateful for their support.

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

jetraw_tools-0.6.1.tar.gz (26.8 kB view details)

Uploaded Source

Built Distribution

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

jetraw_tools-0.6.1-py3-none-any.whl (30.1 kB view details)

Uploaded Python 3

File details

Details for the file jetraw_tools-0.6.1.tar.gz.

File metadata

  • Download URL: jetraw_tools-0.6.1.tar.gz
  • Upload date:
  • Size: 26.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for jetraw_tools-0.6.1.tar.gz
Algorithm Hash digest
SHA256 09a329ea67f97890ed8ee2d6e43fd56aafa709ade3560eaeab5872d972a5a79b
MD5 b9f2cd68dc7db55ffaf2ae2a80fe2705
BLAKE2b-256 843d8d645cef6771145be2c6a21efe53973e6cd1981d843368b25f7ff326e699

See more details on using hashes here.

Provenance

The following attestation bundles were made for jetraw_tools-0.6.1.tar.gz:

Publisher: python-publish.yml on phisanti/jetraw_tools

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

File details

Details for the file jetraw_tools-0.6.1-py3-none-any.whl.

File metadata

  • Download URL: jetraw_tools-0.6.1-py3-none-any.whl
  • Upload date:
  • Size: 30.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for jetraw_tools-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a131657b2ffe6568bb1bbb6eb479b98c28a996552f426c086a88de73251c25aa
MD5 73d977eb636e04e205f8a20f49ae4623
BLAKE2b-256 f47e8343f05bff0aeba21f18b85b2e6296ff88cd70497e3e9e436d2dd7bc54fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for jetraw_tools-0.6.1-py3-none-any.whl:

Publisher: python-publish.yml on phisanti/jetraw_tools

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