I am working on research project in dentistry (I have a small background in DataScience). The idea is to automatically find the ending points of a wisdom tooth in development (this is useful to infer the age of a patient)
These points are the end (bottom) of the mineralized tissue (white), they are the ones at the bottom part that are around the pulp (black part in the middle of the root).
Here is where I am at, I have developped :
- a supervised algo (Mask_RCNN), that find the mineralized tissue
- followed by an unsupervised algo that find the skeleton and the endpoint of the skeleton
Here are the results :
It is good but still not "pixel perfect".
The idea I have would be to use the grey level of the red point and to try to automatically find if there is a point that is lower and closer to the frontier to a black level in order fine tune the approach. However I am afraid my level in image analysis is not good enough to solve this by myself.
My questions are therefore :
Is there a simple way to use the grey_level of a given points and find a more optimal point based on this grey_level : the optimal point would be one that has approximately the same grey_level but would be lower and closer to the frontier with the pulp (black)
Do you have (by any chance) any other idea of how to find in a robust manner these points
For those of you who would like to experiment :
- here is the original image : ori_image
- the red points coordinates are : [(166, 73), (178, 171), (127, 201), (86, 210), (143, 210)]
As always, a big thanks in advance for the help within this awesome community.
Cheers, R

