KHKs jQuantiGap

Author

Karl-Heinz Kunzelmann

History

2010/06/21 First version

Source

Contained in KHKs_jQuantiGap

Installation

Copy KHKs_jQuantiGap into a temporary folder, extract the zip file and copy the jar file into the ImageJ > plugins directory and restart ImageJ. Read the detailed tutorial in the folder “Documentation” which is also contained in the zip-achive together with sample data.

Description

The program jQuantiGap was developed to facilitate the Quantitative Margin Analysis (Roulet et al. 1989) with nearly every available image source like SEM, light microscope or CLSM.

The name is derived from the first program, which we used over 20 years now and which was originally programmed by Stefan Küppers according to my specifications. The old program was written in C and its name was QuantiGap. The new program is written in Java and is a plugin for the image analysis tool ImageJ. „j“ is a commonly used prefix when Java is the programming language. Therefore I called this program „jQuantiGap“.

While the former program had a hardware interface to our old SEM to ensure a continuous evaluation along the margin of a restoration, nowadays it is easy to process a number of images which have a slightly overlapping area and generate one big picture from the detail images. The images can be acquired with any image source as long as it shows the details which are under investigation. Still the SEM is the most convenient tool because of the feature rich images.

A widely available open source program for image analysis including image stitching is ImageJ. Especially the package Fiji (Fiji = Fuji is just ImageJ) already includes a lot of helpful plugins. It is easy to install and update. Check the website of ImageJ and Fiji for installation instructions and tutorials.

The quantitative margin analysis with jQuantiGap consists of two separate steps. In the first part several images are take along the margin of a restoration and these images are combined to the one bigger image which should be evaluated. The second part, then, is the evaluation step itself.

jQuantiGap is just used for the evaluation step.

Image Acquisition

In general, for the quantitative margin analysis it is necessary to magnify the object, either the tooth itself or a replica of the tooth, to a magnification which allows to classify the margin of a restoration. As a rule of thumb, you should be able to clearly identify structures which are in the order of magnitude of 1 µm (a gap is clearly classified as a gap, if it is wider then 1 µm).

In terms of digital images you should check whether you really can see structures of 1 µm size. To test this, take the calibration bar of your system and measure the length of the bar in pixels. You need a minimum of 3 pixels per micrometer. For example: a bar with 10 µm length should have a length of 30 pixels. The magnification alone is no proof that your digitization system is good enough for the evaluation. Another hint: use a lossless compression algorithm (png or tiff).

The strategy of jQuantiGap is, to move at a certain magnification along the margin of a restoration and assign a category to each section of the margin. The magnification has to be kept constant throughout the evaluation of one tooth. The results are displayed in pixels. If absolute numbers are important, which is usually not the case, then the images can be calibrated in ImageJ to obtain metric information. The quantitative margin analysis itself is a relative evaluation (the whole margin, i. e. the sum of the single criteria, is set to 100 percent. Each criterion is expressed as a percentage of the whole measured margin length).

The single images are stitched together with an ImageJ plugin which is called Stitching 2D/3D (Preibisch et al. 2009, documentation: http://pacific.mpi-cbg.de/wiki/index.php/Category:Stitching). Any other stitching software can be used as well.

******* update 10.11.2011 **************************************************************

Have a look at this nice ImageJ plugin: http://bigwww.epfl.ch/thevenaz/mosaicj/


The following paragraph describes ONE possible scenario how to stitch images together.

The single files for one tooth or proximal contact are organized in one folder.

The first two images of a sequence are opened in ImageJ and before the plugin 2D Stitching is executed two corresponding areas have to be marked as a region of interest (ROI). This ROI displays the same morphological feature in both images. The plugin uses these ROI to calculate the translation between the two images in order to generate a new image which combines the two small images to one bigger image.

Please read the manual of the Stitching 2D plugin to understand the individual settings. The default values usually work fine, however.

This command sequence is repeated with every single image to generate one big picture of the object. Usually, I close the images which were already used to generate the fused image, keep just the fused image on the desktop and open another small image to add it to the next fused image. In order to avoid confusion it might be helpful to keep a strict layout of your computer desktop.

As soon as you completed the stitching process you can start with the evaluation process.

Most modern computerized SEM, light microscope or confocal laser scanning microscopes allow a nearly automatic acquisition of image sequences, which can be stitched together automatically, too, if the file names follow some conventions. Please read the documentation of Fiji to understand all available stitching options.

Image Evaluation

In the literature several criteria for margin analysis are described, like “perfect margin”, “marginal gap”, “overhang of restorative material” or “underfilling”. Sometimes it is not possible to evaluate a specific part of the margin, for example because of pores in the replica material or because of some artifact in the impression for the replica. These line sections are classified as “artifact”.

With jQuantiGap currently nine different criteria are available. At present their names are hard coded into the plugin, but they can be easily changed. Maybe I will modify the plugin in the future to allow the individual configuration of the criteria names. The hard coded names are displayed as a help text in a separate window during the measurement process.

The jQuantiGap plugin can be found in the Plugins tab.

Before you can start you have to enter a few details concerning the documentation of your project. “Group number” and “Sample number” are numeric fields (integer values). The two fields “Description1” and “Description2” are alphanumeric text fields (Strings).

After entering the descriptors, you can start to evaluate the object.

The individual criteria can be selected with the keyboard. To visualize, which criterion you selected, the line overlay changes its colors according to the code list, which is displays in a separate window (at present the red shades correspond to enamel, while the blue/green shade refer to dentin). We do not use all criteria all the time. Usually it is enough to evaluate the perfect margin, the gap and the artifacts. But you are free to decide yourself, how detailed you want to differentiate the evaluation criteria.

The keys are currently assigned to make it rather ergonomic for you to move along the margin. Usually your left hand should rest on the keyboard. In general the index finger is aligned with the key “f”. The f is associated with the most often used criterion “perfect” margin (for enamel). In dentin the key “t” is associated with the criterion “perfect margin” and this key can be accessed also easily with the index finger of the left hand. The mouse is operated with the right hand.

Unfortunately I could not override the default shortcut of the key “w” in ImageJ. You will make the mistake to hit the “w” probably not very often, as “w” instantly closes ImageJ without saving and without asking. I do not know why they decided to implement this shortcut.

If you are ready with the margin and you are satisfied with your measurement, you just hit the key “q” and you can copy and paste the result into your favorite spreadsheet application.

If you like you can also copy the header tags into the first line of your table. Just push the corresponding button in the output window and the labels are copied into the systems clipboard.

Don’t forget to save the table. At present there is no backup-log-file implemented. If you delete the table you will have to start from scratch.

In case you want to dispose a line sequence you can just hit the ESC key instead of “q”.

References
  • ImageJ: http://rsb.info.nih.gov/nih-imageJ; developed by Wayne Rasband, National Institutes of Health, Bethesda, MD
  • Fiji: Fiji is Just ImageJ (http://pacific.mpi-cbg.de/wiki/index.php/Main_Page)
  • Amin Parsa, M.: Marginale Adaptation von Kompositen und Ormoceren in direkten Klasse-II-Kavitäten in Abhängigkeit von verschiedenen Verarbeitungskonzepten. Inaugural-Dissertation Ludwig-Maximilians-Universität München (2000).
  • Preibisch, S., Saalfeld, S., Tomancak, P.: Globally optimal stitching of tiled 3D microscopic image acquisitions", Bioinformatics, 25(11):1463–1465 (2009).
  • Roulet, J. F., Reich, T., Blunck, U., Noack, M.: Quantitative margin analysis in the scanning electron microscope. Scanning Microscopy 3: 147 - 159 (1989).

You can use the program for free. I put it under the GPL licence for the moment.

When you use the program, please cite the plugin:

jQuantiGap developed by Karl-Heinz Kunzelmann, Dept. Oper Dent, LMU Munich, Ger.