Skip to main content

Python bindings for the Numerics88 AimIO C++ library

Project description

aimio-py

Coverage (CI) Wheel Build PyPI

Python bindings for the Numerics88 AimIO C++ library.

aimio-py provides a small Python API to read and write AIM files as NumPy arrays, inspect metadata, and work with processing logs.

Features

  • Read AIM files into NumPy arrays
  • Write AIM files from NumPy arrays
  • Access AIM header metadata (aim_info)
  • Convert processing logs between text and dictionary formats
  • Optional density/HU conversion helpers

Installation

From PyPI (recommended):

pip install aimio-py

From source:

git clone https://github.com/wallematthias/aimio-py.git
cd aimio-py
git submodule update --init --recursive
pip install -e .

Quickstart

from py_aimio import read_aim, write_aim

array, meta = read_aim("scan.AIM")
write_aim("copy.AIM", array, meta)

API

  • aim_info(path)
  • read_aim(path, density=False, hu=False) -> (array, meta)
  • write_aim(path, array, meta=None, unit=None)
  • get_aim_density_equation(processing_log)
  • get_aim_hu_equation(processing_log)
  • log_to_dict(log)
  • dict_to_log(dct)

Development

Run tests:

pytest -q

Run tests with coverage:

pytest -q --cov=py_aimio --cov-report=term-missing --cov-report=xml:coverage.xml

Build local artifacts:

python -m build --wheel --sdist

Build documentation from docstrings:

pip install sphinx
make -C docs html

Generated HTML will be in docs/build/html/index.html.

Important build note

This project depends on the external/AimIO and external/n88util git submodules. If they are missing, extension builds will fail.

Release and PyPI Publishing

Wheels and sdist are built by GitHub Actions on:

  • pull_request to main/master
  • pushes to main/master
  • tags matching v*

When a v* tag is pushed, the workflow publishes to PyPI via trusted publishing (pypa/gh-action-pypi-publish).

See docs/PUBLISHING.md for the release checklist and docs/source/ for Sphinx documentation sources.

Attribution

  • py_aimio/calibration.py is adapted from Bonelab/Bonelab.
  • py_aimio/header_log.py is by Matthias Walle.

License

MIT

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

aimio_py-0.1.1.tar.gz (50.9 kB view details)

Uploaded Source

Built Distributions

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

aimio_py-0.1.1-cp313-cp313-win_amd64.whl (101.9 kB view details)

Uploaded CPython 3.13Windows x86-64

aimio_py-0.1.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

aimio_py-0.1.1-cp313-cp313-macosx_11_0_arm64.whl (114.8 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

aimio_py-0.1.1-cp313-cp313-macosx_10_13_x86_64.whl (122.4 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

aimio_py-0.1.1-cp312-cp312-win_amd64.whl (101.8 kB view details)

Uploaded CPython 3.12Windows x86-64

aimio_py-0.1.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

aimio_py-0.1.1-cp312-cp312-macosx_11_0_arm64.whl (114.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

aimio_py-0.1.1-cp312-cp312-macosx_10_13_x86_64.whl (122.4 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

aimio_py-0.1.1-cp311-cp311-win_amd64.whl (100.0 kB view details)

Uploaded CPython 3.11Windows x86-64

aimio_py-0.1.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

aimio_py-0.1.1-cp311-cp311-macosx_11_0_arm64.whl (112.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

aimio_py-0.1.1-cp311-cp311-macosx_10_9_x86_64.whl (119.9 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

aimio_py-0.1.1-cp310-cp310-win_amd64.whl (99.5 kB view details)

Uploaded CPython 3.10Windows x86-64

aimio_py-0.1.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

aimio_py-0.1.1-cp310-cp310-macosx_11_0_arm64.whl (111.6 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

aimio_py-0.1.1-cp310-cp310-macosx_10_9_x86_64.whl (118.5 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

File details

Details for the file aimio_py-0.1.1.tar.gz.

File metadata

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

File hashes

Hashes for aimio_py-0.1.1.tar.gz
Algorithm Hash digest
SHA256 f8692ba7144db74a4e46e874a6131dcaaabf79485a9dae363d469cfd6c4c0ec4
MD5 a428ba0a057aa17c089672f07670cbd0
BLAKE2b-256 540dc03bbf9dcbd324c32478145f53d21d358b893dec6ed8838daf0919882b49

See more details on using hashes here.

Provenance

The following attestation bundles were made for aimio_py-0.1.1.tar.gz:

Publisher: publish-from-run.yml on wallematthias/aimio-py

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

File details

Details for the file aimio_py-0.1.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: aimio_py-0.1.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 101.9 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for aimio_py-0.1.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 6f334aeb93f4edbcb4e996688441a03b5b692a83e17c506a87ed9cbfabb492aa
MD5 875e5cd8de186170b007f63d0e90aa08
BLAKE2b-256 7221b19b946b69a204857ae6efba1c680f6fe96b12dcddd1803a5727492ac1c1

See more details on using hashes here.

Provenance

The following attestation bundles were made for aimio_py-0.1.1-cp313-cp313-win_amd64.whl:

Publisher: publish-from-run.yml on wallematthias/aimio-py

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

File details

Details for the file aimio_py-0.1.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for aimio_py-0.1.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9791be69abb891eb9d1720f554b3231e95a22c27a18610bc2831aac90ecb45e7
MD5 e2bb3d6dfbb11e31a8e80577be10ad14
BLAKE2b-256 0ec0bc15b8d7c5f1be1fca2e865ba1d4afc0b0ae820f02418fdc4628a1ba1ee9

See more details on using hashes here.

Provenance

The following attestation bundles were made for aimio_py-0.1.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish-from-run.yml on wallematthias/aimio-py

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

File details

Details for the file aimio_py-0.1.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aimio_py-0.1.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 233e930bb4a31c7badb52a0344d0cfa5cb5cafcf8e77753c11845ce096e28fed
MD5 c1b17a2b23a8d1e4b3282fe7cb737080
BLAKE2b-256 de13a1e476aca63ce1d6385e252f9b9cfe12b2e09d48cad54d8fb9c5071464f7

See more details on using hashes here.

Provenance

The following attestation bundles were made for aimio_py-0.1.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish-from-run.yml on wallematthias/aimio-py

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

File details

Details for the file aimio_py-0.1.1-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for aimio_py-0.1.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 7a3bcf831e717a251ccab1d0234f32a9712ba041612682107f6ddd0f94dc4d22
MD5 fc85162c0ed3580fdb95cd2bee69b6b3
BLAKE2b-256 31af6f4b01428f8a95a631b88ef97c823c41eada821a67c19fc57bb417c83c71

See more details on using hashes here.

Provenance

The following attestation bundles were made for aimio_py-0.1.1-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: publish-from-run.yml on wallematthias/aimio-py

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

File details

Details for the file aimio_py-0.1.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: aimio_py-0.1.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 101.8 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for aimio_py-0.1.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 21dfc5d03c701b8b28206087370e1a952a72d6ea00eed18bb64f313c8477e8e0
MD5 f613170297824a3755b2543d77ae6220
BLAKE2b-256 fb04ec0eabc2e2378a5f9fb957fa70099e59836cc806b9f1c4e7646363160cdf

See more details on using hashes here.

Provenance

The following attestation bundles were made for aimio_py-0.1.1-cp312-cp312-win_amd64.whl:

Publisher: publish-from-run.yml on wallematthias/aimio-py

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

File details

Details for the file aimio_py-0.1.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for aimio_py-0.1.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b58f62abf6204111ff9e267a1f0e65c2f3bfb8e71adcdc8790a35b197892b6eb
MD5 ae63b5d621744dc34354f5472481401f
BLAKE2b-256 72a611c7f289399b22ad3441c5b933537f13acc3fd1d1c75040b8b8e544cf5cc

See more details on using hashes here.

Provenance

The following attestation bundles were made for aimio_py-0.1.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish-from-run.yml on wallematthias/aimio-py

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

File details

Details for the file aimio_py-0.1.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aimio_py-0.1.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e9297055066676cf2d6c0c9b8fba1c2815a389c567490a65ed84be3e126a9a1c
MD5 881c9552db89cea2addfb09842008ba0
BLAKE2b-256 c9182138bab2f9581f183ce63cdcd004809609f5b82d42fa49d174ffdbbc99f0

See more details on using hashes here.

Provenance

The following attestation bundles were made for aimio_py-0.1.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish-from-run.yml on wallematthias/aimio-py

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

File details

Details for the file aimio_py-0.1.1-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for aimio_py-0.1.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 ba707f8ad9cce06122cfe75565cd50a7490882a2a48e3f0910c2d194b50fc5a0
MD5 f322127d8b4812d265aba43512ff9fb3
BLAKE2b-256 bfc4b8079322579b88324cbacd3023d2fa96860959742883bd140ce13c3dabf9

See more details on using hashes here.

Provenance

The following attestation bundles were made for aimio_py-0.1.1-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: publish-from-run.yml on wallematthias/aimio-py

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

File details

Details for the file aimio_py-0.1.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: aimio_py-0.1.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 100.0 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for aimio_py-0.1.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 dc28b0cd0931d2ab0033dc60609032c7713b42cc587b842ea0e29f0109daadfb
MD5 1e6972aa233aca1e17ee1a261028866b
BLAKE2b-256 dd3cde81724c0409984fd4a0cdc3f13139f4fb99ea2a09d932fd92b1ee0face4

See more details on using hashes here.

Provenance

The following attestation bundles were made for aimio_py-0.1.1-cp311-cp311-win_amd64.whl:

Publisher: publish-from-run.yml on wallematthias/aimio-py

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

File details

Details for the file aimio_py-0.1.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for aimio_py-0.1.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0dd0037b23d76157ed0cdcc3c3812bc520c9e8ebc755cb0c12d31ece7081ffe5
MD5 7fb235264ecd2e1d2ccb6ea23b817d13
BLAKE2b-256 ccc69a749d275cc5727466bdd6801e8b76febe1570de2aca1e05fe2acd6d9104

See more details on using hashes here.

Provenance

The following attestation bundles were made for aimio_py-0.1.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish-from-run.yml on wallematthias/aimio-py

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

File details

Details for the file aimio_py-0.1.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aimio_py-0.1.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0b8bea304351ff836fa5559d06e57568b64e0c83ffd7b6f1e72ac2845edc792a
MD5 d7eb3e574e88552b292a2ced3ab401df
BLAKE2b-256 b979fb7ef05246acb2a9e0e02936b828a967e2989982db2f79ef7aab8dc9f948

See more details on using hashes here.

Provenance

The following attestation bundles were made for aimio_py-0.1.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish-from-run.yml on wallematthias/aimio-py

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

File details

Details for the file aimio_py-0.1.1-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for aimio_py-0.1.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 080d52a081ff418d595d9c27c43d498ee7a2bc622f97a7a4daf78ebd29c3c88d
MD5 004bdd995599ed0e3f5fc4f20dd74ace
BLAKE2b-256 1cf8747aea5f20ae6c585d616ac2942e715c49cc05fe5b588d29074f9de85cbf

See more details on using hashes here.

Provenance

The following attestation bundles were made for aimio_py-0.1.1-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: publish-from-run.yml on wallematthias/aimio-py

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

File details

Details for the file aimio_py-0.1.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: aimio_py-0.1.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 99.5 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for aimio_py-0.1.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 123034d145b29d82e5c3f708fe13792903d5fb38b94f4d777116ad20b599dfbf
MD5 0062d7a91511fc6f8b9ea66cc1fcf577
BLAKE2b-256 622f6b19a429f205fcc62ef8e45750d1b5610b6a3c2bbc3ddb897d77ef27c451

See more details on using hashes here.

Provenance

The following attestation bundles were made for aimio_py-0.1.1-cp310-cp310-win_amd64.whl:

Publisher: publish-from-run.yml on wallematthias/aimio-py

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

File details

Details for the file aimio_py-0.1.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for aimio_py-0.1.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a10863ab5ecb648147075b542989b525f590a675535ba2b1c112b4427efbc444
MD5 3ec4c18217b89ff3db0f4a08fc1dd2b3
BLAKE2b-256 d40079d86de7234221b9402b980d1258d3e365b51ccd225ee499eafd2c368012

See more details on using hashes here.

Provenance

The following attestation bundles were made for aimio_py-0.1.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish-from-run.yml on wallematthias/aimio-py

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

File details

Details for the file aimio_py-0.1.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aimio_py-0.1.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d6a0b1e6b7516f4afde998e5ef890c05705f5d212edc27cd0629ec01d4a2de81
MD5 df20557e37b1a63136ee5779d21983f5
BLAKE2b-256 99b05b6c701a389522b30731a55ca1f1d31e182ab9958dd1632d85058e88e499

See more details on using hashes here.

Provenance

The following attestation bundles were made for aimio_py-0.1.1-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: publish-from-run.yml on wallematthias/aimio-py

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

File details

Details for the file aimio_py-0.1.1-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for aimio_py-0.1.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f38eb6fe06f49435b20f6fef498665a35ca81932dedd1e4b5e583e08db6a05f0
MD5 b08bc1ff032da9903d610f571e88351b
BLAKE2b-256 c3d619492e03bf55453a18eb5e4d9e509547858edc1eec9c5d43c5f95f35d326

See more details on using hashes here.

Provenance

The following attestation bundles were made for aimio_py-0.1.1-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: publish-from-run.yml on wallematthias/aimio-py

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