Simulaciones con Objetos Deformables
Transcripción
Simulaciones con Objetos Deformables
Simulaciones con Objetos Deformables Dr. Luis Gerardo de la Fraga Departamento de Computación Cinvestav Zacatenco E-mail: [email protected] 20 de mayo, 2013 Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 1/51 Contenido 1. El contexto del estudio de objetos deformables 2. Realización de objetos deformables con mallas de sistemas masa-resorte-amortiguador 3. Objetos virtuales deformables 4. Interacción háptica con objetos deformables 5. Problemas con esta representación y posibles soluciones 6. Conclusiones Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 2/51 Mis áreas de investigación I Visión por computadora I Aplicaciones de algoritmos evolutivos I Modelos deformables I Seguridad en redes de computadoras Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 3/51 Las tres áreas principales a a Foley, van Dam, Feiner, Hughes, Computer Graphics: principles and practice, 2000, Addison Wesley. 1. Graficación: Trata la sı́ntesis de escenas con objetos reales o imaginarios a partir de sus modelos computacionales. 2. Procesamiento de Imagen: 2.1 2.2 2.3 2.4 Realzado de imagen Detección y reconocimiento de patrones Análisis de escenas Visión por computadora: Reconstrucción de un modelo 3D de una escena a partir de varias imágenes 2D. Desde los años 90 del siglo pasado, visión es un área es sı́ misma debido al número de publicaciones y revistas en el área. Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 4/51 Áreas relacionadas 1. Procesamiento de imágenes 2. Graficación 2.1 2.2 2.3 2.4 2.5 2.6 Realidad virtual Geometrı́a computacional Interfaces hápticas Interfaces hombre-máquina Modelos deformables Visualización de fluidos 3. Visión 3.1 3.2 3.3 3.4 Geometrı́a proyectiva Realidad aumentada (usa las tres áreas) Análisis numérico Procesamiento paralelo (GPUs) Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 5/51 Objetos deformables Son objetos que cambian su apariencia debido a la aplicación de fuerzas externas. Se pueden realizar con 1. Mallas de resortes 2. Simulación de fluidos Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 6/51 Mallas de resortes Un resorte se deforma según la ley de Hook: F = kx k Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 7/51 Sistema masa-resorteamortiguador Si agregamos una masa, el sistema se comporta según la segunda ley de Newton: b k F = mẍ + kx Pero este sistema oscilará perpetuamente. Para disipar la energı́a agregamos un amortiguador m F = mẍ + b ẋ + kx F Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 8/51 Mallas con sistemas RMA (1/2) Esta malla tiene el incoveniente de que no tiene resortes torcionales. Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 9/51 Mallas con sistemas RMA (2/2) Sin los resortes torcionales, la malla tendrá varios estados estables: Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 10/51 Para evitar modelar los resortes torcionales, se usan otros resortes simples entre la posición original y los vértices de la malla. F = mẍ + b ẋ + kx + Dr. Luis Gerardo de la Fraga Tec. Ajalpan X kr x Simulaciones con Objetos Deformables 11/51 Usando mallas de simplejos se puede usar un mismo motor de deformación en toda la malla. Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 12/51 Resolviendo la ecuación diferencial La ecuación diferencial de segundo orden: ẍ + 2λẋ + ω 2 = F , es muy conocida y tiene soluciones exactas. Se tienen tres soluciones: 1. Sobreamortiguada, cuando λ2 − ω 2 > 0 2. Crı́ticamente amortiguada, cuando λ2 − ω 2 = 0 3. Subamotiguada, cuando λ2 − ω 2 < 0 Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 13/51 Deben selecionarse los valores para k, b y m de forma que la respuesta del sistema sea subamortiguada (debido a que es la respuesta es más rápida) subamortiguado deformación sobreamortiguado tiempo Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 14/51 Las soluciones exactas son: I Caso sobreamortiguado: p i h p F x(t) = e −λt c1 exp t λ2 − ω 2 + c2 exp −t λ2 − ω 2 + 2 ω p F p 2 2 λ − ω − λ − ẋ(0) / 2 λ2 − ω 2 c2 = x(0) − 2 ω F c1 = x(0) − c2 − 2 ω I Caso crı́ticamente amortiguado: x(t) = e −λt (c1 + c2 t) + c1 = x(0) − I F , ω2 F ω2 c2 = ẋ(0) + λc1 Caso subamortiguado: p i h p F x(t) = e −λt c1 sen t ω 2 − λ2 + c2 cos t ω 2 − λ2 + 2 ω F ẋ(0) + λc2 c2 = x(0) − 2 , c1 = √ ω ω 2 − λ2 Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 15/51 Es evidente la complejidad de calcular una solución exacta (en un tiempo dado) para la ecuación diferencial de segundo orden. Por ello se utiliza una solución numérica que conlleve menos costo computacional. Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 16/51 Probamos cuatro métodos para resolver numéricamente el sistema RMA 1. Diferencias finitas centrales 2. Euler 3. Heun 4. Runge–Kutta de cuarto orden Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 17/51 Diferencias finitas centrales (1/2) La velocidad, ẋ, y la aceleración, ẍ, se discretizan como: ẋ = x(t) − x(t − 1) , y ∆t ẍ = ẋf − ẋi ∆t donde x(t + 1) − x(t) , y ẋi = ẋ. ∆t De esta forma el estado siguiente del sistema, x(t + 1), se calcula a partir del estado actual y del anterior. ẋf = Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 18/51 Diferencias finitas centrales (2/2) La aceleración queda expresada como: ẍ = x(t + 1) − 2x(t) + x(t − 1) (∆t)2 Sustituyedo las expresiones para ẍ y ẋ en la ec. diferencial, queda: b k b (∆t)2 x(t+1) = x(t) 2 − ∆t − (∆t)2 +x(t−1) ∆t − 1 + F, m m m m x(t + 1) = k1 x(t) − k2 x(t − 1) + k3 F . Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 19/51 Número de operaciones requeridas por cada método Método Dif. finitas centrales Euler Heun RK4 No. sumas 2M 4M 13M 25M No. productos 2M 4M 10M 20M Operaciones requeridas para M subintervalos de tiempo. Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 20/51 Error acumulado durante 3 seg para Error acumulado durante 3 seg para b = 1.2, k = 2.0 y m = 1.0 b = 0.01, k = 0.1 y m = 0.001 Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 21/51 Objetos virtuales deformables Aplicar fuerzas externas Deformar Visualizar Para efectos de visualización, el lazo se ejecuta a 30 Hz. Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 22/51 Ejemplo 1. Un resorte simple 111 000 000 111 000 111 000 111 000 111 000 111 000 111 000 111 000 111 000 111 mẍ + b ẋ + kx = F . Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 23/51 Para los valores: m = 1.0 Kg, b = 2.66667 Kg/seg, k = 11.11111 Kg/seg2 , F = 11.11111 N y ∆t = 1/30.0 seg., la respuesta es: 1.2 Deformación (metros) 1 0.8 0.6 0.4 0.2 0 0 1 2 3 4 5 Tiempo (segundos) Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 24/51 Ejemplo 2. Otro resorte simple 111 000 000 111 000 111 000 111 000 111 000 111 000 111 000 111 000 111 000 111 F mẍ + b ẋ + kx + kr x = Fx , mÿ + b ẏ + ky + kr y = Fy . Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 25/51 Ejemplo 2. Otro resorte simple 111 000 000 111 000 111 000 111 000 111 000 111 000 111 000 111 000 111 000 111 11 00 00 11 00 11 00 11 00 11 00 11 00 11 00 11 00 11 00 11 F mẍ + b ẋ + kx = Fx , mÿ + b ẏ + ky = Fy . Cuando no se aplica fuerza externa a un nodo, la fuerza del nodo vecino se propaga como Fx = kx/2. Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 26/51 Siguiente reto: tocar los objetos I Se introduce un detector de colisiones para localizar el objeto virtual. Se desarrollaron estos detectores primeramente para la técnica de visualización por trazo de rayo. I Se debe introducir un control proporcional-derivativo (PD) para que la superficie tocada del objeto deformable siga el movimiento del contacto. Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 27/51 Detector de colisiones (1/4) y y p2 p0 p1 p0 x p1 x p2 Si ~u = p1 − p0 , y ~v = p2 − p0 , ~u × ~v > 0 para el diagrama de la izquierda. ~u × ~v < 0 para el diagrama de la derecha. Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 28/51 Detector de colisiones (2/4) ~r ~n ~r ~n ~n · ~r = |~n||~r | cos θ Por lo tanto hay colision entre el rayo expresado por ~r y el plano con la normal ~n si ~n · ~r < 0 (o θ > 90◦ ). Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 29/51 Detector de colisiones (3/4) c p2 p2 c p0 p1 p1 p0 c Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 30/51 Detector de colisiones (4/4) I Hemos utilizado la prueba de esfera ó rayo contra triángulo [1] I Se tiene que triangular las caras que forman los simplejos [1, 2] I Hemos usado la prueba exhaustiva de todos los triángulos contra una esfera con la biblioteca SOLID [3]. Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 31/51 Triangulación Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 32/51 Control proporcional derivativo I La entrada del sistema de deformación es fuerza y se produce un desplazamiento. I Al momento del contacto, se debe de invertir la planta para que la entrada del sistema sea desplazamiento y genere desplazamiento. I Se introduce un control PD para asegurar que el desplazamiento generado en el contacto sea estable. Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 33/51 La transformada de Laplace del sistema de deformación sin control: L{mẍ + b ẋ + kx} = L{F }, ms 2 X (s) + bsX (s) + kX (s) = F (s), X (s) 1 = = G1 (s). 2 F (s) ms + bs + k Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 34/51 El sistema con un control PD: mẍ + b ẋ + kx = kd ẏ + kp y , Calculando su transformada de Laplace: L{mẍ + b ẋ + kx} = L{kd ẏ + kp y }, ms 2 X (s) + bsX (s) + kX (s) = kd sY (s) + kp Y (s), kd s + kp X (s) = . Y (s) ms 2 + bs + k Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 35/51 Se retroalimenta el sistema Y(s) +− G X(s) X (s) G (s) = Y (s) 1 + G (s) Resultando kd s + kp X (s) = . 2 Y (s) ms + (b + kd )s + (k + kp ) o kd s + kp X (s) = . Y (s) G1 + kd s + kp Que es estable cuando kd > 0 y kp > 0 [1] Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 36/51 Un ejemplo del sistema bajo control PD 1 0.8 Deformación 0.6 0.4 0.2 0 -0.2 -0.4 0 2 4 6 8 10 12 14 16 Tiempo (seg) Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 37/51 Siguiente reto: Sentir los objetos que se tocan I Se tiene que utilizar algún dispositivo háptico I La piel tiene requiere una frecuencia más alta que la vista, de al menos 1 KHz. I Se pueden utilizar dos lazos, una a 30 Hz para la visualización y otro a 1 KHz para el lazo háptico Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 38/51 Interfaces hápticas El Phantom Omni Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 39/51 Dos lazos Aplicar fuerzas externas Lazo a 1000 Hz Deformar Lazo a 30 Hz Detector colisiones Sensación Visualizar Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 40/51 El lazo interno se aplica a una parte de la malla Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 41/51 ¿Que se siente? Las graficas [4] son de deformación de intestino delgado de cerdo Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 42/51 Modelo de deformación El modelo generado en [4] es: F (λ) = αe βλ donde λ es la razón de compresión l/l0 , y los valores para α y β son: in vivo: α = 4.3 × 10−7 , β = 13, ex vivo: α = 3.7 × 10−9 , β = 9.4, Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 43/51 Visión activa Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 44/51 Preguntas sin resolver 1. ¿Cómo caracterizar la deformación de una superficie real? 2. ¿Qué valores de m, b y k deben de tener una cierta malla para representar cierto material? 3. ¿Cómo ajustar esos valores si se cambia la resolución de la malla? 4. ¿Cómo calcular y sentir las fuerzas internas en la malla? Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 45/51 Corte de superficies 2D con mallas de simplejos Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 46/51 Retos futuros I Incorporar ruptura y corte con modelos que se comporten como fluidos I ¿Cómo simular los cambios de fase? I Estas simulaciones son altamente paralelizables y pueden ejecutarse en GPGPUs Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 47/51 Conclusiones 1. Los objetos deformables pueden representarse con mallas de sistemas masa-resorte-amortigüador. 2. Estas mallas sirven para efectos de visualización 3. No puede incorporarse fácilmente a estas mallas efectos más complicados como simulaciones de tejidos (en general de objetos reales), ruptura y corte. ¿Cómo simular los cambios de volumen debido a cambios de temperatura? 4. Efectos realistas necesitan modelos más complicados: objetos deformables simulados como fluidos. Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 48/51 ¡Gracias! Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 49/51 Julio Guadalupe Moctezuma Ramı́rez. Manipulación tridimensional de objetos deformables virtuales. Master’s thesis, Cinvestav, Departamento de Ingenierı́a Eléctrica, 2006. Jorge Eduardo Ramı́rez Flores. Objetos deformables para caracterizar macromoléculas biológicas. Master’s thesis, Cinvestav, Departamento de Ingenierı́a Eléctrica, 2004. Gino van den Bergen. Collision Detection in Interactive 3D Environments. Morgan Kaufmann, 2004. I. Brouwer, J. Ustin, L. Bentley, A. Sherman, N. Dhruv, and F. Tendick. Medicine Meets Virtual Reality, chapter Measuring In Vivo Animal Soft Tissue Properties for Haptic Modeling in Surgical Simulation. IOS Press, 2001. Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 50/51 Departamento de Computación del Cinvestav Ofrecemos la maestrı́a y doctorado en Ciencias de la Computación. I Página del Departamento: http://www.cs.cinvestav.mx I Página personal: http://cs.cinvestav.mx/˜fraga I Correo-e: [email protected] Dr. Luis Gerardo de la Fraga Tec. Ajalpan Simulaciones con Objetos Deformables 51/51