What does it do?
Scans a directory for IMRT QA reports and parses data into a CSV.
Other information
This library is part of the IMRT QA Data Mining (IQDM) project for the AAPM IMRT Working Group (WGIMRT).
Free software: MIT license
Documentation: Read the docs
Tested on Python 3.6, 3.7, 3.8, 3.9
Dependencies
Install
Latest PyPI release:
$ pip install iqdmpdf
Install from source:
$ python setup.py install
If you do not have a C++ compiler installed, you might have issues with installing the latest version of pdfminer.six. The following might resolve your issue:
$ pip install pdfminer.six==20200726
Usage
To scan a directory for IMRT QA report files and generate a results .csv file into your current directory:
$ iqdmpdf [init_directory]
As of v0.2.2, multi-threading is enabled. For example, you can enable 4 simultaneous threads with the following:
$ iqdmpdf [init_directory] -n 4
usage: iqdmpdf [-h] [-ie] [-od OUTPUT_DIR] [-of OUTPUT_FILE] [-ver] [-nr]
[-re] [-n PROCESSES]
[init_directory]
Command line interface for IQDM-PDF
positional arguments:
init_directory Initiate scan here
optional arguments:
-h, --help show this help message and exit
-ie, --ignore-extension
Script will check all files, not just ones with .pdf
extensions
-od OUTPUT_DIR, --output-dir OUTPUT_DIR
Output stored in local directory by default, specify
otherwise here
-of OUTPUT_FILE, --output-file OUTPUT_FILE
Output will be saved as <report_type>_results_<time-
stamp>.csv by default. Define this tag to customize
file name after <report_type>_
-ver, --version Print the IQDM version
-nr, --no-recursive-search
Include this flag to skip sub-directories
-re, --raise-errors Allow failed file parsing to halt the program
-n PROCESSES, --processes PROCESSES
Enable multiprocessing, set number of parallel
processes
Vendor Compatibility
We plan to support many vendors. If the report is very consistent, a new JSON file in the report_templates is essentially all that is needed. Additional documentation for custom templates can be found here.
Sun Nuclear: SNC Patient
ScandiDos: Delta4
PTW: VeriSoft
Credits
Development Lead
Dan Cutright
Contributors
Marc Chamberland
Aditya Panchal
Test Data
Example IMRT QA reports used for unit testing and design are available here.
- Dan Cutright, University of Chicago Hospital
delta4/UChicago
sncpatient/UChicago
- Marc Chamberland, University of Vermont Health Network
sncpatient/UVermontHealthNetwork
- Serpil Kucuker Dogan, Nortwestern Memorial Hospital
sncpatient/Northwestern_Memorial
sncpatient2020/Northwestern_Memorial
- Aditya Panchal, AMITA Health
verisoft/AMITA_Health
- Michael Snyder, Beaumont Health
sncpatient/Beaumont
Metadata
Release files for IQDMPDF 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| IQDMPDF-0.3.0.tar.gz | 4.8 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| IQDMPDF-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 9.7 MB
Release files / IQDMPDF-0.3.0.tar.gz
| Download URL | IQDMPDF-0.3.0.tar.gz |
|---|---|
| Size | 4.8 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
73d9adc0cc768db5fa5025ba3632d5a5fd1a75e4131450d8502044454bf46577
|
|
BLAKE2b-256 checksum How to use checksums |
f84ece531c18dd462d17667d77d7d77a09419485ace8cd2341d7aeb2f4ca230f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9
|
Release files / IQDMPDF-0.3.0-py3-none-any.whl
| Download URL | IQDMPDF-0.3.0-py3-none-any.whl |
|---|---|
| Size | 4.9 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f8c1ecd16bdd129f9d972d9a6bee0ae92aa63b5d028b9634e725dcf34189537e
|
|
BLAKE2b-256 checksum How to use checksums |
cbf612332797c13245208c0cf5e32e7192eb1a648ad96c3af7a8d071fb39191c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9
|