Verificación del método de rigging y modelización 3D de ...

17
3D-body-dynamics Verificación del método de rigging y modelización 3D de tejidos blandos Entregable: E1.1 Paquete de trabajo: PT1

Transcript of Verificación del método de rigging y modelización 3D de ...

Page 1: Verificación del método de rigging y modelización 3D de ...

3D-body-dynamics

Verificación del método de rigging y modelización 3D de tejidos blandos

Entregable: E1.1

Paquete de trabajo: PT1

Page 2: Verificación del método de rigging y modelización 3D de ...
Page 3: Verificación del método de rigging y modelización 3D de ...

3D-body-dynamics 3

©

Verificación del método de rigging y modelización 3D de tejidos blandos

ÍNDICE

1. PROCESO DE DESARROLLO DEL MÉTODO DE RIGGING Y DEFORMACIÓN DE TEJIDOS BLANDOS 5

1.1 Generación y preparación de las bases de datos 5

Diseño de los protocolos de medida 5

Estudio experimental y preparación de los datos 7

1.2 Entrenamiento Deep Learning de los modelos de rigging y tejidos blandos 9

Programación y entrenamiento del modelo DL 9

Diseño del modelo de mapas UV para la textura 11

2. VERIFICACIÓN DEL MÉTODO DE RIGGIG Y DEFORMACIÓN DE TEJIDOS BLANDOS 12

2.1 Estudio de precisión del sistema de captura y el método de ajuste 12

Estudio esperimental 12

Resultados 13

2.2 Verificación del modelo de rigging y deformación de tejidos blandos 14

Verificación del rigging mediante posturas extremas 15

Verificación de las secuencias de movimientos mediante mapas de distancias 15

Page 4: Verificación del método de rigging y modelización 3D de ...
Page 5: Verificación del método de rigging y modelización 3D de ...

3D-body-dynamics 5

Verificación del método de rigging y modelización 3D de tejidos blandos ©

1. PROCESO DE DESARROLLO DEL MÉTODO DE RIGGING Y DEFORMACIÓN DE TEJIDOS BLANDOS

1.1 GENERACIÓN Y PREPARACIÓN DE LAS BASES DE DATOS

Diseño de los protocolos de medida

Se han definido los protocolos de escaneado que ha consistido en la definición de la batería de posturas y movimientos para que sean repetibles entre sujetos de

ensayo.

Para definir esta batería se ha considerado los efectos de deformación de tejidos blandos que ocurren en la realización de actividades que ya están representadas en las bases de datos preliminares. El objetivo es poner el foco en las posturas y movimientos que faltan.

Como resultado, se han definido 5 protocolos de movimientos distintos que se han utilizado en la experimentación realizada en la tarea 1.3:

MODO DE CAPTURA 1. Marcha en cuadro.

Comienza en postura en A (Apose de acuerdo a la norma ISO 20685-2:2017), mirando de frente a un lateral del cuadrado marcado en el centro del laboratorio. Pedimos al sujeto que camine de frente y con naturalidad sobre esta trayectoria

cuadrada, y en el tercer y cuarto lados del cuadrado se le pide que alterne extensión y flexión de hombros (codos extendidos), sincronizándolos con cada paso. Cuando cierra el cuadrado, da un paso atrás con el pie derecho para caminar desplazándose de lado sobre la diagonal de dicho cuadrado, hace la ida hacia la derecha (cabeza en rotación derecha) y regresa desplazándose hacia su lado izquierdo (cabeza en rotación izquierda). Finaliza rotando la cabeza para mirar al frente y colocarse A pose.

MODO DE CAPUTRA 2. Miembros superiores

La secuencia de movimientos es la siguiente: Apose -> Baja la cabeza -> Vuelve a mirar al frente y eleva los hombros -> Baja los hombros y a la vez eleva los codos flexionando los brazos -> Rotación externa de hombro para colocar los antebrazos en anteversión -> Se inclina hacia detrás con extensión de cabeza -> Regresa a la

postura erguida y realiza rotación interna de hombro y aumenta la flexión de codo para juntar los puños a la altura de los hombros -> Extensión de codos para recuperar la postura en A (Figura 1).

Page 6: Verificación del método de rigging y modelización 3D de ...

6

©

Figura 1. Ilustración del modo de captura 2.

MODO DE CAPTURA 3. Flexión de tronco y miembros inferiores.

La secuencia de movimientos es la siguiente: Apose -> Flexión de tronco a 45º, flexión de rodillas a 45º (con adducción del tobillo -> se puede eliminar) -> Flexión de codos con aducción de hombros -> Extensión de codos, espalda y hombro para recuperar Apose -> Flexión de cadera para elevar pierna derecha hasta la altura

de la cadera, (flexión de la rodilla según las posibilidades del sujeto) Los brazos se mantienen a los lados del cuerpo -> baja la pierna y realiza el mismo movimiento con la pierna izquierda -> Baja la pierna y coloca los brazos en Apose -> Flexiona la rodilla derecha a 90º -> Extiende la pierna derecha y flexiona la rodilla izquierda a 9º -> Extiende la rodilla izquierda y finaliza en Apose (Figura 2).

Figura 2. Ilustración del modo de captura 3.

MODO DE CAPTURA 4. Movimientos de tronco combinados con tren superior.

La secuencia de movimientos es la siguiente: Apose -> Flexión de hombros y codos a 90º -> Flexión lateral derecha del tronco -> Flexión lateral izquierda del tronco -> Rotación derecha del tronco -> Rotación izquierda del tronco -> Extensión de hombros y codos hasta Apose (Figura 3).

Figura 3. Ilustración del modo de captura 4.

MODO DE CAPTURA 5. Movimientos de tronco combinados con tren inferior.

La secuencia de movimientos es la siguiente: Apose -> Flexión de tronco y espalda con flexión de hombros y codos extendidos -> Flexión de caderas, rodillas, tobillos

Page 7: Verificación del método de rigging y modelización 3D de ...

3D-body-dynamics 7

Verificación del método de rigging y modelización 3D de tejidos blandos ©

y articulaciones metatarso-falángicas hasta llegar a cuclillas -> Extensión de las anteriores articulaciones sin extender cadera ni espalda -> Extensión de cadera y espalda con extensión de hombros hasta volver a Apose (Figura 4).

Figura 4. Ilustración del modo de captura 5.

Para validar el protocolo de captura y la batería de posturas y movimientos a

medir, se ha realizado un estudio piloto con sujetos de ensayo. En el estudio piloto, se han establecido los tiempos óptimos de medida para cada batería de movimientos. Se ha depurado la ejecución, controlando aspectos como el de mantener los puños cerrados para no interferir en el proceso de ajuste posterior.

El estudio piloto se ha realizado en varias sesiones en las que se ha ido mejorando el protocolo general midiendo con varios sujetos.

Se ha registrado con ropa distinta de escaneado para evaluar cómo afecta el tejido a la captura que, al ser óptica mediante la proyección de luz infrarroja, puede ser sensible a textiles que absorben luz, textiles reflectantes o a la diversidad de colores.

En han realizado sesiones ampliando el protocolo con gestos deportivos

propuestos por empresas participantes en el proyecto para analizar posibles aplicaciones con ellas (Figura 5).

Figura 5. Ejemplo de secuencia de medida de gesto deportivo.

Estudio experimental y preparación de los datos

En esta tarea se ha realizado el estudio experimental con usuarios para recabar

bases de datos para el entrenamiento del modelo de Deep Learning (DL). La población objetivo se ha centrado en hombres y mujeres entre 25 y 50 años con índices de masa corporal y morfotipos variados.

Page 8: Verificación del método de rigging y modelización 3D de ...

8

©

Las medidas se han realizado de acuerdo al protocolo validado en la tarea 1.2. Tras la experimentación del laboratorio, se ha realizado la exportación de los datos para su posterior procesado. Esta tarea ha requerido mucho más esfuerzo de computación del estimado inicialmente puesto que se han manejado más de 300 millones de puntos 3D por medida (Figura 6).

Figura 6. Ejemplo recortado de captura en bruto.

Además de los datos registrados en el laboratorio del IBV, se ha incluido la base de datos

libre AMASS que incluye 300 sujetos de ensayo y más de 11.000 movimientos. Esta base

de datos, se ha descargado, revisado y exportado para incluirá en el proceso anterior de

ajuste y etiquetado de datos (Figura 7). Se ha realizado un diezmado de los datos para

reducir el coste computacional eliminando datos redundantes que no aportan

información adicional para el entrenamiento.

Figura 7. Recopilación de bases de la base de datos AMASS.

La preparación de las bases de datos para la etapa de entrenamiento de la red de DL ha consistido en:

El ajuste de las mallas en bruto de las secuencias de movimiento para obtener modelos homólogos. Este proceso se ha realizado de forma

Page 9: Verificación del método de rigging y modelización 3D de ...

3D-body-dynamics 9

Verificación del método de rigging y modelización 3D de tejidos blandos ©

semiautomática puesto que no se tendrán aún los algoritmos automáticos. Precisamente este banco de datos ha permite automatizar este proceso.

El etiquetado de los datos, considerándose como dato tanto las coordenadas espaciales de los puntos de la malla homóloga como los escaneados en sí que se identificarán por género, edad, índice de masa muscular y morfotipo.

1.2 ENTRENAMIENTO DEEP LEARNING DE LOS MODELOS DE RIGGING Y TEJIDOS BLANDOS

Programación y entrenamiento del modelo DL

El modelo de ajuste y animación de mallas consiste en un modelo estadístico de PCA que explica la variación en forma, un esqueleto interno que gobierna el rigging (deformación de la forma con la postura) y su integración con el modelo de deformación de tejidos blandos. Para que el resultado tenga correspondencia inter-frame, se utiliza una red de DL que permite realizar la clasificación de puntos de forma automática.

En primer lugar, se ha realizado la programación de la red CNN. Se ha partido de la red PointNet++ desarrollada por la universidad de Stanford (Figura 8) para clasificar nubes de puntos 3D de objetos escaneado. Se ha integrado el código de la CNN en el framework de programación en el entorno de TensorFlow. Se han adaptado el número de capas de entrenamiento y los parámetros de éstas al problema concreto de clasificación de puntos de escaneados corporales

dinámicos.

Figura 8. Estructura de la red convolucional Pointsnet++.

Durante el proceso iterativo de programación, procesado y verificación, se han realizado adaptaciones que consisten en concatenar varias redes que permitan realizar clasificaciones más globales al inicio (ej. clasificación del punto en parte corporal) (Figura 9), para ir refinando la clasificación posteriormente (clasificación

Page 10: Verificación del método de rigging y modelización 3D de ...

10

©

del punto en su punto correspondiente de la topología de malla). Esto ha requerido la realización de adaptaciones sobre la preparación de los datos.

Figura 9. Distribución de partes corporales para realizar una pre-clasificación de la nube de puntos en bruto.

Tras la preparación de la base de datos y la programación de la red convolucional, se ha realizado el entrenamiento del modelo. Para ello se ha utilizado un equipo de altas prestaciones de cálculo con varias GPUs. Los entrenamientos con estos bancos de datos tan grandes requieren varios días de cálculo. Especialmente en las etapas previas de verificación de la red, se ha trabajado con bancos de datos pequeños que permiten detectar problemas globales de funcionamiento. Estos bancos de entrenamiento se han ido aumentando conforme se ha avanzado en la verificación de aspectos de detalle.

En total se han realizado 16 paquetes de entrenamientos para la red de clasificación del punto en su punto correspondiente de la topología de malla, en los que básicamente se ha ido aumentando la base de datos progresivamente para

incluir más variabilidad de posturas y morfotipos de sujetos. Para la red de clasificación del punto en parte corporal se han realizado hasta 10 entrenamientos probando diferentes tipos de rotación en la preparación de la información (Figura 10).

Figura 10. Resultados de la red de clasificación automática de puntos de la nube por zonas corporales.

Page 11: Verificación del método de rigging y modelización 3D de ...

3D-body-dynamics 11

Verificación del método de rigging y modelización 3D de tejidos blandos ©

El resultado de la clasificación de la red se utiliza en los algoritmos de rigging y deformación de tejidos blandos para obtener la secuencia de mallas 3D que describirán el movimiento con correspondencia inter-frame.

Diseño del modelo de mapas UV para la textura

El mapeado de texturas es una forma de proyectar imágenes sobre objetos 3D. Un mapa UV es una forma de asignar la parte de una imagen a un polígono en el modelo. Se trata de un estándar que permite exportar y abrir mallas 3D con textura en programas CAD que trabajan con este tipo de entidades. Para el caso del mapeado del cuerpo humano, se ha definido un UV de acuerdo al esquema de

la Figura 11.

Figura 11. Distribución del mapa UV sobre el cuerpo.

La lista de costuras del mapa UV para realizar el desarrollo de la textura es la siguiente (Figura 12):

Cuello. Cráneo. Plano sagital desde el

cuello hasta la frente. Barbilla. Frente. Espalda. Plano sagital desde el

cuello hasta la entrepierna. Axilas. Brazos.

Muñecas. Puños. Planta de los pies.

Figura 12. Representación en líneas rojas de las

costuras los mapas UV..

Page 12: Verificación del método de rigging y modelización 3D de ...

12

©

Estas costuras son correspondientes con líneas del modelo 3D patrón que se utiliza en el ajuste de mallas para asegurar la homología inter-frame. Por lo tanto, los mapas UV resultantes también serán homólogos.

Para realizar el cálculo de los mapas UV, se divide el torso como un caparazón de tres piezas: delantera superior, delantera inferior y trasera. Se separa el torso de las piernas y éstas se comportan como cilindros independientes en el despliegue.

Se ha verificado visualmente el realismo de la proyección de textura mediante este modelo de mapas UV y el resultado ha sido satisfactorio. Se han detectado posibilidades de pequeñas mejoras en algunos casos particularmente, en las líneas de la cara debido a la topología del modelo patrón 3D. A continuación, se representan dos mapas UV obtenidos a partir de las capturas 3D realizadas en la fase experimental (Figura 13).

Figura 13. Ejemplos de mapas UV homólogos calculados a partir de la información de color con el escáner..

2. VERIFICACIÓN DEL MÉTODO DE RIGGIG Y DEFORMACIÓN DE TEJIDOS BLANDOS

2.1 ESTUDIO DE PRECISIÓN DEL SISTEMA DE CAPTURA Y EL MÉTODO DE AJUSTE

Estudio experimental

En el estudio han participado 72 sujetos (36 hombres y 36 mujeres) distribuidos en edad y en índice de masa corporal (Figura 14) de acuerdo a la variabilidad de la población. Todos ellos han firmado un consentimiento informado para participar de acuerdo ala descripción del estudio aprobado por el comité de ética de la UPV.

Page 13: Verificación del método de rigging y modelización 3D de ...

3D-body-dynamics 13

Verificación del método de rigging y modelización 3D de tejidos blandos ©

Figura 14. Descripción de los usuarios participantes en el estudio

Cada usuario se ha medido con dos escáneres 3D y se han medido de forma manual por dos expertos en medidas antropométricas (Figura 15). En cada estación de medida, se han realizado dos repeticiones con el objetivo de obtener

un 5% de nivel de significación en el estudio, una potencia de test superior al 80% y un ICC esperado de ~0,95.

Figura 15. Ejemplo de las medidas realizadas en el estudio IEEE con dos escáneres y dos estaciones de

medida manual.

Resultados

La metodología estadística empleada para analizar la fiabilidad de un método de medición se basa en dos pilares fundamentales: precisión o repetibilidad y compatibilidad. Por repetibilidad se entiende la habilidad del método de generar resultados similares, mientras que la compatibilidad nos proporciona una medida de la desviación del método al compararlo frente a otros métodos de referencia.

Para el análisis de repetibilidad se emplearon 144 observaciones (72 sujetos x 2

repeticiones). Asumiendo que se tienen m repeticiones para cada sujeto de una muestra aleatoria de n sujetos, el modelo matemático se define como:

Page 14: Verificación del método de rigging y modelización 3D de ...

14

©

Ecuación 1. Modelo de cálculo de SEM

donde 𝑥𝑖𝑘 es el valor de la medida del sujeto i para la repetición k, 𝜇 es la media poblacional, 𝜋𝑖es el efecto aleatorio del sujeto i, y 𝜖𝑖𝑘es el error aleatorio o residuo.

A partir de este modelo se puede obtener el error de repetibilidad o SEM (error estándar de la medida) como la desviación estándar del error aleatorio 𝜖𝑖𝑘.

A continuación, se presentan los resultados parciales obtenidos en el estudio (Tabla 1).

Tabla 1. Resultados de SEM obtenidos en la captura y método de reconstrucción en A pose.

Medida SEM (mm)

Contorno de cuello 2.3

Distancia cuello-cintura 5.0

Contorno del brazo (derecho) 2.5

Longitud del brazo cuello-muñeca (derecho) 5.0

Anchura de la espalda 6.1

Contorno del busto 7.9

Contorno de cintura 6.5

Contorno de cadera 2.7

Contorno de muslo (derecho) 2.6

Longitud de la entrepierna 8.4

Longitud de la pierna derecha (cara interna) 3.1

2.2 VERIFICACIÓN DEL MODELO DE RIGGING Y DEFORMACIÓN DE TEJIDOS BLANDOS

La verificación del modelo de rigging y deformación de tejidos blandos se ha realizado mediante dos experimentos:

Evaluación del ajuste del esqueleto en posturas extremas: Tiene como objetivo analizar la robustez del método y el diseño del esqueleto para

𝑥𝑖𝑘 = 𝜇 + 𝜋𝑖 + 𝜖𝑖𝑘 𝑖 = 1, … , 𝑛; 𝑘 = 1, … ,𝑚

Page 15: Verificación del método de rigging y modelización 3D de ...

3D-body-dynamics 15

Verificación del método de rigging y modelización 3D de tejidos blandos ©

arrastrar la malla externa a cada postura sin crear artefactos y de forma automática.

Evaluación del método de ajuste de la malla a la nube de puntos en bruto: Se analiza cómo el método es capaz de reproducir las deformaciones de los tejidos blandos que se producen en posturas diferentes a la neutra, puesto que esta postura neutra, es la única representada en la matriz del modelo de forma.

Verificación del rigging mediante posturas extremas

Para verificar la adaptación del modelo de rigging (esqueleto) a posturas extremas de forma automática, se realizó un estudio de ajuste con una base de datos de 26 sujetos escaneados en una postura de ciclismo (Figura 16). En esta postura, todos

los segmentos del esqueleto de piernas, espalda, brazos y cabeza se mueven respecto a la posición neutra de pie.

Figura 16. Ejemplo de escaneados procesados con el modelo en postura ciclista.

En este proceso se han calculado los ángulos de posicionamiento del esqueleto respecto a la Apose. Los resultados obtenidos muestran que el posicionamiento del esqueleto y el ajuste de la malla han sido correctos (Figura 16) al comparar el modelo ajustado con el modelo en bruto.

Verificación de las secuencias de movimientos mediante mapas de distancias

El entrenamiento se ha verificado analizando un subconjunto de movimientos registrados en la fase experimental. Se ha calculado el mapa de distancias entre

los escaneados en bruto originales y las mallas ajustadas obtenidas (Figura 17).

Los resultados obtenidos en este estudio han sido satisfactorios. Los valores de distancia media han sido de 0,3 mm en las zonas sin oclusiones.

Page 16: Verificación del método de rigging y modelización 3D de ...

16

©

Figura 17. Método de verificación mediante mapas de error. De izquierda a derecha: nube de puntos en bruto, malla ajustada mediante el nuevo método y mapa de distancias entre el escaneado en original el

bruto y el modelo ajustado. verificación del proceso de ajuste con el modelo de rigging y tejidos blandos.

En total se han analizado 240 ajuste correspondientes a distintas secuencias de movimientos y distintitos sujetos. A continuación, se ilustran algunos de los resultados obtenidos (Figura 18, Figura 19 y Figura 20).

Sujeto 1

Sujeto 2

Figura 18. Cuclillas. En la imagen se han representado cuatro instantes de la secuencia del movimiento de

dos sujetos.

Page 17: Verificación del método de rigging y modelización 3D de ...

3D-body-dynamics 17

Verificación del método de rigging y modelización 3D de tejidos blandos ©

Figura 19. Representación de los mapas de error de cuatro instantes de la secuencia de un salto vertical.

Figura 20. Representación de los mapas de error de tres instantes de la secuencia de carrera.

Los resultados muestran que el error de ajuste es cero en la mayor parte de la superficie (color rojo) llegando a valores máximos de 2mm (color azul) en algunas posturas en las zonas próximas a las articulaciones. Este error se considera adecuado para las aplicaciones consideradas en el proyecto.