Welcom to Jason's page

Interested in Robotics, Machine Learning and Computer visions. Also writes some apps, website and game.

@Jasoni111 @CodeSomethingDaily jason1999621@gmail.com

Project showcase

Beauty and the Health Business website

A business website built for a facial beauty and Pilates training company. It uses Next.js for both the front-end and back-end and Tailwind CSS for styling. The website can notify the owner via email when a new appointment is made, with the help of serverless technology. Server-side rendering improves SEO.

ReactJS
NextJS
Tailwind CSS
Responsive Web Design
SEO

Novel Viewer

An app written for the ease of reading novels from different websites. It keeps track of your reading progress, allows you to filter by name and favorites, and detects updates with the help of a local ObjectBox database. The app can parse simplified Chinese in GB encoding and display them as traditional Chinese characters using Unicode. It also caches images to reduce data usage.

Flutter
Java
OpenCC
ObejctBox
Local Storage
Web Scraping

Image to Image translation between Anime faces & Human faces

We exploried different approach to generate anime face based on human image, using different machine learning techinque such as CycleGAN, XGAN, PGGAN. CelebA dataset, Getchu dataset and Danbooru2019 dataset was used in this project

Python
PyTorch
Machine learning
GAN
Computer vision

NXP CUP creative category ( Quroidor )

Our team participated in the NXP CUP creative category, focusing on the game of Quroidor. My responsibilities encompassed robot localization and game AI. To overcome errors in localization, we implemented a Kalman filter and utilized QR codes for precise camera position calculation. For game AI, we initially trained a Monte Carlo tree-based AI but opted for a simpler alpha-beta pruning algorithm suitable for microcontrollers. Additionally, I contributed to resolving driver issues and path planning for optimal robot performance throughout the competition. Our aim was to excel in the NXP CUP creative category, showcasing our skills in developing autonomous robots for real-world applications.

C++
Python
Robotics
Hardware
Computer Vision
Motion control
Localization
Game theory
Machine Learning

39th ROBO-ONE competition (2021)

Within the realm of RoboOne, a renowned humanoid fighting competition, my role encompassed the development of an algorithm aimed at detecting adversaries and facilitating efficient path finding. Our diligent efforts encompassed testing various algorithms, including classic computer vision techniques such as FAST and SLAM,, as well as machine learning-based approaches such as YOLO. Additionally, I contributed to the refinement of joint control algorithms. Unfortunately, due to the impact of the COVID-19 pandemic, we were unable to physically participate in the competition.

C++
Python
Pytorch
Robotics
Computer Vision
Machine learning
Joints controll
Path Planning
Object Tracking

Image editing software

a C++ gui project that allows users to apply different kind of brushes and filter to their image. Some feature include using an image as a brush or filter to edit another image.

C++
Computer Graphics
Computer Vision
fltk
GUI

Visualization of sentiment analysis on player's emption

We analyzed the sentiments expressed in posts and responses collected from various game subreddits on Reddit. Using TensorFlow, we conducted sentiment analysis to identify emotions such as anger, happiness, and neutrality. We utilized two visualization techniques: a Stream graph and a polar area diagram. The Stream graph provides a visual representation of how player emotions change over time. The polar area diagram shows how posting frequency are influenced by both time and the type of game being discussed.

Pytohn
TensorFlow
D3.js
Data Visualization
NLP
Machine Learning

An Omnidirectional Robot controlled by a motion sensing and gesture recognition controller.

We developed a Wii-like controller that has 3 degrees of freedom for controlling an omni-directional robot. The accelerometer and gyroscope sensor data are processed to obtain the current gesture. Pitch and yaw of the controller determine the XY-plane movement, while roll allows the robot to rotate. Encoders and inverse kinematics are used to ensure stable movement. Bluetooth communication is used for sending signals and debugging.

C++
Robotics
Hardware
Bluetooth
Motion sensing
Gesture Recognition

Ray tracing image rendering software.

We have developed a 3D object ray tracing rendering engine that allows realistic rendering of reflections and refractions with different materials and textures. The ray-intersection optimization includes octree and concurrency. Our implementation also features adaptive termination, antialiasing through supersampling and jittering, and various lighting and shadowing techniques, including different kinds of light sources, soft shadows, and glossy reflections.

C++
Ray tracing
Computer Graphics
Rendering
GUI