Boletín No. 55
1o. de julio de 2016
IMPLEMENTACIÓN DE UN SISTEMA DE MODELADO 3D DE PIEZAS DENTALES
Eduardo Galicia Gómez,
Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo.
,
Miguel Hernández Bolaños
Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo.
Mauricio Olguín Carbajal
Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo.
INSTITUTO POLITÉCNICO NACIONAL-CIDETEC.
Abstract
This article proposes a new dental reconstruction method that only uses two images: one picture and one X-ray from the tooth of interest using a powerful technological tool: virtual reality. This area has been recognized thanks to videogames, however, this field has been adapted to specific situations by making virtual worlds and models, in this case, a tooth. The system proposed here is considered relevant because it uses very few elements to make a 3D dental model, just with two images it is possible to reconstruct one tooth. Otherwise this system has a low cost because it uses resources in the reach of every dentist: one PC and one XRAY. Also this system has been developed in JAVA language which make it portable and easy to install in different OS such as LINUX, IOS and Windows, the use of X3D language is remarkable for the recreation of the virtual model, this allows to see the models on almost every web explorer (Chrome, Internet Explorer or Mozilla Firefox), just installing one plug-in. In the other hand this system base all it's functionality into OPENCV library with JAVA for the processing of the input images, which are principal elements for the design of the 3D model of the tooth.
I. Introducción
Con el avance tecnológico actual, los métodos de diagnóstico en el área de salud bucal han tenido que evolucionar a la par de éste, sin embargo, no son accesibles en el momento de una extracción o son muy caros para el paciente, sin contar, que alguno de estos métodos requieren de equipos o instalaciones especiales y en otros casos el tiempo para la generación del diagnóstico no es de manera inmediata. El método sin duda más utilizado en México para el diagnóstico en pacientes con problemas bucales son: las radiografías, en sus diferentes posiciones:
• Lateral de cráneo.
• Panorámica.
• Periapical.
• Lateral de cráneo.
• Panorámica.
Éstas proporcionan al dentista una evaluación rápida y en la mayoría de las veces confiable, sobre el problema a resolver; a pesar de la rapidez que proporcionan las radiografías para la evaluación de un problema del tipo bucal, suelen surgir ciertos problemas como por ejemplo: la sobreposición de dientes, problemas de revelado, etc. Debido a esto durante el siglo pasado e inicios de este siglo se han mejorado las técnicas de obtención de imágenes para la cavidad bucal, entre ellas destacan las tomografías, gammagrafías y resonancias magnéticas.
Por otro lado la incursión de los métodos CAD/CAM en la odontología ha generado una gran revolución, debido a que permiten la creación de prótesis dentales con un amplio grado de precisión, además permiten la creación de un modelo 3D de forma digital, el cual puede ser evaluado con lujo de detalle por el odontólogo lo que provee un diagnóstico más acertado de la patología. Sin embargo, estos métodos requieren de equipos especializados y por ende su costo es elevado lo que los deja fuera del alcance de odontólogos que trabajan por su cuenta y no poseen los recursos económicos necesarios para adquirirlos.
Cabe destacar que “los métodos radiológicos convencionales presentan limitaciones para identificar procesos patológicos y estructuras anatómicas”, es por eso que en la actualidad algunos tratamientos bucales son diseñados en base a tomografías, que permiten la identificación y la medición de las estructuras dentales, razón por la cual son utilizadas a nivel de ortodoncia para dar seguimiento a los tratamientos en los pacientes. Otra ventaja de esta técnica es la generación de modelados 2D y 3D a partir de la imagen obtenida y un software, lo cual permite al especialista diseñar el tratamiento biomecánico correspondiente, de acuerdo a la patología previamente identificada.
A pesar de todas las ventajas que presentan las TAC (tomografías computarizadas) sobre las radiografías, éstas suelen ser menos accesibles al paciente debido a su alto costo y al nivel de especialización en cuanto a equipo y espacio se refiere. Difícilmente un dentista que trabaje de manera independiente poseerá un equipo con estas características en su consultorio, lo cual retarda el diagnóstico del paciente de forma considerable, sin embargo, la exactitud de dicho método es difícilmente igualado por otros. Es por eso que en este documento se plantea una solución accesible y de bajo costo para la creación de modelos 3D de piezas dentales a partir de una radiografía y una fotografía.
II. Desarrollo
A) Obtención y adecuación de las imágenes dentales
Es a partir de una radiografía panorámica y una fotografía oclusal del órgano dental es posible generar un modelo 3D, lo cual abre la posibilidad a tener un modelo detallado mientras más imágenes del diente se posean, sin embargo, el gran inconveniente es que para realizar estas tomas algunas son prácticamente imposibles de realizar, debido a la distancia tan próxima entre cada pieza dental, por lo que se optó solo por mantener el desarrollo del prototipo a través de estas dos imágenes.
B) Adquisición de datos relevantes de las radiografías y fotografías
Después de adquirir las imágenes necesarias para la obtención del modelo 3D, éstas tienen que pasar por un pre-procesamiento el cual se divide en los siguientes pasos: 1. Segmentación de la imagen para aislar el diente deseado. 2. Aplicación de un filtro gaussiano para suavizar la imagen y reducir el ruido. 3. Aplicación de un umbral tipo OTSU. 4. Extracción de los bordes a través del algoritmo de Canny. 5. Aplicación del seguimiento de contorno. 6. Extracción de las coordenadas x,y de cada punto del contorno.
Segmentación de la imagen para aislar el diente deseado
Una vez obtenidas las imágenes del diente a evaluar es necesario aislarlo de cualquier otro tipo de ruido, ya sea de otras partes de dientes que lo rodean o hueso de la mandíbula o algún otro tejido, para ello es necesario utilizar un método de segmentación, el escogido para propósitos de este prototipo es el algoritmo conocido como: “Grabcut”. El resultado de este algoritmo se aprecia en la figura 1.
Figura 1. A) Selección inicial del algoritmo, B) Resultado de la primera iteración, C) Corrección a través de touchups y D) Imagen final obtenido del algoritmo |
Aplicación de filtros y realce de los bordes de la imagen
El siguiente paso en el procesamiento de la imagen, es la reducción del ruido que pudiera quedar después de la segmentación esto se realiza a través de un filtro gaussiano, el cual tiene la función de aumentar el contraste. Por otro lado, la aplicación del filtro selectivo (OTSU) permite generar una imagen binaria la cual es mucho más fácil identificar sus bordes. Ver figura 2.
Figura 2. Resultado de la binarización de otsu |
Extracción de los bordes de la imagen binarizada
Una vez obtenida la imagen binarizada es necesario realizar la detección de los bordes, esta detección se realiza de acuerdo al algoritmo de Canny, que es uno de los algoritmos más utilizados para encontrar los bordes en una imagen, se decidió utilizar este algoritmo debido a que dentro de sus pasos vuelve a reducir la cantidad de ruido y el punto más importante porque devuelve un contorno de un sólo pixel de ancho.
Extracción del contorno
Una vez extraídos los bordes de la imagen es necesario obtener el contorno externo de la imagen resultante del proceso de Canny por lo que, en principio de cuentas el lector se debe de preguntar ¿Qué es un contorno? pues bien un contorno es definido como la curva continua que une a los puntos de misma intensidad o color a través de cierto borde. En este caso el contorno obtenido es utilizado para delimitar la forma de la cara oclusal de la pieza dental que servirá para generar el modelo a través del algoritmo que utiliza OpenCV para la detección de los mismos, el resultado de la extracción de bordes y de contornos es mostrado en la figura 3.
Figura 3. A) Bordes obtenidos a través del algoritmo de Canny y B) Extracción del contorno externo del órgano dental |
Cabe destacar que durante la aplicación del algoritmo de extracción del contorno las coordenadas de cada punto encontrado son almacenadas para después utilizarlas en la generación del modelo 3D.
C) Generación del modelo tridimensional para las piezas dentales Para la generación del modelo 3D se deben cumplir las siguientes condiciones:
• La cara oclusal y la cara de la radiografía hayan pasado por el procesamiento descrito con anterioridad.
• Los puntos obtenidos del contorno deben de ir en sentido horario, es decir, de izquierda a derecha siempre en ese orden para poder genera una cara visible.
Habiendo cumplido las condiciones anteriores se puede iniciar el proceso de generación del modelo tridimensional, para ello se necesita aplicar el algoritmo conocido como búsqueda de línea el cual se ejecuta directamente sobre el contorno de la cara oclusal, este procedimiento se encarga de ubicar dos puntos sobre la misma altura de la cara oclusal para generar una línea sobre el ancho de la cara, se pueden generar tantas líneas como el alto de la cara lo permita, estas líneas son utilizadas como referencia para proyectar la cara de la radiografía a distancias iguales y dar la sensación de profundidad. Se destaca que el algoritmo búsqueda de línea fue propuesto por los autores de este artículo por lo que si se desea mayor información sobre cómo funciona, se le solicita al lector contactarse a través de los medios presentados en este documento. En la figura 4 se aprecia el resultado de la aplicación del algoritmo antes descrito.
Figura 4. Aplicación del algoritmo de línea de búsqueda |
D) Proyección de caras radiográficas
Después de obtener y dibujar las líneas, el siguiente paso de este algoritmo es la proyección de la cara radiográfica en cada una de las líneas trazadas en la cara oclusal, previamente la imagen binarizada de esta cara debe de pasar por un proceso de ajuste al tamaño del objeto binarizado y una rotación a 90 grados, cabe señalar que este paso debe de ser realizado de manera manual a través de un programa de edición de imágenes tal como GIMP o Paint. Una vez realizado este proceso, la nueva imagen debe de pasar por un escalamiento en su ancho y en su alto, en el ancho el escalamiento será acorde a la distancia que tiene la línea correspondiente trazada por el algoritmo de línea de búsqueda.
E) Unión de las caras proyectadas
El último paso para la generación del modelo 3D es la unión de las caras proyectadas en el paso anterior, esto es realizado gracias a un algoritmo propio y propuesto por los autores de este artículo, al unir las caras se genera la sensación de solidez en la pieza dental. Se hace mención que el modelo 3D está desarrollado en un lenguaje conocido como X3D el cual permite la creación de mundos virtuales sin necesidad de renderizarlos en el equipo del usuario, lo cual es una ventaja, solo basta con tener instalados un buen explorador web y un plug-in conocido como Cortona3D, para visualizar los modelos realizados.
III. Resultados
A continuación se muestran 5 modelos de diferentes piezas con un número de caras estandarizado, 25 caras por modelo. Las piezas dentales tomadas para este ejemplo pertenecen al grupo de los molares, usando como referencia el odontograma (ver figura 5) presentado, sus números correspondientes son:
• Diente número 14 (premolar superior derecho).
• Diente número 15 (premolar superior derecho).
• Diente número 26 (molar superior derecho).
• Diente número 37 (molar inferior derecho).
• Diente número 48 (molar inferior izquierdo).
Figura 5. Odontograma |
En las figuras números 6 al 10, se pueden observar los resultados obtenidos (modelados) de los dientes mencionados.
Figura 6. Diente 14 con 25 caras de resolución | Figura 7. Diente 15 con 25 caras de resolución |
Figura 8. Diente 26 con 25 caras de resolución | Figura 9. Diente 48 con 25 caras de resolución |
Figura 10. Diente 37 con 25 caras de resolución. |
IV. Conclusiones
Después de haber estudiado y analizado trabajos relacionados con el tema en el presente artículo se desarrolló un sistema de modelado 3D de piezas dentales, a través de la obtención y adecuación de imágenes digitales (fotografías y radiografías), de las cuales se adquirieron los datos relevantes y necesarios para la generación de modelados 3D por medio de técnicas de visión artificial y extracción de puntos. Para el diseño 3D fue empleado el lenguaje conocido como X3D, asimismo, para el despliegue e interacción del modelo desarrollado fueron necesarios otros lenguajes de programación tales como JAVA y HTML.
La adquisición de la imagen de la cara oclusal fue posible gracias a una cámara intraoral, mientras que la radiografía es posible adquirirla a través del centro radiológico que indique el odontólogo.
Una vez que se poseen las imágenes, estas fueron sometidas a un procesamiento para extraer los datos de interés y pasar a la creación del modelo 3D de la pieza dental. El primer paso realizado fue la segmentación de la pieza dental a través del algoritmo conocido como ”grabcut'', una vez aislado el diente objetivo, este necesita pasar por un filtrado gaussiano para eliminar el ruido restante, acto seguido se realiza un umbralizado para mejorar la detección de bordes que fue realizado implementando el algoritmo de ”Canny''. Toda vez que se detectaron exitosamente los bordes, fue aplicado un algoritmo de seguimiento de contorno que permitió conocer la ubicación espacial de cada uno de los pixeles que componen las imágenes antes mencionadas.
Al tener la ubicación de los pixeles de cada cara, se procedió al modelado 3D de la pieza dental tomando como base la cara oclusal, la cual se divide en el sentido horizontal de acuerdo a la resolución indicada por el usuario a través de un algoritmo denominado como ``línea de búsqueda'' propuesto y desarrollado en este trabajo. Acto seguido es proyectada la cara proporcionada por la radiografía de acuerdo a la división mencionada anteriormente. Por último las caras proyectadas son enlazadas a través de un algoritmo de unión de caras planteado también en este documento, completado este paso, el modelo 3D de la pieza dental queda listo.
Todo el proceso anteriormente descrito es realizado a través de una GUI (Graphic User Interface) la cual es una interfaz amigable, práctica e intuitiva para el usuario y que facilita el proceso de supervisión e interacción entre el usuario final, el procesamiento de la imagen y la generación del modelado 3D de la pieza dental.
V. Referencias
[1] Ramón Osvaldo Guardado Medina, R. F. Z. “desarrollo de una aplicación para procesamiento de imágenes biomédicas". Seventh LACCEI Latin American and Caribbean Conference for Engineering and Technology (2009).
[2] Autores, V. “opencv 3.1.0 open source computer vision". Consultado el 19-04-2016 a url http://docs.opencv.org/3.1.0/ , 2015.
[3] Autores, V. “uso del odontograma". Consultado el 21-04-2016 a url http://nanncy-laara.blogspot.mx/2014/09/uso-del-odontograma_68.html , 2015.
[4] Gonzalo Pajares Martinsanz, J. M. d. l. C. G. “Visión por computador, imágenes digitales y aplicaciones ", segunda edición ed. AlfaOmega-Ra-Ma, México, 2008.
[5] Gonzalo Pajares, Jesús M. de la Cruz, José M. Molina, Juan Cuadrado, Alejandro López. “Imágenes digitales, procesamiento practico con Java". Editorial Alfaomega, México, 2004.
[6] Marsh, M. “grabcut " - interactive foreground extraction using iterated graph cuts. Consultado el 11-04-2016 a url http://www.cs.ru.ac.za/research/g02m1682/ , 2005.
[7] Canny, J. “a computational approach to edge detection ". IEEE Transactions on pattern analysis and machine intelligence PAMI-8 (November, 1986).