X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=README;h=9146dbcc7324d5dfde810a0200a6f59a3f32da90;hp=2028fad4630beaca2f793f051886aa0fc03956d1;hb=79b656146b04b1d57d1ac27f9f2e5474e17c4936;hpb=fff4beb84fcc84e65e4feb457e2ed25c7774cff4 diff --git a/README b/README index 2028fad..9146dbc 100644 --- a/README +++ b/README @@ -1,103 +1,122 @@ -COPYRIGHT ---------- -This program is written by Kevin M. Rosenberg, M.D. +OVERVIEW +======== + +CTSim simulates the process of collecting tomographic X-ray data of +phantom objects. These X-ray data through the objects are called +projections. CTSim reconstructs the original phantom image from the +projections using a variety of algorithms. + +CTSim is open-source and is covered by the GNU Public License (GPL). + +Please enjoy CTSim. I'd like to hear any feedback + +Kevin M. Rosenberg, M.D. +kevin@rosenberg.net -It is covered by the GNU General Public License (GPL) which -allows copying and modifying this code with restrictions. See the -file COPYING for complete details. HISTORY ------- +======= CTSim development began in 1983 while I was in medical school. It was -written using Lattice C and MS-DOS. I used assembly language to write +written using Lattice C and MS-DOS. I used 8086 assembly language to +code convolution and backprojection routes and also to write graphics directly to an IBM EGA video adapter. In 1999, I ported CTsim to GNU/Linux. In April 2000, the source code for CTSim was published on the Internet. -STATUS ------- +In June 2000, entire code for revised and converted to C++. -The official home for CTsim is http://www.ctsim.org. From this site, -you can download the CTsim source code and use CTSim online using a -beowulf cluster. -I would be very pleased to have other developers join me in the -development of CTSim. Please see the TODO list for the most obvious -ideas. +WHERE +===== -In this release, the main issue that needs addressing is the inclusion -of old graphic library code. This code is not being used by -CTSim. Compilation warnings will occur in these files. Please ignore -these warnings. In the next major release of CTSim, there will be -support for interactive graphics. I just need to write the low-level -drivers to support X-window rather than IBM EGA hardware. +The official home for CTsim is http://www.ctsim.org. -OVERVIEW --------- -CTSim simulates the collection of x-rays by a CT scanner. These x-rays -of objects are called projections. +FEATURES +======== + +Several standard phantom objects are built-in. Other phantoms can be +loaded from ASCII files. -Phantom objects are defined. Several built-in phantoms are included, -as well as an extension to load files of phantom definitions. +CTsim uses cross-platform compatible file formats for projection data and +image data. -CTsim uses .sdf (standard data files) to represent 2-dimensional image -data. It uses a 32-bit floating-point pixel format. SDF is loosely -based on a image file format used by the Jet Propulsion Laboratory -(JPL). It supports multiple text labels per image. THE PROGRAMS ------------- +============ + +ctsim - a graphical user interface for most functions. This programs +has all of the functionality of the command line tools except for +image comparison functions. phm2if - generates an image file of a phantom object -phm2pj - Simulates the collection of CT data, or projections, of a phantom -object +phm2pj - Simulates the collection of CT data, or projections, of a +phantom object -ctrec - Performs an CT reconstruction, also known as image -reconstruction from projections. Reads a projection file and writes a SDF -file. +pjrec - Performs an CT reconstruction, also known as image +reconstruction from projections. Reads a projection file and writes a +SDF file. pj2if - Converts projection data to a raw sinugram image -if2img - Converts an image file to a variety of 8-bit and 16-bit image formats +pjinfo - Show information on a projection file + +ifexport - Converts an image file to a variety of 8-bit and 16-bit image +formats + +if1 - Performs operations on a single image file + +if2 - Performs operations on two image files, such as comparisons + +ifinfo - Show statistics and history labels of image files -ifinfo - Show statistics and history labels of SDF files TYPICAL USAGE -------------- +============= + +Graphical User Interface +------------------------ + +Use ctsim. + + +Command Line Interface +---------------------- When evaluating CT simulation, in general, these steps are followed: Create a phantom image and viewable image file - phm2sdf ... - sdf2img ... + phm2if ... + ifexport ... Simulate CT data collection and create a viewable image of raw projections phm2pj ... - pj2sdf ... - sdf2img ... + pj2if ... + ifexport ... Perform CT reconstruction and create viewable image file - ctrec ... - sdf2img ... + pjrec ... + ifexport ... -These functions are convert output image to a PNG file performed by -the CGI program ctsim.cgi which can be installed as described in -INSTALL file. +Display image information and comparative statistics + ifinfo ... -There is a sample shell script installed called 'sample-ctrec'. +There is a sample shell script installed called 'sample-ctsim.sh' +in the tools direction that performs the above commands. +These functions can be invoked via a web interface with a CGI program +as described in the INSTALL file. -CLOSING -======= -Please enjoy CTSim. I'd like to hear any feedback - -Kevin M. Rosenberg, M.D. -kevin@rosenberg.net +COPYRIGHT +========= +This program is written by Kevin M. Rosenberg, M.D. +It is covered by the GNU General Public License (GPL) which +allows copying and modifying this code with restrictions. See the +file COPYING for complete details.