Categories
Computer Vision

yOgA sTrUcT

Although I really enjoy learning, certain topic could be a long and arduous journey which often land me scrolling through the internet looking at dogs and cats or random youtube music videos. Thus, instead of researching or learning a computational topic in depth today, the designer in me decided to write some cheap quick and easy code but able to get something appear on my screen just for the cheap thrill of feeling like a “CoMpUtAtIoNaL DeSiGnEr”.

Beside being a computational designer, I am also a recent practitioner of yoga. While trying out new and more challenging poses, I often find the process of balancing as something iterative. Once finding the balance, the right spot, the pose become much easier and require much less strength. Inspired by the practice, I been trying to bring images of yoga poses photo to a 3D vector skeleton in Rhino.

I run the yoga pose image through two algorithm: poseNet and denseDepth. poseNet returns the human skeleton, with the “coordinates” of the joints. These coordinates are then mapped onto denseDepth image, return us the “brightness” of that pixels. All these numbers are then brought into Rhino and make up a 3D human skeleton.

Gratitude-Asana_Briohny-Smyth_Warrior2

Original Image

PoseNet - December 15th 2019 at 10.20.27 PM

PoseNet

Gratitude-Asana_Briohny-Smyth_Warrior2 Dense Depth

Dense Depth

Gratitude-Asana_DD MappedJts

Dense Depth with mapped joints (zoom in closely)

3D result…sorry for the exploded head hehe.

I understand that there are much better algorithm to do this such as densepose and the result looks very different from the image, but hey this is just an attempt for me to have some fun!

By Chau Nguyen

I'm currently working as a computational designer. My present work involves writing plug-ins for Grasshopper and Dynamo, and working with existing algorithms to run optimizations, perform environmental simulations, visualize geometries, among many other things. In short, I dabble in anything under the sky that could be done with the help of computation. My background is in architecture - I am by no means a professional programmer or a mathematician. My approach to technology is from a design perspective.

Over the years, I have done a lot of research and personal trial and error to learn new technologies. Being in the pioneer cohort of my alma mater and now being a pioneer of computational design in various workplaces, I have often had to learn without much guidance. That has meant spending lots of time spent swimming in the dark sea of the internet, digging deep for gems and piecing them together for my own understanding. This learning has taken piecemeal, even scattered form. This blog will serve to store and categorize this learning, as well as structure my ongoing learning. At the same time, I wish to share, help and connect with others who may be sharing my struggles.

What I write in this personal corner of the internet will be mainly the understandings I have arrived at through personal research. If you find anything wrong, inaccurate, or unclear, please do leave a comment. I'd be delighted to learn that way. Thank you.

Leave a comment