Question:
I'm working on an Delphi3 application where we want to add a
feature that will have the property of whitening the teeth
and only the teeth in the image. Any clue , I'm caugth.
Answer:
Here's something to try, but this is a little technical.
Take a look at each pixel. From the RGB values
define an intensity measured, I = (R+G+B)/3
and a saturation value.
One way to calculate saturation is as follows:
min = MinIntValue([R, G, B])
max = MaxIntValue([R, G, B])
saturation = 255 * (max- min) / max
So any "bright white" in your picture will have a
very high intensity, and a very low saturation.
[Black, shades of gray and white have 0
saturation. "Pure" colors like
Red = RGB(255,0,0) have saturation=255.]
You will need to set limits on intensity and
saturation based on your images -- some
sort of statistical analysis might be useful.
Once you define what limits for intensity
and saturation define "teeth" in your image,
then just boost the pixel value closer to
white = RGB(255,255,255).
Are you expecting the program to recognize what part
of the image ia teeth and what is non-teeth? That would be
difficult.
Well... let's see... if he limits himself to dark skinned people whose
teeth are not stained with tobacco and/or other materials, has them wear
dark clothing, and has them pose in a coal cellar, I think I can handle
it.
--
Wayne Herbert
Manager, Computer Products
Key Maps, Inc.
1411 West Alabama
Houston, TX 77006
Vox: 713.522.7949
Fax: 713.521.3202