- 💻 Software Engineer
- 📚 Interest in Software Development, AI, ML, Computer Vision
- 🏫 Computer Science B.A.
F1Tenth is an autonomous racing league where universities design self-driving cars to compete for the fastest car. For our ECS Capstone project, we collaborated with Prof. Nazari's CORE Lab to develop the perception and control for the lab’s race car, enabling it to autonomously navigate a race track while avoiding obstacles, in preparation for future F1Tenth competitions.
- Mapping (SLAM)
We use SLAM (Simultaneous Localization and Mapping) to map the track before the race. The map is used for localization and planning during the race. - Raceline Optimization
With the map from SLAM, we generate a time optimal path around the race track using CV. - Particle Filter
During the race, we use LiDAR scans and vehicle odometry to localize the car on the map. - Pure Pursuit
The car is driven by a global path-tracking controller that follows the path generated by raceline optimization. - Gap Following
When an obstacle is detected, the car switches to a local obstacle avoidance controller that steers it towards the largest open gap detected by the LiDAR.
Davis RC f1tenth_stack
ROS2 Simulation
Design an AI algorithm to efficiently and competitively play the game of connect-4.
Developed an AI agent for Connect 4 using the minimax algorithm (based on Q-Learning) and alpha-beta pruning to optimize game strategy and performance.
Designed a graphical user interface (GUI) using Pygame, providing an interactive and user-friendly platform for playing Connect 4.
repo
A YouTube Controller using hand gesture recognition, employing the MediaPipe library for Python.
Use the pre-trained hand gesture detection (hgd) model that was initially developed by Kazuhito00.
Used translated version.I developed a Java-based YouTube video controller to extract outputs from a Python-based HGD and integrate them seamlessly.
repo
The Enigma machine is a cipher device developed and used in the early- to mid-20th century to protect commercial, diplomatic, and military communication. It was employed extensively by Nazi Germany during World War II, in all branches of the German military. The Enigma machine was considered so secure that it was used to encipher the most top-secret messages.
-wikipedia-
repo
We often seen fixed-precision integers. For example, int64_t, uint32_t in C/C++, i64, u32 in Rust. These integers have a fixed width and a limited numbers they can represent.
If the number were any larger (or smaller), the representation is incorrect. For example, in C (uint32_t) 0xffffffff + 1 == 0.
This may be very in-convenient and error prone when we are carrying out large scale computations.
However, integer in Python doesn't seem to have this limitation and can represent arbitrary precisions. You can calculate any integer operations without worrying the upper bound or lower bound.
This caculator can computes large scale computations.
repo
Initially, we attempted to implement vehicle detection using purely computer vision techniques, including edge detection and background subtraction.
To find a better vehicle detector, we tried machine learning-based methods like You-Only-Look-Once (YOLO). YOLO is a popular object detection algorithm known for its speed and accuracy.
repo