class-projects

an archive of projects in this category

Energy-Aware Camera Scheduling for Opportunistic 3D Mapping: Wearable devices operate under stringent energy constraints and cannot continuously capture video. This raises a fundamental systems question — given a limited sensing budget, when should a mobile device collect visual data to maximize the coverage and freshness of a continuously evolving 3D map? We address this with IndoorMapper, a budget-aware sensing framework for opportunistic 3D map maintenance that localizes users within an existing map, estimates the utility of potential observations, and dynamically allocates a user-specified sensing budget across a user’s trajectory.
BLINC: A Fault-Tolerant Neural Codec for Wireless Real-time Video Streaming: Wireless real-time video applications such as AR/VR, drones, cloud gaming, and broadcast streaming cannot always wait for retransmissions when packets are dropped or corrupted. In this project, we seek to understand whether a video codec preserve visual quality when wireless links deliver partially corrupted packets rather than only clean packets or full packet losses. We address this with BLINC, a bit-loss-insensitive neural codec that combines segmented entropy encoding, segment-wise loss-aware fine-tuning, and Wi-Fi link-layer integration to enable graceful degradation under bit-level corruption while reducing retransmissions and wireless airtime.
Star Battle Puzzle Game: For the final project in MIT’s Software Construction class, I worked in a group of three to implement a puzzle game in TypeScript. I leveraged software engineering techniques such as writing design specifications, performing code reviews, and building unit tests & CI/CD pipelines to ensure safe, maintainable, and reliable software for a client–server system.
Plug-and-Play Self-Supervised Temporal Consistency Refinement for Monocular Depth Estimation in Video: For the final project in MIT’s Introduction to Computer Vision class, I worked on a lightweight self-supervised refinement model with PyTorch that improves monocular video depth estimation by enforcing temporal and visual consistency across frames. Our plug-in approach enhances single-image depth predictions with smooth, stable results while remaining more efficient than bulky state-of-the-art methods.
Image Inpainting: Designed and implemented process for inpainting regions in images by interpolating structure (image gradients) using a Poisson solver and color values via PDE’s (anisotropic diffusion) in C++.
UNIX-like Operating System: Implemented several key parts of virtual memory system, network protocol stack, system call interfaces, and file system in C.
RISC-V Processor Optimized for Neural Network Inference: Built CPU with 4-stage pipeline, bypassing, and custom instruction set extensions for inference. Implemented loop unrolling and function inlining code optimizations.
Object Tracking & Gesture Recognition: Created interactive game with real-time hand-tracking and neural network-based gesture identification using OpenCV and TensorFlow in Python. 1st place term project.