I had always wanted to recreate the bullet-time effect from the Matrix. But this gets really expensive and doesn't scale well if you are using a $300 DSLR for every camera. PiShot makes use of $5 Raspberry Pi Camera modules to get a similar effect.

The main challenge was to hack the Pi camera drivers to work in global exposure mode instead of rolling shutter, and making sure that the 16 Raspberry Pi's were all timed just right to the external strobe light.

Technical Report


Creating data visualizations is a lossy process, a user's code and data is compiled in the form of a static image. These images are the default form of data visualizations, and are ubiquitous across both social media and academia.

As visualization researchers, this lossy compilation into images makes it very challenging to experiment and tweak with design decisions of the original author.

In this work, we present a novel deep-learning based algorithm that can decompile an image visualization, allowing researchers to easily edit and inspect its visual design. Our method and domain-specific language is more general than previous approaches and is extensible to more types of data visualizations without the need for expert-tuned heuristics.


For performing large scale reinforcement learning experiments, researchers tend to replicate their environments across a distributed cluster. However, this doesn't allow agent-agent interactions across these replicated environments.

Chunky is a distributed, fault tolerant multiplayer game framework that can shard any spatial game-like simulation across a cluster of machines.

Technical Report

I think many amazing ideas have felt the wrath of PowerPoint. Don't get me wrong, it's a great tool for most things, but humans are visual creatures, we like pretty things move and whizz in snazzy ways.

I wrote KeyFrames to allow me to create animated presentations easily. It runs super fast thanks to WebGL in the browser. It has all the collaborative tools that one has come to expect of web apps.


  • First Place, MIT's Web Programming Competition (web.lab)

This project was done at the MIT Media Lab Design Innovation Workshop 2014. We used a Kinect to figure out where the paper is in 3D space, and transformed our graphics onto the sheet using a projector.



For MakeMIT, we built a robot that used a mouth detector to find where a person's mouth is, localize it in 3D space, use inverse kinematics to figure out the optimal parabolic trajectory to perfectly launch MnM's into the user's mouth. I think we came in last place, but had a lot of fun making people laugh :)

This project was done with: Mason Massie, Alex Hatori, and Michael Kaminsky.


I built this before HoloLens existed, back in 2015. Uses a beam splitter, an OLED, and a homemade micro-lens array to have a very short focal length and project large mixed-reality graphics in 3D onto the eye.


Robot that does my homework! Built back in high school. Uses Alex Grave's RNN to generate handwriting.


Back in high school I was a huge Chemistry nerd. I loved doing organic synthesis from very little resources and starting reagents. Part of that got into building amateur rockets.

I love DJing! I grew up on Avicii and Martin Garrix, and love listening to progressive house. DJing controllers were extremely expensive in India, so in high-school I built one myself! My hard disk crashed, and I wanted to take revenge, so that turned into the turntable. Almost everything was extracted from junk, the acrylic was laser cut and all the plastic pieces were 3D printed. The micro-controller used was from a broken Ardupilot Mega that couldn't be used for flights anymore.

The video is a mini build log of the whole process.

Same as above, Electric Guitars can be very expensive. Again, this was done in high school in India. I modified my acoustic guitar and built an electronic pickup. Uses machine screws as the core, generous donation of magnet wire from a local speaker shop, a power drill to wind the coil very carefully, and some fun DSP software programming to have it virtually for free.

Shreyas Kapur's Projects