Skip to content ↓

Final projects from the fall by Jenny B. '25

three coding projects and an alien in disguise

I had four final projects this past semester. As busy as I was for the last several weeks of the semester, I was so relieved that I didn’t have exams. I love making things, and I hate exams.

6.8371 – Digital and Computational Photography

Final report

I only took this class because the course ratings were high, but it ended up being one of my favorite classes that I’ve taken. We learned how to create image-editing effects in C++ that would normally take much longer to replicate manually in Photoshop.

A "mini-planet" image of a Mars rover, created by autostitching

My favorite pset was about autostitching, or automatically stitching together separate images of the same scene. Autostitching can be used to make panorama shots and even “mini-planet” images, like this! (credit: 6.8371 staff, NASA)

We were given a list of options to choose from for our final project. I chose “Deconvolution and Poisson Image Editing.” Basically, image deconvolution tries to make an image clearer by algorithmically undoing optical distortions and blurring effects, while Poisson image editing is a method of automatically combining two images together in a way that looks seamless and natural as possible.

comparison of a blurry image ("stinky and blurry") and a deconvolved version of the image which looks sharper ("YASSSS")

Image deconvolution

a foreground image of a bear, a white-and-black mask of the bear (where white pixels correspond to the bear and black pixels correspond to everything else in the image), and a background image of a pool. on the right is the result of poisson image editing, where the bear is placed in the pool image so it looks like it's swimming in the pool

Poisson image editing — it’s hard to tell but the “WOW” is in uppercase

6.4210 – Robotic Manipulation

Research paper and presentation

Nora (one of my roommates from freshman year) and I teamed up to work on a simulated robotic arm that can detect and stack cups into a pyramid. Spoiler: it works!

a robot arm stacking three cups into a pyramid

We aren’t controlling the bot; it’s moving by itself! The visual perception system uses depth image input from RGB-D cameras to locate where the cups are in the environment, and the grasp- and motion-planning system uses inverse kinematics to maneuver the cups with the robot hand.

a powerpoint slide explaining the perception system of the project

Cool slide from our presentation

a powerpoint slide explaining the motion and grasp planning system of the project

More cool words

We coded this with the Python version of Drake, which can be used for creating robotics simulations like these. A lot of time was spent trying to understand the documentation and how to make sense of Drake in general, but we were miraculously able to deliver the results that we wanted.

21W.744 – The Art of Comic Book Writing

Final script, and some storyboards

This class wasn’t about making an entire comic, but about writing the script for one. Although more rigorous than I expected, I really enjoyed doing the assignments and felt like I improved as a storyteller by the end.

Whether I actually improved or not is up for debate. I couldn’t decide what to write about for my final project, so I took a theory I have about Tom Cruise and wrote a 20-page script based on it. The final script is about an alien who crash-landed on Earth, and disguised himself as a Hollywood actor so he could get rich enough to buy a spaceship and return to his home planet. My professor had to read the whole thing with his own eyeballs.

a 3-panel comic. first comic is a green alien looking at his crashed spaceship saying "HOLY CRAP MY SPACESHIP". second panel is a stick figure saying "screw florida, i'm gonna leave this place and become a huge hollywood director. if only i had an extremely photogenic actor i could work with". third panel is the alien disguised as a good-looking man saying "make me rich" and the stick figure thinking "cha ching".

The CliffNotes version

What matters is that I had fun. Also, I somehow got an A.

9.66/6.4120 – Computational Cognitive Science

Research paper

The final project generally had to be a model that attempts to reflect an aspect of human cognition in some way. Unfortunately, I procrastinated until I only had two weeks to work on it. Luckily, the TAs gave us a list of project ideas that we could choose from.

Based on one of the suggestions, I tried to make a Bayesian model for how a player’s confidence changes over the course of a word-guessing game, where they have to guess the letters in the mystery word (think Hangman or Wordle). “Confidence” means how confident the player feels that they know what the right word is.

I collected some data from friends, and then I coded a model that inputted every game state in a single game. A game state included which letters the player has guessed correctly/incorrectly so far. For each game state, the model returned (1) what word it thinks it is (2) how confident it is in its guess.

two graphs, where one graph shows a player's changes in confidence over the course of a word-guessing game, while the second graph shows a bayesian model's confidence

The player’s confidence over the course of a game, compared to the model’s confidence

The model didn’t do a good job at matching the data, as expected. I somehow pieced together a whole research paper with the results that I got. I even made the outrageous claim that this project had “possible implications” for how educators could model students’ confidence levels from test results. Somehow, I got a decent grade.

a poorly drawn ms paint star with "there was an attempt" written on it