Pyvox 0.72 review
DownloadPyvox is a set of software tools for medical image processing, particularly skull stripping and segmentation of MR brain images; tool
|
|
Pyvox is a set of software tools for medical image processing, particularly skull stripping and segmentation of MR brain images; tools to support other applications may be added later.
These tools are intended to support researchers who need to prototype new image analysis algorithms or to develop automated image analysis tools for specific image analysis applications. The sequence of processing operations is specified through the scripting language Python, which can be used interactively or in command files; the core image processing algorithms are written in C for efficient processing of volume images.
Important design criteria for Pyvox include: script files and data files are portable across multiple Unix platforms, including Linux and Mac OS X; suitable for rapid prototyping of new algorithms and analysis protocols; suitable for efficient, automated processing of the finished analysis protocols; and easily extensible by programmers outside the original development team.
Pyvox is being distributed under an Open Source license which permits free use, modification, and redistribution provided that proper credit is given.
Here are some key features of "Pyvox":
Medical Image Processing
Pyvox is designed primarily for medical image processing, because that is what the author needs to do most; other applications of volume images are no doubt possible, but their needs come second.
Rapid Prototyping
Pyvox should be suitable for rapid prototyping of new algorithms and analysis protocols. To do this, Pyvox is implemented as a extension to the Python language. Python is a high-level object-oriented scripting language which can be used interactively or in programmed scripts and which is designed to be easily extensible in C.
Efficient Execution
Pyvox should also be suitable for efficient, automated processing of the finished analysis protocols. To do this, the core image processing functions are written in C, which is more efficient than Python.
Software Portability
The script files that define the analysis protocols and the programs that they invoke should be portable across multiple Unix platforms (including Linux and Mac OS X). To meet this requirement, Pyvox is written to comply with the usual standards, including ANSI C, Posix, and the X Window System.
Data Portability
The image files and other data files should also be portable across multiple Unix platforms. In particular, it should be possible to create an image file on a big-endian machine (e.g. Sparc), copy it to a little-endian machine (e.g. Pentium), and further process that image without needing to do any conversion of the file. This is accomplished through a set of portable C functions that can read and write data in specified external formats, converting as necessary to or from the platform-native format.
Open-Source Development
Pyvox should also be easily extensible by programmers outside the original development team. This is accomplished by following good software engineering practice in documenting the software for later maintenance and extensions.
Installation:
If all the prerequisites (Python 2.1, X11 Window System, Tcl/Tk, Motif or Lesstif, and optionally LAPACK and BLAS) are present and installed in the right places, the command sequence
./configure
make
make regress
make install
will usually compile, regression test, and install Pyvox. If that doesn't work, see the Installation chapter of the Pyvox Reference Manual (doc/pyvox.pdf or doc/pyvox.tex) for a detailed installation procedure.
What's New in This Release:
The interface for constructing convolution kernels has been completely redesigned and now supports the dynamic modification of kernels.
Internal types now have min and max attributes which contain the minimum and maximum possible finite positive values representable in that type.
Pyvox 0.72 search tags