The sample preparation needed for adequate X-ray CT images to be obtained has several requirements. First, the samples must be mechanically stable, as they have to be handled and placed into the x-ray CT scanner and rotated slowly, sometimes for periods of hours [6]. Cylindrical geometry is preferable to make the 2-D image reconstruction algorithm more efficient. Roughly speaking, the horizontal pixel size is given by having one complete cylindrical slice just fitting into a square array of pixels (see Fig. 2a). These are general requirements for any solid sample. The actual horizontal pixel size is slightly different from this, and depends on details of the scanning process [6]. For highly irregular aggregates, it is necessary to embed the particle or particles in a matrix of suitable density that can be molded into a cylinder. Second, in order to be able to pick out aggregates both from the matrix material and from each other, one must have: (1) a matrix material that differs significantly in x-ray absorption characteristics from the aggregates and (2) aggregates that do not touch spatially. Requirement (1) ensures an adequate contrast between aggregates and matrix, so that each image slice can be properly thresholded to isolate the aggregates. Requirement (2) is necessary so that aggregates can be separately identified computationally, as aggregates that are touching appear to form one particle and so obviously will contribute to error in the shape analysis.

Figure 2: Illustrating (a) part of a gray scale image taken directly from x-ray CT, (b) the same part but thresholded, showing ring artifacts, (c) the same image after closing/opening, leaving behind some interior porosity that will be removed at a later stage, (d) a different part of the original image, (e) the same image after segmentation and closing/opening, and (f) the same image after limited watershed splitting operations have been performed. In (f), the thin black lines just separate the particles. Each image is about 25 mm square.
For requirement (1), we have found that a packed dry cement matrix or an ordinary cement paste matrix can be used with solid coarse (coarse = size larger than 5 mm) aggregates (nominally non-porous) and will give sufficient contrast. A simple paraffin wax matrix can also work well for coarse aggregate, with hand placement of particles [11]. An epoxy matrix works better for fine (fine = size less than 5 mm) aggregate. Requirement (2) is a little harder to realize. For mortar matrices surrounding coarse aggregates, we used volume fractions of coarse aggregates that were more dilute than is typically specified for concrete, about 20 % . In these cases, aggregates were still frequently touching in the resulting images. Either a more dilute quantity should be used, or else a more regular dispersion, by hand, should be carried out, to make sure that aggregates are not touching in 3-D.
There is a third requirement that makes image production easier. We have found that it is easier, in terms of the amount of image analysis required, to work with slices that do not contain too wide of a particle size distribution, perhaps a diameter range of 3 or 4 at most. This has not been done for the images discussed below, but will be done on future samples.
Even the best physical dispersion will result in some apparent aggregate touching in the x-ray CT images. When images are reconstructed from the original x-ray scans, the limited spatial resolution can often create a "blurring effect" that causes particles that lie close together physically to become touching in the CT images [6]. This is due to the physical size of the voxels, so that only matrix distances greater than one voxel in size can be resolved. Also, the x-ray CT image has a limited number of gray scale levels. When one thresholds the images, to isolate the aggregates, inevitably there is some misclassification of the edges of individual voxels that cause some artificial particle touches. In this case, image analysis techniques become important (to be discussed below).
Consider the output from the x-ray CT scan of a single cylindrical sample, 50 mm in diameter and 100 mm high. If a 512 x 512 image is used, as was done in our case, then the resolution would be 50 mm per 512 pixels = 97.7 µm per pixel, if the cylinder diameter fit exactly into the square image. If the same resolution were used in the vertical direction, then there would be 1024 slices generated, each 97.7 µm thick. In these 1024 images, many or most images have touching particles. A quick visual scan by a trained operator can easily identify particles that are touching. If the particles themselves were of bizarre shapes, this identification would not be so easy. But for aggregates, whether crushed or naturally rounded, this job is not difficult. There are manual image processing procedures, using a mouse and cursor, in a package like Image Pro* (used in this work), for example, to separate the two particles with a minimal loss of information. However, this is impractical, even for the 1024 images resulting from one sample. There can also be other artifacts that come from the x-ray CT process. For example, there can be "ring" type artifacts that appear as concentric circular "ripple marks" in each slice. When one thresholds images, this can result in thin black rings going through the white aggregates. We have found that these are quite easy to remove using a "closing/opening" sequence of operations [12], which leaves the original particles nearly unchanged while removing these thin black rings. Closing and opening image operations are similar to erosion/dilation operations [12]. Figure 2c gives the result of a closing/opening operation on the image of Fig. 2b.
Fortunately, image processing can be readily automated using user-defined macros. Separating particles was done through a technique called "watershed splitting," which is a technique of controlled erosion and dilation so that particles, once split by erosion, do not come together again via dilation [12]. Performing this operation in an uncontrolled way caused many single particles to be internally split. Allowing about ten steps of erosion/dilation in a limited watershed split minimized internal splitting of particles while maximizing true separation of touching particles. We emphasize that the image analysis step, while necessary for preparing particle images so that individual particles can be recognized, does cause some small loss of information and a corresponding increase in uncertainty of particle shape. One must choose image analysis techniques that minimize these sources of uncertainty. Figure 2d shows a different part of the same original image shown in Fig. 2a. Figure 2e shows this image after segmentation and closing/opening and Fig. 2f shows the resultant image after limited watershed splitting. Clearly some artifacts remain or have been caused by the image analysis operation (e.g., small appendages on particles), but these are minimal, changing particle volumes and surface areas on the order of a few percent.
Once the individual 3-D particles have been built by stacking up 2-D images, one also can eliminate small internal porosity that is due to the thresholding process. Small internal pores in a 3-D particle can be identified with a modified burning algorithm and eliminated. Leaving them in the particle will introduce errors when the spherical harmonic coefficients are computed [1].
There are built-in error-checking steps in the r(θ,φ) function construction process. If by chance two particles have been "welded" into one, it will almost certainly have an odd shape and probably re-entrant surface features [1]. The volume calculated from the interpolated r (θ,φ) function will probably not agree well with the actual voxel volume. In the program, if these two numbers do not agree within 3 %, the particle is discarded and is not further analyzed. If the interpolation passes this test, and the spherical harmonic coefficients are obtained, then the Gaussian curvature is computed and integrated over the surface of the particle. Normalized by 1/4π, this integral is equal to unity [1], thus serving as an additional error check on how accurately the particle is approximated by spherical harmonic coefficients. If the computed Gaussian curvature differs from unity by more than 5 % before N = 14, then the particle shape representation is judged to have something wrong with it and the particle is not further analyzed. The value of N = 14 was judged to be a minimum number of coefficients required to adequately represent the shape of a real aggregate. Also, particles that are too small are not further considered. The size cutoff is user-specified. We tend to use a cutoff of 1000 voxels, since having roughly 10 voxels in each direction will give an adequate digital representation of true shape. If there is not an adequate digital representation in the x-ray CT image, then the spherical harmonic representation will not be adequate either. Previously [1], we said that five voxels in each direction would be sufficient, with a volume cutoff of 125 voxels, but after more experience, it appears that a larger number is required.
Virtual Reality Modeling Language (VRML) [13] is a simple language for specifying 3-D shapes by giving a grid of points on the surface and specifying how these nodes are grouped into polygons. A VRML browser, available in several forms as a plug-in for popular HTML web browsers, allows one to see a 3-D rendering of the object, and rotate, expand, shrink, and translate it using a mouse. Having the set of spherical harmonic coefficients, which define the particle shape analytically, one can readily generate a grid of points on the surface of an aggregate image specified by their Cartesian coordinates and their connectivity to neighboring points. With the addition of a few special commands, a VRML image file can be automatically generated.