Skip to main content

Medical Imaginging Research structuring and automation

Project description

hurahura - formerly miresearch

Organisation and automation tools for medical imaging research data

hurahura is māori for "to investigate" or "to look around"

Installation:

pip install hurahura
# formerly: pip install imaging-research

About

This is a collection of classes for following OOP principles for organisation of research data for medical imaging research studies.

The intention is to provide a framework that will store imaging data on a "per examination" basis in a structured format. This structured format then permits simple interrogation, and automation.

It takes advantage of the dicom standard and the package spydcmtk for automating and generalising many typical steps with the intention of making the researcher's life easier.

This package may be easily adapted and expanded upon for a high level control over your research data. Or, it may be used as is for basic structure and organisation of data and automation of common tasks.

Class structure

AbstractSubject class is top level class taking inputs:

  • subjectNumber : an integer
  • dataRoot : the root directory where subjects to be stored
  • subjectPrefix : a prefix to be combined with subjectNumber for naming each subject
    • Optional: will be guessed from subjects already present in dataRoot if not given.
  • DIRECTORY_STRUCTURE_TREE : DirectoryStructureTree class to define directory structure for each subject directory (see wiki for construction shortcuts)
    • Optional: Defaults to RAW and META directories.

This is the basic parent class containing fundamental methods for organisation and management. See hurahura docs for advanced usage, epsecially via inheritance and polymorphism.

Configuration

hurahura uses a miresearch.conf file for configuration.

By default miresearch.conf files are search for in the following locations:

  1. source_code_directory/miresearch.conf (file with default settings)
  2. $HOME/miresearch.conf
  3. $HOME/.miresearch.conf
  4. $HOME/.config/miresearch.conf
  5. Full file path defined at environment variable: "MIRESEARCH_CONF"
  6. Full path passed as commandline argument to hurahura

Files are read in the above order with each subsequent variable present overwritting any previously defined. For information on files found and variables used run:

hurahura -INFO

systemctl

Running mi_watcher via systemctl is an attractive application:

Ubuntu instructions:

  • Build a .service file in /etc/systemd/system:
[Unit]
Description=My mi_watcher Service
After=network.target

[Service]
Type=simple
ExecStart=/path/to/script
Restart=on-failure

[Install]
WantedBy=multi-user.target
  • Build /path/to/script:
#!/bin/bash
source /myvenv/bin/activate
hurahura -WatchDirectory /path/to/watch_directory -config /path/to/my_proj.conf
  • Reload systemd
  • enable service
  • start service
sudo systemctl daemon-reload
sudo systemctl enable myservice.service
sudo systemctl start myservice.service

Documentation

For full documentation see hurahura docs

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

hurahura-0.1.20.tar.gz (49.8 kB view details)

Uploaded Source

Built Distribution

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

hurahura-0.1.20-py3-none-any.whl (55.1 kB view details)

Uploaded Python 3

File details

Details for the file hurahura-0.1.20.tar.gz.

File metadata

  • Download URL: hurahura-0.1.20.tar.gz
  • Upload date:
  • Size: 49.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for hurahura-0.1.20.tar.gz
Algorithm Hash digest
SHA256 9e2455f1631bf32fbaa7bd5d865fa792e9970f3daa1d0d1fde7a6d6b743db5b4
MD5 894dcf7c4623e1c6e568bb4518f16f26
BLAKE2b-256 ae1f7952c03552e9ecae89af0fed56af6f842d26c46b8e9a7bc5c6b6564881d4

See more details on using hashes here.

File details

Details for the file hurahura-0.1.20-py3-none-any.whl.

File metadata

  • Download URL: hurahura-0.1.20-py3-none-any.whl
  • Upload date:
  • Size: 55.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for hurahura-0.1.20-py3-none-any.whl
Algorithm Hash digest
SHA256 504e578e91c952a777f3d5346a801b69b5a4d425066888094852c1492927cc8f
MD5 fa06fd4767735966dd999d54bc2a9f07
BLAKE2b-256 966d80b708bde47076831261c0a7b00675680ba06cd3093e0dde53db096f93b4

See more details on using hashes here.

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