Michael Fatemi

Michael Fatemi

Let's chat!
michael [at] michaelfatemi.com
Or connect with me on LinkedIn

I'm Michael Fatemi, a software developer and machine learning enthusiast. I'm currently an undergraduate studying Computer Science and Mathematics at the University of Virginia/UVA.

Robotics Lab

I am researching robotic intelligence with the UVA Collaborative Robotics lab, with a specific focus on semantically-grounded motion planning and human-robot interaction.

Enabling 3D object detection with a visual fiducial system (AprilTags). We're using a set of 2 Microsoft Kinect cameras and a Franka Panda arm. The green cube represents a 0.5m x 0.5m x 0.5m volume. Our goal is to enable motion planning that works purely through vision models.

Autonomous Racing Team

I am also a member of UVA's Autonomous Racing Team, where I work on algorithms to detect and overtake opponents in real-time. Recently, I trained a YOLO-based computer vision model to detect opponents, and cross-calibrated our camera setup with LiDAR sensors to enable depth estimation.

We got second place at the Indy Autonomous Challenge at CES 2024 in Las Vegas!

LiDAR point cloud overlaid with images
3D render of camera positions and field of view

I cross-calibrated our cameras with our LiDAR sensors to enable us to estimate the distance of opponent vehicles. Notice the opponent vehicle in light orange on the left image.

Intelligent Systems Research with University of Maryland

I also developed robotic path planning techniques using deep reinforcement learning with graph neural networks as part of a summer program with the University of Maryland and the US Army Research Lab. I improved upon a prior version of a robotic path planning algorithm by enabling inference at a 30x higher speed on 100x larger environments. I will be presenting this as a poster at AAMAS 2024 (International Conference on Autonomous Agents and Multiagent Systems).

The agent learns to generate paths that can are ambiguous about the ultimate goal when given different "budgets" for deceptiveness.

Bioinformatics Research with Dartmouth

Previously, I was a student researcher at Dartmouth's Emerging Diagnostic and Investigative Technologies lab, where I used deep computer vision and statistical techniques to predict cellular activity using spatially-resolved transcriptomics for colorectal cancer tissue slides.

LLM Contracting

Additionally, I worked as a contractor with Kyron Learning, where I developed methods to improve the factual accuracy and tutoring capabilities of language models. This included creating a Python API and React website to demonstrate novel language modeling techniques, and the implementation of pipelines like ReAct/chain of thought and decomposing lessons into subgoals to improve an LLM's ability to adhere to a coherent lesson plan.

I collaborated with several educators to create a pipeline where students could watch along with videos and be asked questions at AI-suggested interaction points.

I am currently an undergraduate at the University of Virginia, graduating in 2026. I am majoring in computer science and mathematics. I went to the Thomas Jefferson High School for Science and Technology.

Projects

AugmateAI

Early November — Late December 2022; 10 paid users

In this project, I sought to create a way to use language models for research-oriented writing. It provided the following primary features:

This was implemented as a React app (code is here) and a set of AWS Lambda functions (code is here). The backend used OAuth2 for authentication and a MongoDB database to store user profiles. I used OpenAI's (now-deprecated) text-davinci-003 model for text generation. I eventually reached 10 paid users (yay!), and I shut down the project when ChatGPT was released.

Sound Camera

Sound camera: Example imageSound camera: Hexagonal microphone array with a camera on the top face and a Raspberry Pi below that.

Left: An image generated by the sound camera, of my phone playing music. Right: Hexagonal microphone array with a camera on the top face and a Raspberry Pi below.

For a year-long student research project in high school, I made a "sound camera" with a Raspberry Pi, an embedded webcam, and a microphone array. It is capable of detecting the locations of sounds within 8º of accuracy purely through a grid of microphones, and displaying them in real-time.

To handle conflicting sounds from multiple frequencies, I improved upon an existing algorithm (Steered-Response Power Phase Transform/SRP-PHAT) by using a Discrete Fourier Transform to separate a measured signal into segmented frequency bounds and then convert those back into the time domain with an inverse transform. This was helpful because loud, low-frequency sounds (such as ambient noise) would sometimes drown out higher-frequency, meaningful sounds (such as voices).

I then created an algorithm written in C to assess potential directions of arrival and connected a webcam to enable visualization . Most of my code is on my own repository, sound-camera, but I also added some tools I created to another open-source library, ODAS, which has 700 stars.

If you want to read more about how I made it, see this document or this video.

WheelShare

An app to simplify carpooling: students can easily find people to carpool with for after-school events, eventually getting 300+ users. Worked with school administration and sports coaches to get schoolwide adoption. Helps students who live far away from a school to have the same access to after-school activities as people who live nearby, especially if they are unable to drive themselves. Stack used: Frontend: Typescript React Backend: Node.js/Express, Prisma ORM, PostgreSQL database Hosting: DigitalOcean droplets, VPC for database security

EyeOS

An app that enables the disabled to control their computer mouse with their eyes: after a quick calibration step, the computer would detect which section of the screen they were looking at with 90% accuracy and move the mouse there. Then, via voice recognition provided by Google Cloud, they could click on those parts of the screen, type, search the web, and perform other tasks. Won 1st Place at the HooHacks 2020 Hackathon, an official hackathon organized by students at the University of Virginia. Utilized Haar cascades, DLib facial recognition, a custom iris detection algorithm made with OpenCV, and voice recognition from Google Cloud.

Publications

Robotics

Deceptive Path Planning via Reinforcement Learning with Graph Neural Networks. Michael Y. Fatemi, Wesley A. Suttle, Brian M. Sadler. Poster presentation at AAMAS 2024.

Bioinformatics

Spatial Omics Driven Crossmodal Pretraining Applied to Graph-based Deep Learning for Cancer Pathology Analysis. Zarif Azher, Michael Y. Fatemi, Yunrui Lu, Gokul Srinivasan, Alos Diallo, Brock Christensen, Lucas Salas, Fred Kolling IV, Laurent Perrard, Scott Palisoul, Louis Vaickus, Joshua Levy. Pacific Symposium on Biocomputing, 2024. (Paper)

Potential to Enhance Large Scale Molecular Assessments of Skin Photoaging through Virtual Inference of Spatial Transcriptomics from Routine Staining. Gokul Srinivasan, Matthew Davis, Matthew LeBoeuf, Michael Y. Fatemi, Zarif Azher, Yunrui Lu, Alos Diallo, Marietta Saldias Montivero, Fred Kolling IV, Laurent Perrard, Lucas Salas, Brock Christensen, Thomas Palys, Margaret Karagas, Scott Palisoul, Gregory Tsongalis, Louis Vaickus, Sarah Preum, Joshua Levy. Pacific Symposium on Biocomputing, 2024. (Paper)

The Overlooked Role of Specimen Preparation in Bolstering Deep Learning-Enhanced Spatial Transcriptomics Workflows. Michael Y. Fatemi, Yunrui Lu, Alos B. Diallo, Gokul Srinivasan, Zarif L. Azher, Brock C. Christensen, Lucas A. Salas, Gregory J. Tsongalis, Scott M. Palisoul, Laurent Perreard, Fred W. Kolling IV, Louis J. Vaickus, Joshua J. Levy. Submitted for review. August 2023. (Preprint)


Inferring Spatially-Resolved Transcriptomics from Cell Detections. Michael Y. Fatemi, Yunrui Lu, Cyril Sharma, Eric Feng, Zarif L. Azher, Alos B. Diallo, Gokul Srinivasan, Grace M. Rosner, Kelli B. Pointer, Brock C. Christensen, Lucas A. Salas, Gregory J. Tsongalis, Scott M. Palisoul, Laurent Perreard, Fred W. Kolling IV, Louis J. Vaickus, Joshua J. Levy Submitted for review. August 2023. (Preprint)

Inferring spatial transcriptomics markers from whole slide images to characterize metastasis-related spatial heterogeneity of colorectal tumors: A pilot study. Michael Y. Fatemi, Eric Feng, Cyril Sharma, Zarif Azher, Tarushii Goel, Ojas Ramwala, Scott M. Palisoul, Rachael E. Barney, Laurent Perreard, Fred W. Kolling, Lucas A. Salas, Brock C. Christensen, Gregory J. Tsongalis, Louis J. Vaickus, Joshua J. Levy. March 2023.Journal of Pathology Informatics. (Paper, Video)

Clubs and Project Teams

University of Virginia Autonomous Racing

We are competing in the Indy Autonomous Challenge, where teams from around the world (UVA, MIT, CMU, KAIST, TUM) put their algorithms head to head in an autonomous Indy 500. We're using LiDAR sensors, cameras, and GPS to navigate the track. I am implementing algorithms to accurately detect other cars and plan methods to overtake opponents in real-time.

University of Virginia Solar Car Team

Working to develop a solar-powered car. Recently, I contributed to the development of a regenerative braking system to improve the car's battery efficiency. I mostly developed embedded software using Mbed OS and C++. I also gained experience using Docker as a simulated build environment.

Virginia Entrepreneurship Organization

I help organize events and workshops to help maintain a strong and dense community of builders at UVA.