Classification Toolkit
The main documentation for the classification-toolkit can be found at the fw-classification Documentation
Classification toolkit is a library that can act on arbitrary metadata in the
form of JSON, with a declarative set of rules. The main use case for this
library is for classification of medical imaging files based on their
metadata, for example, the SeriesDescription tag in a DICOM file.
Install
poetry add fw-classification, or with optional dependencies
poetry add fw-classification -E all.
Run classification via cli
~/ ➜ classify run ./fw_classification/profiles/main.yml ~/Downloads/example.dicom.zip -a dicom
fw_classification: Block mr_file result: True
fw_classification: Block set_modality result: True
fw_classification: Block set_classification_from_acquisition_label_or_series_description result: True
fw_classification: Block set_contrast_from_acquisition_label_or_series_description result: False
fw_classification: Block add_features_from_acquisition_label_or_series_description result: False
fw_classification: Block add_measurement_from_acquisition_label_or_series_description result: False
fw_classification: Block add_intent_from_acquisition_label_or_series_description result: False
{
"file": {
"info": {
"header": {
"dicom": {
"FileMetaInformationGroupLength": 216,
"WindowWidth": 199.0,
... # Many more tags
"dBdt": 0.0
}
}
},
"type": "dicom",
"modality": "MR",
"classification": {
"Intent": [
"Structural"
],
"Measurement": [
"T1"
]
}
}
}
Run via python
from fw_classification.classify import run_classification
import json
input_data = {}
with open('/path/to/input','r') as fp:
input_data = json.load(fp)
result, out_data = run_classification('MR_classifier', input_data)
Out:
~/ ➜ python test.py
{
"file": {
"info": {
"header": {
"dicom": {
"FileMetaInformationGroupLength": 216,
... # Many more tags
"WindowWidth": 199.0,
"dBdt": 0.0
}
}
},
"type": "dicom",
"modality": "MR",
"classification": {
"Intent": [
"Structural"
],
"Measurement": [
"T1"
]
}
}
}
Development
Install the project using poetry (requires poetry > 1.2.0b1), enable plugin and pre-commit:
poetry install --extras "all"
pre-commit install
Metadata
Release files for fw-classification 0.6.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fw_classification-0.6.3-py3-none-any.whl | Python 3 | none | any | Details |
Release files / fw_classification-0.6.3-py3-none-any.whl
| Download URL | fw_classification-0.6.3-py3-none-any.whl |
|---|---|
| Size | 31.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a8d5f9fe3909339c0d9355dc8f8914d4970536466fe4efdd31c3a74bbc68868b
|
|
BLAKE2b-256 checksum How to use checksums |
90eeb9977a82b3a4769f1fb7a48999b665dc56bfaa4408b1354f6447d1396359
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.4.3 CPython/3.12.14 Linux/5.15.154+
|
Security for fw-classification 0.6.3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.