Skip to content

Brikwerk/ctqa

Repository files navigation

CTQA logo

CTQA

Stars GitHub Issues GitHub Pull Requests License


This utility aims to perform automated QA testing on CT machines for technologists.

CTQA Demo Image

Table of Contents

About

CTQA specializes in identifying the position of a phantom within an image and taking homogeneity measurements specific to the vendor. These measurements are tracked over time and any deviations are sent as notifications to the relevant parties.

For information on the deployment and usage of this system, please consult the wiki.

Please Note: This project requires usage of an Orthanc Server instance to act as an intermediary PACS server for CT machines to submit to.

You can view Orthanc here and download it here.

Feature List

  • Automated Phantom detection
  • Automated Homogeneity Testing
  • Homogeneity Value Drift Prediction
  • Notifications and Reports through email or a custom method
  • Configurable homogeneity value limits
  • Daily and Weekly Reports
  • Subscribe to specific notification levels (Eg: Failures and Warnings only)

Getting Started

These instructions help you get a copy of the project up and running on your local machine for development and testing purposes.

See the wiki's installation section for notes on how to deploy the project on a live system.

Prerequisites

  • Python 3.5+
  • An accompanying Pip installation
  • Virtualenv (Recommended)

Installing

If you'd like to setup a virtual environment and install all required packages, navigate to the project root and run the following command:

env-setup.bat

Otherwise, install all packages through the standard command:

pip install -r requirements.txt

After the package installations have finished, the application can be launched with the following command:

python run.py

The appropriate configuration files will be generated in the project root during the initial application launch (or if they aren't present). You can choose to follow through with the application's setup or choose to configure manually.

Details for setting up and configuring the utility can be found on the wiki.

Development documentation can be found under "docs/build/html" from the project root.

Compiling the Executable

To compile CTQA, run:

pyinstaller run.spec

or for a binary with a console debug output:

pyinstaller run-debug.spec

Running the tests

CTQA currently uses PyTest to check the validity and accuracy of homogeneity tests run. The testing suite can be run with the following command:

pytest

Tests can be found under the "test" directory from the project root.

Built Using

Author

Acknowledgements

  • Giampaolo Rodola' for usage of LogWatcher