My Projects

Bevy 3D Dodge - Reinforcement Learning Game

Bevy 3D Dodge - Reinforcement Learning Game

BevyRustPythonGymnasiumStable-Baselines3PyTorchSACPPO

A 3D projectile dodging game built with Bevy Engine (Rust) integrated with Gymnasium for reinforcement learning research. The project explores continuous control RL algorithms (PPO and SAC) using Stable-Baselines3 to train agents that learn optimal dodging strategies. SAC achieved 2.4x better performance than PPO with half the training steps, with a 15% success rate of surviving indefinitely (1000+ steps) in challenging scenarios with randomized projectile patterns.

ViewSkater

ViewSkater

RustIcedwgpu

A fast data viewer for viewing a large number of images, written in Rust. I always had the pain of having to manually plot image samples with matplotlib, or using slow built-in image viewers during explatory data analysis (EDA) for ML projects. This desktop app aims to alleviate this issue by dynamically caching images and providing UI with a responsive slider and a dual-pane view (which I can extend to N panes later).

Instance segmentation demo (2022/08)

Instance segmentation demo (2022/08)

PythonPyTorchJavascriptVue.jsNuxt.jsGCP

A tech demo on performing cloud inference with GPU/CPU servers. This was a remove.bg clone where you can drag&drop images to do semseg and cut out segmented regions. Currently discontinued but I will host another cool model in the near future again!

Synthetic data generation with Unreal Engine 5 (2023/02-06)

Synthetic data generation with Unreal Engine 5 (2023/02-06)

Unreal EngineC++Python

A prototype UE5 project for generating synthetic instance segmentation dataset.

Synthetic data generation demo with Unity Perception (2022/11-12)

Synthetic data generation demo with Unity Perception (2022/11-12)

UnityUnity Perception

A simple Unity Perception project to generate images of defected metal parts. Did this project as a PoC for one of my clients.

People tracking at indoor scenes @ Araya, Inc. (2022)

People tracking at indoor scenes @ Araya, Inc. (2022)

PythonPyTorchOpenCV

Developed and delivered object detection and tracking models with Python APIs for indoor surveillance camera footage. Implemented YOLOX for detection and ByteTrack for tracking. Achieved 77.1% person detection rate and 99.7% vehicle detection rate on evaluation data. Also built data processing pipelines for model training and annotation workflows.

Semantic segmentation for arc welding robots @ Araya, Inc. (2021-2022)

Semantic segmentation for arc welding robots @ Araya, Inc. (2021-2022)

PythonPyTorchOpenCV

Developed and delivered semantic segmentation models and Python APIs for arc welding robot manipulation. Led the annotation process using CVAT and trained models robust to welding fumes using data augmentation techniques. Achieved 88.3% mean IoU on evaluation data, enabling automatic line tracking control for welding robots in real time.

Binary action recognition of pedestrians @ Perceptive Automata, Inc. (2020)

Binary action recognition of pedestrians @ Perceptive Automata, Inc. (2020)

PythonPyTorch

Delivered an action recognition model which was used for internal video analysis. We used a recurrent-convolutional network to predict whether the pedestrian in a given ROI is standing or walking.