show: all  february  march  april  may
week 05feb 26, 2025This week, I realized I needed a way to test my "blobification" algorithms without having to wave my arms in front of my laptop. I decided to create a test script that would take sample images as input and output their blobified forms. I saved a few images of my body contour and wrote a script to run them through the blobification functions. Unfortunately, I encountered issues because some functions require a browser context to work properly.

At the same time, I was also thinking about the networking side of Blobby. During my demonstration last week, someone asked a great question about how the six webcams would be able to process images simultaneously at a consistently high frame rate. When planning the project, I imagined that webcam processing would take place on a separate machine, allowing the workload to be distributed efficiently. However, I wasn't completely sure how this would work, so I spent some time this week exploring potential hardware and software setups.

First, I researched ways to connect webcams to a machine and discovered that some webcams can directly broadcast to an IP address. I started thinking that an external server, such as an IDM server, could pull the live feed from the IP, blobify it, and send the blob shapes to the host computer. The host computer could then arrange and display all the blobs.

In this setup, the webcam processing would occur outside of the website, eliminating the need for JavaScript. To quickly prototype this, I created a Python script using OpenCV that takes a webcam feed from a URL and continuously runs the MediaPipe (Python) segmentation model on it. I also wrote a separate script to broadcast my webcam to a localhost URL and I ran both scripts simultaneously. I found that the FPS of the Python model is lower than the BlazePose JavaScript solution, and there’s some delay. However, the demo serves as a good proof-of-concept that external webcam processing can work.



©Aditi Gupta
New York University
Integrated Design & Media (IDM) Graduate Thesis