Linux Medicine-HOWTO
Werner Heuser <
[email protected]>
v1.2 4 November 2000
Some pointers to Linux software (mostly GPLed) for the medical sci�
ences (medical applications, Medline and other bibliography tools,
applications for veterinarian medicine and others).
______________________________________________________________________
Table of Contents
1. Preface
1.1 About the Document
1.2 About the Author
1.3 Copyright, Disclaimer and Trademarks
2. Medical Applications
2.1 Freemed
2.2 Freemed-YiRC
2.3 Good Electronic Health Record - GEHR
2.4 Conversion of ECGs - ecg2png
2.5 GTDS - Oncologie Documentation (German)
2.6 Linux in a Doctor's Office (German)
2.7 Andromeda (German)
2.8 Res Medicinae (German)
2.9 Linux Port of Mallinckrodt CTN Software
2.10 Endoscopy
2.11 LinuDent
2.12 VISIdent (German)
2.13 Quality Documentation Statistic - QDS (German)
2.14 GNUMed
2.15 The Littlefish Health Project
2.16 Free Practice Management
2.17 PhysioNet
2.18 REALTIQ - ReAligning Tissue Quantifier
2.19 Open Infrastructure for Outcomes
2.20 CTSim
2.21 myPACS
2.22 LIMS - Laboratory Information Management Systems
2.23 Meditux
2.24 XBNC
3. Medline and Bibliography Tools
3.1 BioMail
3.2 DubMed
3.3 Pybliographer
3.4 sixpack
3.5 Surfraw
4. Sports and Nutrition
4.1 Nut
4.2 Bicycle Ride Calorie Calculator
4.3 weight
5. Other Resources
5.1 LinuxMedNews
5.2 Other Pointers
6. Veterinarian Medicine
6.1 FreeVet
7. Miscellaneous
7.1 Data Collection
8. Credits
9. Revision History
______________________________________________________________________
1. Preface
Life is the first gift, love is the second, and understanding is the
third. -- Marge Piercy <
http://www.capecod.net/~tmpiercy/>
1.1. About the Document
This document is part of the LINUX DOCUMENTATION PROJECT - LDP
<
http://www.linuxdoc.org>.
The latest version of this document is available in different formats
at Linux and Medicine <
http://mobilix.org/med_linux.html> .
This document isn't ready yet. If you like to write a chapter or even
a smaller part by yourself, please feel free to contact me. Also your
suggestions, recommendations and criticism are welcome.
Werner Heuser <
[email protected]>
1.2. About the Author
Working as a system administrator in the computer departments of two
German hospitals I get inspired to search for medical applications
created with Linux software.
1.3. Copyright, Disclaimer and Trademarks
Copyright � 2000 by Werner Heuser. This document may be distributed
under the terms set forth in the LDP license
<
http://metalab.unc.edu/LDP/COPYRIGHT.html> .
This is free documentation. It is distributed in the hope that it will
be useful, but without any warranty. The information in this document
is correct to the best of my knowledge, but there's a always a chance
I've made some mistakes, so don't follow everything too blindly,
especially if it seems wrong. Nothing here should have a detrimental
effect on your computer, but just in case I take no responsibility for
any damages incurred from the use of the information contained herein.
Though I hope trademarks will be superfluous sometimes (you may see
what I mean at Open Source Definition
<
http://www.opensource.org/osd.html>) : If certain words are
trademarks, the context should make it clear to whom they belong. For
example MS Windows NT implies that Windows NT belongs to Microsoft
(MS). Mac is a trademark by Apple Computer. All trademarks belong to
their respective owners.
2. Medical Applications
2.1. Freemed
freemed <
http://www.freemed.org/> is a medical management software
package that runs in a web browser window. It currently uses Apache,
an SQL backend (usually MySQL, but there's an SQL Abstraction for
this), and PHP, and is non-browser specific. It aims to duplicate all
of the functionality of programs such as The Medical Manager, while
remaining free to the community.
2.2. Freemed-YiRC
Freemed-YiRC <
http://freemed-yirc.familyandyouth.org/> is a PHP
package based on Freemed for use with Youth in Residential Care (YiRC)
agencies. Its aim is to be a complete package to replace legacy non-
free apps which aren't customizable. Since it's PHP-based, all that is
needed for the client is a good Web browser with extensive table
support.
2.3. Good Electronic Health Record - GEHR
The Good Electronic Health Record (GEHR) <
http://www.gehr.org/> , a
major part of the work of the openEHR Foundation, is an evolving
electronic health record architecture designed to be comprehensive,
portable and medico-legally robust. It has been developed from the
Good European Health Record project
<
http://www.chime.ucl.ac.uk/HealthI/GEHR/> requirements statement and
object model- the most comprehensive requirements documents ever
developed for the electronic health record. This website is a public
resource for documents and resources that have been used to build
implementations of this record.
2.4. Conversion of ECGs - ecg2png
ecg2png <
http://www.cardiothink.com/downloads/ecg2png/> converts
scanned 12-lead electrocardiograms (ECGs) into PNG format and a web-
friendly image size. The problems this program solves are that an ECG
scanned at relatively high resolution puts a large memory load on the
Web browser because it contains about 6 million color pixels. Also,
typical scanners convert a clean paper ECG into many colors, not just
red, black, and white. The resulting file cannot be compressed
efficiently and takes more time to transmit over low-speed network
connections. This program shrinks the image while preserving the
signal and cleans up the color map, yielding a bitmap that is well-
suited for Web-based distribution of ECG images.
2.5. GTDS - Oncologie Documentation (German)
The Giessener Tumor Documentation System - GTDS was actually written
for the Oracle database system under SCO-Unix, but works also under
Linux, when the IBCS module is used.
2.6. Linux in a Doctor's Office (German)
Karsten Hilbert <
http://hilbert.webprovider.com/Linux+Praxis.html >
<mailto:
[email protected]> has set up a page in German that
describes some aspects of how to set up Linux in a doctor's office.
It's been born from an article published in PraxisComputer 6/99.
2.7. Andromeda (German)
Andromeda <
http://www.frey.de> is an Open Source clinic information
and management system in German.
2.8. Res Medicinae (German)
Probably in most countries, but for sure in Germany, about 80% of
administrative software used in medical doctor's practices are still
based on the antique DOS operating system. Slowly, programs using
modern graphical user interfaces (GUI) reach a share of the market.
Most of them is based on one of the buggy but nevertheless expensive
MS WINDOWS operating systems.
When having bought a system, the user (doctor) is tied up to the
provider and its updates that cost. Those are necessary due to steady
changes in public health system and technical progress.
Res Medicinae <
http://www.resmedicinae.org> is the attempt to overcome
high pricing in the realm of medical information systems and to
provide users with a stable, platform independent, extensive system
using latest technology and being open to many other medical systems.
2.9. Linux Port of Mallinckrodt CTN Software
Ported by <
[email protected]> Mark Stoutjesdijk
<
http://m14-060.azn.nl/ctn> from the University Hospital Nijmegen -
Department of Diagnostic Radiology (Nijmegen MRI Research Group -
NMRG).
2.10. Endoscopy
ASD/MediTrac <
http://www.meditrac.com/> announced GI-Trac (TM) 2000
version 4.5 with native direct support for Linux. GI-Trac is a
database and endoscopy reporting system. Licence: commercial.
2.11. LinuDent
LinuDent <
http://smalllinux.netpedia.net/dental/index.html> is a
dental practice management software package that will run in console
mode or X. The X version uses GTK, and is being developed under Linux.
It aims to duplicate all of the functionality of full service dental
management programs, while remaining free to the community.
2.12. VISIdent (German)
The commercial VISIDent software is a GUI based information and
accounting system for German dentists, made by BDV
<
http://www.bdv.com>.
2.13. Quality Documentation Statistic - QDS (German)
QDS <
http://www.havelhoehe.de/Forschung/qds_tbd.html> is an open
source medical catalog and documentation system for the public health
care.
2.14. GNUMed
GNUMed <
http://www.hherb.com/gnumed/gnumed.html> is a comprehensive
and robust open source software package for paperless medical practice
GNUMed is open source through and through! Each and every single tool
used in the development process is open source. We do not use any
proprietary software at all.
GNUMed servers run on any open source Unix flavour like GNU/Linux and
freeBSD as well as on proprietary software such as WinNT (which we do
not recommend) GNUMed clients can be anything (even true thin
clients), any platform that can use TCP/IP for network communication!
GNUMed's main client ("administration client") has an easy to use
graphical user interface based on the GTK+ / VDK toolkit. Other
clients are easy to write due to well defined API much of the program
logic is handled by the database server GNUMed is based on a robust
SQL client-server concept and has built in mechanisms to monitor data
base integrity at any time. If your data gets corrupted for any
reason, you will be notified immediately! The two layer transaction
protocol will enable you to recover from any desaster at any time.
GNUMed features inbuilt transaction logging and data encryption to
maximize data safety and to guarantee maximum confidentiality of
sensitive data
2.15. The Littlefish Health Project
The Littlefish
<
http://www.paninfo.com.au/intro/littlefishproject_homepage.htm>
project is a user friendly patient information and recall system on an
open source basis for the use by any community health organisation.
The project will follow the GEHR or Good Electronic Health Record
standards.
2.16. Free Practice Management
FreePm <
http://www.freepm.org> is an open source project to create a
provider designed patient centered electronic medical record and
practice management application.
2.17. PhysioNet
PhysioNet <
http://www.physionet.org/> offers free access via the web
to large collections of recorded physiologic signals and related open-
source software. PhysioNet is a public service of the Research
Resource for Complex Physiologic Signals, funded by the National
Center for Research Resources of the National Institutes of Health.
The Research Resource for Complex Physiologic Signals, to which
PhysioNet belongs, is a cooperative project initiated by researchers
at Boston's Beth Israel Deaconess Medical Center/Harvard Medical
School, Boston University, McGill University, and MIT, under the
auspices of the National Center for Research Resources of the National
Institutes of Health. This resource, intended to stimulate current
research and new investigations in the study of complex biomedical and
physiologic signals, has three closely interdependent components:
� PhysioNet is an on-line forum for dissemination and exchange of
recorded biomedical signals and open-source software for analyzing
them, by providing facilities for cooperative analysis of data and
evaluation of proposed new algorithms. In addition to providing
free electronic access to PhysioBank data and PhysioToolkit
software, PhysioNet offers service and training via on-line
tutorials to assist users at entry and more advanced levels.
PhysioNet is a public service of the Resource, accessible via the
World Wide Web.
� PhysioBank is a large and growing archive of well-characterized
digital recordings of physiologic signals and related data for use
by the biomedical research community. PhysioBank currently includes
databases of multi-parameter cardiopulmonary, neural, and other
biomedical signals from healthy subjects and patients with a
variety of conditions with major public health implications,
including sudden cardiac death, congestive heart failure, epilepsy,
gait disorders, sleep apnea, and aging. These databases will grow
in size and scope, and will eventually include signals from
selected in vitro and in vivo experiments, as developed and
contributed by members of the research community.
� PhysioToolkit is a large and growing library of software for
physiologic signal processing and analysis, detection of
physiologically significant events using both classical techniques
and novel methods based on statistical physics and nonlinear
dynamics, interactive display and characterization of signals,
creation of new databases, simulation of physiologic and other
signals, quantitative evaluation and comparison of analysis
methods, and analysis of nonequilibrium and nonstationary
processes. A unifying theme of the research projects that
contribute software to PhysioToolkit is the extraction of hidden
information from biomedical signals, information that may have
diagnostic or prognostic value in medicine, or explanatory or
predictive power in basic research. All PhysioToolkit software is
available in source form under the GNU General Public License
(GPL).
A few interesting points not mentioned above:
1. All of our software development is done under Linux. Contributed
software, if not written for Linux, is ported to Linux. Almost all
of the software is portable to other versions of UNIX, and to other
operating systems as well.
2. Most of our applications for physiologic signal processing,
analysis, and visualization are built using a common library
layered over the W3C's libwww, permitting transparent access to
data stored locally or on web servers (in other words, these
applications can act as independent HTTP clients). Although they
have been designed to support collaborative research, many will be
useful in telemedicine applications. It's a fairly simple matter to
create new applications using the library, and there is extensive
tutorial and reference material on-line to help you get started on
developing your own applications.
3. Among the collections of data are a number of standard annotated
databases of electrocardiograms (including several such databases
we created beginning in the mid-1970s, and others contributed by
their creators) that are required by regulatory agencies such as
the US FDA for testing of automated ECG analyzers in compliance
with current ANSI and pending ISO standards. The support given us
by the NIH NCRR allows us to make these data available freely on
the web for the first time.
4. About 12 GB of data are on-line now, and our queue currently
contains another 60 GB that will be added over the next several
months as we add disk space to our servers.
2.18. REALTIQ - ReAligning Tissue Quantifier
REALTIQ stands for Re-aligning Tissue Quantification, the software is
currently in the alpha-stage.
Software Features:
� Re-align any patient-scan to new arbitrary axes by tri-linear
interpolation
� Segmentation of long-bone tissue
� Quantification of long-bone tissue
� DICOM compatible
Description:
A pre-version of this software was developed for use in a study on the
relations of the medullary-canal dimensions and the cortical-bone area
at patients suffering from arthritic bone-disease.
The problem with CAT data is, that if the model (in this case the
hand/finger) is not properly aligned with the CAT axis, the cut-planes
will only display a distorted view of the bone and quantitative
measurement will yield high error-rates.
REALTIQ reads in a set of DICOM images and displays it to the viewer
as a frontal, sagittal and transversal view. The user can specify,
intuitively by using the mouse, an axis through this data, as well as
a bounding-box around that axis. The dataset will be mapped to that
new axis, so that the structures of interest are now properly aligned.
In a second step, the software calculates:
� Medullary-canal diameters (in several directions)
� Medullary-canal area / absorption rate
� Cortical-bone diameters (in several directions)
� Cortical-bone area / absorption rate
For more information see: DigitalMedics <
http://www.digitalmedics.de>.
2.19. Open Infrastructure for Outcomes
OIO <
http://www.TxOutcome.org/> is a Web-based information system for
treatment outcome management. It is in production at the Harbor/UCLA
Medical Center for clinical outcomes management and research data.
Forms created with OIO and hosted on any OIO server can be downloaded
as XML files. Once downloaded from the "Forms library" and imported
into an OIO server, the necessary database tables are automatically
recreated and the imported forms become immediately available to the
users of that OIO server.
2.20. CTSim
CTSim <
http://www.ctsim.org/> is a Computed Tomography simulator under
the GPL license. It simulates the process of obtaining x-ray data
around a phantom object. It then uses various reconstruction
algorithms for reconstructing the original image. A Web-based CGI
interface is included.
2.21. myPACS
MyPACS <
http://sol.cc.u-szeged.hu/~kszabo/myPACS.html> is a Web-based
medical image management system. It is written in PHP 3.x and uses
MySQL for the relational database backend. It features searching
capabilities, uploading of images and patient data from a Web browser
into shared and private image repositories, and thumbnail creation and
image conversion using ImageMagick. Currently MyPACS is not compatible
with the DICOM standard.
2.22. LIMS - Laboratory Information Management Systems
The LIMS ASTM Standard (E1578 Standard Guide for Laboratory
Information Management Systems) can be found in ASTM`s Annual Book of
Standards Volume 14.01 Healthcare Informatics; Computerized Systems
and Chemical and Material Information. There is a small terminology
section in this standard that covers 25 terms that relate to LIMS. The
purpose of the standard guide is to educate new LIMS users on the
purpose and functions and the process of procuring a LIMS.
There is one other additional LIMS related standard in this book.
This E2066 Standard Guide for Validation of Laboratory Information
Management Systems.
The BlazeLIMS Server by Blaze Systems Corporation LIMS
<
http://www.blazesystems.com/> is now supported on Linux.
2.23. Meditux
Meditux <
http://meditux.sourceforge.net/> is Java-servlet based
software that provides a Web interface to MySQL or potentially any
relational database engine which is JDBC capable. It was developed to
support an Intranet site in a medical intensive care unit where it was
used to collect clinical and research data.
2.24. XBNC
XNBC <
http://www.b3e.jussieu.fr/xnbc/> is a software package for
simulating biological neural networks. Four neuron models are
available, three phenomenologic models (xnbc, leaky integrator and
conditional burster) and an ion-conductance based model. Inputs to the
simulated neurons can be provided by experimental data stored in
files, allowing the creation of hybrid networks. Graphic tools are
used to describe the modeled neurons as well as the network.
3. Medline and Bibliography Tools
3.1. BioMail
BioMail <
http://phm-pf-3.pharm.sunysb.edu/biomail/> is a small Web-
based application for medical researchers and biologists. It is
written to automate searching for recent scientific papers in the
PubMed Medline database. Periodically BioMail does a user-customized
Medline search and sends all matching articles recently added to
Medline to the user's e-mail address.
3.2. DubMed
DubMed <
http://dub.med.yale.edu> is a java-based Medline (Pubmed)
interface. Its server-side backend gets search results from the Entrez
system at the National Library of Medicine. DubMed offers a visual
search strategy palette, and uses a journal metadata repository to
link found citations to online journal articles when available.
3.3. Pybliographer
Pybliographer <
http://www.gnome.org/pybliographer/> is a tool for
managing bibliographic databases. It supports several bibliography
formats and can be used for searching, editing, reformatting, etc,
through its nice graphical interface for GNOME. Due to its nature, it
can be extended to many uses (generating HTML pages according to
bibliographic searches, etc). It is provided with sample scripts.
Internationalization, support for Medline, support for LyX, speedups,
and more.
3.4. sixpack
sixpack <
http://www.santafe.edu/~dirk/sixpack/> is a graphic and
commandline bibliography database manager written in Perl/Tk. It
interacts with the supplied package bp, which can import and export
from a big array of formats: bibtex, endnote, medline, procite, and
many others. It can download references directly off the Web, and open
articles using external viewers.
3.5. Surfraw
Surfraw <
http://surfraw.sourceforge.net/> (Shell Users' Revolutionary
Front Rage Against the Web) provides a Unix command-line interface to
a variety of popular Web search engines and sites, including Google,
Altavista, Raging, DejaNews, Research Index, Yahoo!, WeatherNews,
Slashdot, Freshmeat, and many others. New elvi clients for Freshmeat,
NewScientist, MedLine, and PubMed databases (PubMed, Nucleotide,
Protien, Genome, Structure, Popset), and support for more Google
search types (BSD, Linux, Mac and UncleSam).
4. Sports and Nutrition
4.1. Nut
Nut <ftp:\\ftp.metalab.unc.edu\pub\Linux\apps\misc\> allows you to
record what you eat and analyze your meals for nutrient composition.
The database included is the USDA Nutrient Database for Standard
Reference, Release 13, which contains 6,210 foods.
This database of food composition tables contains values for calories,
protein, carbohydrates, fiber, total fat, saturated fat,
monounsaturated fat, polyunsaturated fat, and cholesterol; vitamins A,
thiamin, riboflavin, niacin, pantothenic acid, B6, folate, B12, C, and
E; and minerals calcium, copper, iron, magnesium, manganese,
phosphorus, potassium, selenium, sodium, and zinc. Nutrient levels are
expressed as a percentage of the Daily Values, the familiar standard
of food labeling in the United States. In addition, levels of the
omega-6 and omega-3 polyunsaturated fatty acids are shown, along with
average grams per day of the important PUFAs.
You may search this list of foods and view nutrient values for
different serving sizes; you may also rank foods in order of level of
a particular nutrient. You may change the daily calorie level to
correspond to your personal metabolism, and the levels for fat,
carbohydrates, and fiber are automatically adjusted. You may add your
own recipes to the database, by creating them from the foods in the
database.
4.2. Bicycle Ride Calorie Calculator
Bicycle Ride Calorie Calculator
<
http://www.geocities.com/SiliconValley/Vista/6434/calcalc.html> by
Greg Kondrasuk is a simple program that calculates the number of
calories expended on a bicycle ride. It is based on an article in the
May 1989 issue of Bicycling Magazine, pp. 100-103. It provides a good
estimate of the number of calories burned based on time, distance,
rider weight, wind speed and direction, drafting, and climbing.
4.3. weight
weight <
http://world.std.com/~damned/software.html> is a GPL program,
which helps users keep track of their weight. It computes a moving
weighted average based upon daily weight (useful because it smooths
the fluctuation of daily weights), can compute caloric debt, and can
plot monthly, quarterly, annual, and other graphs of weight.
5. Other Resources
5.1. LinuxMedNews
LinuxMedNews <
http://www.LinuxMedNews.org/> is a site designed to
facilitate, amplify and begin the process of fundamentally changing
medical education and practice into a more effective, fair and humane
enterprise using modern technologies. The site uses Zope and a
slashdot clone Squishdot to accomplish these goals. It is not intended
to be doctor-centric, it is intended to be an interesting/fun forum
and resource for anyone who has an interest in health care and open
source.
5.2. Other Pointers
� Medical-Image-FAQ <
http://idt.net/~dclunie/medical-image-faq/html/>
� Peter's Resources on Medicine (PCR MED) <
http://ourworld.compuserve.com/homepages/pvosta/pcrmed.htm>
� Peter's Resources on Biocomputing (PCR BIOC) <
http://ourworld.compuserve.com/homepages/pvosta/pcrbioc.htm>
� Protana <
http://www.protana.com/~pm/Perl.html>
� Timothy M. Persons <
http://www.rad.bgsm.edu/~tim/home.html>
Didn't check for Linux related newsgroups and mailing lists yet.
6. Veterinarian Medicine
6.1. FreeVet
FreeVet <homepage:
http://www.mecalc.co.za/ross/FreeVet/> is a Y2K
ready Animal Clinic System built using the Qt toolkit. It currently
uses MySQL as its database. It aims to provide the veterinarian with a
complete solution for running a clinic, small or large.
7. Miscellaneous
7.1. Data Collection
An increasing role in data collection for instance in hospitals, will
be played by handheld computers (HPCs) or Personal Digital Assistants
(PDAs). More commonly known as PALMs. Linux offers way to exchange
these data to servers, for instance via the IrDA port. See IR-HOWTO
<
http://mobilix.org/howtos.html> for details. A survey of non-Linux
applications for the Palm device you may find at PalmPilot Medical -
Palmtops PDAs HPCs Palm - Net Links
<
http://palmtops.about.com/compute/palmtops/msub14.htm>.
8. Credits
Thanks to
� Christian Heller <
[email protected]>
� George B. Moody <
[email protected]> Harvard-MIT Division of Health
Sciences and Technology
� Martin Wawro LS7, Department of Computer Science, UniDO
<
http://ls7-www.cs.uni-dortmund.de/~wawro> <
[email protected]
dortmund.de>
9. Revision History
� v0.1, 17 November 1999, first draft
� v0.2, 26 January 2000, URLs checked, minor changes, second draft
� v1.0, 27 January 2000, LinuDent added, preface and disclaimer
added, minor changes, first official release
� v1.1, 20 April 2000, links to Res Medicinae, QDS, sixpack and
LinuxMedNews added, minor changes
� v1.2, 4 November 2000, links to Nut, Free Practice Management,
LittleFish, GNUMed, REALTIQ, VISIdent, weight, OIO, CTSim, myPACS,
BalzeLIMS, XNBC and PhysioNet added, new document URL, minor
changes