Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
UNIVERSIDAD CENTRAL DEL ECUADOR
FACULTAD DE INGENIERÍA, CIENCIAS FÍSICAS Y MATEMÁTICA
CARRERA DE INGENIERÍA EN COMPUTACIÓN GRÁFICA
Desarrollo de una Aplicación para Android con Realidad Aumentada para Ayuda en el
proceso de Implantes Dentales
Trabajo de Titulación modalidad Proyecto Integrador, previo a la obtención del Título de
Ingeniero en Computación Gráfica
Autores: Montoya Tite Angel Gabriel
Oña Hipo Freddy Paúl
Tutor: Ing. Darwin Rodolfo Caina Aysabucha MSc.
QUITO, 2018
ii
DERECHOS DE AUTOR
Nosotros, MONTOYA TITE ANGEL GABRIEL y OÑA HIPO FREDDY PAÚL en calidad
de autores y titulares de los derechos morales y patrimoniales del trabajo de titulación:
Desarrollo de una Aplicación para Android con Realidad Aumentada para Ayuda en el
proceso de Implantes Dentales, modalidad Proyecto Integrador, de conformidad con el Art.
114 del CÓDIGO ORGÁNICO DE LA ECONOMÍA SOCIAL DE LOS CONOCIMIENTOS,
CREATIVIDAD E INNOVACIÓN, concedemos a favor de la Universidad Central del Ecuador
una licencia gratuita, intransferible y no exclusiva para el uso no comercial de la obra, con fines
estrictamente académicos. Conservamos a nuestro favor todos los derechos de autor sobre la
obra, establecidos en la normativa citada. Así mismo, autorizamos a la Universidad Central del
Ecuador para que realice la digitalización y publicación de este trabajo de titulación en el
repositorio virtual, de conformidad a lo dispuesto en el Art. 144 de la Ley Orgánica de
Educación Superior. Los autores declaran que la obra objeto de la presente autorización es
original en su forma de expresión y no infringe el derecho de autor de terceros, asumiendo la
responsabilidad por cualquier reclamación que pudiera presentarse por esta causa y liberando a
la Universidad de toda responsabilidad.
Firma: _________________________ Firma: _________________________
Montoya Tite Angel Gabriel Oña Hipo Freddy Paúl
CC: 1717530842 CC: 1720857414
iii
APROBACIÓN DEL TUTOR
En mi calidad de Tutor del Trabajo de Titulación, presentado por: MONTOYA TITE ANGEL
GABRIEL y OÑA HIPO FREDDY PAÚL, para optar por el Grado de Ingeniero en
Computación Gráfica; cuyo título es: DESARROLLO DE UNA APLICACIÓN PARA
ANDROID CON REALIDAD AUMENTADA PARA AYUDA EN EL PROCESO DE
IMPLANTES DENTALES, considero que dicho trabajo reúne los requisitos y méritos
suficientes para ser sometido a la presentación pública y evaluación por parte del tribunal
examinador que se designe.
En la ciudad de Quito, a los 24 días del mes de Octubre de 2018.
Ing. Darwin Rodolfo Caina Aysabucha, MSc.
DOCENTE-TUTOR
C.C. 1803221389
iv
DEDICATORIAS
A todos mis seres queridos: tíos y primos.
Pero sobre todo a Olga y Angel; mis amados padres.
Diego y Karolina; mis queridos hermanos.
Los llevo en lo más profundo de mi corazón.
Angel Gabriel Montoya
A mis padres, Segundo y María, a mis hermanas Mayra,
Tatiana y Jhovanna, por apoyarme y acompañarme
incondicionalmente durante todo el proceso de
formación universitaria, han sido un pilar fundamental
en mi vida y a mi sobrino Cristian que ha llenado mi
vida de nuevas alegrías.
Freddy Paúl Oña
v
AGRADECIMIENTOS
Ante todo, agradezco a Dios por haberme otorgado los padres que tengo; quienes han sabido
encaminar mi formación personal.
A mis queridos tíos: Albertano y Mercedes; quienes en innumerables ocasiones me han
demostrado su cariño.
A mi entrañable tía Luz María, eternamente la recordaré.
Además, al Ing. Darwin Caina; por compartir su experiencia en favor del desarrollo del
proyecto.
Angel Gabriel Montoya
vi
Este proyecto de titulación es la fase final de una vida universitaria, por la cual quiero
agradecer:
A Jehová Dios por brindarme la fuerza para no rendirme jamás y ser mi fuente de esperanza en
los momentos más difíciles de mi vida.
A mí querido padre Segundo Oña, por inculcar en mi vida, buenos valores y costumbres, por ser
mi fuente de apoyo ante las diferentes adversidades de la vida.
A mi querida madre María Hipo, por ser mi fuente de refugio en los momentos más difíciles de
mi vida, por confiar siempre en mí y brindarme su cariño de forma incondicional.
A mi hermana mayor Mayra, me enseñaste a formarme con carácter fuerte para afrontar
cualquier adversidad de la vida, además por confiar siempre en mí y brindarme tu apoyo y
buenos consejos.
A mi hermana Tatiana, le debo todo lo que soy, además por considerarme siempre como un hijo
más que como un hermano, por ayudarme a formar como un hombre de bien.
A mi hermana menor Jhovanna, has sido alguien que siempre he querido mucho,
A mi sobrinito Cristian Paul, por llegar a nuestra familia y llenarnos de mucha felicidad y
travesuras.
A María Belén, por ser una amiga fiel y por ser la única persona que siempre estuvo pendiente
de mí en los momentos más difíciles de mi vida
y por tener siempre fe en mi persona.
Freddy Paúl Oña
vii
CONTENIDO
pág.
DERECHOS DE AUTOR ............................................................................................................. ii
APROBACIÓN DEL TUTOR ..................................................................................................... iii
DEDICATORIAS ........................................................................................................................ iv
AGRADECIMIENTOS ................................................................................................................ v
CONTENIDO ............................................................................................................................. vii
LISTA DE FIGURAS .................................................................................................................. ix
LISTA DE TABLAS .................................................................................................................... xi
GLOSARIO ................................................................................................................................. xii
RESUMEN ................................................................................................................................. xiii
ABSTRACT ............................................................................................................................... xiv
INTRODUCCIÓN ........................................................................................................................ 1
CAPÍTULO I ................................................................................................................................. 3
1. PLANTEAMIENTO DEL PROBLEMA .............................................................................. 3
1.1. ANTECEDENTES ........................................................................................................ 3
1.2. DESCRIPCIÓN DEL PROBLEMA ............................................................................. 4
1.3. OBJETIVOS ................................................................................................................. 4
Objetivo General .................................................................................................... 4
Objetivos Específicos ............................................................................................. 4
1.4. ALCANCE .................................................................................................................... 5
1.5. LIMITACIONES .......................................................................................................... 5
CAPÍTULO II ............................................................................................................................... 6
2. MARCO TEÓRICO .............................................................................................................. 6
2.1. BREVE HISTORIA DE LAS TECNOLOGÍAS DE INFORMACIÓN Y
COMUNICACIÓN (TICs) ........................................................................................................ 6
2.2. EVOLUCIÓN DE LA REALIDAD AUMENTADA ................................................. 10
2.3. SISTEMAS DE REALIDAD AUMENTADA ........................................................... 13
2.3.1 Sistemas See-Through y Proyectivos ................................................................... 13
2.3.2 Sistemas Head Mounted Display, Hand Held Display y Espaciales ................... 15
2.4. IDENTIFICACIÓN DE ESCENAS ............................................................................ 16
2.4.1 Reconocimiento con marcadores ......................................................................... 16
2.4.2 Reconocimiento sin marcadores .......................................................................... 19
2.5. TRACKING ............................................................................................................... 20
viii
2.5.1 Tipos de tracking ................................................................................................. 21
2.6. IMPLANTOLOGÍA .................................................................................................... 28
2.6.1 Partes del implante dental .................................................................................... 28
2.6.2 Tipos de implantes dentales ................................................................................. 29
2.6.3 Procedimiento de colocación del implante........................................................... 30
CAPITULO III ............................................................................................................................ 32
3. MARCO METODOLÓGICO ............................................................................................. 32
3.1. METODOLOGÍA XP ................................................................................................. 32
3.1.1. Ciclo de vida de un proyecto XP.......................................................................... 33
3.1.2. Roles XP .............................................................................................................. 34
3.1.3. Fases de la metodología XP ................................................................................. 34
3.2. FASE DE PLANIFICACIÓN ..................................................................................... 34
3.2.1 Requerimientos de la Aplicación ......................................................................... 35
3.3. FASE DE DISEÑO ..................................................................................................... 35
3.3.1 Diseño minimalista ..................................................................................................... 36
3.3.2 Arquitectura de la aplicación ............................................................................... 37
3.3.3 Esquema de navegación de la aplicación ............................................................. 38
3.3.4 Creación de los modelos de las piezas dentales ................................................... 39
3.3.5 Herramientas de software ..................................................................................... 40
3.4. FASE DE DESARROLLO ......................................................................................... 44
3.4.1 Creación de los modelos de las piezas dentales ................................................... 44
3.4.2 Generación de recursos gráficos para la interfaz gráfica de usuario .................... 50
3.4.3 Especificaciones de los marcadores ..................................................................... 51
3.4.4 Implementación de la Realidad Aumentada ........................................................ 52
3.4.5 Elección de la cámara del dispositivo .................................................................. 56
3.4.6 Captura de la imagen a usarse como marcador .................................................... 57
3.4.7 Manejo de gestos para ubicar adecuadamente el modelo .................................... 57
3.4.8 Interactividad de la aplicación ............................................................................. 58
3.4.9 Captura de pantalla (screenshot) del resultado final y posibilidad de compartir
dicha captura ........................................................................................................ 59
3.4.10 Programación ....................................................................................................... 59
CAPÍTULO IV ............................................................................................................................ 65
4. RESULTADOS Y PRUEBAS ............................................................................................ 65
4.1. RESULTADOS ........................................................................................................... 65
4.2. PRUEBAS ................................................................................................................... 71
Valoraciones de usuarios ..................................................................................... 73
CAPÍTULO V ............................................................................................................................. 75
5. CONCLUSIONES Y RECOMENDACIONES .................................................................. 75
ix
5.1. CONCLUSIONES ...................................................................................................... 75
5.2. RECOMENDACIONES ............................................................................................. 77
BIBLIOGRAFÍA ......................................................................................................................... 78
ANEXOS..................................................................................................................................... 81
LISTA DE FIGURAS
pág.
Figura 2.1 Funcionamientodel telégrafo óptico: (a) estructura del telégrafo óptico (b) posiciones
del telégrafo óptico ...................................................................................................... 7 Figura 2.2 Parte de la computadora ENIAC.................................................................................. 8 Figura 2.3 Primer microprocesador, el Intel 4004. ........................................................................ 9 Figura 2.4 Sensorama creado por Heilig. .................................................................................... 10 Figura 2.5 Primer dispositivo HMD. ........................................................................................... 11 Figura 2.6 Ejemplos del continuo de Milgram. .......................................................................... 11 Figura 2.7 Prototipo de implementación de HMD. ..................................................................... 12 Figura 2.8 Imágenes del uso de la RA en tareas de mantenimiento. ........................................... 13 Figura 2.9 Diagramas conceptuales de: (a) OST (b) VST. ......................................................... 14 Figura 2.10 Diagrama conceptual del sistema proyectivo. ......................................................... 14 Figura 2.11 Clasificación de los sistemas de RA, según la posición de la pantalla. ................... 15 Figura 2.12 Ejemplos del sistema HHD. ..................................................................................... 16 Figura 2.13 Ejemplos del nivel “0”: (a) código de barras (b) código QR. ................................. 17 Figura 2.14 Ejemplos del nivel “1”. ............................................................................................ 17 Figura 2.15 Ejemplos de marcador de imagen. ........................................................................... 18 Figura 2.16 Marcadores IR usados para mantenimiento: (a) vista de la cámara común (b) vista
de la cámara IR. ...................................................................................................... 19 Figura 2.17 RA sin marcadores. .................................................................................................. 20 Figura 2.18 Diagrama de flujo del sistema de AR ...................................................................... 21 Figura 2.19 La pose de la cámara está determinada por su ubicación y orientación en las
coordenadas del mundo. .............................................................................................................. 24 Figura 2.20 Proyecciones de objetos 3D ..................................................................................... 25 Figura 2.21 El GPS indica la ubicación, el acelerómetro junto con el magnetómetro proporciona
la inclinación y la brújula proporciona la orientación. ........................................... 26 Figura 2.22 Partes del implante dental ........................................................................................ 29 Figura 2.23 Tipos de implantes: (a) cilíndrico (b) tornillo .......................................................... 29 Figura 2.24 Ventajas del implante de tipo tornillo ...................................................................... 30 Figura 2.25 Fases de colocación del implante: (a) fase de intervención quirúrgica (b) fase de
cicatrización (c) fase protésica .................................................................................................... 31 Figura 3.1 Evolución de los ciclos de desarrollo: (a) en cascada (b) ciclos iterativos (c) mezcla
que hace XP. .............................................................................................................. 33 Figura 3.2 Ciclo de vida de un proyecto XP. .............................................................................. 33
x
Figura 3.3 Fases de la metodología XP ....................................................................................... 34 Figura 3.4 Características de la metodología UX ........................................................................ 36 Figura 3.5 Ejemplo de diseño minimalista .................................................................................. 37 Figura 3.6 Arquitectura de la aplicación ImplantAR. ................................................................. 38 Figura 3.7 Esquema de navegación de la aplicación ................................................................... 39 Figura 3.8 Esquema para la creación de los modelos de las piezas dentales .............................. 39 Figura 3.9 Morfología del diente incisivo central lateral superior izquierdo: (a) cara vestibular
(b) cara lingual (c) cara distal (d) cara mesial (e) cara incisal ................................... 44 Figura 3.10 Morfología del diente incisivo central lateral superior izquierdo: (a) cara vestibular
(b) cara lingual (c) cara distal (d) cara mesial (e) cara incisal ................................... 45 Figura 3.11 Morfología del diente canino superior izquierdo: (a) cara vestibular (b) cara lingual
(c) cara distal (d) cara mesial (e) cara incisal ............................................................ 45 Figura 3.12 Implementación de Vuforia en el proyecto: (a) importación de Vuforia (b) uso de la
clave de licencia de la aplicación. ............................................................................. 53 Figura 3.13 Preparación de la escena: (a) utilización del prefab ARCamera (b) utilización del
prefab ImageTarget ................................................................................................ 53 Figura 3.14 Elementos de la aplicación....................................................................................... 54 Figura 3.15 Elementos de la interfaz de usuario de la aplicación ............................................... 55 Figura 3.16 Organización de los modelos 3D dentro de la escena .............................................. 55 Figura 3.17 Integración del modelo y su ImageTarget ............................................................... 56 Figura 3.18 Botón que permite la elección de la cámara a usar .................................................. 56 Figura 3.19 Botón que permite capturar o no la imagen que servirá como marcador ................. 57 Figura 3.24 Botón que permite la captura de pantalla y compartir dicha captura ....................... 59 Figura 3.25 Diagrama de las clases que conforman la aplicación ............................................... 60 Figura 3.26 Métodos de la clase DefaultTrackableEventHandler .............................................. 61 Figura 3.27 Métodos de la clase CameraSwap ........................................................................... 62 Figura 3.28 Método manejo_transparencia ................................................................................. 63 Figura 3.29 Método ShareScreenShot ......................................................................................... 63 Figura 3.30 Método mostrar_tornillo .......................................................................................... 64 Figura 4.1 Caso de pruebas: perdida de varias piezas dentales ................................................... 65 Figura 4.2 Funcionalidad que permite personalizar el color de la pieza dental .......................... 66 Figura 4.3 Funcionalidad que permite visualizar el paladar y resto de opciones ........................ 66 Figura 4.4 Información sobre el proceso de colación del implante ............................................. 67 Figura 4.5 Funcionalidad que permite capturar y compartir la imagen ...................................... 67 Figura 4.6 Funcionalidad que permite manejar la transparencia del paladar .............................. 68 Figura 4.7 Visualización del incisivo central derecho ................................................................ 68 Figura 4.8 Visualización del implante ......................................................................................... 69 Figura 4.9 Visualización de información del implante ............................................................... 69 Figura 4.10 Visualización del incisivo lateral derecho ............................................................... 70 Figura 4.11 Visualización del incisivo lateral izquierdo ............................................................. 70 Figura 4.12 Total de descargas de la aplicación .......................................................................... 73 Figura 4.13 Valoración media de la aplicación ........................................................................... 73 Figura 4.14 Comentarios recibidos sobre la aplicación .............................................................. 74
xi
LISTA DE TABLAS
pág.
Tabla 3.1 Roles de la metodología XP ........................................................................................ 34 Tabla 3.2 Comparación de software de modelado 3D. ............................................................... 40 Tabla 3.3 Resumen de las características de los SDK analizados. .............................................. 43 Tabla 3.4 Proceso de modelado por caja. .................................................................................... 46 Tabla 3.5 Resultados del proceso de suavizado con HyperNURBS ............................................ 47 Tabla 3.6 Resultados del proceso de esculpido con uso de pinceles de Cinema 4D. .................. 48 Tabla 3.7 Mapas de coordenadas UV para el proceso de texturizado ......................................... 49 Tabla 3.8 Resultado final del proceso de modelado .................................................................... 49 Tabla 3.9 Recursos gráficos de la aplicación .............................................................................. 51 Tabla 3.10 Elementos de interactividad de la aplicación ............................................................ 58 Tabla 4.1 Cuadro de resultados de la aplicación en diversos dispositivos .................................. 72
xii
GLOSARIO
A.P.I: Application Programming Interface, conjunto de funciones y protocolos que permite
crear programas para determinado Sistema Operativo.
Diseño responsive: diseño adaptativo a los diferentes tamaños de las pantallas de los
dispositivos móviles.
D.O.F: Degrees Of Freedom
G.P.S: Global Positioning System, sistema que permite determinar la posición de un objeto.
H.M.D: Head Mounted Display, dispositivo tipo casco.
H.H.D: Hand Held Display
I.R: Infrared Radiation
O.S.T: Optical See-Through
R.A: Realidad Aumentada.
R.A.M: Random Access Memory
R.S.D: Retinal-Scanning Display
R.V: Realidad Virtual.
S.D.K: Software Development Kit, conjunto de librerías.
T.I.C: Tecnología de Información y Comunicación.
U.X: User Experience, metodología de diseño de interfaz gráfica
V.S.T: Video See-Through
X.P: eXtreme Programming, metodología de desarrollo de software
xiii
TÍTULO: Desarrollo de una Aplicación para Android con Realidad Aumentada para Ayuda en
el proceso de Implantes Dentales.
.
Autores: Montoya Tite Angel Gabriel
Oña Hipo Freddy Paúl
Tutor: Ing. Darwin Rodolfo Caina Aysabucha, MSc.
RESUMEN
El presente proyecto integrador se enfoca en el desarrollo de una aplicación para dispositivos
móviles, utilizando Realidad Virtual Aumentada, que permite visualizar el resultado final que se
obtendría en un tratamiento de implantología dental. La aplicación denominada “ImplantAR”;
se ejecutará en el Sistema Operativo Android. El desarrollo de la aplicación se orienta en utilizar
software especializado en Realidad Aumentada (SDK Vuforia), creación de los modelos 3D
(Cinema 4D), creación de gráficos 2D (Adobe Illustrator) y utilización de software (Unity 3D)
para la elaboración de la aplicación. Estas herramientas fueron seleccionadas después de un
análisis comparativo entre distintas herramientas tanto de software libre como de propietario.
Además, la aplicación ofrece una interfaz de usuario intuitiva; lo que permite al usuario su fácil
entendimiento y navegación a través de ella, para lo cual se utilizaron principios del diseño
minimalista.
PALABRAS CLAVE: ANDROID / IMPLANTOLOGÍA/ REALIDAD AUMENTADA/
UNITY/ VUFORIA
xiv
TITLE: Development of an Android Application with Augmented Reality for Help in the
process of Dental Implants.
.
Authors: Montoya Tite Angel Gabriel
Oña Hipo Freddy Paúl
Tutor: Ing. Darwin Rodolfo Caina Aysabucha, MSc.
ABSTRACT
The present integrative project focuses on the development of an application for mobile devices,
using Augmented Virtual Reality, which allows visualizing the final result that would be
obtained in a dental implant treatment. The application called "ImplantAR"; will run on the
Android Operating System. The development of the application is focused on using specialized
software in Augmented Reality (Vuforia SDK), creation of 3D models (Cinema 4D), creation of
2D graphics (Adobe Illustrator) and use of software (Unity 3D) for the development of the
application. These tools were selected after a comparative analysis between different tools, both
free software and proprietary software. In addition, the application offers an intuitive user
interface; which allows the user to easily understand and navigate through it, for which
principles of minimalist design were used.
KEYWORDS: ANDROID/ IMPLANTOLOGY/ AUGMENTED REALITY/ UNITY /
VUFORIA
1
INTRODUCCIÓN
El presente proyecto se refiere a la utilización de programación para dispositivos móviles con
Sistema Operativo Android y Realidad Aumentada (RA) dentro del campo médico,
específicamente en el área de la odontología, como apoyo en el proceso de visualización final
del implante dental; área que no ha sido aún explotada por las Tecnologías de Información y
Comunicación (TICs) en el país, pues son casi inexistentes las herramientas tecnológicas que se
hayan desarrollado dentro del tema de implantes dentales. La característica principal de la
Realidad Aumentada es que logra combinar el mundo real, ya sean personas, objetos o animales
con el mundo virtual, permitiendo a las personas adentrarse en un nuevo mundo, donde lo real y
lo virtual forman un todo.
Para analizar esta problemática es necesario mencionar sus causas. Una de ellas y
probablemente la principal es el escaso desarrollo de aplicaciones móviles orientadas a la
Odontología dentro del tema de implantes dentales; pues, aunque es evidente el amplio
desarrollo de aplicaciones móviles médicas, unas 40.000 aplicaciones de salud disponibles
según reporte del portal alliedhealthworld.com (El Comercio, 2013), el área de la odontología
no cuenta con una herramienta que potencie el tema de los implantes dentales.
La investigación de esta problemática se realizó por el interés de brindar tanto al odontólogo
como al público en general, una herramienta totalmente innovadora dentro del campo de
implantes dentales, la cual permita tener una visualización previa del resultado final del
tratamiento de implante dental al que se someta el paciente.
La metodología usada para el desarrollo de la aplicación se ha dividido en dos; una para el
desarrollo del software y otra para el desarrollo de la interfaz gráfica de usuario; tomando en
cuenta características como simplicidad, navegación intuitiva, entre otros. Además, se realizó un
breve estudio comparativo entre los diferentes SDK que permiten implementar Realidad
Aumentada para determinar el que se adecue de mejor manera al desarrollo del proyecto.
La finalidad del presente proyecto es la creación de una aplicación para dispositivos móviles
con Sistema Operativo Android que implemente la tecnología de Realidad Aumentada para la
ayuda en el proceso de implantes dentales; tanto al odontólogo como al público en general y así
permitirles observar el resultado de su tratamiento.
El proyecto se encuentra estructurado de la siguiente manera: en el capítulo 1 se revisa la
historia de las TICs y el continuo avance de la Realidad Aumentada a través del tiempo; así
2
como su funcionamiento y nuevas tecnologías empleadas. En el capítulo 2 se establecen las
metodologías que utiliza el proyecto, así como su respectivo desarrollo. Finalmente, en los
capítulos 3 y 4 se presentan los resultados, conclusiones y recomendaciones, respectivamente,
obtenidos a lo largo del desarrollo del proyecto.
3
CAPÍTULO I
1. PLANTEAMIENTO DEL PROBLEMA
1.1. ANTECEDENTES
Una gran cantidad de personas en el país enfrentan problemas de salud oral, los cuales en la
mayoría de los casos no representan mayor amenaza, pero a futuro pueden agravar si no se
toman las medidas correctivas del caso a tiempo. Con el enorme desarrollo de las Tecnologías
de Información y Comunicación (TICs); han surgido un sinnúmero de herramientas
tecnológicas para ayudar a médicos y pacientes a solucionar estas problemáticas que las
personas afrontan, entre estas; aplicaciones con Realidad Aumentada, las cuales facilitan tanto
al paciente como al profesional la toma de decisiones del tratamiento, previa a una intervención,
lo cual ayudará a resolver aspectos controversiales antes de la intervención, y así evitar
problemas de conformidad por parte del paciente con respecto al resultado final de su
tratamiento.
La Realidad Aumentada ha encontrado gran aplicación en diversos campos como la educación,
salud, entretenimiento, etc., ya que aparte de brindar información extra a la que ya se conoce,
permite a las personas cambiar el modo en el cual accede a esa información; sin importar el
dispositivo móvil del que disponga, es decir la Realidad Aumentada está al alcance de cualquier
persona que disponga de un dispositivo móvil inteligente (smartphone). Esta tecnología logra
combinar el mundo real con el mundo virtual, logrando así sumergir a las personas en un nuevo
mundo formado por lo real y lo virtual; además que toma ventaja frente a la competencia como
las gafas de realidad virtual por lo mencionado anteriormente.
El interés por el tema propuesto se sustenta fundamentalmente en el escaso desarrollo de
aplicaciones móviles orientadas a la odontología que permitan al profesional de la salud oral
tener una ayuda en sus actividades diarias. Además, por la necesidad que las personas tienen de
visualizar el resultado final del tratamiento de implantología dental; pero que debido a algún
motivo no lo han hecho, pues aspectos como el tiempo; muchas personas desechan la idea del
tratamiento de implantología por la suposición que es un procedimiento exageradamente largo,
el temor al dolor; pues la primera idea que la persona tiene al acudir al odontólogo es cuanto
dolerá, además, de sentirse intimidado por el instrumental dental, y finalmente el costo; el
principal obstáculo para someterse al proceso de implantología es el valor económico que se
4
cree muy alto por parte del paciente. Ya sea por los aspectos antes mencionados o por algún
otro las personas desisten de realizar el tratamiento de implantología.
1.2. DESCRIPCIÓN DEL PROBLEMA
En la actualidad los odontólogos y sus pacientes necesitan de herramientas que abarquen
aspectos reales y representaciones visuales para de esta manera facilitar aspectos explicativos o
descriptivos que favorezcan la comprensión por parte del paciente.
Es por ello que resulta obligatorio contar con una aplicación que permita al odontólogo ofrecer
información visual y textual de los tratamientos de salud oral que lleva a cabo con el fin de
permitir al paciente visualizar el resultado del tratamiento al cual vaya a someterse.
El problema a resolver mediante el desarrollo de la aplicación móvil es el siguiente: el
impedimento que tiene el odontólogo para brindar al paciente una vista preliminar del resultado
final del tratamiento de implantología al cual se someterá.
1.3. OBJETIVOS
Objetivo General
Desarrollar una aplicación para dispositivos móviles Android con Realidad Aumentada que
permita visualizar al paciente el resultado final del proceso de implante dental.
Objetivos Específicos
Diseñar la arquitectura de la aplicación en base a las metodologías existentes para el
diseño de aplicaciones.
Crear los elementos 3D para la aplicación mediante el uso del software libre.
Programar la aplicación enfocada al Sistema Operativo Android, utilizando la
herramienta de software Unity y el SDK Vuforia para Realidad Aumentada.
Realizar las pruebas de manejabilidad y rendimiento de la aplicación con la
participación de odontólogos y usuarios.
5
1.4. ALCANCE
La aplicación a desarrollar estará dirigida para ofrecer una vista preliminar del resultado final
del tratamiento de implantología, enfocado únicamente en las piezas dentales del sector anterior
maxilar, es decir: incisivos centrales, incisivos laterales y caninos. La aplicación hará uso de
modelos 3D; los cuales se realizarán en software libre y de Realidad Aumentada; la cual se
implementará con el SDK Vuforia y será desarrollada para dispositivos móviles con Sistema
Operativo Android.
1.5. LIMITACIONES
La aplicación está orientada a servir de guía visual del resultado a obtener en un proceso de
implantología dental (piezas dentales del sector anterior maxilar). No es un aporte en cada una
de las fases del proceso en sí, por lo que no se debe considerar como una guía dirigida a los
profesionales sino, más bien está dirigida a los pacientes, como un aporte visual en la toma de
decisión.
Este aplicativo está orientado específicamente a dispositivos móviles con Sistema Operativo
Android, es decir, no es multiplataforma.
6
CAPÍTULO II
2. MARCO TEÓRICO
2.1. BREVE HISTORIA DE LAS TECNOLOGÍAS DE INFORMACIÓN Y
COMUNICACIÓN (TICs)
Las TICs están presentes en el diario convivir de las personas, integrándose a la cultura
tecnológica que las rodea y con la que se interactúa en forma directa, en actividades
relacionadas al entretenimiento, ocio, educación, moda, estilo de vida, forma de comunicación,
deportes, etc. Los principales aportes que ofrecen son: fácil acceso a enormes fuentes de
información, procesamiento ágil y confiable de datos, canales de comunicación inmediata, gran
volumen de almacenamiento, automatización de trabajos, interactividad y digitalización de la
información. (Graells, 2001)
Al investigar sobre la evolución de las TICs, se tiene que, ya hace 3500 años antes de Cristo, en
la antigua Mesopotamia, el nacimiento de la escritura cuneiforme constituye el génesis de las
TICs, pues su nacimiento está directamente relacionado con una finalidad muy importante para
la época; registrar la actividad comercial, como consecuencia de la reciente forma de
comercializar productos; el trueque. Sin abordar exhaustivamente en procedimientos
rudimentarios posteriores, como el sonido generado en instrumentos de percusión o el uso de
animales para el envío de mensajes, sobresalen dos avances fundamentales en esta área: el
telégrafo y el teléfono.
Fue el francés Claude Chappe en 1794 quien inventó el primer telégrafo óptico, dando así
origen al primer sistema de telecomunicaciones, el cual consistía en un sistema formado por dos
brazos con contrapesos conectados por un travesaño, como muestra la figura 2.1-a. Los brazos
adoptaban 7 posiciones y el travesaño 4 posiciones, generando un total de 196 diferentes
posiciones (7x7x4=196), como muestra la figura 2.1-b. Chappe puso a prueba su sistema de
comunicación entre las ciudades de Parcé-sur-Sarthe y Brulon, separadas por 14 km, el 2 de
marzo de 1791, el cual consistía en el envío de mensajes en ambos sentidos, lo que se logró con
éxito.
Fue hasta 1830 donde el físico estadounidense Joseph Henry logra diseñar un sistema de envío y
detección de señales eléctricas, basándose en el electroimán del físico inglés Sturgeon. Mediante
el cual envió un mensaje a través de una milla de cable que ponía en funcionamiento el
7
electroimán. En 1837, el estadounidense Samuel Morse termina el desarrollo del electroimán y
mejora el invento de Henry, dando paso así al nacimiento del telégrafo, el cual utilizaba pulsos
de corriente para desviar el electroimán, el cual sacudía un marcador para producir códigos en
una hoja de papel; el conocido código Morse.
(a) (b)
Figura 2.1Funcionamientodel telégrafo óptico: (a) estructura del telégrafo óptico (b) posiciones del
telégrafo óptico (ProyectoIdis.org, s.f.)
El teléfono, surge como experimento basándose en el telégrafo, razón por la cual el científico
británico Graham Bell durante sus arduos trabajos investigativos, lo denominó el “telégrafo
musical o armónico”. Pero no fue hasta 1875 donde Bell contrata al joven Thomas Watson
como su asistente de experimentos, manifestándole su idea de telegrafiar todo tipo de sonido, y
así con todas sus innovadoras ideas; pero sin saber aún cómo lograrlas, Bell presenta una
solicitud de patente, el 14 de febrero de 1876, sobre “Mejoras en la Telegrafía”, la cual fue
aprobada. Finalmente, el 10 de marzo de 1876, ambos transmitieron una señal de voz por medio
de un cable eléctrico; la cual fue: “Mr. Watson, come here. I want you!” (Joskowicz, 2014)
Cabe anotar que, durante muchos años se consideró a Bell el inventor del teléfono, sin embargo,
Bell no fue su inventor sino el primero en patentarlo. Es aquí donde aparece el nombre del
italiano Antonio Meucci, el cuál motivado por el deseo de velar por la salud de su esposa,
construyó en 1854 lo que él llamaba el teletrófono. La historia se encargaría de redimirlo y el 11
8
de junio de 2002 el congreso de Estados Unidos aprobó la resolución 269, en la cual se
reconocía a Antonio Meucci como el inventor del teléfono. (Costa, 2011)
Durante la Segunda Guerra Mundial; madre de las tecnologías actuales, aparecen las primeras
computadoras, caracterizadas por su gran tamaño y limitada capacidad de procesamiento, las
cuales tenían un fin específico: descifrar los códigos enemigos, como el Colossus del ejército
británico. Sin embargo, el desarrollo electrónico se concentró en las investigaciones del Instituto
de Tecnologías de Massachusetts (Massachusetts Institute of Technology, MIT) y la
experimentación del poder de cálculo. Fue en 1946 que surge ENIAC (Electronic Numerical
Integrator and Calculator), como muestra la figura 2.2, la primera computadora con fines
generales.
Figura 2.2 Parte de la computadora ENIAC. (Superretro.com, s.f.)
El paso fundamental en la microelectrónica se dio en 1957, con la invención del circuito
integrado, realizado por los ingenieros estadounidenses Jack Kilby y Bob Noyce, lo cual desató
un “boom tecnológico”, generando la reducción de los precios de los semiconductores hasta en
un 85%; el cual se desplomó de 50 dólares en 1962 a 1 dólar en 1971.
La creación y desarrollo del internet, es un conjunto de entre otras cosas: estrategia militar,
espíritu empresarial e innovación. Pero sobre todo a la labor desarrollada por la Agencia de
Proyectos de Investigación Avanzada (Advanced Research Projects Agency, ARPA) del
Departamento de Defensa de Estados Unidos, la cual alarmada por el lanzamiento del primer
Sputnik, por parte la Unión Soviética, desarrolla una serie de iniciativas y estrategias. Una de
las cuales presentada por el ingeniero estadounidense Paul Baran, entre los años 1960 y 1964,
9
era diseñar un sistema de comunicaciones invulnerable a los ataques nucleares, fundamentado
en la conmutación de paquetes, logrando así la independización de la comunicación de los
centros de mando y control. Fue en 1969, cuando apareció la primera red de ordenadores;
Arpanet, la cual conectaba cuatro nodos: la Universidad de California, el Stanford Research
Institute, la Universidad de Santa Bárbara y la Universidad de Utah. Arpanet en primera
instancia, estaba destinada a los centros de investigación que trabajaban en conjunto del
Departamento de Defensa de Estados Unidos, pero más tarde sería utilizada con fines
comunicativos. En vista de esta situación, años más tarde surgieron MILNET (MILitary
NETwork) para fines militares, y Arpanet para fines científicos.
Es en la década de los años 70, donde se empieza hablar sobre las TICs y se da un salto gigante
en la difusión de la microelectrónica; en 1971 aparece el primer microprocesador, el Intel 4004,
inventado por Ted Hoff ingeniero de Intel, como muestra la figura 2.3, una pequeña placa
cuadrada que agrupaba 2300 transistores y que produjo la reducción del tamaño de las
computadoras y el aumento de su capacidad de procesamiento. Entre las características
principales de los microprocesadores se tienen:
Capacidad de integración: la mínima anchura de las líneas del chip, medida en micras
Capacidad de memoria: medida en bits
Velocidad de procesamiento: medida en megahercios.
A modo comparativo, la capacidad de almacenamiento del primer microprocesador era de 1024
bits, y la proyectada para 1999 era de 256 000 000 bits.
Figura 2.3 Primer microprocesador, el Intel 4004. (Tugurium.com, s.f.)
Durante los últimos veinte años del siglo XX, debido al aumento de la potencia de los
microprocesadores, los microordenadores empiezan a trabajar en conjunto y con mucha
movilidad; características reunidas en los ordenadores portátiles. Con lo antes mencionado y la
10
posibilidad de incrementar memoria y capacidad de procesamiento, incluyendo la posibilidad de
compartir información en una red electrónica, se produjo un cambio contundente en la historia
del ordenador. (Castells, 1997)
Para los años venideros, aparecen ideas como: computadoras cuánticas, el aumento de la
interconexión de los dispositivos móviles y para Yuval Harari destacado filósofo e historiador
israelí, autor de varios best sellers como: ‘Sapiens: De animales a dioses’ y ‘Homo Deus: Breve
historia del mañana’, el avance de la inteligencia artificial y la genómica, permitirá el
aparecimiento de una nueva raza denominada Homo Deus.
2.2. EVOLUCIÓN DE LA REALIDAD AUMENTADA
Los inicios de la Realidad Amentada (RA) están estrechamente ligados a los de la Realidad
Virtual (Virtual Reality, RV), fue a mediados del siglo XX, específicamente en 1962 cuando el
pionero de la tecnología multimedia, Morton Heilig, crea el Sensorama como muestra la figura
2.4, el cual agrupaba imágenes, sonido, vibración y olores. Ofreciendo así recrear el mundo real
en un sistema mecánico, a través de un complejo sistema de inmersión sensorial. (Sánchez
Riera, 2013)
Figura 2.4 Sensorama creado por Heilig. (Proyectoidis.org, s.f.)
En 1968, Ivan Sutherland, crea el que es considerado el primer dispositivo de tipo casco o HMD
(Head Mounted Display), un pesado prototipo como muestra la figura 2.5, el cual permitía la
11
visualización de modelos alámbricos muy escuetos generados por computadora. Un adelanto
fundamental se logra en 1972, cuando Myron Krueger, interesado en fusionar sus dos pasiones:
la tecnología y el arte, crea Videoplace, un sistema que permitía a los usuarios interactuar con
objetos virtuales, para lograr una mayor experiencia sensorial. (Barberá, 2016)
Es en la década de los años 90, donde la RA empieza a ser vista como una tecnología
potencialmente eficaz en el campo de la medicina, logrando superponer información adquirida
con técnicas de ultrasonido y escáner.
En 1994 aparece el artículo “A Taxonomy of Mixed Reality Visual Displays”, en el cual, Paul
Milgram y Fumio Kishino evidencian las diferencias entre la RV y la RA, en relación a un
concepto mucho más amplio, la Realidad Mixta (Mixed Reality, RM), donde dependiendo de la
cantidad de entorno generado por computador se establece una clasificación. En el que en los
extremos se encuentran el ambiente real y el ambiente virtual. Esta transición de espacios es
conocido comúnmente como el continuo de Milgram, como muestra la figura 2.6
Figura 2.5 Primer dispositivo HMD. (Sutherland, 1968)
Figura 2.6 Ejemplos del continuo de Milgram. (Noh & Sunar, 2009)
12
En el año de 1992, el término “Realidad Aumentada” aparece en el artículo de Tom Caudell y
David Mizell, para el “Hawai International Conference on System Science” (HICCS), en donde
los autores describen el diseño de un prototipo para la implementación de un HMD, como
muestra la figura 2.7, el cual combinaba un sensor y un sistema de registro global, generando la
superposición y estabilización de un diagrama generado por computador de un objeto real.
El mismo año, Steven Feiner, Blair MacIntyre y Doree Seligman, de la Universidad de
Columbia, presentan el que es considerado ampliamente el primer prototipo de un sistema de
RA; denominado KARMA (Knowledge-based Augmented Reality for Maintenance Assistance),
el cual proyectaba una imagen en 3D para dar instrucciones sobre cómo recargar la impresora,
en lugar de recurrir al manual de usuario, como muestra la figura 2.8. A partir de ese momento,
el desarrollo de esta tecnología crece aceleradamente, y ya en el año 2000 aparece el primer
juego para dispositivos móviles con RA, el ARQuake. (Sánchez Riera, 2013)
Figura 2.7 Prototipo de implementación de HMD. (Caudell & Mizell, 1992)
13
Figura 2.8 Imágenes del uso de la RA en tareas de mantenimiento. (Feiner, 1993)
2.3. SISTEMAS DE REALIDAD AUMENTADA
Ronald Azuma (1997) pionero de la RA entiende esta tecnología como una variación de la RV,
en donde, a diferencia de la segunda, la RA permite al usuario ver el mundo real y lo
complementa con objetos virtuales superpuestos en el mundo real. Además, define las
características que un sistema de RA debe poseer, las cuales son:
Unir lo real y lo virtual: el mundo real es combinado con información virtual.
Interactividad en tiempo real: la unión de lo real y virtual se da en tiempo real.
Registro en 3D: la información virtual debe ser posicionada en el mundo real.
2.3.1 Sistemas See-Through y Proyectivos
Los sistemas see-through (visión a través de) han estado estrechamente relacionados al uso de
dispositivos HMD, aunque también puede utilizarse en dispositivos de mano. Estos dispositivos
a su vez se dividen en dos, dependiendo del grado de visión directa que se tiene del entorno.
El Optical See-Through (OST) es un sistema óptico en el cual se utilizan pantallas parcialmente
transparentes, permitiendo la visión directa del mundo real y la superposición de imágenes
virtuales, como muestra la figura 2. 9-a. El Video See-Through (VST) es un sistema de video, en
el cual, una o varias cámaras se encargan de generar la visión del mundo real, luego esta
información se combina con información gráfica generada por un dispositivo, el cual crea la
escena y el resultado es enviado a un monitor, como muestra la figura 2.9-b.
14
(a) (b)
Figura 2.9 Diagramas conceptuales de: (a) OST (b) VST. (Azuma, 1997)
Por otro lado, se tienen los sistemas proyectivos o Monitor Based AR, otra opción desarrollada
por Azuma, en la cual la proyección se da en una pantalla convencional, como muestra la figura
2.10. Este tipo de sistemas pueden ser considerados una variante del sistema VST, pero que no
necesita el uso de dispositivos HMD.
Figura 2.10 Diagrama conceptual del sistema proyectivo. (Azuma, 1997)
Mientras los sistemas OST y VST son sistemas inmersivos; es decir, actúan sobre la visión del
usuario, para lo cual deben mantener la distancia entre los ojos del usuario y el monitor, los
sistemas proyectivos superponen la información real y virtual en el entorno (no en el campo
visual del usuario), con lo que la escena se visualiza parcialmente a medida que el usuario
mueve el dispositivo (Sánchez Riera, 2013).
15
2.3.2 Sistemas Head Mounted Display, Hand Held Display y Espaciales
Con la información expuesta anteriormente se deduce que la posición de la pantalla (display) en
relación al usuario y su entorno condiciona el tipo de sistema de RA. Por lo cual se puede
establecer tres categorías: dispositivos ligados a la cabeza, dispositivos de mano y sistemas
espaciales, como se muestra en la figura 2.11. Los sistemas ligados a la cabeza se dividen en:
los populares dispositivos tipo casco; HMD, los dispositivos retinianos (Retinal Scanning
Displays, RSD) basados en un sistema de visión óptico y aún en etapa de investigación en
empresas como MicroVision, y los sistemas proyectivos, siendo estos últimos los menos usados,
pues la mayoría se sustenta en sistemas VST. (Sánchez Riera, 2013).
Figura 2.11 Clasificación de los sistemas de RA, según la posición de la pantalla.
(Bimber & Raskar, 2006)
Rice (2009), aporta sobre los sistemas RSD, mencionando que “las personas terminarán usando
displays de lentes de contacto y/o interfaces directos al nervio óptico y el cerebro. En este punto,
múltiples realidades colisionarán, se mezclarán y terminaremos como Matrix”. Además,
menciona un entorno donde se podrá olvidar de nuestros cuerpos y que será el fin de la RV.
(Prendes, 2015)
16
Los sistemas de mano (Hand Held Displays, HHD), utilizan la visualización en un monitor, es
decir, se basan en su mayoría en el sistema Monitor Based AR, como tabletas, celulares e
incluso ordenadores portátiles, como muestra la figura 2.12.
Finalmente, los sistemas espaciales, en contraste con los dos sistemas anteriores, con sistemas
fijos, que se basan en la proyección de información virtual en el propio objeto físico o en su
entorno, que se ve así aumentado. Estos sistemas son dispositivos estacionarios, no portables,
formados por habitaciones y que constan de varias pantallas de gran tamaño en las cuales se
proyecta las imágenes del mundo virtual. (Sánchez Riera, 2013)
Figura 2.12 Ejemplos del sistema HHD. (Uchida & Komuro, 2013)
2.4. IDENTIFICACIÓN DE ESCENAS
La identificación de escenas en los sistemas de RA se realiza utilizando diferentes técnicas,
entre las cuales se tienen los siguientes:
2.4.1 Reconocimiento con marcadores
En los sistemas de RA, un marcador es un objeto cuya imagen es reconocida por el sistema, esto
lo hace de tres diferentes maneras: por su geometría, su color o por ambas características.
Luego, se lleva a cabo el procesamiento del marcador, algo que implica gran capacidad de
cálculo. Varios autores hablan de niveles de RA, mediante los cuales se trata de determinar la
complejidad de la tecnología involucrada en el sistema de RA (López Pombo, 2010).
a. Nivel “0”
Este nivel se encuentra hiperenlazado al mundo físico, básicamente está conformado por
códigos de barras, como muestra la figura 2.13-a y códigos 2D (códigos Quick Response, QR),
como muestra la figura 2.13-b. La característica principal de este nivel es que los códigos son
hiperenlaces a otros contenidos, es decir, son una especie de hiperenlace HTML (HiperText
Markup Language) sin uso de teclado.
17
(a) (b)
Figura 2.13 Ejemplos del nivel “0”: (a) código de barras (b) código QR. (Prendes, 2015)
b. Nivel “1”
Este nivel está conformado por los típicos marcadores de papel a blanco y negro, mientras que
el reconocimiento 3D de objetos, sería la forma más avanzada de este nivel. Según Estebanell
(2012) “los marcadores son unas imágenes en blanco y negro, generalmente cuadradas, con
dibujos sencillos y asimétricos”, como muestra la figura 2.14. (Prendes, 2015)
Figura 2.14 Ejemplos del nivel “1”. (Siltanen, 2012)
c. Nivel “2” o markerless RA
En el nivel “2” o también llamado RA sin marcadores (markerless RA) se utilizan imágenes del
mundo real o marcadores infrarrojos para el reconocimiento de escenas.
c.1. Marcadores de imagen
Un sistema de marcadores puede usar imágenes naturales (a color) como marcadores. Estos
marcadores típicamente tienen un marco u otros puntos de referencia para ayudar a la detección
y el cálculo de la pose, pero no necesariamente dichos puntos de interés son empleados, como
muestra la figura 2.15 (Siltanen, 2012).
18
Figura 2.15 Ejemplos de marcador de imagen. (Siltanen, 2012)
c.2. Marcadores infrarrojos
La radiación infrarroja (Infrared Radiaton, IR) tiene una longitud de onda en el rango (750 - 1
mm), la cual es mayor que el espectro de luz visible (380 - 770 nm) y, por lo tanto, es invisible
para el ojo humano. Sin embargo, muchas cámaras especiales funcionan dentro de un rango de
IR más amplio, además, existen filtros especiales que limitan la luz percibida a una banda IR
específica. (Siltanen, 2012)
Un sistema de marcadores IR puede usar: marcadores de materiales retro-reflexivos (refleja la
luz) o un foco IR (Gimeno, Pujuna-Arrese, Coma, Fernandez & Landaluzec, 2008) El sistema
puede detectar estos marcadores con una cámara IR especial, como muestra la figura 2.16-b, o
con una cámara normal, como muestra la figura 2.16-a; si el sistema usa el rango infrarrojo más
cercano (Siltanen, 2012). El trabajo con cámaras IR tiene como principal ventaja que
únicamente se observarán los marcadores, pero también presenta cierto inconveniente; al
capturar los marcadores como zonas iluminadas de la imagen, se pierde información del color y
la forma de los objetos, es decir, no se puede realizar una distinción de marcadores. (Gimeno,
Pujuna-Arrese, Coma, Fernandez & Landaluzec, 2008)
Una limitación común de los marcadores IR es que solo funcionan en interiores, donde no esté
presente una fuente de luz IR incontrolada. Pues, al aire libre, el sol emite luz infrarroja y
perturba el sistema de detección IR. (Siltanen, 2012)
19
(a) (b)
Figura 2.16 Marcadores IR usados para mantenimiento: (a) vista de la cámara común (b) vista de la
cámara IR. (Wang T. & Wang Y., 2008)
2.4.2 Reconocimiento sin marcadores
Otra forma de identificar la escena es mediante el uso de sensores como el GPS (Global
Positional System), brújula e incluso el acelerómetro de los dispositivos electrónicos, para
orientar y superponer puntos de interés. (Prendes, 2015)
a. Identificación por posicionamiento
La identificación de escenarios mediante posicionamiento se lleva a cabo gracias a la posición y
orientación del usuario, logrando así deducir que es lo que está mirando en determinado
momento. Es aquí donde el GPS y la brújula toman un papel preponderante, pues el primero se
encarga de proporcionar la posición exacta del usuario, y la segunda, se encarga de proporcionar
la orientación del mismo, como muestra la figura 2.17. (Redondo, 2012)
20
Figura 2.17 RA sin marcadores. (Sánchez Riera, 2013)
Otra técnica utilizada para determinar la posición del usuario, es el uso de sensores de
movimiento, la cual por sí sola no es capaz de proporcionar una posición global del usuario,
aunque en determinadas ocasiones no tenga por qué ser necesario, sino que la aplicación solo
necesite conocer su posición relativa (Redondo, 2012). En este contexto, sensores como:
acelerómetro y giroscopio aportan información para estimar la posición del dispositivo. (López
Pombo, 2010)
2.5. TRACKING
Un sistema simple de RA consiste en una cámara, una computadora y una pantalla. La cámara
captura la imagen, luego el sistema aumenta objetos virtuales sobre la imagen y lo muestra en
pantalla. El diagrama de flujo, como se muestra en la figura 2.18, de un sistema de RA simple
está constituido por:
Módulo de captura: captura la imagen de la cámara
Módulo de tracking (seguimiento): calcula la correcta ubicación y orientación de la
cámara para superponer el objeto virtual
Módulo de renderizado: combina la imagen original y los componentes virtuales usando
la pose calculada anteriormente, y luego renderiza la imagen aumentada en la pantalla
21
Figura 2.18 Diagrama de flujo del sistema de AR (Siltanen, 2012)
El módulo de tracking es el corazón del sistema de RA, pues calcula la pose relativa de la
cámara en tiempo real. La palabra pose hace referencia a los seis grados de libertad de posición
(Degrees of Freedom, 6 DOF), es decir, la ubicación y orientación 3D del objeto. La manera
más sencilla de calcular la pose es mediante el uso de marcadores.
El módulo de tracking permite al sistema añadir componentes virtuales como parte de la escena
real. La diferencia fundamental comparada con otras herramientas de procesamiento de
imágenes, radica que en la RA los objetos virtuales pueden ser movidos y rotados en un sistema
de coordenadas 3D, en lugar de un sistema de coordenadas 2D.
El módulo de renderizado dibuja la imagen virtual sobre la imagen de la cámara. Dentro de los
gráficos por computadora, la escena virtual es proyectada en una imagen plana usando una
cámara virtual y esta proyección es renderizada. El truco de esta tecnología es usar una cámara
virtual idéntica a la cámara real del sistema. De esta forma, los objetos virtuales en la escena son
proyectados de la misma manera que los objetos reales logrando un resultado convincente.
2.5.1 Tipos de tracking
Investigadores en visión computacional, robótica y fotogrametría (técnica para obtener mapas
de terrenos a través de fotografía aérea) han desarrollado un número considerable de métodos de
tracking. Estos los podemos dividir basados en el tipo de equipo usado para realizar el tracking.
a. Tracking visual
En el tracking visual, el sistema deduce la pose de la cámara en base a observaciones de lo que
ve, y realizar dichas observaciones en un ambiente desconocido supone todo un reto. Se necesita
de tiempo para recopilar suficientes datos para poder deducir la pose y luego la estimación de la
pose calculada fluye fácilmente con el tiempo. Como el ambiente es desconocido para el
sistema, el sistema selecciona la orientación del eje de coordenadas al azar, algo que puede ser
22
un inconveniente para el usuario. Además, es imposible deducir la escala correcta únicamente
basada en observaciones visuales.
Una solución para superar estos desafíos es agregar un signo predefinido fácil de detectar en el
ambiente y usar técnicas de visión computacional para detectarlo. Un marcador es un signo o
imagen que el sistema va a detectar en tiempo real.
a.1. Procedimiento de detección del marcador
Un buen marcador es fácil de detectar y confiable bajo cualquier circunstancia. Las diferencias
de iluminación (brillo) son más fáciles de detectar usando técnicas de visión computacional;
esto se debe al pobre balance de blancos automático de las cámaras (los colores se registran
incorrectamente, y un objeto puede cambiar su color, dependiendo de que más haya en la vista).
Además, la iluminación cambia los colores percibidos de los objetos y, por lo tanto, la detección
del color es un desafío. Naturalmente, cuanto mayor sea el contraste en la iluminación, más
fácilmente se detectan los objetos. Es por esto que los marcadores en blanco y negro son
óptimos.
1. Adquisición de imagen
Adquisición de una imagen de intensidad (imagen en escala de grises)
2. Pre procesamiento
Bajo nivel de procesamiento de la imagen
Eliminar la distorsión
Detección de línea / línea de conexión
Detección de esquinas del marcador
3. Detección de marcadores potenciales y descarte de no marcadores obvios
Rápido rechazo de los no marcadores obvios
Rápida prueba de aceptación a potenciales marcadores
4. Identificación y decodificación de marcadores
Correspondencia de plantillas
Decodificación
5. Cálculo de la pose del marcador
Estimación de la pose del marcador
Cálculo iterativo de la pose, para lograr una pose más precisa
Actualmente el primer paso es un proceso separado, pues solo proporciona la imagen para el
proceso de la detección del marcador. El flujo de trabajo de la detección del marcador puede
diferir de estos pasos, al igual que el orden en el que se ejecutan. (Siltanen, 2012)
23
a.2. Pre procesamiento
El objetivo del pre procesamiento es obtener una mejora en la imagen y que destaque algún
atributo. Los problemas de calidad pueden ser ocasionados por falta o exceso de luz o por ruido.
Al realzar la imagen se busca destacar bordes, regularizar colores, etc. Las técnicas que realizan
este proceso se agrupan en dos: las que proceden de señales y las de carácter heurístico
(conjunto de métodos o técnicas para resolver un problema), las cuales aplican los siguientes
conceptos:
1. Técnicas basadas en señales
Distancia entre pixeles
Procesos de convolución y operadores de correlación
2. Técnicas basadas en la heurística
Realce o aumento del contraste
Suavizado o eliminación del ruido
Detección de bordes.
Luego del pre procesamiento de la imagen, lo único que resta es que un sistema entrenado o
experto detecte rasgos únicos que permitan reconocerla, para luego, elegir el tipo de
información que se va a mostrar al usuario. (Redondo, 2012)
a.3. Detección de marcadores potenciales y descarte de no marcadores obvios
Como regla general, las aplicaciones de RA apuntan a un procesamiento en tiempo real y ágil,
por lo que el rendimiento es esencial. Los sistemas no pueden darse el lujo de desperdiciar el
tiempo en procesar no marcadores. Es así que muchas implementaciones usan un rápido criterio
de aceptación/rechazo para distinguir marcadores reales de objetos que no lo son.
Un sistema puede rechazar áreas que consten de pocos pixeles, las cuales a menudo no son
marcadores, e incluso si lo fuesen, su pequeño tamaño significaría que el marcador está muy
alejado de la cámara. En este caso la pose del mismo sería muy incierta y por lo tanto inútil.
Además, si el tamaño del marcador se reduce a unos pocos pixeles, el sistema no puede
identificarlo, a menos que realice un seguimiento de la historia de cada aspecto del objeto
identificador.
24
El histograma de un marcador en blanco y negro es bipolar, y el sistema de detección del
marcador puede verificar la bipolaridad como un criterio rápido de aceptación o rechazo. Sin
embargo, la prueba debe considerar las reflexiones, que pueden crear valores de escala de
grises.
Otro criterio rápidamente calculable para estimar el área es la mayor diagonal o tramo. A veces,
el sistema también puede rechazar áreas demasiado grandes si tiene algún conocimiento de
fondo para justificar la suposición de algo que no sea un marcador.
a.4. Pose del marcador
La pose de un objeto está relacionada con su ubicación y orientación. La ubicación puede ser
expresada con tres coordenadas de traslación (x, y, z) y la orientación con tres ángulos de
rotación (α, β, γ) sobre los tres ejes de coordenadas. De esta manera, la pose de un objeto tiene
seis grados de libertad (6 DOF), como muestra la figura 2.19.
La pose de una cámara calibraba se determina de forma única a partir de un mínimo de cuatro
puntos coplanares (puntos que se encuentran en el mismo plano) pero no colineales (puntos que
no se encuentran en una misma recta). Por lo tanto, el sistema puede calcular la pose del
marcador (con respecto a la cámara) en coordenadas 3D usando los cuatro puntos de esquina del
marcador en coordenadas de la imagen. (Siltanen, 2012)
Figura 2.19 La pose de la cámara está determinada por su ubicación y orientación en las coordenadas del
mundo. (Siltanen, 2012)
El tracking visual es el más usado por ser preciso, robusto y barato. Diversos proyectos están
disponibles en el mercado en campos como:
25
Arquitectura: Visuartech es una compañía especializada en la implementación de RA en
proyectos de arquitectura e ingeniería.
Decoración: IKEA es una app que implementa RA para decoración de interiores del
hogar, mediante el uso de marcadores de nivel “2”.
Entretenimiento: Alucinar es una app que implementa RA para personalizar tarjetas de
presentación e invitación, mediante el uso de las tarjetas de presentación
convencionales.
Medicina: ARDental es una app que implementa RA para la enseñanza de las
características de los dientes, mediante el uso de marcadores de nivel “1” (Scoop.it!,
2018)
b. Tracking híbrido
El tracking híbrido es la combinación de dos o más métodos de tracking, este tipo de tracking
aparece para disminuir los problemas que puedan presentarse en el tracking visual (por ejemplo:
necesidad que la cámara se encuentre muy cerca del marcador u oclusión del marcador). A
continuación, se describe brevemente el tracking basado en modelos y el tracking basado en
sensores. (Mateos Ramos, 2009)
b.1. Tracking basado en modelos
El tracking basado en modelos es un sistema que tiene un modelo 3D de la escena, parte de la
escena o una proyección del objeto (como muestra la figura 2.20), este sistema detecta la
correspondencia entre el modelo 3D con el ambiente y luego deduce la pose de la cámara
basada en estas correspondencias. El tracking basado en modelos se fundamenta comúnmente
en la detección de líneas del modelo. El modelo puede ser de varios formatos, puede ser un
objeto gráfico 3D, un objeto alámbrico o un objeto 3D reconstruido a partir de escaneo láser,
mapas de profundidad o reconstrucción visual.
Figura 2.20 Proyecciones de objetos 3D (Pérez & Reinoso, 2003)
26
Un problema común con el modelo es que su apariencia visual difiere de la realidad. Los
colores y texturas son diferentes, incluso en la realidad. La cantidad de detalles difiere más o
menos de la realidad dependiendo del formato del modelo. El tracking basado en modelos se
basa comúnmente en la detección de líneas y coincidencia en RA.
b.2. Métodos de tracking con sensores
El tracking visual es el más conveniente para aplicaciones donde una cámara ya es parte del
sistema o donde se la puede agregar fácilmente. Algunos equipos dedicados para el tracking han
sido desarrollados para otros propósitos, como el giroscopio, acelerómetro y el GPS, como
muestra la figura 2.21.
Los métodos de tracking con sensores están divididos en: ubicación (3 DOF), orientación
(3DOF) y sistemas de tracking de pose (6 DOF). Dependiendo del tipo de sensor, las
coordenadas son locales o globales. Un sistema de tracking de ubicación solo retorna la
ubicación 3D del usuario, pero no indica la dirección en la que el usuario está mirando. Un
sistema de tracking de orientación retorna la orientación 3D del usuario. Por ejemplo, el
acelerómetro proporciona la dirección de la aceleración, la cual es igual a la dirección de la
gravedad cuando el dispositivo está de pie, junto con el magnetómetro proporciona la dirección
de la gravedad incluso en movimiento, lo que es la inclinación en los tres ejes, y la brújula
proporciona la orientación del objeto, como muestra la figura 2.21. Los sistemas de tracking de
pose usualmente combinan diferentes métodos de tracking para lograr los seis grados de libertad
(6 DOF).
Figura 2.21 El GPS indica la ubicación, el acelerómetro junto con el magnetómetro proporciona la
inclinación y la brújula proporciona la orientación. (Siltanen, 2012)
27
La idea de combinar un sistema de tracking visual y sensores no es nueva dentro de la RA, un
ejemplo es el sistema híbrido InterSense, el cual usa un rastreador inercial junto con un sistema
de visión. En este sistema de tracking, la posición relativa y la pose del rastreador inercial y la
cámara son fijas. Usando la información del rastreador inercial, el sistema predice la posición de
los marcadores en la vista y así, acelera el análisis de la imagen (Siltanen, 2012).
Otro ejemplo del uso de tracking híbrido es el Proyecto de Investigación Hesperia: Homeland
Security, el cual tiene por objetivo el desarrollo de tecnologías que permitan la creación de
sistemas de seguridad, video vigilancia y control de operaciones de infraestructuras y espacios
públicos (Mateos Ramos, 2009).
28
2.6. IMPLANTOLOGÍA
La implantología es una especialidad de la odontología que aborda la planificación, colocación
y mantenimiento de los implantes dentales que se colocan en el cuerpo con la finalidad de
mejorar su capacidad masticatoria o la estética dental (Facultad de Odontología – Universidad
de Chile, 2017). Por lo tanto, la implantología se ha convertido en uno de los mayores avances
de la ciencia, ofreciendo una solución definitiva, segura y que restituye la funcionalidad y
estética del diente, permitiendo a la persona eliminar la idea de mutilación causada por la falta
del diente.
Generalmente, las piezas dentales anteriores son destruidas por causas como: recibir algún
impacto, caries profunda, fracturas o porque nunca se formó el germen de la pieza dental
definitiva. (La Revista – El Universo, 2013)
Entre las principales funciones de los implantes dentales se tiene:
Reemplazar a los dientes que no se renuevan
Servir de apoyo a una prótesis; permitiendo más seguridad y confortabilidad
Las técnicas de implantología ofrecen diversas posibilidades de tratamiento con alta
predictibilidad de los resultados. La realización de los implantes exige técnicas de tipo
multidisciplinarios, para tener un alto grado de precisión, funcionalidad, comodidad y belleza
estética, así como calidad y duración.
El tiempo de duración del implante está estrechamente relacionado con el cuidado que la
persona tenga con el implante, se estima que con un cuidado bucal muy bueno y visitas
periódicas al odontólogo evolucionan por más de 20 años. Desde el momento de la aparición de
este tipo de restauraciones más de medio millón de personas recurren al tratamiento con la
siguiente efectividad: 100% en el maxilar inferior y 94% en el maxilar superior. (Aúcar López
& Lajes Ugarte, 2014)
2.6.1 Partes del implante dental
El implante dental es un dispositivo médico que sustituye a la raíz natural del diente; fabricado
generalmente en titanio, que por sus bondades de biocompatibilidad con el organismo,
especialmente con el tejido óseo, produce la oseointegración, que no es más que la unión
homogénea entre el hueso y el implante, lo que permite que sobre este se pueda realizar una
corona de porcelana y posteriormente sea sometida a una fuerza masticatoria. (La Revista – El
Universo, 2013)
29
Un implante dental está constituido de tres partes principales, como se muestra en la figura 2.22.
Corona o prótesis: porción visible del implante
Pilar: elemento donde se ajusta la prótesis, sirve de conexión entre la prótesis y el
implante
Implante: dispositivo que se inserta en el hueso maxilar
Figura 2.22 Partes del implante dental (Odontología Integral, 2017)
2.6.2 Tipos de implantes dentales
Para el proceso de implantología, existen diversos tipos de implantes, los cuales dependiendo de
la necesidad del paciente serán adaptados a estas. Pero generalmente existen dos tipos de
implantes, como se muestra en la figura 2.23.
Cilíndricos: el implante tiene literalmente forma cilíndrica
Tornillo: el implante tiene literalmente forma de tornillo
(a) (b)
Figura 2.23 Tipos de implantes: (a) cilíndrico (b) tornillo (1888Implant.com, s.f.)
30
Los implantes de tipo tornillo son los más utilizados por los odontólogos, puesto que ofrece la
capacidad de ser colocado en uno o varios dientes consecutivamente, según sea el caso del
paciente, como muestra la figura 2.24. (Revista Phibo, 2011)
Figura 2.24 Ventajas del implante de tipo tornillo (Phibo.com, s.f.)
2.6.3 Procedimiento de colocación del implante
El paciente que acude al especialista debe ser valorado mediante un estudio clínico, en el cual se
contabiliza el número de piezas dentales faltantes y si existe el suficiente hueso; ya sea en el
maxilar superior o inferior.
Para corroborar dicho análisis, es importante realizar un examen radiográfico y tomográfico en
3D que ofrezca información concisa sobre la situación del hueso del paciente. Con este estudio
se puede establecer la medida del implante que se va a utilizar.
Cabe mencionar, que los implantes deben ser colocados cuando el paciente haya alcanzado la
formación ósea definitiva, el cual en las mujeres es alrededor de los 16 años y en los hombres a
los 18 años. También es importante acotar que a los pacientes con problemas como: coagulación
no controlada, alcoholismo, drogadicción, osteoporosis severa, artritis reumatoide y VIH (Virus
de Inmunodeficiencia Humana); no pueden ser sometidos al proceso de implantología. (La
Revista – El Universo, 2013)
a. Fase de intervención quirúrgica
La fase de intervención quirúrgica se realiza con anestesia dental y es indolora. La duración de
la intervención varía en función de la complejidad del caso. Consiste en enterrar el implante
dental (sustituir la raíz del diente) a nivel del hueso, pero por debajo de la encía, como se
muestra en la figura 2.25-a; brindando protección al implante de fuerzas que se ejerzan en la
cavidad bucal.
31
b. Fase de cicatrización
Una vez que se ha colocado el implante, empieza la fase de cicatrización, donde el hueso se
regenerará alrededor del implante sin presentar dolor. Esta fase se denomina oseointegración, y
es sumamente necesaria para soportar la colocación de la corona y asegurar una total
estabilidad. El tiempo promedio de cicatrización es de 3 meses, claro está, que todo dependerá
del cuidado que el paciente tenga durante esta fase. Luego de cerciorar la correcta
oseointegración, el especialista procede a colocar el pilar del implante, como se muestra en la
figura 2.25-b. Investigaciones han demostrado que a menudo es factible colocar el implante y el
pilar al mismo tiempo.
c. Fase protésica
Es la fase final del tratamiento, en la cual se procede a fabricar una prótesis (corona) a partir de
las especificaciones de la pieza dental, para luego fijar la prótesis al implante por medio del
pilar, como se muestra en la figura 2.25-c. (Biotech-dental, 2018)
(a) (b) (c)
Figura 2.25 Fases de colocación del implante: (a) fase de intervención quirúrgica (b) fase de cicatrización
(c) fase protésica (Implantesdentaleswtc.com, s.f.)
32
CAPITULO III
3. MARCO METODOLÓGICO
El presente proyecto está enfocado en la utilización e introducción de los avances tecnológicos
en el área de la odontología, a través del uso de RA, haciendo énfasis en el área de Implantes
Dentales, lo cual permite cambiar la forma tradicional de ver resultados finales de los
tratamientos de implantología dental por parte de los pacientes. Esta propuesta se hace relevante
debido a que en la actualidad las aplicaciones basadas en RA son escasas en el área de la
odontología.
A fin de obtener un producto con estándares de alto valor, se procede a dividir el desarrollo del
proyecto, entre un parte de tipo técnica y otra de diseño, priorizando aspectos como: la
iteratividad y el fácil manejo de la aplicación, respectivamente; para que el usuario pueda
disponer de una aplicación innovadora y concisa al momento de solventar el problema a ser
resuelto.
Para el desarrollo de la aplicación se hizo uso de metodologías ágiles; la primera mezcla valores
y prácticas de Ingeniería de Desarrollo de Software, la denominada XP (eXtreme
Programming); mientras la segunda está orientada al diseño de interfaces centrados en el
usuario, llamada UX (User Experience). Donde dichas metodologías se ajustan de mejor manera
que otras con las exigencias de este proyecto, teniendo en consideración que ciertas fases de las
metodologías elegidas se han modificado según la necesidad del proyecto, puesto que ambas
metodologías no están orientadas a proyectos de esta índole. (Utiel, 2013)
3.1. METODOLOGÍA XP
La metodología XP (eXtreme Programming) aparece como una nueva alternativa para el
desarrollo de proyectos, basada en la simplicidad y agilidad. Las metodologías de desarrollo de
software tradicionales como: modelo en cascada, como muestra la figura 3.1-a, iterativo como
muestra la figura 3.1-b, entre otros, aparecen comparados con los nuevos métodos propuestos en
XP, como muestra la figura 3.1-c, como pesados y poco eficientes (Joskowicz, 2008).
XP es una de las llamadas metodologías ágiles de desarrollo de software más exitosas de los
últimos años. La metodología propuesta en XP está diseñada para entregar el software que los
clientes necesitan en el momento en que lo necesitan. XP alienta a los desarrolladores a
responder a los requerimientos cambiantes de los clientes, aún en fases avanzadas del ciclo de
33
vida del desarrollo. (Karlstroem, 2002). La metodología XP define cuatro variables para
cualquier proyecto de software: costo, tiempo, calidad y alcance (Joskowicz, 2008).
Figura 3.1 Evolución de los ciclos de desarrollo: (a) en cascada (b) ciclos iterativos (c) mezcla que hace
XP. (Calderón & Valverde, 2007)
3.1.1. Ciclo de vida de un proyecto XP
El ciclo de vida de un proyecto XP es semejante al de otras metodologías existentes, pues todas
constan de fases imprescindibles como: planificación, organización, dirección y control. El ciclo
de vida de todo proyecto realizado con la metodología XP se detalla en la figura 3.2.
Figura 3.2 Ciclo de vida de un proyecto XP.
Sin embargo, XP propone un ciclo de vida dinámico, donde se admite expresamente que, en
muchos casos, los clientes no son capaces de especificar sus requerimientos al comienzo de un
proyecto. Por eso, se trata de realizar ciclos de desarrollo cortos (llamados iteraciones), con
entregables funcionales al finalizar cada ciclo. (Yolanda, 2013)
Entender lo que el
cliente necesita
Estimar el
esfuerzo
Crear la
solución
Entregar el
producto
34
3.1.2. Roles XP
Según la metodología establecida por Beck, se propone los siguientes roles para organizar
quienes realizan cada una de las actividades a realizar en la elaboración de un proyecto, tal
como se puede apreciar en la tabla 3.1.
Roles Concepto
Cliente Determina los requerimientos del sistema
Programador Responsable de la creación del sistema
Encargado de pruebas (tester) Ejecuta las pruebas de funcionamiento del
sistema
Encargado de seguimiento
(tracker)
Verifica el grado de acierto entre las
estimaciones realizadas y el tiempo real
dedicado.
Tabla 3.1 Roles de la metodología XP
3.1.3. Fases de la metodología XP
La metodología XP consta de un conjunto de reglas y prácticas para su desarrollo que se pueden
agrupar en fases o etapas, lo podemos evidenciar en la figura 3.3.
Figura 3.3 Fases de la metodología XP
3.2. FASE DE PLANIFICACIÓN
En esta fase del desarrollo del proyecto se especifican los requerimientos de la aplicación, es
decir lo que el sistema debe realizar, en otras palabras, todas las funciones que debe ejecutar.
Por lo tanto, la captura de los requerimientos tiene un objetivo primordial, pues permite la
compresión de lo que los usuarios esperan que realice el sistema. Además, para el cumplimiento
de todos los requerimientos de la aplicación se debe tener en cuenta, los alcances del proyecto.
(Letelier, 2006)
Fase 1:
Planificación
Fase 2:
Diseño
Fase 3:
Desarrollo
Fase 4:
Pruebas
35
Tomando en consideración los aspectos generales de la aplicación y basados en los objetivos
planteados para el proceso de elaboración y uso de la misma, se han identificado los siguientes
requerimientos:
3.2.1 Requerimientos de la Aplicación
Desarrollar una aplicación para dispositivos móviles con sistema operativo Android, se
ha optado por desarrollar la aplicación móvil en este sistema operativo puesto que
estudios de opinión realizados en Ecuador reflejan que más del 58 % de las personas
cuentan con este sistema operativo en sus smartphones. (Zak, 2014)
En vista que la aplicación es de uso libre, se requiere que su desarrollo sea de bajo
costo, por lo tanto, se considerara para su desarrollo herramientas de bajo costo o
gratuitas.
Establecer las especificaciones que los marcadores a ser utilizados deben cumplir, para
así lograr que el módulo de Realidad Aumentada de la aplicación permita visualizar los
objetos 3D sin ningún inconveniente.
Optar por un nuevo tipo de marcador, diferente a los convencionales (imágenes en
blanco y negro), con el objetivo de hacer más dinámica la aplicación y eliminar la
dependencia que el usuario tiene con los marcadores de papel.
Tener un correcto método de elaboración del software, dicha realización deberá estar
formada de varios paquetes (assets), los mismos que contendrán: imágenes, clases del
proyecto, etc. Permitiendo llevar una buena estructura de los datos en caso de
recodificación del mismo.
Crear un diseño de interfaz gráfica intuitiva y fácil de manejar para la aplicación,
considerando que la aplicación estará dirigida especialmente al sector de la salud, por lo
cual la aplicación tendrá un diseño minimalista; basado en la utilización de tonos
monocromáticos del color azul, el cual está estrechamente relacionado con la salud.
3.3. FASE DE DISEÑO
Para el desarrollo de esta fase se ha considerado utilizar la metodología UX (User Experience),
puesto que hace énfasis en los diseños simples, claros y funcionales. Además, es muy eficiente
en los diseños de interfaces gráficas, pues permite seleccionar ideas que se consideren
importantes para el usuario, captando sus necesidades para así definir el producto que se quiere
elaborar y con estas especificaciones crear la aplicación. Considerando que UX es un facilitador
natural, que permite controlar las dinámicas y técnicas del mundo ágil, enfocado en las
36
priorizaciones de la aplicación y a su vez especificando de manera clara las cosas que esta debe
realizar. (Montero, 2015). Las características más importantes en el desarrollo de aplicaciones
basadas en la metodología UX son evidenciadas en la siguiente figura 3.4.
Figura 3.4 Características de la metodología UX
a. Usabilidad
Debe solucionar específicamente un problema. En el caso de la aplicación, ésta mostrará una
vista previa del resultado final del tratamiento de implante dental.
b. Simplicidad
El diseño debe ser simple, para que el usuario no se desoriente dentro de ella, y de esta forma se
proporcione al usuario lo que necesita en un momento determinado.
c. Consistencia
Todos los miembros de la aplicación deben ser homogéneos, en otras palabras, todas las
interfaces gráficas de la aplicación deben ceñirse a un mismo estilo de diseño.
d. Navegación intuitiva
El esquema de diseño debe ser amigable para que el usuario sepa usar la aplicación sin la
necesidad de uso de manuales. En pocas palabras, la misma debe ser fácil de manejar.
Tomando en consideración los conceptos mencionados anteriormente, se ha procedido al diseño
de la aplicación basada en Realidad Aumentada para dispositivos móviles; la cual se denomina
ImplantAR, haciendo referencia a las palabras: Implante (Implant) y Realidad Aumentada (AR).
3.3.1 Diseño minimalista
El minimalismo es un estilo artístico originado en Estados Unidos aproximadamente en la
década de los años cincuenta. Este estilo es utilizado de manera frecuente en el diseño gráfico,
diseño industrial, pintura, escultura, entre otras disciplinas, por prescindir de elementos
Usabilidad Simplicidad Consistencia Navegación
intuitiva
37
innecesarios, dejando únicamente lo fundamental del diseño a representar, es por eso que el
lema de este estilo es: “más con menos”. (Baño & Fierro, 2016)
El minimalismo elimina detalles excedentes de los objetos, pues lo fundamental es volver a lo
esencial; para lo cual utiliza colores planos y puros, así como formas sencillas (principalmente
formas geométricas) para la simplificación de elementos, como muestra la figura 3.5 (García
Reyes, 2012)
Figura 3.5 Ejemplo de diseño minimalista (elefantegrafico.com, s.f.)
a. Características del diseño minimalista
Para lograr un diseño minimalista correcto es indispensable tener en cuenta las siguientes
características.
Simplicidad: evitar elementos distractores.
Contraste: es aconsejable utilizar colores fuertes con colores neutros para lograr el
contraste, para llamar más la atención del usuario.
Diseño responsive: debe adaptarse a todo tamaño de pantalla.
La paleta de color: utilizar una paleta de colores limitada, de preferencia colores
monocromáticos y planos. (Info.netcommerce.mx, s.f.)
3.3.2 Arquitectura de la aplicación
El esquema de funcionamiento de la aplicación es el siguiente: la aplicación captura la imagen
de la cavidad bucal del usuario (la cual será utilizada como marcador), mediante la cámara del
dispositivo móvil. Luego, determinará si la imagen capturada es válida o no, de ser no válida se
le pedirá que realice una nueva captura. Si la imagen es válida se deducirá la localización y
orientación de la cámara para poder añadir el objeto 3D de la pieza dental correspondiente del
maxilar superior; la cual se proyectará en la pantalla del dispositivo móvil. Ver figura 3.6.
38
Figura 3.6 Arquitectura de la aplicación ImplantAR. (Siltanen, 2012)
3.3.3 Esquema de navegación de la aplicación
La aplicación móvil se ha desarrollado en el IDE Unity (Integrated Development Environment,
IDE), por lo tanto, cada pantalla de la misma será manejada como una escena diferente,
tomando en cuenta estas consideraciones, el esquema de navegación será el siguiente y se
evidencia en la figura 3.7.
Escena 1: contiene el menú de inicio de la aplicación.
Escena 2: contiene información sobre la aplicación y sus desarrolladores.
Escena 3: contiene el menú de las piezas dentales
Escena 4: implementa la RA para los dientes incisivos centrales del maxilar.
Escena 5: implementa la RA para los dientes incisivos laterales del maxilar.
Escena 6: implementa la RA para los dientes caninos del maxilar.
39
Figura 3.7 Esquema de navegación de la aplicación
3.3.4 Creación de los modelos de las piezas dentales
Para la creación de las piezas dentales, en la figura 3.8 se detalla el proceso a seguir con el fin
de obtener los modelos de las diferentes piezas dentales.
Figura 3.8 Esquema para la creación de los modelos de las piezas dentales
Obtención de las imágenes
referenciales
Modelado por caja
(box modeling)
Esculpido Suavizado
Mapeo UVPintado
(body paint)
40
3.3.5 Herramientas de software
Para el desarrollo de la aplicación se hizo uso de las siguientes herramientas, tomando en cuenta
uno de los requerimientos de la aplicación: tener un bajo costo. Es por esta razón que se empleó
para la creación de los modelos 3D, el software Cinema 4D, el cual, en su versión estudiantil,
brinda una licencia gratuita.
a. Cinema 4D (cuatro dimensiones)
Se ha optado por seleccionar esta herramienta de modelado 3D debido a su licencia gratuita, en
su versión estudiantil, además por la familiarización que se tiene con el uso de la misma y por
su fácil integración con el resto de software que se va a utilizar para el desarrollo de la
aplicación móvil.
A continuación, se procede a realizar una tabla comparativa entre las herramientas de modelado
y animación de mayor uso en el mercado.
Característica Blender Maya 3DS Max Cinema 4D
Licencia Código abierto Propietario Propietario Propietario
Sistema
Operativo
Windows,
Linux, Mac
Windows,
Linux, Mac
Windows Windows, Mac
Interfaz Flujo de trabajo
rápido, bastante
intuitivo
Limpio e
intuitivo
Estilo CAD,
limpio
Intuitivo y fácil de
entender
Requerimientos
de hardware
32-bit Dual-
core 2Ghz CPU.
64-bit multi-
core.
64-bit multi-
core.
32 y 64-bit CPU.
2 GB RAM.
8 GB RAM. 4 GB RAM. 4 GB RAM.
200 MB en
espacio en
disco.
4 GB espacio en
disco.
6 GB espacio
en disco.
4.1 GB de espacio
en disco.
Tabla 3.2 Comparación de software de modelado 3D.
De la tabla 3.2, se concluye que el inmediato competidor de Cinema 4D es Blender por las
características descritas; sobre todo en cuanto a los requerimientos de hardware, pero se ha
optado por Cinema 4D debido a la familiarización que se tiene con la herramienta.
41
b. Kits de Desarrollo de Software (Software Development Kit, SDK)
b.1 ARCore
Es la plataforma de Google para construir experiencias de RA, la cual, utilizando diferentes
APIs (Application Programming Interface) permite que el teléfono detecte su entorno,
comprenda el mundo e interactúe con la información.
ARCore utiliza tres funcionalidades para integrar el contenido virtual con el mundo real, tal
como se ve a través de la cámara del teléfono:
Tracking: permite que el teléfono comprenda y rastree su posición relativa al mundo.
Entendimiento ambiental: permite que el teléfono detecte el tamaño y la ubicación de
todo tipo de superficies, superficies horizontales, verticales y en ángulo como el suelo,
una mesa de café o paredes.
Estimación de luz: permite que el teléfono calcule las condiciones de iluminación
actuales del entorno.
Fundamentalmente, ARCore hace dos cosas: rastrear la posición del dispositivo móvil mientras
se mueve y desarrollar su propia comprensión del mundo real. La tecnología de seguimiento de
movimiento de ARCore usa la cámara del teléfono para identificar puntos interesantes, llamados
puntos clave, y rastrea cómo esos puntos se mueven con el tiempo. Con una combinación del
movimiento de estos puntos y las lecturas de los sensores de inercia del teléfono, ARCore
determina tanto la posición como la orientación del teléfono a medida que se desplaza por el
espacio.
Además de identificar los puntos clave, ARCore puede detectar superficies planas, como una
mesa o el piso, y también puede estimar la iluminación promedio del medio en el que se
encuentre. Estas capacidades se combinan para permitir que ARCore cree su propia
comprensión del mundo que le rodea. (ARCore developers site, 2018)
b.2 ARToolkit
Es un conjunto de librerías desarrolladas por Hirokazu Kato y Mark Billinghurst en 1998,
escrita en lenguaje C. ARToolKit utiliza técnicas de visión por computadora para calcular la
posición real de la cámara y la orientación relativa a los marcadores, lo que permite al
programador superponer objetos virtuales sobre los marcadores. Esto lo hace gracias a la API de
OpenGL. (Kato H., Billinghurst M. & Poupyrev I., 2000)
El tracking de ARToolkit funciona de la siguiente manera:
42
La cámara captura el video del mundo real y lo envía a la computadora.
El software busca en cada frame (fotograma) del video el marcador.
Si se detecta el marcador, mediante algoritmos se calcula la posición relativa de la
cámara con respecto al cuadrado.
Una vez que se tiene la posición de la cámara, se dibuja un modelo gráfico
El modelo gráfico es dibujado sobre el video del mundo real.
Finalmente se presenta en el dispositivo de video. (Rodríguez, 2011)
La característica principal es el uso de marcadores con un grueso marco negro en el borde, para
facilitar la identificación, y así extraer fácilmente los seis grados de libertad (6DOF) necesarios
para el cálculo de la posición del marcador con respecto a la cámara. (Sánchez Riera, 2013)
b.3 Vuforia
Permite construir aplicaciones para dispositivos móviles y dispositivos HMD como los
HoloLens de Microsoft, las aplicaciones pueden ser construidas con Android Studio, Xcode,
Visual Studio y Unity. Está formada por tres componentes principales:
Motor de Vuforia: es la biblioteca de lado del cliente, está disponible a través del SDK
del cliente.
Herramientas: provee herramientas para crear targets, manejar base de datos de targets
y obtención de licencias para la aplicación.
Vuforia Model Target Generator: permite generar targets de un modelo 3D o de un
objeto físico.
Vuforia Object Scanner: ayuda a escanear fácilmente objetos 3D dentro de un formato
target.
Target Manager: es una aplicación web que permite crear base de datos de targets.
Servicio de reconocimiento en la nube: Vuforia ofrece este servicio cuando la
aplicación necesita reconocer un gran número de imágenes o si la base de datos es
frecuentemente actualizada.
Vuforia permite el uso de varios tipos de target para la implementación de RA entre los que
se tiene:
Cylinder Targets: permite colocar contenido RA en objetos con forma cilíndrica y
cónica, como latas de refrescos, botellas y tubos son excelentes candidatos.
43
Image Targets: permite colocar RA en objetos planos, como páginas de revistas,
fotografías.
Model Targets: permite reconocer objetos por su forma utilizando modelos 3D pre
existente, se puede colocar contenido RA en equipos industriales, vehículos, juguetes.
Multi Targets: permite reconocer objetos con superficies planas y múltiples lados, o que
contienen múltiples imágenes, por ejemplo: empaques de productos, murales.
Object Targets: se crean escaneando un objeto, son una buena opción para juguetes y
otros productos con muchos detalles de superficie y forma consistente.
VuMarks: permite identificar y agregar contenido a una serie de objetos, por ejemplo:
maquinaria, inventarios. (Vuforia Developer site, 2018)
A continuación, se procede a realizar una tabla comparativa entre los SDK mencionados.
Características ARCore ARToolkit Vuforia
Licencia Libre Libre Libre
Uso de marcadores No Si Si
Tipo de targets Objetos Imagen Imagen, objetos
Tracking Si No Si
Uso de sensores GPS, acelerómetro No Acelerómetro
Formatos 3D OpenGL .obj OpenGL
Multiplataforma Java, OpenGL,
Unity, Unreal
Android, Java, C#,
C++
Android, iOS,
Unity
Documentación Completa Completa Completa
Soporte a
desarrolladores
Si mediante API No Si mediante API
En desarrollo Si Si Si
Comunidad de
desarrolladores
Si Si Si
Tabla 3.3 Resumen de las características de los SDK analizados.
De la tabla 3.3, se concluye que el SDK ideal para la implementación de la RA está íntimamente
relacionado con las características de la aplicación a construir, ya sea el uso de marcadores de
tipo imagen, marcadores de tipo objeto o el uso de sensores.
Puesto que la aplicación va a ser desarrollada en Unity, se ha optado por el SDK de Vuforia,
debido a las características descritas en la tabla 3.3, y por su inmediata integración con Unity.
c. Unity
Se ha seleccionado el motor de desarrollo de contenidos 3D Unity, por la gratuidad en su
licencia para el desarrollo de proyectos estudiantiles y por su característica más importante; ser
44
multiplataforma; es decir, brinda la oportunidad de exportar el trabajo final a diferentes
plataformas como, por ejemplo: plataformas móviles, de escritorio, de consola, televisión y
web. Además, se ha optado por Unity debido a la fácil integración que tiene con Vuforia para la
implementación de la RA.
3.4. FASE DE DESARROLLO
En esta fase se realiza el proceso de interpretar el diseño a código. Es la parte más importante de
la Ingeniería de Software, ya que en esta fase se obtienen resultados “palpables”. Además, se
debe tener en cuenta que no necesariamente es la fase más larga, ni la más compleja. Aunque un
diseño incompleto o ambiguo puede requerir que tareas propias de fases anteriores se tengan
que volver a realizar. (Martínez, Gutiérrez, Albarrán & Rodríguez, 2016)
3.4.1 Creación de los modelos de las piezas dentales
El software elegido para la creación de las piezas dentales es Cinema 4D, a continuación, se
procede a detallar el proceso que se ha implementado para la creación de las piezas dentales.
a. Obtención de las imágenes referenciales
Obtención de imágenes referenciales de los dientes incisivos centrales, laterales y
caninos, como muestran las figuras 3.9, 3.10 y 3.11.
Configuración del visor de Cinema 4D: para la importación de las imágenes
referenciales en cada una de las vistas que Cinema 4D ofrece: superior, inferior, frontal,
posterior, lateral derecha y lateral izquierda.
(a) (b) (c) (d) (e)
Figura 3.9 Morfología del diente incisivo central lateral superior izquierdo: (a) cara vestibular (b) cara
lingual (c) cara distal (d) cara mesial (e) cara incisal (Figún & Garino, 1978)
45
(a) (b) (c) (d) (e)
Figura 3.10 Morfología del diente incisivo central lateral superior izquierdo: (a) cara vestibular (b) cara
lingual (c) cara distal (d) cara mesial (e) cara incisal (Figún & Garino, 1978)
(a) (b) (c) (d) (e)
Figura 3.11 Morfología del diente canino superior izquierdo: (a) cara vestibular (b) cara lingual (c) cara
distal (d) cara mesial (e) cara incisal (Figún & Garino, 1978)
b. Modelado por caja (box modeling)
Para el modelado de las piezas dentales, se hizo uso de un objeto primitivo de Cinema 4D, un
cubo, a partir del cual se procede a añadir geometrías, ya sean: puntos o aristas para que el
modelo obtenga volumen y detalles propios del mismo.
Para lograr los modelos por caja, se emplearon las siguientes herramientas:
Seccionar: permite dividir los polígonos para crear más segmentos y así obtener mayor
control sobre la malla del modelo.
Fundir: permite reducir el número de polígonos que conforman el objeto, para de esta
forma optimizar el número de polígonos que conforman el modelo.
46
Pieza
dental
Vista en
perspectiva
Vista frontal Vista lateral
izquierda
Vista inferior
Canino
Incisivo
central
Incisivo
lateral
Tabla 3.4 Proceso de modelado por caja.
c. Suavizado
Una vez que se tiene el modelo por caja, se procede a suavizarlo, es decir, realizar una
subdivisión de la malla del modelo (volver a dividir la malla) para de esta forma; lograr que el
modelo se asemeje al objeto real.
Para lograr el suavizado de los modelos, se empleó la siguiente herramienta:
HyperNURBS: permite suavizar el modelo; para asemejarlo al objeto real.
Pieza
dental
Vista en
perspectiva
Vista frontal Vista lateral
izquierda
Vista inferior
Canino
47
Incisivo
central
Incisivo
lateral
Tabla 3.5 Resultados del proceso de suavizado con HyperNURBS
d. Esculpido
Una vez que el proceso de modelado ha terminado, se procede a usar el módulo de esculpido
(sculpting) que ofrece Cinema 4D. El cual convierte la malla del modelo en “arcilla digital”;
para poder generar la mayor cantidad de detalles, por ejemplo: escotaduras y surcos de los
dientes.
Para esculpir los modelos, se emplearon las siguientes herramientas:
Pincel cortar: utilizado para crear pliegues en la malla.
Pincel inflar: utilizado para hinchar la malla.
Pincel suavizar: utilizado para suavizar la malla.
Pieza
dental
Vista en
perspectiva
Vista posterior Vista lateral
izquierda
Vista inferior
Canino
Incisivo
central
48
Incisivo
lateral
Tabla 3.6 Resultados del proceso de esculpido con uso de pinceles de Cinema 4D.
e. Mapeo UV
Una vez que el proceso de esculpido ha terminado, se procede a realizar el mapeo del modelo; el
cual permite proyectar la textura 2D sobre el modelo 3D (se utilizan u y v para evitar
confusiones con las coordenadas (x, y, z) del modelo). Esto se lo realiza mediante el proceso de
mapeo UV que ofrece Cinema 4D, el cual asigna a cada punto 3D del modelo un par de
coordenadas 2D de la textura. Este proceso establece dónde debe situarse la textura sobre el
modelo 3D a la hora de proyectarse.
Para el mapeo UV de las piezas dentales se generaron seis vistas de los modelos (frontal,
posterior, superior, inferior, lateral izquierda y lateral derecha) para obtener un correcto
texturizado; y así evitar problemas como el estiramiento de la textura.
Pieza
dental
Vista frontal Vista posterior Vista lateral
izquierda
Textura
Canino
Incisivo
central
49
Incisivo
lateral
Tabla 3.7 Mapas de coordenadas UV para el proceso de texturizado
f. Pintado (body paint)
Una vez que el proceso de mapeo UV ha terminado, es decir, se ha generado el mapa de
coordenadas UV, se procede a pintar la textura del modelo según sean sus respectivas
características; para lo cual se hace uso del módulo de Body Paint que Cinema 4D ofrece.
El pintado del modelo se logra gracias al uso de la herramienta pincel, la cual; dependiendo del
tipo a usar, ofrece mayor o menor cantidad de detalles al momento de pintar el modelo.
Pieza
dental
Vista en
perspectiva
Vista posterior Vista lateral
izquierda
Vista inferior
Canino
Incisivo
central
Incisivo
lateral
Tabla 3.8 Resultado final del proceso de modelado
50
3.4.2 Generación de recursos gráficos para la interfaz gráfica de usuario
Tal como se menciona en el capítulo 3.3.1, características como: simplicidad, diseño responsive
y una adecuada elección de la paleta de colores (para lo cual se ha escogido tonos
monocromáticos del color azul) contribuyen a un adecuado diseño minimalista. Considerando
dichas características se han elaborado los recursos gráficos que usará la aplicación, y se
muestran a continuación.
Recurso Gráfico Descripción
Ilustraciones a utilizarse como
botones de la aplicación.
Ilustración que permite al
usuario conocer el modo de uso
de la aplicación.
51
Ilustración que proporciona
información sobre el proceso de
implantología.
Ícono de la aplicación.
Tabla 3.9 Recursos gráficos de la aplicación
3.4.3 Especificaciones de los marcadores
Tal como se menciona en los capítulos 2.4 y 2.5, las características más relevantes que un
marcador debe poseer para que al momento de aumentar la realidad y de realizar el tracking no
presente inconvenientes son: imágenes en blanco y negro, generalmente cuadradas, con dibujos
sencillos y asimétricos. Estas propiedades funcionan adecuadamente para marcadores que
poseen dimensiones iguales o superiores a 3 x 3 cm; dato obtenido de la experimentación del
uso de los marcadores de nivel “1”. Para marcadores con dimensiones inferiores a 3x3 cm, la
cámara del dispositivo móvil ya no puede detectar al marcador y en consecuencia el módulo de
RA no se puede implementar.
Es por ello que el uso de marcadores de tipo nivel “1” no es el adecuado para el desarrollo de la
aplicación; ya que se necesitaría aproximadamente de un marcador de 0.5 x 0.5 cm para
implementar la Realidad Aumentada. Por lo tanto, se ha optado por el uso de marcadores del
52
nivel “2” del capítulo 2.4.1 para el desarrollo de la aplicación. Los cuales deben cumplir las
siguientes características:
Rico en detalles: por ejemplo; escena de calle, grupo de personas.
Buen contraste: presencia de regiones brillantes y oscuras.
No haya patrones: por ejemplo; tableros de ajedrez.
Para la captura del marcador, el usuario debe ubicar la cámara del dispositivo a una distancia
aproximada entre los 30 y 40 cm del rostro de la persona; para que el marcador pueda ser
reconocido y así evitar problemas con las características antes descritas.
Por lo general, en ambientes cerrados como: sala de espera, habitación, biblioteca, entre otros,
funcionan de manera adecuada. (Vuforia Developer site, 2018)
3.4.4 Implementación de la Realidad Aumentada
Una vez que el proceso de creación de un nuevo proyecto en Unity y su respectiva
configuración se haya realizado, se procede a explicar la conformación de la aplicación.
a. Preparación de la escena de RA
Una vez que se ha descargado el SDK de Vuforia y se ha generado la clave de licencia para
activar Vuforia (Ver Anexo B), se procede a importar el SDK de Vuforia a la escena de Unity.
Para lo cual se procede a arrastrar el paquete Vuforia-unity-6-2-10.unityeditor a la carpeta
Assets del proyecto, como muestra la figura 3.12-a, y se procede a importarlo.
Posterior a la importación de Vuforia, se sigue a activarlo, para lo cual se hace uso de la clave
de licencia generado anteriormente, para su activación; se edita el archivo ubicado en
Assets/Resources/VuforiaConfiguration en la parte App License Key, como muestra la figura
3.12-b.
53
(a) (b)
Figura 3.12 Implementación de Vuforia en el proyecto: (a) importación de Vuforia (b) uso de la clave de
licencia de la aplicación.
Luego, se prepara la escena para la identificación de los marcadores, para lo cual se elimina la
cámara por defecto que trae el proyecto, y se coloca en la escena el prefab de Vuforia:
ARCamera, ubicado en Assets/Vuforia/Prefabs, como muestra la figura 3.13-a.
Finalmente, se coloca el prefab ImageTarget en la escena, el cual permitirá la identificación del
marcador (mismo que debe cumplir las especificaciones descritas en el capítulo 3.4.3), el cual se
encuentra en la misma ruta de la ARCamera, tal como muestra la figura 3.13-b.
(a) (b)
Figura 3.13 Preparación de la escena: (a) utilización del prefab ARCamera (b) utilización del prefab
ImageTarget
54
b. Importación de elementos a la escena de RA
Los elementos que usa la aplicación han sido colocados en varias carpetas, como muestra la
figura 3.14, para mantener una correcta organización y así facilitar su empleo, las cuales se
describen a continuación:
Animaciones: contiene animaciones de la aplicación.
App: contiene todos los recursos (gráficos y de programación) que utiliza la aplicación.
Common: contiene scripts de ejemplo de Vuforia.
Editor: contiene material de apoyo Vuforia.
Escenas: contiene las escenas de la aplicación.
LeanTouch: contiene la librería par el reconocimiento de gestos en la pantalla.
Plugins: contiene archivos para el manejo multi-plataforma de Unity.
Resources: contiene elementos gráficos de los ejemplos de Vuforia.
SamplesResources: contiene escenas de ejemplo que brinda Vuforia.
StreamingAssets: contiene material de apoyo para trabajar online.
Vuforia: contiene las librerías que usa Vuforia.
Figura 3.14 Elementos de la aplicación
c. Elementos de la interfaz gráfica de usuario
Dentro de los elementos de la interfaz gráfica de usuario de la aplicación se encuentran: botones
e ilustraciones, como muestra la figura 3.15. Los cuales se importan de similar manera que el
SDK de Vuforia.
55
Figura 3.15 Elementos de la interfaz de usuario de la aplicación
Algo importante a tomar en cuenta a la hora de utilizar los elementos de la interfaz gráfica de
usuario, es que se debe configurarlos como tal. Para lo cual, una vez importados, se seleccionan
y en la ventana de Inspector en la parte Texture Type se coloca: Sprite (2D and UI) y en Sprite
Mode: Single.
d. Modelos 3D
Para la importación de los modelos, se procede de similar manera que los elementos de la
interfaz gráfica de usuario. Dichos modelos se encuentran organizados en sus respectivas
carpetas, como muestra la figura 3.16, los cuales tienen la extensión .fbx.
Figura 3.16 Organización de los modelos 3D dentro de la escena
56
Para lograr la integración de los modelos con el Image Target, basta con arrastrar y ubicar
adecuadamente el modelo dentro de su respectivo Image Target para su posterior visualización
en la aplicación, como muestra la figura 3.17.
Figura 3.17 Integración del modelo y su ImageTarget
3.4.5 Elección de la cámara del dispositivo
La aplicación permite al usuario elegir si utiliza la cámara frontal o la cámara posterior de su
dispositivo para la implementación de la RA. Esto lo consigue mediante un botón, como
muestra la figura 3.18, que está ligado a un script que se encarga de controlar el uso de la
cámara, lo que permite al usuario tener la disponibilidad de elegir qué cámara utilizar para
implementar la RA.
Figura 3.18 Botón que permite la elección de la cámara a usar
57
3.4.6 Captura de la imagen a usarse como marcador
Una vez que se ha establecido la cámara a utilizar, se procede a capturar la imagen que se
empleará como marcador, si la imagen no cumple las características establecidas en el capítulo
3.4.3, una ventana emergente se despliega y le indica al usuario que debe reconsiderar su
elección. Esto lo logra gracias a un botón, como muestra la figura 3.19, que se encuentra ligado
a un script que se encarga de capturar la imagen y establecer si cumple o no las características
establecidas anteriormente.
Figura 3.19 Botón que permite capturar o no la imagen que servirá como marcador
3.4.7 Manejo de gestos para ubicar adecuadamente el modelo
Para lograr mayor control sobre el modelo una vez que se haya reconocido el marcador, se
implementa el manejo de gestos en la pantalla del dispositivo, lo que permite escalar el modelo
(haciendo uso de dos dedos) y trasladar el modelo (haciendo uso de un dedo). Estas
funcionalidades se logran gracias al uso de la librería LeanTouch, la cual permite implementar
el reconocimiento de los gestos para escalar y trasladar el modelo.
Se recomienda seguir el siguiente orden: primero escalar y luego trasladar, pues es el orden en
el que actúan las respectivas matrices de transformaciones geométricas (escalar, trasladar y
rotar), para el renderizado en pantalla.
58
3.4.8 Interactividad de la aplicación
La interactividad en la aplicación se la consigue de la siguiente manera:
Recurso Descripción
Posibilidad de visualizar el implante y
el paladar, lo cual se consigue
mediante el uso de un botón que se
encarga de activar o desactivar la
visibilidad de los elementos
anteriormente mencionados.
Posibilidad de manejar la
transparencia del paladar, lo cual
permite observar el pilar y el tornillo
del implante. Esto se logra gracias a
un botón que se encarga de cambiar el
material del paladar.
Posibilidad de visualizar el respectivo
diente simétrico, lo cual permite
observar y contrastar el implante y el
diente natural. Esto se logra gracias a
un botón que activa o desactiva la
visualización del diente simétrico.
Posibilidad de observar el implante en
su totalidad, esto se consigue gracias a
un botón que controla la animación del
implante.
Tabla 3.10 Elementos de interactividad de la aplicación
59
3.4.9 Captura de pantalla (screenshot) del resultado final y posibilidad de compartir dicha
captura
Una vez que se visualiza el respectivo modelo, el usuario tiene la posibilidad de realizar una
captura de pantalla del resultado final y poder compartir dicha captura con otras personas, a
través de aplicaciones como: Facebook, WhatsApp o correo, entre otras. Esto se logra a través
de un botón, como muestra la figura 3.24, el cual está ligado a un script que se encarga de
realizar lo anteriormente descrito. De ser el caso en que el usuario no desee compartir dicha
captura, la puede encontrar en el siguiente directorio:
Android/data/com.implantAR.implantAR/Files con el nombre ‘captura de pantalla’.
Figura 3.20 Botón que permite la captura de pantalla y compartir dicha captura
3.4.10 Programación
La programación de las diferentes funcionalidades se ha llevado a cabo utilizando el lenguaje
C#, a continuación, se procede a presentar el esquema UML (Lenguaje Unificado de Modelado)
como muestra la figura 3.25, con las clases más representativas de la aplicación.
En el anexo A se describe de manera más detallada algunas de las clases que conforman el
proyecto.
60
Figura 3.21 Diagrama de las clases que conforman la aplicación
61
a. DefaultTrackableEventHandler
Es la clase encargada de establecer los métodos a ejecutarse una vez que se haya reconocido y
perdido de vista el ImageTarget a usarse como marcador (ver imagen 3.26), entre los cuales se
tiene:
OnTrackingFound(): es el encargado de activar el renderizado de todos los elementos
gráficos que emplee la escena (modelos 3D, paneles, botones, etc.), una vez que se haya
reconocido el marcador.
OnTrackingLost(): es el encargado de desactivar el renderizado de todos los elementos
gráficos que emplee la escena, una vez que se haya perdido la visualización del
marcador.
Figura 3.22 Métodos de la clase DefaultTrackableEventHandler
62
b. CameraSwap
Es la clase que permite al usuario elegir qué cámara del dispositivo va a utilizar la aplicación
para implementar la RA, lo consigue gracias a los métodos OnCameraChangeMode y
RestartCamera (como muestra la figura 3.27), los cuales se explican a continuación:
OnCameraChangeMode(): establece qué cámara está utilizando el dispositivo en ese
momento y la cambia por la otra de ser el caso. Se lo consigue gracias al uso de una
variable boolean que establece por defecto que, al momento de iniciar la aplicación, la
cámara frontal estará desactivada.
RestartCamera(): desactiva la cámara que se está usando en ese momento e inicializa
la otra cámara a usarse.
Figura 3.23 Métodos de la clase CameraSwap
c. Manejo_color
Es la clase que permite manejar la transparencia de la textura del modelo del paladar, su
principal método se detalla a continuación:
Manejo_transparencia(): cambia la textura del paladar dependiendo de si su respectivo
botón está presionado o no, lo cual se consigue con una variable tipo boolean. El
cambio de textura se realiza mediante el cambio de material del modelo. (ver figura
3.28)
63
Figura 3.24 Método manejo_transparencia
d. ScreenShotShare
Es la clase encargada de almacenar y compartir la captura de pantalla que el usuario realice,
mediante la corrutina (función que puede pausar su ejecución por determinado tiempo y luego
continuar ejecutándose donde se quedó) ShareScreenShot (como muestra la figura 3.29) que se
explica a continuación:
ShareScreenShot(): realiza la captura de pantalla mediante la función interna
CaptureScreenShot, luego almacena dicha captura en el dispositivo a través del método
putExtra() el cual especifica la dirección donde debe guardarse la captura de pantalla (el
cual es: Android/data/com.implantAR.implantAR/Files con el nombre ‘captura de
pantalla’). Finalmente, la variable jChooser permite crear una ventana emergente donde
se visualizarán las aplicaciones disponibles del dispositivo para compartir la captura de
pantalla realizada.
Figura 3.25 Método ShareScreenShot
64
e. Selección_tornillo
Es la clase que permite mostrar u ocultar los modelos de: pilar, tornillo y paladar, su principal
método se detalla a continuación:
Mostrar_tornillo(): permite mostrar u ocultar los modelos anteriormente mencionados,
mediante el uso de una variable tipo boolean, que indica si su respectivo botón fue
presionado o no. (ver figura 3.30)
Figura 3.26 Método mostrar_tornillo
65
CAPÍTULO IV
4. RESULTADOS Y PRUEBAS
4.1. RESULTADOS
Terminada en su totalidad la fase de desarrollo y habiendo cumplido con total éxito los
requerimientos planteados en el capítulo 3.2.1 se ha obtenido como resultado final la aplicación
denominada ImplantAR. A continuación, se muestra la ejecución de la aplicación en el
dispositivo móvil Samsung Galaxy Grand Prime Duos, el cual cuenta con Android 5.1.1
Lollipop. En la figura 4.1 se observa el caso de una persona la cual presenta la pérdida de las
siguientes piezas dentales: incisivo central derecho, incisivo lateral derecho e izquierdo. Para lo
cual es necesario seleccionar dichos casos en el menú de piezas dentales.
Figura 4.1 Caso de pruebas: perdida de varias piezas dentales
En la figura 4.2 se observa la pieza dental (incisivo central derecho) ubicada en el lugar que le
corresponde (para lo cual se hace uso de gestos por pantalla para trasladar y escalar la pieza
dental) y con un color semejante al resto de piezas dentales, después de haber creado el
marcador (capturado la fotografía) con las características mencionadas en el capítulo 3.4.3.
66
Figura 4.2 Funcionalidad que permite personalizar el color de la pieza dental
En la figura 4.3 se observa en uso la funcionalidad que permite mostrar el modelo del paladar y
el menú emergente de opciones del implante. En la figura 4.4 se aprecia el uso de la
funcionalidad que permite visualizar información sobre el proceso de colocación del implante,
cuidados y características del diente.
Figura 4.3 Funcionalidad que permite visualizar el paladar y resto de opciones
67
Figura 4.4 Información sobre el proceso de colación del implante
En la figura 4.5 se aprecia el uso de la funcionalidad que permite capturar y compartir la imagen
a través de los servicios de mensajería como: Facebook, WhatsApp, Gmail, entre otros; según la
disponibilidad de estas aplicaciones en el dispositivo móvil a utilizarse.
Figura 4.5 Funcionalidad que permite capturar y compartir la imagen
En la figura 4.6 se observa el uso de la opción que permite activar o desactivar la transparencia
del paladar, para que de esta manera se pueda observar la totalidad del implante.
68
Figura 4.6 Funcionalidad que permite manejar la transparencia del paladar
En la figura 4.7 se aprecia el uso de la opción que permite mostrar u ocultar el diente simétrico
respectivo. Con esto se logra realizar el contraste entre el implante y el diente natural.
Figura 4.7 Visualización del incisivo central derecho
69
La figura 4.8 muestra el uso de la opción que permite visualizar al implante en su totalidad.
Luego, en la figura 4.9 se aprecia el uso de la funcionalidad que permite visualizar información
sobre las partes del implante.
Figura 4.8 Visualización del implante
Figura 4.9 Visualización de información del implante
Finalmente, en las figuras 4.10, y 4.11 se observa una primera vista del resultado final del
proceso de implantología de las piezas dentales: incisivo lateral derecho e izquierdo.
70
Figura 4.10 Visualización del incisivo lateral derecho
Figura 4.11 Visualización del incisivo lateral izquierdo
71
4.2. PRUEBAS
Antes de realizar la publicación de la aplicación en la tienda Google Play Store, se ejecutan
pruebas de rendimiento de la aplicación en varios dispositivos con sistema operativo Android,
con la finalidad de verificar su óptimo funcionamiento o posibles problemas. Para lo cual se ha
establecido la siguiente escala de valoración:
Buena: la aplicación se ejecuta óptimamente sin presentar inconveniente alguno.
Mala: la aplicación se ejecuta de manera deplorable o no se ejecuta.
Regular: la aplicación se ejecuta medianamente bien; pues presenta inconvenientes
como: retraso en la presentación de las cápsulas informativas, no funcionalidad de
algunos botones.
En la tabla 4.1 se puede observar detalladamente los resultados de las pruebas realizadas en los
diferentes dispositivos móviles utilizados. Así mismo, de la tabla 4.1 se puede concluir que la
aplicación se ejecuta sin presentar inconveniente alguno en dispositivos móviles con Android
5.1.1 Lollipop o superiores. Para dispositivos móviles con una versión inferior la aplicación se
ejecuta de manera regular o deplorable, confirmando la información descrita en
https://library.vuforia.com/articles/Solution/Vuforia-Supported-Versions, en donde se especifica
que Vuforia es admitida para el sistema operativo Android a partir de Android 4.4 Kitkat o
superior.
72
Modelo Procesador Cámara
Frontal
Cámara
Posterior
Memoria
RAM
Resolución
de pantalla
Versión de
Android Valoración Comentarios
Galaxy
Grand
Prime
Duos
Qualcomm MSM8916
Snapdragon 410 Quad-
Core 1.2 GHz
5MP 8 MP 1GB 540 x 960
pixeles
Android 5.1.1
Lollipop Buena
Todas las funcionalidades de la aplicación
se ejecutan sin inconvenientes. Los modelos
se visualizan sin distorsiones.
Samsung
Galaxy J2
Prime
Mediatek MT6737T
Quad
-Core 1.4 GHz
5MP 8 MP 1.5GB 540 x 960
pixeles
Android 6.0.1
Marshmallow Buena
La aplicación se ejecuta sin presentar retrasos de
en tiempo de ejecución.
Sony
Xperia
E4
MediaTek MT6582
Quad-
Core 1.3GHz
2 MP 5 MP 1GB 540 x 960
pixeles
Android 4.4.4
Kitkat Regular
Transición entre pantallas lenta.
Los gestos en pantalla presentan un retraso en ejecutarse.
GT -
N8013 1.4GHz Quad-Core 1,9 MP 5 MP 2GB
1280 x 800
pixeles
Android 4.1
Jelly Bean Mala La transición entre las pantallas es lenta y algunas
funcionalidades demoran en ejecutarse.
Galaxy A5 Exynos 7880 Octa
1.9GHz 16 MP 16 MP 3GB
1080 x
1920
pixeles
Android 6.0.1
Marshmallow Buena Las funcionalidades se ejecutan en su totalidad
LG Metro
PCS
Dual-core 1.2 GHz
Cortex-A7 VGA 5 MP 1GB
480 × 800
pixeles
Android 4.1
Kitkat Mala Funcionalidades como la de compartir la captura de
pantalla no se ejecuta.
Alcatel Pop
4 Plus
Qualcomm Snapdragon
210, Quad-Core 1,1
GHz
5 MP 8 MP 1,5 GB 1.280 x 720
píxeles
Android 6.0.1
Marshmallow Buena
Tanto la parte funcional como la parte visual no
presentan inconveniente alguno.
Galaxy
Grand
Prime
Snapdragon 410
1.2GHz 5 MP 8 MP 1 GB
540 x 960
pixeles
Android 4.4
Kitkat Regular
Los gestos por pantalla presentan un pequeño retraso
en ejecutarse. Transición entre pantallas lenta.
Tabla 4.1 Cuadro de resultados de la aplicación en diversos dispositivos
73
Valoraciones de usuarios
La aplicación se encuentra disponible en la tienda de Google Play desde el 13 de octubre de
2018, y cuenta con un total de 17 descargas (como muestra la figura 4.12) y numerosos
comentarios a favor por parte de los usuarios (como muestra la figura 4.14), hasta la fecha de
escritura de este documento.
Figura 4.12 Total de descargas de la aplicación
Además, la aplicación posee una valoración media de 5 estrellas (como muestra la figura 4.13)
brindada por los usuarios de la misma.
Figura 4.13 Valoración media de la aplicación
74
Figura 4.14 Comentarios recibidos sobre la aplicación
75
CAPÍTULO V
5. CONCLUSIONES Y RECOMENDACIONES
5.1. CONCLUSIONES
La aplicación “ImplantAR” cumplió con todas los requerimientos planteados en el
capítulo 3.2.1, logrando así que tanto odontólogos y pacientes cuenten con una
herramienta de visualización previa del resultado de su tratamiento, mediante el uso de
una interfaz de usuario sencilla pero consistente y funcionalidades adicionales que no se
establecieron al momento de iniciar el proyecto.
Debido a que las metodologías de desarrollo de software están enfocadas al desarrollo
de sistemas informáticos, el proyecto modificó determinadas fases de las metodologías
elegidas según la necesidad del mismo, puesto que ambas metodologías no están
orientadas al desarrollo de proyectos de esta índole.
El proceso de creación de los modelos 3D de las piezas dentales se realizó mediante la
utilización de imágenes referenciales del libro “Anatomía Odontológica Funcional y
Aplicada” de Mario Eduardo Figún y Ricardo Rodolfo Gariño; para de esta manera
lograr que los modelos 3D se asemejen a las piezas dentales reales. Proceso en el cual
se utilizó la técnica de modelado por caja (box modeling), la cual se acopló de manera
ideal para el desarrollo del proyecto.
El SDK de Vuforia se ha consolidado entre los desarrolladores de aplicaciones de
Realidad Aumentada debido a su versatilidad y a la gran cantidad de tipos de
marcadores que se puede utilizar. Pero cabe mencionar que en el mercado de
desarrolladores ha aparecido una nueva herramienta llamada ARCore, el cual se
proyecta como el más fuerte e inmediato competidor de Vuforia, por entre otras
razones: debido a que Google es su dueño y desde hace ya un tiempo atrás Google ha
entrado en el mercado de desarrollo y fabricación de dispositivos móviles.
Al realizar las pruebas de funcionamiento en ocho dispositivos móviles distintos, se
tuvo que el 50% obtuvo un rendimiento bueno, un 25% un rendimiento regular y el otro
25% un rendimiento ineficaz. De lo cual, se concluye que para obtener un resultado
óptimo de rendimiento de la aplicación se necesita que el dispositivo móvil a utilizarse
76
implemente un nivel de API igual o mayor a la API 21 Lollipop, puesto que en niveles
inferiores los resultados son deficientes; debido a que el motor de Vuforia es admitido
en APIs superiores a la API 19 KitKat.
Debido a la metodología utilizada para el desarrollo de la aplicación, se logró detectar la
ausencia de interacción del usuario con la aplicación, por lo que se implementaron las
posibilidades de elegir el color de la pieza dental y manipular la pieza dental a través del
uso de gestos en la pantalla del dispositivo. Logrando así que la aplicación sea más
llamativa e interesante de usar para el usuario.
La implementación del diseño minimalista en elementos de la interfaz de usuario como
los botones, ventanas emergentes y la elección del color azul, facultó el fácil
entendimiento y desenvolvimiento de los usuarios al momento de ejecutar la aplicación,
evidenciando de esta manera una de los principios del minimalismo: “hacer más con
menos”.
La utilización del marcador de tipo markerless permitió eliminar la dependencia de los
marcadores a blanco y negro impresos en papel, los cuales se acoplan satisfactoriamente
a diversos casos de utilización en los cuales el tamaño de dicho marcador casi siempre
está por encima de los 5 x 5 cm. Pero en casos en los cuales el tamaño del marcador es
inferior a los 3 x 3 cm, los marcadores de papel dejan de ser útiles, evidenciando así una
desventaja frente a los marcadores de tipo markerless. Además, el proyecto forma parte
de la nueva tendencia de hacer RA; que es el uso de los marcadores de tipo markerless.
Se corroboraron las características mencionadas en el capítulo 3.4.3 para la captura de
la imagen a utilizarse como marcador, pero sobre se puso de manifiesto la importancia
de contar con un ambiente bien iluminado y abundante en detalles para el correcto
funcionamiento de la aplicación.
77
5.2. RECOMENDACIONES
Para el correcto funcionamiento de la aplicación; se recomienda instalar la aplicación en
dispositivos móviles con versión igual o superior a Android 5.0 Lollipop.
Para la implementación de la RA, se recomienda utilizar la cámara posterior para
realizar la captura de la imagen a utilizarse como marcador, debido a que la mayoría de
dispositivos cuentan con una cámara posterior de mayor resolución y mejores
características que la cámara frontal. Aunque cabe mencionar que en algunos
dispositivos como el Samsung Galaxy A5 2017, tanto la cámara frontal como la cámara
posterior tienen la misma resolución, y en consecuencia no habrá inconveniente al usar
cualquiera de las dos cámaras.
Para evitar problemas de visualización de los elementos de la interfaz gráfica en los
diferentes dispositivos, se recomienda que al momento de desarrollar la aplicación se
establezca la relación de aspecto 16:9. Para que de esta manera la aplicación tenga un
diseño responsive.
Debido a las nuevas políticas de Google entradas en vigencia a partir de agosto de 2018,
en la cual se exige que las aplicaciones a ser subidas a Google Play cuenten con un
nivel de API 26 Oreo, se recomienda actualizar el SDK de Android y la versión de
Unity a 5.6.6 para poder contar con la API 26 al momento de generar el archivo .apk.
78
BIBLIOGRAFÍA
1. Aúcar López, J., & Lajes Ugarte, M. (2014). Enfoque de ciencia, tecnología y sociedad
de la Implantología dental en Camagüey. Humanidades Médicas, 14(3), (pp. 676-686).
2. Azuma, R. (1997). A Survey of Augmented Reality. Presence: Teleoperators and
Virtual Environments, (pp. 355-385).
3. Baño, M. & Fierro, F. (2016). Diseño Gráfico.
4. Barberá, I. P. (2016). Desarrollo de un juego de tablero con Realidad
Aumentada (Doctoral dissertation).
5. Bimber, O., & Raskar, R. (2006, July). Modern approaches to augmented reality. In
ACM SIGGRAPH 2006 Courses (pp. 1). ACM
6. BioTech Dental. (07 de julio de 2018).
7. Castells, M. (1997). La sociedad red (Vol. I). Madrid: Alianza.
8. Caudell, T., & Mizell, D. (1992). Augmented reality: an application of heads-up display
technology to manual manufacturing processes. Proceedings of the 25th Hawaii
International Conference on System Sciences. (pp. 659).
9. Costa, P. (2011). Avances y avalanchas del siglo XIX. Del telégrafo eléctrico al
teléfono. EUITT, Madrid.
10. El Comercio. (13 de septiembre de 2013). Las ‘apps’ de salud son un médico de
bolsillo. Tendencias.
11. Elefantegrafico.com. (17 de julio de 2018).
12. El Universo. (10 de febrero de 2013). Implantes dentales. La Revista.
13. Estebanell, M., Ferrés, J., Cornellà, P. & Codina, D. (2012). Realidad aumentada y
códigos QR en educación. En J. Hernández, M. Pennesi, D. Sobrino & A. Vázquez
(Coords).Tendencias emergentes en educación con TIC. (pp. 277-320). Barcelona:
Editorial espiral.
14. Feiner, S., Macintyre, B., & Seligmann, D. (1993). Knowledge-based augmented
reality. Communications of the ACM, 36(7), (pp. 53-62).
15. García Reyes, E. (2012). Historia del Diseño.
16. Gimeno, J., Pujana-Arrese, A., Coma, I., Fernandez, M., & Landaluze, J. (2008).
Técnicas de captura de movimiento, infrarroja y basada en vídeo, aplicadas al
prototipado virtual de una ortesis. Instituto de Robótica de la Universidad de Valencia.
79
17. Graells, P. M. (2000). Las TIC y sus aportaciones a la sociedad. Departamento de
pedagogía aplicada, facultad.
18. Implanteddentaleswtc.com. (08 de julio de 2018).
19. Joskowicz, J. (2008). Reglas y prácticas en eXtreme Programming. Universidad de
Vigo, (pp. 22).
20. Joskowicz, J. (2008). Reglas y Prácticas en eXtreme Programming. Universidad de
Vigo, (pp. 4- 19).
21. Joskowicz, J. (2012). Historia de las Telecomunicaciones. Instituto de Ingeniería
Eléctrica, Facultad de Ingeniería, Universidad de la República Montevideo, Uruguay.
22. Karlstroem, D. (2002). Introducing extreme programming-an experience report. In
proceedings of the 3rd international conference on eXtreme processing and agile
processing software engineering (XP2002).
23. Letelier, P. (2006). Metodologías ágiles para el desarrollo de software: eXtreme
Programming (XP).
24. López Pombo, H. (2010). Análisis y desarrollo de sistemas de Realidad Aumentada.
Proyecto Fin de Master en Sistemas Inteligentes de la Universidad Complutense de
Madrid. Madrid.
25. Martínez, A., Gutiérrez, D., Albarrán, Y., & Rodríguez, C. (2016). Sistema de
información basado en el control de citas en línea. Diotima, Revista Científica de
Estudios Transdisciplinaria Publicación Electrónica Cuatrimestral de Asociación
Mexicana de Investigación y Docencia.
26. Mateos Ramos, J. A. (2009). Arquitectura para la Computación Contextual:
Aplicación a la Realidad Aumentada.
27. Montero, Y. H. (2015). Experiencia de usuario: principios y métodos. Experiencia de
Usuario: Principios y Métodos, (pp. 9).
28. Netcommerce.mx. (17 de julio de 2018).
29. Noh, Z., & Sunar, M. S. (2009, December). A Review of shadow techniques in
augmented reality. In Machine Vision, 2009. ICMV'09. Second International
Conference on (pp. 320-324). IEEE.
30. Pérez, C, & Reinoso O. (2003). Técnicas de tracking.
31. Phibo. (2016). Implantes dentales: la solución más natural estética y segura.
32. Prendes Espinosa, C. (2015). Realidad aumentada y educación: análisis de experiencias
prácticas. Pixel-Bit. Revista de Medios y Educación, (pp. 46, 87-203).
33. ProyectoIdis.org. (05 de junio de 2018).
80
34. ProyectoIdis.org. (07 de junio de 2018).
35. Redondo, D. A. (2012). Realidad Aumentada.
36. Rice, R. (2009). Augmented vision and the decade of ubiquity.
37. Sánchez Riera, A. (2013). Evaluación de la tecnología de realidad aumentada móvil en
entornos educativos del ámbito de la arquitectura y la edificación.
38. Scoop.it.com. (01 de agosto de 2018).
39. Siltanen, S. (2012). Theory and Applications of Marker-Based Augmented Reality.
Espoo: VTT Technical Research Center of Finland.
40. Superretro.com. (06 de junio de 2018).
41. Sutherland, I. E. (1968, December). A head-mounted three dimensional display.
In Proceedings of the December 9-11, 1968, fall joint computer conference, part I (pp.
757-764). ACM.
42. Tugurium.com. (06 de junio de 2018).
43. Uchida, H., & Komuro, T. (2013, March). Geometrically consistent mobile AR for 3D
interaction. In Proceedings of the 4th Augmented Human International Conference (pp.
229-230). ACM.
44. Utiel, I. J. Aplicación de Metodologías Agiles en el Diseño de UX.
45. Vuforia Developer Site. (25 de junio de 2018).
46. Wang, T., Liu, Y., & Wang, Y. (2008, December). Infrared marker based augmented
reality system for equipment maintenance. In | 2008 International Conference on
Computer Science and Software Engineering (pp. 816-819). IEEE.
47. Yolanda, B. L. (2013). Metodología Ágil de Desarrollo de Software–XP. línea].
48. Zak. (05 de enero de 2014). Ecuador: Los usuarios prefieren Android. Ecuador
Inmediato.
81
ANEXOS
ANEXO A: Clases de la aplicación ImplantAR.
ANEXO B: Creación y obtención de la clave de licencia (key) para la aplicación.
ANEXO C: Aplicación ImplantAR en la tienda Google Play.
ANEXO D: Manual de usuario.
ANEXO E: Manual de configuración de la aplicación.
ANEXO F: Uso de la aplicación por estudiantes de la carrera de Odontología de la Universidad
Central del Ecuador.
i
ANEXO A: CLASES DE LA APLICACIÓN IMPLANTAR
A.1 ColorPicker
Es la clase que permite cambiar el color del modelo de la pieza dental, sus principales métodos
se explican a continuación:
UpdateColorEditFields(): se encarga de obtener el valor del color seleccionado de la
paleta de colores; luego transforma dichos valores a bytes para cada componente de
color (r: red, g: green, b: blue), para finalmente llamar al método SetColor() que
establece con los nuevos valores el color de la nueva textura del modelo, como muestra
la figura A.1.
SetColor(): método encargado de recibir los valores del nuevo color y aplicar dichos
colores a la nueva textura del modelo, como muestra la figura, como muestra la figura
A.2.
ApplyColor(): es el encargado de realizar el cambio de textura al nuevo modelo, como
muestra la figura A.3.
Figura A.1 Método UpdateColorEditFields
ii
Figura A.2 Método SetColor
Figura A.3 Método ApplyColor
A.2 LeanScale & LeanTranslate
La librería LeanTouch se encarga de manejar los gestos realizados por los dedos en la pantalla
del dispositivo móvil, a través de los métodos Scale (que utiliza dos dedos) y Translate (que
utiliza un dedo), que se explican a continuación:
Scale(): antes de escalar el modelo se obtiene el número de dedos que el usuario utiliza
para realizar esta acción (dos dedos), luego el método GetPinchScale retorna el valor de
escalado realizado, esto lo determina por la distancia que existe entre los dedos.
Finalmente este valor es usado por el atributo transform.localscale para escalar el
modelo. (ver figura A.4)
Translate(): antes de trasladar el modelo se obtiene el número de dedos que el usuario
utiliza para realizar esta acción (un dedo), luego el método GetScreenDelta retorna el
valor de traslación realizado, esto lo determina por la distancia que existe entre los
dedos. Finalmente este valor es usado por el método interno Translate para trasladar el
modelo. (ver figura A.5)
iii
Figura A.4 Método Scale de la librería LeanTouch
Figura A.5 Método Translate de la librería LeanTouch
A.3 UserDefinedTargetEventHandler
Es la clase que permite el manejo de los ImageTarget a usarse como marcadores, sus principales
métodos se explican a continuación:
OnInitialized(): es el encargado de crear y activar la tabla de ImageTarget que servirá
para almacenar las imágenes a utilizarse como marcadores para la RA. Esto se logra con
iv
los métodos internos CreateDataSet() y ActivateDataSet(), respectivamente (ver figura
A.6).
OnNewTrackableSource(): permite añadir elementos de tipo ImageTarget a la tabla
anteriormente creada, y de ser el caso en que la tabla se encuentre llena (la tabla tiene
un tamaño de 5 elementos), elimina el ImageTarget más antiguo y añade el nuevo,
como muestra la figura A.7.
BuildNewTarget(): se encarga de crear un nuevo ImageTarget con la fotografía que el
usuario capturó con la cámara del dispositivo, mediante la función interna
BuilNewTarget(), y de ser el caso en que la imagen capturada no cumpla con las
características del capítulo 3.4.3; despliega una ventana emergente que le indica al
usuario que debe volver a realizar la captura de la fotografía (ver figura A.8).
Figura A.7 Adición de los ImageTarget a la tabla creada
v
Figura A.6 Inicialización de la tabla de ImageTarget
Figura A.6 Creación del ImageTarget a usarse como marcador
vi
ANEXO B: CREACIÓN Y OBTENCIÓN DE LA CLAVE DE LICENCIA (KEY) PARA
LA APLICACIÓN.
Dentro de la página de Vuforia developers: https://developer.vuforia.com/downloads/sdk
sección Downloads, se encuentra la pestaña SDK, en la cual se procede a seleccionar y
descargar la versión más reciente de Vuforia para Unity, como muestra la figura B.1.
Figura B.1 Página de Vuforia developers (Vuforia Developers Portal, 2018)
Luego, para generar la clave de licencia para la aplicación, se debe ingresar como desarrollador
y a continuación se obtiene la clave licencia, para lo cual hay que seleccionar el botón Get
Development Key, como muestra la figura B.2-a. Posterior a esto, lo único que se debe hacer es
ingresar el nombre de la aplicación y aceptar los términos y condiciones de Vuforia Developer
Agreement, como muestra la figura B.2-b.
vii
(a) (b)
Figura B.2 Generación de la clave: (a) obtener la licencia (b) generar la licencia (Vuforia Developers
Portal, 2018)
Finalmente, para poder visualizar la clave, se debe dirigir a la pestaña License Manager, y
seleccionar el nombre de la aplicación que se haya creado, como muestra la figura B.3.
Figura B.3 Clave de licencia de la aplicación ImplantAR
viii
ANEXO C: APLICACIÓN IMPLANTAR EN LA TIENDA GOOGLE PLAY
La aplicación ImplantAR se encuentra disponible para las personas en la tienda Google Play,
como muestra la figura C.1.
Figura C.1 ImplantAR en la tienda Google Play
ix
ANEXO D: MANUAL DE USUARIO
Una vez que se haya descargado la aplicación desde la tienda de Google Play; y posteriormente
iniciada, se presenta el menú principal de la aplicación en el cual se puede acceder al módulo de
RA (opción Implante), visualizar el video de modo de uso de la aplicación (opción Modo de
uso), obtener información sobre la aplicación (opción Información) y salir de la misma (opción
Salir), como muestra la figura D.1
Figura D.1 Menú principal de la aplicación
En la figura D.2 se puede observar la ventana de información, en la cual se obtiene una breve
descripción de la aplicación e información sobre sus desarrolladores; la cual se visualiza al
presionar su botón respectivo.
Figura D.2 Ventana de información de la aplicación y sus desarrolladores
x
Ya dentro de la opción Implante, se puede navegar por tres diferentes pantallas (Canino, Inc.
Central e Inc. Lateral, del hueso maxilar superior) en las cuales se puede elegir la pieza dental
derecha o izquierda, como muestra la figura D.3.
Figura D.3 Menú de la opción Canino
Además, se puede visualizar las instrucciones de uso y de regresar al menú principal de la
aplicación (como muestra la figura D.4), lo cual se logra al presionar el botón inferior derecho
(pestaña) de la figura D.3.
Figura D.4 Ventana de instrucciones de la aplicación
xi
D.1 MENÚ PRINCIPAL DE LA RA
Una vez que se haya seleccionado alguna de las opciones de piezas dentales, se presenta un
nuevo menú, el cual está conformado por los botones de: capturar el marcador, cambiar la
cámara y regresar al menú de piezas dentales.
D.1.1 Captura del marcador
Una vez que se haya seleccionado alguna de las opciones de piezas dentales, se debe
implementar la RA, para lo cual hay que capturar el marcador a utilizarse; es decir, el rostro de
la persona. Para esto se recomienda que la distancia entre la cámara del dispositivo y el rostro de
la persona sea aproximadamente entre 30 y 40 cm. Para capturar el marcador se debe presionar
el botón con el símbolo de cámara, como muestra la figura D.5.
Figura D.5 Botón de captura del marcador
Si la imagen a utilizarse como marcador no cumple con las características mencionadas en el
capítulo 2.4.3, una ventana emergente le indicará que debe probar otra imagen.
D.1.2 Cambio de cámara del dispositivo
El usuario puede elegir entre la cámara frontal o la cámara posterior de su dispositivo para
implementar la RA, lo cual se logra al presionar el botón con el ícono de giro de cámara, como
muestra la figura D.6.
xii
Figura D.6 Botón de cambio de cámara del dispositivo móvil
Cabe mencionar que la implementación de la RA dependerá de la resolución de cada una de las
cámaras, por lo que generalmente la cámara frontal presentará muchas dificultades; pues su
resolución es ampliamente inferior a la cámara posterior.
D.1.3 Regresar al menú de piezas dentales
Para regresar al menú de piezas dentales, basta con apuntar hacia otro lado con la cámara, para
que el menú principal de la RA se muestre, y por ende, el botón de regreso al menú de piezas
dentales esté disponible, como muestra la figura D.7.
Figura D.7 Botón de cambio de regreso al menú de piezas dentales
xiii
D.2 MENÚ SECUNDARIO DE LA RA
Una vez que se haya capturado el marcador, un menú secundario se muestra, el cual está
conformado por los botones de: mostrar paladar, capturar la pantalla y mostrar información.
D.2.1 Acoplamiento del modelo
Una vez implementada la RA, el usuario puede escalar (para lo cual utiliza dos dedos) y
trasladar (para lo cual utiliza un solo dedo) el modelo de la pieza dental; según corresponda.
D.2.2 Manejo del color del modelo
Así mismo, puede seleccionar el color del diente, pulsando sobre la paleta de colores
disponibles, como muestra la figura D.8.
Figura D.8 Paleta de colores disponible
D.2.3 Captura de la pantalla y compartir dicha captura
El usuario puede realizar una captura de pantalla, para lo cual debe presionar el botón inferior
medio (como muestra la figura D.9), inmediatamente se realiza la captura, aparecerá la ventana
para compartir la captura a través de diversos medios de comunicación.
xiv
Figura D.9 Botón que permite capturar y compartir dicha captura
D.2.4 Visualización del paladar
Para visualizar el paladar, el usuario debe presionar el botón inferior izquierdo (como muestra la
figura D.10). Además de visualizar el paladar, se mostrará un menú emergente que permitirá
interactuar con el implante.
Figura D.10 Botón que permite visualizar el paladar y el menú emergente
xv
D.2.5 Visualización de información
Para visualizar la información sobre el tratamiento de implantología, el usuario debe presionar
el botón inferior derecho (como muestra la figura D.11).
Figura D.11 Botón que permite visualizar información del tratamiento
D.3 MENÚ EMERGENTE DE RA
Además, una vez presionado el botón del paladar, aparecerá un menú emergente que permitirá:
manejar la transparencia del paladar, visualizar el diente simétrico, visualizar al implante en su
totalidad y obtener información sobre el implante, como muestra la figura D.12.
Figura D.12 Opciones del menú emergente de RA
xvi
ANEXO E: MANUAL DE CONFIGURACIÓN DE LA APLICACIÓN
E.1 EXPORTACIÓN DE LOS MODELOS 3D
Una vez terminado el proceso de creación de las piezas dentales en Cinema 4D, se debe
exportarlas con extensión .fbx, para que puedan ser reconocidas dentro de Unity, como muestra
la figura E.1.
Figura E.1 Exportación de los modelos 3D
E.2 CONFIGURACIÓN DENTRO DE UNITY
E.2.1 Configuración del SDK Vuforia
Luego de realizar el procedimiento descrito en el anexo B, únicamente resta importar el paquete
de Vuforia al proyecto de Unity, para lo cual basta arrastrar dicho paquete al proyecto o dar
click derecho>Import Package>Custom Package y elegir el archivo de Vuforia del lugar en el
que se haya descargado, como muestra la figura E.2
xvii
Figura E.2. Importación del paquete de Vuforia
E.2.2 Importación de los modelos 3D
La importación de los modelos al proyecto es sencillo, basta con realizar el mismo
procedimiento que se hizo para importar el archivo de Vuforia; es decir, arrastrar los modelos al
proyecto o dar click derecho>Import Package>Custom Package y seleccionar los modelos del
lugar en el que se encuentren.
E.2.3 Uso de los modelos 3D
Para poder hacer uso de los modelos o cualquier otro elemento, únicamente es necesario
especificar por código el tipo de objeto del que se hará uso (como muestra la figura E.3-a), y
arrastrar dicho script al modelo que vaya a utilizarlo, como muestra la figura E.3-b.
(a) (b)
Figura E.3. Uso de los modelos 3D: (a) Tipo de objeto a utilizar (b) Asignación del script al modelo 3D
xviii
E.2.4 Generación del archivo .apk
La generación del archivo .apk del proyecto es sencilla, para lo cual se debe dirigir a File>Build
Settings, inmediatamente se despliega una ventana en la cual se elige la plataforma para la cual
está dirigida al aplicación, luego se debe dirigir a la opción Player Settings (como muestra la
figura E.4)
Figura E.4. Ventana Buil Settings
Una vez presionado dicho botón, se despliega las opciones de publicación de la aplicación
(como muestra la figura E.5), entre las cuales se tiene: Resolution and Presentation; la cual
permite definir el uso de la opción landscape (horizontal) o portrait (vertical) del dispositivo
móvil, Icon; permite establecer el icono de la aplicación, Splash Image; permite visualizar el
tipo de animación del logo de Unity al momento de ejecutar la aplicación, Other Settings;
permite establecer el nivel de API que necesita la aplicación para ejecutarse y Publishing
Settings; la cual permite firmar el archivo .apk para subirlo a la tienda Google Play.
xix
Figura E.5. Ventana Build Settings
Luego de haber configurado las opciones de publicación de la aplicación, se procede a generar
el archivo .apk, para lo cual se debe presionar el botón Build de la figura E.4, con lo cual
empezará la generación del archivo .apk.
xx
E.3 PUBLICACIÓN DE LA APLICACIÓN EN GOOGLE PLAY
Para poder subir la aplicación a la tienda Google Play, se sigue el siguiente procedimiento.
1. Se debe acceder a la cuenta de desarrollador de Google Play desde el siguiente enlace
https://play.google.com/apps/publish/?hl=es-419
2. Luego, click en el botón CREAR UNA APLICACIÓN, como muestra la figura E.6.
Figura E.6. Ventana de la cuenta de desarrollador
3. Seleccionar el idioma y establecer el nombre de la aplicación, como muestra la figura E.7
Figura E.7. Ventana de la configuración de idioma y nombre de la aplicación
xxi
4. Después de haber realizado el paso anterior, se debe dirigir a la opción Ficha de Play
Store, en donde se debe dar una descripción de la aplicación, subir recursos gráficos del
uso de la aplicación, proporcionar información del desarrollador, categorizar la aplicación
y establecer políticas de privacidad. Luego de completar dichos campos, se debe guardar
el borrador, con el botón GUARDAR CAMBIOS como muestra la figura E.8.
Figura E.8. Ventana de la opción Ficha de Play Store
5. Se debe dirigir a la opción Versiones de la Aplicación para proceder a subir el archivo
.apk, para lo cual se debe seleccionar la opción de Producción>Administrar>Crear
Versión. Después se procede a subir el archivo apk, (como muestra la figura E.9).
Además se debe establecer el nombre de la versión y novedades de esa versión. Una vez
realizado este procedimiento, se procede a revisar la subida, mediante el botón
REVISAR.
xxii
Figura E.9. Ventana de la opción Versiones de la Aplicación
6. Se debe dirigir a la opción Clasificación de Contenido para llenar la encuesta con la que
Google clasifica la aplicación. Después de llenar dicha encuesta, se obtiene la
clasificación de la aplicación, como muestra la figura E.10.
Figura E.10. Clasificación otorgada a la aplicación
7. Finalmente, se debe regresar a la opción Versiones de la Aplicación y editar la versión
subida previamente, luego dar click en el botón REVISAR y luego en el botón INICIAR
LANZAMIENTO DE VERSIÓN DE PRODUCCIÓN, como muestra la figura E.11. con
lo cual la aplicación estará disponible en la Google Play Store; como se muestra en el
Anexo C.
xxiii
Figura E.11. Inicio de lanzamiento de la aplicación
xxiv
ANEXO F: USO DE LA APLICACIÓN POR ESTUDIANTES DE LA CARRERA DE
ODONTOLOGÍA DE LA UNIVERSIDAD CENTRAL DEL ECUADOR
Figura F.1. Usuario conociendo la aplicación
Figura F.2. Usuario capturando el marcador (rostro del paciente)
GDHDHDFGFGFGHFDG FGHFGH
xxv
Figura F.3. Usuario visualizando la RA
Figura F.4. Usuario probando las funcionalidades de la aplicación.