I'm working on a project of applying Active Shape Model to locate tooth in dental radiograph. For those familiar with the technique, I'm currently trying to sample along normal vectors for each landmark. The paper recommends to take derivatives of sampled pixels: "To reduce effects of global intensity changes we sample the derivative along the profile, rather than the absolute grey-level values."
So my problem is how to filter dental radiographs in the best way to prepare them for applying derivative operator. I'm currently using combination of median filter to remove most of what I think is quantum noise (mottle). It is followed by bilateral filter. Then I apply Scharr operator to compute the actual gradient which should be sampled.
The results are presented below:
The first image shows original data. In the second and third image, filtered data are presented, first as a magnitude of spectrum after FFT and then as a filtered image data. Fourth image show result of applying Scharr operator to third image.
My questions are:
- Are there a well known approaches for reducing noise in dental radiograph that would differ from my approach?
- What is causing the "smoky" appearance of the edges and "flat"(non-edge) areas? Is it some kind of leftover noise in the filtered image or is it inherent to the gradient operator? If it is indeed a noise, which filter would be most suitable to use? Median filter was good at removing small noisy blobs but large kernel causes the edges to blur out too much. So bilateral filter is used to filter out larger blobs and equalize color over area without harming edges, but it is not able to filter this smoky structure.
- Is there a better option than Scharr operator to create gradient in this case?
- Bonus: Would this be considered a good input for Active Shape Model? I'm not yet aware how robust they are.