Skip to main content

Eiger raw file to hdf5 converter

Project description

hdfmaker

Python package to convert PSI Eiger raw files to hdf5 with Bitshuffle+LZ4.

Command line tool

#Usage
raw2hdf5 /path/to/run_master_0.raw /output/path/

raw2hdf5 -h #show usage

Python API

WIP

Data processing

Limitations

The software assumes that files are written with padding in the receiver such that each frame is header+data and no size variation due to packet loss.

Image size

The tool reads raw files from disk and uses row, col information in the frame header in combination with the master fileto figure out the image size.

Gap pixels

  • Inter module gaps are by default set to 0, and marked as true in the pixel mask.

  • Large pixels on the chip borders are split in two (or four) with the counts split between pixels. In the case of an odd number of counts the extra count is randomly assigned to on of the pixels.

File format

  • Nexus like hdf5 with Bitshuffle + LZ4
  • Readable with Albula 4.x

Master file

The master holds in addition to the pixel mask only links to the data files

HDF5 "test1_0000.h5" {
FILE_CONTENTS {
 group      /
 group      /entry
 group      /entry/data
 ext link   /entry/data/data_000001 -> test/test1_0000_000000.h5 entry/data/data
 group      /entry/instrument
 group      /entry/instrument/data
 group      /entry/instrument/detector
 group      /entry/instrument/detector/detectorSpecific
 dataset    /entry/instrument/detector/detectorSpecific/pixel_mask
 }
}

Data file

HDF5 "test1_0000_000000.h5" {
FILE_CONTENTS {
 group      /
 group      /entry
 group      /entry/data
 dataset    /entry/data/data
 }
}

Dependencies

Compatibility

We aim to follow NEP 29 regarding supported Python and Numpy versions https://numpy.org/neps/nep-0029-deprecation_policy.html#nep29

At the moment this means:

  • Python 3.9-3.11
  • Numpy 1.22-1.24

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

hdf5maker-2025.10.29.tar.gz (20.0 kB view details)

Uploaded Source

Built Distributions

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

hdf5maker-2025.10.29-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (39.4 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

hdf5maker-2025.10.29-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (39.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

File details

Details for the file hdf5maker-2025.10.29.tar.gz.

File metadata

  • Download URL: hdf5maker-2025.10.29.tar.gz
  • Upload date:
  • Size: 20.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for hdf5maker-2025.10.29.tar.gz
Algorithm Hash digest
SHA256 2e794c1aef80fa03feb4b9ff7f60279f744cbcf3007181e338a35d76722a0ae5
MD5 1b730dcc51fca350ebbf22d021889220
BLAKE2b-256 d554e1cde088571d795386d26af125adfbf4db56e1981c2dbab8a328ff519418

See more details on using hashes here.

Provenance

The following attestation bundles were made for hdf5maker-2025.10.29.tar.gz:

Publisher: build_wheel.yml on slsdetectorgroup/hdf5maker

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

File details

Details for the file hdf5maker-2025.10.29-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for hdf5maker-2025.10.29-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7f5a4e4bbe7e4bb302cad82c6363cc448d8a1454949dad9c5d1364fdbc0a8547
MD5 2b43b64d59eb6454f5953fe83b5825ea
BLAKE2b-256 1b8e0b54e72742c4c595d70ff03b26db7b8e49840025ecead8813ba2cec1bf9a

See more details on using hashes here.

Provenance

The following attestation bundles were made for hdf5maker-2025.10.29-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build_wheel.yml on slsdetectorgroup/hdf5maker

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

File details

Details for the file hdf5maker-2025.10.29-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for hdf5maker-2025.10.29-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cdf35f3b185d27a5a32290cd79fb2ea23b56f1dc3b59ebed1b2e12ebee28ec06
MD5 34b60f4705e5a189ebcf640b007b1143
BLAKE2b-256 27a54d1373987ce61365d8ca7fdc67054edfccaae611d5f852e3b527ef3a2f1a

See more details on using hashes here.

Provenance

The following attestation bundles were made for hdf5maker-2025.10.29-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build_wheel.yml on slsdetectorgroup/hdf5maker

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