|
Crystal Image
Quantitative Image Analysis
|
DVD NOTICE FOR CUSTOMERS OF MY BOOK:
Due to a production mistake, you may have a DVD that
cannot boot. If you have a RED DVD , you already have the new
production. This DVD should boot and thus give you access to the software and sample images.
If you have a BLUE DVD, the DVD will not work. You have two options:
- Contact me at the e-mail address below. I will gladly burn a DVD and mail it to you
- Download the ISO image and burn your own DVD.
Click here to download the ISO image. Save
the file on your hard disk, then use your DVD burner software to burn the ISO image. Note: Do not
burn the file, rather use it as an ISO image (this is an intermediate step of the DVD creation process).
Check your software manual how to burn an ISO image. Also note that the download is 2 GB.
Downloading the image may take some time.
If you want to check if the download was successful, here are the checksums:
md5sum: 9378d7442ff99ba78dc1fda586d6f1a2
sha1sum: 02691996bab71dd7618818f2aaa6211dbd222972
What Is Crystal Image?
Crystal Image is a software program for image processing and analysis. Crystal Image has
a similar purpose and functionality as ImageJ and
IMAL (formerly tnimage).
Crystal Image, like ImageJ and IMAL, has a biomedical focus, but can readily be used for
image processing applications in any nonmedical field.
Key features are
- Processing of images with 8-bit and 16-bit grayscale formats,
24-bit RGB format, and 32-bit floating-point format.
- Import of images in various formats, including TIFF, DICOM, raw and ASCII
- Export to TIFF, raw, pgm, and native OpenDX format
- Contrast and brightness manipulation, false-coloring, and histogram correction
- Processing of 3D stacks
- Spatial-domain and Fourier-domain filters
- Wavelet-based filters
- Morphological operations
- Shape and texture analysis
- Segmentation (intensity-based segmentation, region growing, hystersis thresholding,
watershed segmentation)
- Measurement (individual pixel intensities, line profiles, average profiles, histogram,
cluster analysis, apparent fractal dimensions)
- Automation through macro scripting
Moreover, I have published a book, Advanced Biomedical Image Analysis, in which
modern, cutting-edge image processing and analysis methods are explained. Most of the
methods presented in the book are also implemented in Crystal Image. For this reason,
a DVD with Crystal Image accompanies the book.
Click on the thumbnail to the right for more imformation about the book.
What Functions Does Crystal Image Offer in Detail?
A complete list of the functions can be found
here.
Crystal Image Documentation
Unfortunately, comprehensive on-line documentation is presently lacking.
Many functions are thoroughly explained in
my book, which contains examples, algorithms in pseudo-code, and a list of macro
functions.
Volunteers would be welcome.
Known Bugs
Yes, they exist. And let's not start with the unknown bugs...
Click here for the list of known bugs.
NEW! Version 0.9.3 Beta
The current version 0.9.3 Beta offers some added features and a few bug fixes.
Click here for the list of bug fixes and
new features in Crystal Image 0.9.3.
Why Free Software?
You may be using software that is free of charge -- the Adobe reader, or the
Quicktime player, for instance -- but the philosophy behind Free Software
goes deeper. When downloading software free of charge, you most likely have
signed some contract ("EULA") that restricts your use of the software.
Moreover, you cannot know what the software actually does. You may have fought
the whims and vagaries of Digital Restrictions Management
(DRM). You may have heard about the
destructive rootkit and security hole that Sony-Bertelsmann included for "free"
on their music CDs.
You may have heard about Microsoft Genuine Advantage, a genuine advantage for Microsoft,
because it precludes you from running certain software in environments of your choice -
virtual machines or WINE.
When you download software without paying a royalty, this does not mean that the
software is Free (with capital F) in the sense of Free Software.
If you download a compiled executable
binary (such a a Windows .exe file), you have hardly any control over its actions.
Such software is not Free. The Free Software philosophy enumerates four specific freedoms:
- The freedom to run the program, for any purpose
- The freedom to study how the program works, and change it to make
it do what you wish. Access to the source code is a precondition for this.
- The freedom to redistribute copies so you can help others.
- The freedom to distribute copies of your modified versions to others.
By doing this you can give the whole community a chance to benefit from
your changes. Access to the source code is a precondition for this.
These freedoms are explained in detail
by the Free Software Foundation. The key feature is your right to obtain
the source code, which enables you to study how the program works, and to add your own
changes and improvements to the software.
It is noteworthy that the Free Software philosophy does not leave the software in an
anarchistic void. Rather, the goal of Free Software is to give all users the
freedom to redistribute and change Free Software. So instead of putting Free Software
in the public domain, we "copyleft" it.
Copyleft says that anyone who redistributes the software, with or without
changes, must pass along the freedoms listed above. For this purpose, Free Software is
released under the terms of a legally binding license, known as the
GNU General Public License.
In a scientific setting, an even stronger case can be made for Free Software
where the source code is accessible for everybody. Imagine the following
fictional section in the Materials & Methods section of a publication:
(...)
Samples were prepared from spectroscopy-grade ethanol (Sigma-Aldrich no. 02850)
by pipetting 1.0 ml solvent (Rainin PipetteLite LTS) with
20 microliters of the fluorophore in a 20 mM stock solution.
The solution was vigorously mixed in 15 ml centrifuge tubes (Fisher cat. no. 05-539-5)
for 30 seconds on a vortex mixer (Cole-Parmer). The sample was then (...)
Statistcal analysis was performed with MurkyStat v. 3.14 (Murky Software, Inc.).
Ethanol series were compared with the built-in ANOVA test (...)
|
Contrast the meticulous description of the sample preparation with the superficial
description of the statistical treatment. Proprietary, closed-source software does not
allow you to examine the underlying algorithms. More generally, when you use
software with unpublished source code, data processing steps
(such as, for example, image analysis, or statistical analysis) cannot be
reproduced by others. In fact, not even the users of closed-source software can
know how their software has processed the data. Bugs may remain undiscovered,
and unless the software users take tedious steps of validating their software,
incorrect data may enter the scientific literature and remain undiscovered.
There is a stark contrast between the meticulous disclosure of the
methods in scientific articles and the black-box nature of the data
processing and analysis components in the same articles. For this reason,
a strong case must be made in favor of Free Software in scientific applications
not only with respect to the liberties listed above, but also with
respect to transparency and reproducibility of scientific data.
Crystal Image and Windows?
The advantages of Free Software were discussed above. Microsoft Windows
is the exact antithesis of Free Software. I do not use Windows. I have created Crystal
Image primarily as a powerful tool for my own research. I do not support a Windows
version and encourage all of you to give Linux a try. I assure you that Kubuntu Linux
with the KDE desktop has a similar functionality to Windows, and that Windows users
should get familiar with Kubuntu rapidly. The days where Linux was a geek-only
operating system are long gone.
That said, Crystal Image relies on the GTK library. GTK is well-known to run under
Windows with the Cygwin X-window emulator.
Although I have not tried it, it is almost certain that Crystal Image can be compiled
to run with Windows/Cygwin.
Another very elegant alternative is for you Windows users to install
VMWare or Virtualbox.
These are virtual machines. You run Linux inside an application window, which is safe
to install. Myself, I run those few unavoidable Windows apps inside VirtualBox on
a Linux host. You can install your virtual machine with the LiveDVD, and you should be
up and running within less than 30 minutes.
Download and Installation
You have three options to run Crystal Image:
- Run the program from the LiveDVD, which is a full kubuntu-based Linux distribution.
You boot your computer from the DVD, work with the new software, and reboot from
the hard disk to restore your computer to its original operating system.
Alternatively, you can install kubuntu and all included software from the LiveDVD
onto your hard drive or into a virtual machine.
- Install a pre-compiled binary package on a Debian-based Linux distribution
- Compile from source
1. LiveDVD:
The LiveDVD is included in the book mentioned above.
If you do not have the book, you may donwload the ISO image
here. Note that the download
will be slow, because the image takes up 2 GB. Use your DVD burner software to create a DVD
from an ISO image (consult your DVD burner software manual how to burn an ISO image).
The LiveDVD which comes with my book or which you burn from the ISO image is
a great medium for you to run the software if you do not have a Linux computer or
if you want to try Linux without actually installing it.
If you have the LiveDVD, you may notice that any operation is relatively slow. The
reason is the DVD drive, which is typically hundreds of times slower than a hard drive.
You may get additional benefits from copying the DVD onto a USB flash drive, thus
creating a faster bootable medium. The additional advantage of the USB drive is that you
can save data on the drive - this is not possible with a DVD.
You can create your bootable USB drive with these simple steps (I assume that you have
booted from the Live DVD):
- Insert an empty USB flash drive into any USB port. The flash drive should
be big enough to accept all data from the DVD, that is, bigger than 2 GB.
- Start a program called usb-creator. Either type this command from
a console, or use Start Menu -> System -> Startup Disk Creator.
A window similar to the one displayed to the right pops up.
- Choose the correct partition in your USB drive and simply click "Make
Startup Disk".
2. Precompiled binaries:
For Ubuntu/Debian systems, pre-compiled binaries are available. These binaries have
been built on 10.04 systems, but should work for some earlier versions.
For Ubuntu 11.10, you need cimage 0.9.3.
Choose the suitable binary for your system:
Download the package and install with dpkg -i cimage-0.9.xbeta_xxxxx.deb. Files are installed
in /usr/local/cimage with symbolic links to the executables in /usr/local/bin.
For older versions, click here.
3. Installation from source:
You can also download the source tarball from this link:
cimage-0.9.3beta-src.tar.bz2.
Save the file in a suitable directory, decompress (bunzip2), and unpack
with tar xvf cimage-0.9.3beta-src.tar. To compile the package, you need
to satisfy the following dependencies:
- Build-essential (the GNU C compiler and related tools)
- autogen and automake
- libgtk-2.0 and libgtk-2.0-dev (the GIMP ToolKit library and its header files)
This includes GDK, GDK-Pixbuf and numerous other libraries
- FFTW3 (libfftw3 and libfftw3-dev)
- TIFF (libtiff and libtiff-dev)
- GSL (libgsl0ldbl and libgsl0-dev)
Whereas the above list is sufficient to compile the cimage binary and all modules,
the 3D OpenGL-based surface viewer (cimage_sv) requires additional modules:
- OpenGL, for example, libgl1-mesa (for the standalone 3D surface viewer)
- GLU, that is, libglu1-mesa-dev
- libgtkgl2.0 and libgtkgl2.0-dev
- libgtkglext1 and libgtkglext1-dev (the GTK GL extensions)
Once these libraries and their development headers are installed, use a command-line terminal,
enter the source directory and type these commands:
./autogen.sh
make
Provided that there were no errors, you can now start Crystal Image with src/cimage
or you can install the program:
sudo cp src/cimage /usr/local/bin
sudo mkdir -p /usr/local/cimage/dso
sudo cp modules/*.dso /usr/local/cimage/dso
If you want to use the external OpenGL-based 3D surface viewer, you need to additionally
enter these commands:
cd modules
make cimage_sv
sudo cp cimage_sv /usr/local/bin
Contact
This software is maintained by Mark A. Haidekker. E-mail: