[Fractal analysis (UNIX package)][Fractal analysis (Win32 package)]
This software was developed as a part of my PhD research. It is aimed to automatically compute the fractal dimension of contours of the projections of objects, such as microscopic aerosol particles, cells, etc. from their binary images. The images itself can be produced in a variety of ways, in the original work I used binarized SEM, TEM, and light microscopy images.
The UNIX software is an implementation of the so-called “Hand and dividers” technique based on the idea of measuring the fractal dimension via perimeter estimation with different yardstick sizes, typically running from few pixels to the half of the length of the largest Feret diameter of the given object. Once the measurements are obtained, they are plotted on the so-called Richardson plot, a log-log plot of the perimeter versus the yardstick size it was measured with. The Richardson plot is then analyzed by means of finding a group of points that form the largest well-fitted straight line; the slope of this line is used to compute the fractal dimension. Typically, this analysis is performed manually, however, in this software a technique is implemented that fits all possible lines in the plot and builds so-called Kindratenko’s histogram, a histogram of the distributions of the line slopes. Then it searches for the slope that occurs most frequently in the histogram and uses it to determine the fractal dimension. Multi-fractals can be also analyzed with this technique, but this functionality is not currently implemented in the software.
The Win32 software implements three different techniques: “Hand and dividers” method, box counting, and area-perimeter technique. Once the measurements are obtained, they are plotted on a log-log plot that can be manually analyzed by means of specifying groups of points that form the largest well-fitted straight line; the slope of the line is used to compute the fractal dimension. Multi-fractals can be also analyzed with this software. If you have any questions regarding these techniques or software, do not hesitate to contact me via e-mail at kindr@ncsa.uiuc.edu.
More information on the implemented techniques can be found in my PhD thesis and in the following publications:
V. Kindratenko, P. Van Espen, B. Treiger and R. Van Grieken, Fractal dimensional classification of aerosol particles by computer-controlled scanning electron microscopy, Environmental Science and Technology, vol. 28, pp. 2197-2202, 1994.
V. Kindratenko, P. Van Espen, B. Treiger and R. Van Grieken, Characterisation of the shape of microparticles via fractal and Fourier analyses of their SEM images, Microchimica Acta, suppl. 13, pp. 355-361, 1996.
V. Kindratenko, B. Treiger and P. Van Espen, Chemometrical approach to the determination of fractal dimension(s) of real objects, Chemometrics and Intelligent Laboratory Systems, vol. 34, pp. 103-108, 1996.
If you have any questions regarding these techniques or software, do not hesitate to contact me via e-mail at kindr@ncsa.uiuc.edu
The software is for research purposes only. It is provided “as is” without expressed or implied warranty of any kind, use it on your own risk. I shell not be liable for any damages suffered by the users of this software. If something useful comes up from using the software (e.g., journal publication or conference presentation), please notify me by e-mail at kindr@ncsa.uiuc.edu.
Source code
binaries: SGI5.3, SGI6.5, SUN5.7, HP
example images: Koch island (fd=1.27)
Usage: fd.<platform> -in fn [-out fn] [-min on|off] [-pp on|off] [-ph on|off] [-fi on|off] [-miny yardstick] [-maxy yardstick] [-maxe slope_error]
-in fn – specifies input raster file name fn.
-out fn – specifies output raster file name fn. If it is omitted, no file will be created. The output raster file contains the contours of the analyzed objects.
-min on|off – turns a search for the smallest perimeter on or off. When it is off, perimeter for each yardstick is estimated only once starting from the same location on the contour. When it is on, perimeter is estimated starting from each point on the contour and the smallest value is returned. By default this key is off.
-pp on|off – instructs the program to print out Richardson plot data. By default this key is off.
-ph on|off – instructs the program to print out Kindratenko’s plot data. By default this key is off.
-fi on|off – instructs the program to print out raster file info. By default this key is off.
-miny yardstick – sets the smallest yardstick size (pixels) value for the perimeter estimation. By default this value is 2 pixels.
-maxy yardstick – sets the largest yardstick size (pixels) value for the perimeter estimation. By default this value will be set for each particle individually to the half of the size of its largest Feret diameter.
-maxe slope_error – sets the largest acceptable slope error for the lines counted for the Kindratenko’s histogram. By default it equals to 0.1, a reasonable value is 0.01.
Input image format requirements. The software operates with images stored in SUN raster file image format only (file extension is ras). Such image must contain binarized objects only, it must be recorded with 8 bit gray scale color table, the objects in the image must be black (color index 0), background must be white (color index 255). An example of sucg an image is available here. The software will automatically search for all objects in the image and will analyze all of them. UNIX utility xv is capable of converting many image file formats to the SUN raster file format. Another recommended tool that runs under Windows 9x/NT is Paint Shop Pro from JascSoftware Inc.
The software is for research purposes only. It is provided “as is” without expressed or implied warranty of any kind, use it on your own risk. I shell not be liable for any damages suffered by the users of this software. If something useful comes up from using the software (e.g., journal publication or conference presentation), please notify me by e-mail at kindr@ncsa.uiuc.edu.
Usage: Basically, your image should be gray-scale BMP file with the white background (color index 255) and with black object (color index 0). Example is included. Once you load the image, click right mouse button on it and select "Analysis of Single particle". It will ask you about how big the yardstick size should be and how many yardsticks to use. It will also ask you if the particle is black or white. Once the parameters are set, it will do the computation and will create another window with the general info about the object you just analyzed. Click right mouse button in this window and select what type of plot you want to see. Then click the right mouse button again and select "Graph editor...". Here you will need to choose how many lines you are interested in fitting: 1 or 2. Let say, you selected 1 line. The mouse pointer changes to 1L which means that you have to select the left point on the graph from which the line will be built. Just move the mouse to that point and click the left mouse button. Then the pointer changes to 1R which means that you have to select the most right point to which you want to fit the line. Once you selected it, a best fitted line will appear on the plot together with its equation and fractal dimension value. If you do not like what you see, just click on the right button and redo the line again. You can do this for all 3 different fractal dimension approaches.