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.21.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.21-py3-none-any.whl (55.2 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for hurahura-0.1.21.tar.gz
Algorithm Hash digest
SHA256 574b28898736c51b23ff9eb91a376df6b9f04fcfc978f4457a75076738be1cf2
MD5 eb3e72a797e29603cb19e43e6c85ed7c
BLAKE2b-256 66fc464b69443ff0f5bbd3f862b53ae90a62297e01c19275be5297f98e144523

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for hurahura-0.1.21-py3-none-any.whl
Algorithm Hash digest
SHA256 20949c02b11e011dbfb1f28e70f9477165d5ddca84a965bc77cbcb4528dad8a8
MD5 cbe4ba39f15843d7614a7c67b9d9577b
BLAKE2b-256 6c16d21d88a5dd8aae293b7aef250122171069b956f30020c2628d61e9ae32f2

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