Hoy te quiero mostrar un proyecto que me ha llamado la atención. La Digitalización humana 3D desde una imagen gracias al proceso de las redes neuronales. La tecnología y la inteligencia artificial avanza cada vez más rápido y utilizaremos este proceso para crear tu primer clone 3D para la realidad aumentada gracias a PIFuHD Spark AR!
El proyecto se llama PIFuHD y es parte del trabajo Facebook Reality Labs y Facebook AI Research. En esta web encontrarás todo la documentación científica para comprender el proceso y lo mejor de todo es que tenemos un Demo para replicar. Este proyecto nos permitirá digitalizar en 3D una persona todo a través de una simple foto. A mi particularmente se me viene a la mente la fotogrametría, que a través de fotos digitalizas objetos, pero en esta ocasión el proceso de convertir una imagen en 3d es super rápido y con resultados muy buenos.
Lo primero que debes hacer es hacer clic a colab dentro de la página de GitHub. Se abrirá Google Colaboratory, los que no se pierden ningún video de mi canal ya habrán visto esta plataforma. Lo hemos usado para crear lentes de Snapchat con SnapML. En esta ocasión realizaremos un trabajo similar, pero antes de entrar crearemos nuestro foto de trabajo.
Primero tómate una foto donde se vea todo tu cuerpo. Esta requiere un proceso especial sobretodo para limpiar el fondo. Hay que diferenciar el cuerpo del fondo, por eso vamos a Remove Background para separar el fondo y el cuerpo. Puedes poner el efecto blur.
Tutorial PIFuHD Spark AR
Lo primero que necesitamos hacer es copiar este demo en tu carpeta de google drive de esta manera, le cambias de nombre para diferenciar el trabajo. Conectamos el proyecto, por lo general siempre se conecta con GPU.
Vamos a comenzar a dar clic a run en cada apartado del código. Te recomiendo entender cada punto, sobretodo los iniciales, básicamente clonaremos el repositorio de trabajo, luego configuraremos las imágenes a trabajar. En este punto podemos subir nuestro propio archivo. Aquí agregaremos la foto.
Una vez que esté listo, veremos el archivo en la carpeta “samples”, luego tendremos que cambiar la ruta para que todo funcione correctamente. Vamos avanzar en cámara rápida cada proceso. Se podría decir que la librería pytorch es una de las estrellas en este proceso. Esta es una librería desarrollada principalmente por Facebook Research. Ya llegamos a la etapa final de obtener los archivos. Los objetos 3d se encuentra en la carpeta “results”. Podemos descargar OBJ y PNG.
Modificaciones en Blender
Vamos a blender! Importaremos nuestro archivo OBJ, presionamos TAB para pasar en modo editar y limpiamos elementos que no son necesarios. Clic a “material properties” y ya tiene un material cargado.
Le daremos clic a “select”, se seleccionó todo el objeto. Luego vamos a UV Editing. Aquí llamaremos a nuestra imagen que utilizamos para procesar. Necesitamos mapear de manera inteligente. Hacemos clic a UV y luego a project from view. Se creó la malla para el UV Editing. Ahora vamos a ajustar para que encaje correctamente, por este lado haremos clic a “shader editor”. Presionamos Shift + A para agregar el image texture. Lo conectamos de esta manera y ahora seleccionamos nuestra imagen.
Podemos ir a layout, luego a material y veremos como importé la textura correctamente. Aunque hay cosas que mejorar definitivamente, como por ejemplo que en la nuca veas nuevamente tu rostro.
No es necesario que utilices la textura real, podemos ser más creativos. Me gusta entre muchas cosas los temas sobre el universo así que agregaré una textura de esta. Seguiré los mismos pasos que has visto hace poco! no te olvides de practicarlo. Está genial! ahora vamos a exportarlo correctamente con Spark AR Toolkit.
Trabajamos en el modo objeto. Presionamos N para ver este menú lateral. Seleccionamos el toolkit y lo primero que haremos es reducir los “triángulos”. La escala también podemos reducirla. Listo vamos a exportar en formato GLTF. Ahora vamos a a Spark AR.
Importación a Spark AR
Vamos a trabajar con plane tracker. Esta última actualización de Spark AR permite seleccionar los populares trackers y ya te incluye el trabajo del patch editor. Importamos el archivo. Ahora lo colocaremos dentro de la jerarquía del “placer”. Vamos a reducir un poco la escala. Podemos cambiar el environment texture, pero bueno ya depende de ti. Cuando tengas todo en su lugar, vamos a probarlo.
Patreon
Si desear apoyarme para mantener mi sitio web y descargar los archivos de trabajo de PIFuHD con Spark AR, puedes hacerlo accediendo a mi patreon.