Skip to main content

pyisomme

CI codecov PyPI Python License

Installation

pip install pyisomme

PDF report export is optional. Install the PDF extra and its Chromium browser binary once after installing or updating pyisomme:

pip install "pyisomme[pdf]"
python -m playwright install chromium

Features

  • Read/write ISO-MME (compressed/uncompressed)
  • Modify Channel and calculate Injury Risk Values (HIC, a3ms, DAMAGE, OLC, BrIC, NIJ, ...)
  • Calculate dummy head trajectories from head centre-of-gravity acceleration and rotational-velocity measurements
  • Plot Curves and compare multiple ISO-MMEs
  • Create PowerPoint, HTML, and PDF reports:
    • Curve Correlation
    • Euro NCAP: Frontal 50 km/h, Frontal MPDB, Side Barrier, Side Pole, and Side FarSide
    • FMVSS: 208 and 214
    • IIHS: Frontal Small Overlap, Frontal Moderate Overlap, and Side Impact
    • UN: Frontal 50 km/h R137, Frontal 56 km/h ODB R94, Side Pole R135, and Side Barrier R95
  • Display Limit bars in plots
  • Compare performance of left-hand-drive vehicle with right-hand-drive vehicle
  • Command-line tools for listing, merging, editing, converting, plotting, and reporting ISO-MME data

Command Line Interface (CLI)

Installing the package provides the pyisomme command. The equivalent python -m pyisomme form is also supported.

pyisomme --help
pyisomme <command> --help
Command Purpose
list List channels, optionally selected by code patterns
code Decode a 16-character channel code and show its default unit
merge Merge and transform one or more ISO-MME containers
set Set one or more metadata fields on selected channels in place
convert Numerically convert selected channel data to another unit in place
plot Plot selected or calculated channels
report Calculate and export an assessment report

Describe a channel code:

pyisomme code 11HEADCG00H3ACXD
Code: 11HEADCG00H3ACXD
Test Object: Vehicle 1
Position: Front left
Main Location: Head
Fine Location 1: Center of Gravity
Fine Location 2: Not defined
Fine Location 3: Hybrid III Mid-Sized Adult Male Dummy
Physical Dimension: Acceleration
Direction: Longitudinal
Filter Class: CFC 60
Default unit: m / s2

Edit channel codes

pyisomme set TEST1.mme TEST2.zip --fine-location-3 H3 -c '11HEAD000000ACXP' '13CHST000000DSXP'

Convert channel values and units (e.g. 0.04 m becomes 40 mm)

pyisomme convert TEST1.mme TEST2.zip --unit mm -c '13CHST0000H3DSXP'

Merge multiple ISO-MME containers:

pyisomme merge ./iso_merged.zip ./iso_1/v1.mme ./iso_2.zip ./iso_3.tar.gz

Resample from 0 to 100 ms with a 1 ms step and linear interpolation:

pyisomme merge ./resampled.mme ./iso_1/v1.mme --resample 0 0.001 0.1

Plot a calculated resultant head acceleration with filter class A / 1000 Hz:

pyisomme plot ./iso_1/v1.mme --codes '24HEAD??????ACRA' --xlim 0 100 --calculate

Create HTML, PDF, and PowerPoint reports in one run using only data from 0 to 200 ms. Repeat -o/--output for every desired format; the format is inferred from the output file extension.

pyisomme report EuroNCAP_Frontal_MPDB data/nhtsa/09203 --crop 0 0.2 \
  -o out/report.html \
  -o out/report.pdf \
  -o out/report.pptx

Python Examples

Example Report

Animated preview of Euro NCAP frontal 50 km/h and IIHS frontal small overlap PDF reports generated with pyisomme (using synthetic data):

View the generated HTML and PDF reports

Animated preview of Euro NCAP frontal 50 km/h and IIHS frontal small overlap PDF reports

Limitations

  • Only test-info (.mme), channel-info (.chn) and channel data files (.001/.002/...) are supported. All other files (videos, photos, txt-files) will be ignored when reading and writing.
  • Writing methods do not ask before overwriting. In particular, set and convert rewrite every supplied ISO-MME container in place after validating all inputs and selections.

Metadata

Release files for pyisomme 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyisomme 1.1.0
File Size Uploaded
pyisomme-1.1.0.tar.gz 613.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyisomme 1.1.0
File Interpreter ABI Platform
pyisomme-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 895.3 kB

Release files / pyisomme-1.1.0.tar.gz

Download URL pyisomme-1.1.0.tar.gz
Size 613.1 kB
Tags Source
SHA-256 checksum
How to use checksums
100c80b1ab2b050ccb53f6aa43f4dba9d40c00233075ecb177e41e2b03d4c35d
BLAKE2b-256 checksum
How to use checksums
fe97103d87c42aef8bfb8efe8bf59ed1179b303c240e42785ba00b3933e89b47
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pyisomme-1.1.0-py3-none-any.whl

Download URL pyisomme-1.1.0-py3-none-any.whl
Size 282.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6ae978346cd7ef7c95c71bc5bf7f149a2878e2b13db23221afb0c5f763652ae4
BLAKE2b-256 checksum
How to use checksums
0d9af199bf20b0b3d5f30581ff8d79909a8c4547e01a0a36fd44039e4835dc5f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files

1.0.0

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

0.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page