Documente Academic
Documente Profesional
Documente Cultură
Automatic recognition
of teeth
Professor
Dr.Ing Nicu Goga
Criv Ana-Maria,
Software
Engineering Master
Contents
Abstract......................................................................................................................... 3
1.Introduction................................................................................................................. 5
The objectives that will be followed............................................................................... 6
2. Methods.................................................................................................................... 8
2.1. Step 1: Pre-processing and segmentation...............................................................8
2.2. 1. Location of the dental work...............................................................................22
3. Results.................................................................................................................... 25
4.References................................................................................................................ 27
Abstract
The finite element analysis represents an effective method to study the strength
and predict the fracture risk of endodontically-treated teeth and also to predict and to
diagnose different teeth pathologies. This paper presents a rapid method developed to
generate a comprehensive tooth model using data retrieved from micro-computed
tomography (CT). With this method, the inhomogeneity of material properties of
teeth was included into the model without dividing the tooth model into different
regions. The material properties of the teeth were assumed to be related to the
mineral density. The micro-CT images of teeth were processed by a Matlab software
programme and the CT numbers were retrieved. The teeth contours were obtained
with thresholding segmentation.
It was observed that the two degree grayscale differential method can
significantly simplify the pattern recognition process for teeth. Compared to the
popular recognition method like PCA and HDM, this method is a lot more simple,
runs faster and the identification rate is better. The new approach will reduce the
traditional reliance on CT image to get information and make dental decision. The
new approach is tested and will be used in the dental decision making software to do
preliminary dental advising for potential patients. An image of teeth are used as an
example here; all types of teeth (molars, canines), individual or in pairs can be
processed the same way.
The common process consists of two major components. The subjective component
mainly focuses on the patient's current health and relevant clinical history prior to the
current condition, recording all significant information required for further analysis.
The objective component refers to physical examination like CT scans or radiological
scans. The assessment represents the differential diagnosis for the purpose of the
medical visit, while the plan consists of the treatment that the patient is prescribed.
Although the subjective and objective components take a significant amount of time,
the most time-consuming steps are the assessment and plan, requiring thorough
interpretation of the CT scans performed, and often being based on computerized 3D
reconstruction which might be problematic to analyse on the computer screen under
certain circumstances.
This research is one which combines two different types of science: dentistry and
computer science. University research, products and patents show that current
solutions target only dental implants or orthodontic treatment forgetting some other
important aspects. The distinctive features that will advance the knowledge in this
domain are the followings: a) Integrated dental treatment planning for different types
of dental problems, some which are not covered currently (carries, dental crown, etc.)
and b) use of other medical information relevant to the treatments, not only CT (for
example patient with diabetes cant undergo certain dental procedures. This project
proposes new techniques for software dentistry, software treatment planning and
dental problems identification.
Marketing studies show a growth in dental market and software. According to IBIS
World Industry Report the dental market performed well during the economic
recession having an annual grow between 2008 and 2013 of 1.5%. Similar tendency
is remarked for dental software. This favorable context assures also a good market
for the product developed within this project proposal.
The project aims at the improvement of the medical dentistry practice beneficial for
both dentists and patients. From the dentists point of view , the time developing the
product and dental planning will be reduced, and more time will be spent on
management and precise dental treatment. From the patients point of view, the
patient will benefit from accurate and faster healthcare treatment.
- University of Medicine and Pharmacy Carol Davila Bucharest (UMF):
expertise in dental research and treatment
- OSF Global Services (OSF): expertise in software development
4
1.Introduction
Project topic This project proposal addresses the research topic Informatics systems
for health and environment (e-health).The purpose of the project is to build an
intelligent e-health system to help dentists and their patients to benefit from an
improved dental health care system. The project has an interdisciplinary nature
because it merges computer science and medical dentistry, being based on digital
image processing.
4
5
6
The dental code is defined from the position (upper or lower), the size of the
dental works, and distance between neighboring dental works. The matching stage is
performed with the Edit distance (Levenshtein distance). The costs for the insertion,
deletion and substitution operations were adapted to make the matching algorithm
more sensitive. The method was tested on a database including 50-60 dental
radiographs and the results are pretty encouraging.
7
2. Methods
The proposed method for human identification consists of three main processing
steps:
1 Pre-processing of the dental scans and segmentation.
2 Creation of a dental code out of the information of the detected scans
including position (jaw bone and mandible), size and distance between
neighboring teeth.
3 Matching of a particular dental code with other existing dental codes in a
database.
2.1. Step 1: Pre-processing and segmentation
In order to obtain a clearer image of the patients scan we applied a texturizing
algorithm that will later improve the percentage of teeth numbering and disease
recognition. After trying a lot of algorithms, it was decided to apply a texturizing one.
This kind of algorithm characterizes a certain region in an image because it is able to
differentiate the texture context. The texturizing algorithm simply quantifies
intuitively the qualities given by the pictures smooth, silky, or bumpy texture
represented by the spatial variation in the pixels intensity.This kind of algorithm is
usually used in a great variation of applications, including medical ones, especially
8
image processing. Usually texture analysis can help separate texture boundaries
known as texture segmentation. The algorithm is used to replace threshold algorithms
in images that the later can not be applied.The algorithm includes some texture
analysis functions which are applied to the image in order to filter it using static
measurements. This type of measurements will define the texture of an image
providing data about the local variability of the intensity value of pixels in a fragment
of an image. For example, in areas with smooth texture, the range of values in the
neighborhood around a pixel will be a small value; in areas of rough texture, the
range will be larger. Similarly, calculating the standard deviation of pixels in a
neighborhood can indicate the degree of variability of pixel values in that region. For
the algorithm to be applied to the image a certain number of steps must be respected.
First the image must be read, specifying it type:
E=imread('32a00a333042.bmp');
figure, imshow(I)
figure,imshow(I);
other estimating the gradient in the y-direction (rows). A convolution mask is usually
much smaller than the actual image. As a result, the mask is slid over the image,
manipulating a square of pixels at a time. The actual Sobel masks are shown below:
hy = fspecial('sobel');
hx = hy';
Iy = imfilter(double(I), hy, 'replicate');
Ix = imfilter(double(I), hx, 'replicate');
gradmag = sqrt(Ix.^2 + Iy.^2);
figure
imshow(gradmag,[]), title('Gradient magnitude (gradmag)')
10
On the next step the images texture is created using the entropyfil function.
This function returns an array where each output pixel contains the entropy
value of the 9-by-9 neighborhood around the corresponding pixel in the input
image I. Entropy is a statistical measure of randomness. Afterwards
the mat2gray function is applied with the purpose of rescaling the texture
image so that its values are in the default range for a double image.
hy = fspecial('sobel');
hx = hy';
Iy = imfilter(double(I), hy, 'replicate');
Ix = imfilter(double(I), hx, 'replicate');
gradmag = sqrt(Ix.^2 + Iy.^2);
figure
imshow(gradmag,[]), title('Gradient magnitude (gradmag)')
11
Next we will try to create rough mask for one of the structures. This is done by
thresholding the rescaled image to segment the textures. A threshold value of
0.8 is selected because it is roughly the intensity value of pixels along the
boundary between the textures. We then obtain a binary image with segmented
objects that we can clearly see that they have the color white. If you
compare BW1 to I, you notice the top texture is overly segmented and the
bottom texture is segmented almost in its entirety. You can extract the bottom
texture using the function bwareaopen.
E=entropyfilt(gradmag);
Eim=mat2gray(E);
imshow(Eim);
BW1= im2bw(Eim, .8);
12
imshow(BW1);
figure,imshow(I);
BWao=bwareaopen(BW1,2000);
imshow(BWao);
The last step is followed by mask creating. First we use the function imclose to
smooth the edges and to close any open holes in the object in BWao. A 9-by-9
neighborhood is selected because this neighborhood was also used by the entropyfilt
function. Then we apply imfill to fill holes in the object in closeBWao.
nhood=true(9);
closeBWa0=imclose(BWao,nhood);
imshow(closeBWa0);
roughMask=imfill(closeBWa0,'holes');
13
Then we will apply the rough mask function to segment the texture. What this
function does is comparing the binary image roughMask to the original image I.
imshow(roughMask);
figure,imshow(I);
I2 = I;
I2(roughMask) = 0;
imshow(I2);
Then we use entropyfilt to calculate yje texture image and we will threshold it using
graytresh function.
E2=entropyfilt(I2);
E2=mat2gray(E2);
E2im=mat2gray(E2);
imshow(E2im);
BW2=im2bw(E2im,graythresh(E2im));
14
imshow(BW2);
figure, imshow(I);
mask2=bwareaopen(BW2,1000);
imshow(mask2);
imshow(segmentResults);
S=stdfilt(I,nhood);
imshow(mat2gray(S));
R=rangefilt(I,ones(5));
imshow(R);
In the future a mask will be created from scan number 43 and applied to all the
other scans in order to obtain a clearer image. It is desirable to obtain clear scans that
will make teeth recognition possible and also disease detection easier.
16
The dental scan is converted into a gray-scale image and median filtering is performed to reduce noise in the image. Because of different lightning conditions in the
dental scans, the image is subdivided into two regions of interest (ROIs): left (ROI 1)
and right (ROI 2).
The algorithm determines a gray value threshold in the left and the right region
of interest of the dental scan. Typically the images has a certain feature that makes
the highest intensities in the image and appear as a distinct, relatively small but
pronounced, mode in the upper range of the gray-scale histogram. After smoothing
the histogram with a moving average filter, the threshold is set to the gray-value at
the location of the left valley at the rightmost mode, which indicates the dental work .
The threshold is used to binarize the gray-value image (see next Figure.). The results
of the conversion are used as initial contours for the segmentation stage. Each region
represents a possible dental problem.
A snake (active contour) algorithm is used to perform the final segmentation of the
dental work. Snakes can be used to segment objects with fuzzy border contours
where traditional edge-detection will fail. Snakes are curves that can move under the
influence of internal forces (elasticity and bending forces) coming from within the
curve itself and external forces (potential forces) computed
from the image data. The internal and external forces are defined so that the final
snake will con-form to an object boundary . The external force field is computed
from the gradient image, as shown in . A snake needs to be initialized with an initial
curve (e.g. circle) and is an itera-tive procedure which stops after a defined number
of iterations. The better the initialization curve, the better the performance of the
algorithm and the final segmentation results.
17
Figure showing the difference between normal teeth and dental work
18
Snake algorithm
I =double(imread('32a00a333043.bmp'));
x=[163 166 207 248 210];
y=[182 233 251 205 169];
P=[x(:) y(:)];
Options=struct;
Options.Verbose=true;
Options.Wedge=2;
Options.Wline=0;
Options.Wterm=0;
Options.Sigma1=8;
Options.Sigma2=8;
Eext = ExternalForceImage2D(I,Options.Wline, Options.Wedge,
Options.Wterm,Options.Sigma1);
Fx=ImageDerivatives2D(Eext,Options.Sigma2,'x');
Fy=ImageDerivatives2D(Eext,Options.Sigma2,'y');
Fext(:,:,1)=-Fx*2*Options.Sigma2^2;
Fext(:,:,2)=-Fy*2*Options.Sigma2^2;
if(Options.Verbose)
h=figure; set(h,'render','opengl')
subplot(2,2,1),
imshow(I,[]);
hold on; plot(P(:,2),P(:,1),'b.'); hold on;
title('The image with initial contour')
subplot(2,2,2),
imshow(Eext,[]);
title('The external energy');
subplot(2,2,3),
[x,y]=ndgrid(1:10:size(Fext,1),1:10:size(Fext,2));
imshow(I), hold on;
quiver(y,x,Fext(1:10:end,1:10:end,2),Fext(1:10:end,1:10:end,1));
title('The external force field ')
subplot(2,2,4),
imshow(I), hold on; plot(P(:,2),P(:,1),'b.');
title('Snake movement ')
drawnow
end
S=SnakeInternalForceMatrix2D(Options.nPoints,Options.Alpha,Options.Beta,Options.
Gamma);
h=[];
for i=1:Options.Iterations
P=SnakeMoveIteration2D(S,P,Fext,Options.Gamma,Options.Kappa,Options.Delta);
% Show current contour
if(Options.Verbose)
if(ishandle(h)), delete(h), end
h=plot(P(:,2),P(:,1),'r.');
c=i/Options.Iterations;
plot([P(:,2);P(1,2)],[P(:,1);P(1,1)],'-','Color',[c 1-c 0]); drawnow
end
end
if(nargout>1)
J=DrawSegmentedArea2D(P,size(I));
end
19
Results
20
Figure showing Initial curve of a snake computed out of the binary imag
21
Figure showing dental work mask with sorted dental works from left to
right.
For the dental code it is also important to know whether the tooth belongs to the
maxilla (upper jaw) or to the mandible (lower jaw). Therefore, a border between the
maxillary and the mandibular teeth is detected. A stripe in the intensity image is cut
with the width of the current region. Next, the intensity sum of all horizontal rows in
the stripe is calculated. The highest intensity represents the area of the dental work.
The algorithm detects the first valley on the left and on the right site of the highest
intensity point. The valley with the lower intensity represents the border between the
mandibular and maxillary teeth.
22
23
24
3. Results
A database including approximately 60 dental records was used in the experiments to
evaluate the proposed dental biometric method.The images were manually registrated
to obtain comparable conditions. In cases of over- or under segmentation of the
dental records, the segmentation result had to be corrected manually. Also, if they are
not detected by thresholding, an area of interest has to be selected manually in the
dental record to perform local thresholding.
Cost
60
60
Comparing the size:
25
Because the amount of images in the database is low, it is not possible to make a
clear statement about the performance and effectiveness of the proposed method.
In future work, the proposed method will be assessed on a larger database. Also, in
future work, the proposed method will be fused to other methods based on
different tooth features, like crown and root shapes, and the seg-mentation method
will be replaced by a method based on image-foresting transform, more effective
for segmentation of bad quality images, with minimum human intervention.
26
4.References
1. PACS, http://www.alma3d.com/
2. STL, http://www.stereolithography.com
3. HL7 CDA, www.hl7.org
4. Dr. Ravi Janardan, PhD Department of Computer Science & Engineering, School
of Science and Engineering, University of Minesota, Orthodontic Simulation with
Automatic Digital Identification
5. Materialise Dental, dental implantology tool- www.materialisedental.com/dental
15. N. Goga and K. Veil. Verification results for IT standards - FireWire, ISO/IEEE
11073, ANSI/ HL7. VDM Publishers, Germany, 2008.
16. N. Goga, co-author, ISO/IEEE 11073-20601 standard for medical informatics, co-author
N. Goga
17. N. Goga, A.J. Rzepiela, A.H. de Vries, S.J. Marrink, H.J.C. Berendsen.Efficient
algorithms for Langevin and DPD dynamics. J. Chem. Th. Comp., 8:3637-3649,
2012
18. N. Goga, IEEE Technology Merrits Awards, US edition, 2010, see
http://www.rug.nl/fwn/nieuws/fwnActueel/kortNieuws/kortnieuwstabel/EmergingTechnolo
gyAward)
19. Ungur. A, Modern Methods of Treatment using Glass Ionomer Cements and light
curing resins - Held at the University of Medicine in Skopje - Macedonia April, 5th
20. Ungur. A,1993 Research Team Implantology - Bucharest 17th International Congress
IRCOI (International Research Commitee for Oral Implantology)
28
22. Ungur A.,Imaging, modern methods and forensic implications - Lecture held in the
auditorium of the University of Medicine and Pharmacy "Carol Davila" Bucharest
Faculty of Dentistry (January 2010)
23. Retrospective study of the association between the oral lichen planus and diabetes
mellitus, Prof. Univ. Dr. S. Aram, Prof. Univ. Dr. . ovaru, Prep. Univ. Dr. Al.
Croitoru, Prep. Univ. Dr. I. Prltescu, Stud. C. Clin, Stud. M. Ioan, Stud. D.
Dodonete, Stud. C. Dobre, Oral Presentation, Clinical Session, the 8th European
Dental Students Association (EDSA) Congress, 10-14 march 2010, Bucharest,
abstract printed in: Therapeutics, Pharmacology and Clinical Toxicology (2010),
supplement number 1, Vol. XIV, ISSN 1583-0012, CNCSIS Category: B+, Code: 605.
Lucrarea a fost distins cu premiul al II-lea;
24. Burning Mouth Syndrome and psychogenic diseases, Prof. Univ. Dr. S. Aram, Prof.
Univ. Dr. . ovaru, Prep. Univ. Dr. Al. Croitoru, Prep. Univ. Dr. I. Prltescu, Stud. C.
Clin, Stud. M. Ioan, Stud. D. Dodonete, Stud. C. Dobre, Oral Presentation, Clinical
Session, the 8th European Dental Students Association (EDSA) Congress, 10-14
march 2010, Bucharest, abstract printed in: Therapeutics, Pharmacology and Clinical
Toxicology (2010), supplement number 1, Vol. XIV, ISSN 1583-0012, CNCSIS
Category: B+, Code: 605;
25. Retrospective study over the possible etiologic factors of stomatodynia, Prof. Univ.
Dr. S. Aram, Prof. Univ. Dr. . ovaru, Prep. Univ. Dr. Al. Croitoru, Prep. Univ. Dr. I.
Prltescu, Stud. C. Clin, Stud. M. Ioan, Stud. D. Dodonete, Stud. C. Dobre, Oral
Presentation, Clinical Session, the 8th European Dental Students Association (EDSA)
Congress, 10-14 march 2010, Bucharest, abstract printed in: Therapeutics,
Pharmacology and Clinical Toxicology (2010), supplement number 1, Vol. XIV, ISSN
1583-0012, CNCSIS Category: B+, Code: 605;
26. Sebastian M. Rosu, George Drgoi,., Marius Guran, (2009), A Knowledge Management
scenario to support knowledge application development in Small and medium
Enterprises, in Advances in Electrical and Computer Engineering, Volume 9 (16),
Number 1 (30)/2009, pp. 8-15, 2009, ISSN 1582-7445, ISSN 1582-7445 (print) ISSN
1844-7600 (on-line), impact factor 0,688/2010.
27. George Drgoi., G. Funar, Mihai Solea, Costel Emil Cotet, (2007), Simularea i
optimizarea fluxului de procesare a unor deeuri, Revista Materiale Plastice, no. 1/2007,
MPLAAM 44 (1) 2007, ISSN 00257 / 5289, pp. 81-88, factor de impact 0,535/2008.
28. Alina Spnu, Anton Hadar, George Drgoi,, (2006), Modelarea tridimensional a paletei
de antrenare a substanelor folosite pentru generarea spumei umede din lichide, Revista
Materiale Plastice, no. 3/2006, MPLAAM 43 (3) 2006, ISSN 00257 / 5289, pp. 199-203,
revista categorie A, cod CNCSIS 472, factor de impact 0,535/2008.
29. A. Vasileteanu, Phd Thesis: An agent oriented architecture for supporting the Digital
Health Ecosystem, 2011
29
30. Luca Dan Serbanati, Fabrizio L. Ricci, Gregorio Mercurio and Andrei Vasileanu,
Steps towards a digital health ecosystem, in Journal of Biomedical Informatics, vol
44, nr 4, doi 10.1016/j.jbi.2011.02.011, 2011, pg 621-636, impact factor 2011 1,792
31. Victor Rentea, Andrei Vasileanu, Radu Ioanitescu, Luca Dan Serbanati, Software
Engineering-Inspired Approach to Prevention Healthcare,in Proceedings of 4th ICST
International Conference on eHealth
32. Dichiu, D., Pais, A., Moga, S., Buiu, C., - A Cognitive System for Detecting Emotions in
Literary Text and Transposing them into Drawings, octombrie 2010, Turkey, Instambul,
Conferinta internationala Systems, Man, and Cybernetics, IEEE 2010
33. Pais, A., Moga, S., Buiu, C., - An integrated framework for emotion recognition and
expression using robot artists, decembrie 2010, Japonia, ICIC Express Letter B, ISSN
2185-2766
34. Moga, S. A., Goga, N., Hadar, A., New Thermostats for Multiscaling Polymer
Simulation, 2012, Romania, Materiale Plastice, ISSN 0025-5289
35. Moga,S. A., Goga, N., Dragoi, G., Hadar, A., - A parallelization scheme for new DPD B
thermostats, Journal of Atomic, Molecular, and Optical Physics ISSN 1687 9228,
2013, under review
36. http://www.edaboard.com/thread277812.html
37. http://imagejdocu.tudor.lu/doku.php?id=plugin:segmentation:active_contour:start
30
31