Graduate Projects

Turbo Wallet - Money Management App

Jan. - Mar. 2022, JavaScript

GitHub (Front End): https://github.com/Kyxie/money-management.git

GitHub (Back End): https://github.com/Kyxie/money-back.git

  • A money management app helps us to track household expenses and incomes.
  • The front-end is based on React.js while the back-end uses Express.js framework and interacts with database of MongoDB.
  • We can add, edit and delete the expense and income records, and the app creates a series of charts based on recent records to help analyze economic conditions.
  • We can also visually see which kinds of purchases cost how much and the order of different kinds of purchases.

Computer Networks

Jan. - Mar. 2022, Python

GitHub: https://github.com/Kyxie/computer-networks.git

  • The assignments for CS 656
  • Assignment 1: A server and a client transfer message to each other by a socket. (Two modes: active and passive, two methods: TCP and UDP).
  • Assignment 2: Design and implement TCP by UDP.
  • Assignment 3: Applications of link layer and flow chart.

Security Cameras Installation System

Sep. - Dec. 2021, Python / C++

GitHub: https://github.com/Kyxie/Traffic.git

  • This project helps the local police department with their installation of security cameras at traffic intersections. We solved a particular kind of optimization problem, called the Vertex Cover problem, by CNF-SAT.
  • We use Python to generate a map contains the details about a city’s traffic (the roads and intersections), then try to find the shortest path using the Dijkstra algorithm in the city, and finally, we solve the Vortex Cover problem using CNF-SAT to simulate the whether the installation of cameras can cover all the city streets.
  • This project implements multi-threading and parallel processing to run more efficiently.

My Personal Website

Aug. 2021 - Now, HTML, CSS, JavaScript

GitHub: https://github.com/Kyxie/Kyxie.github.io.git


Undergraduate Projects

Deep Learning based Re-ID

Sep. 2020 - Jun. 2021, Python

GitHub: https://github.com/Kyxie/ReID-deep-learning.git

  • This project is a pedestrian re-identification project based on deep learning methods. The frameworks is PyTorch.
  • We used Market-1501 dataset to train the model and used our self-made dataset UESTC Re-ID Dataset, and Market-1501 to test the model.
  • The model is base on ResNet-50 and TriHard Loss.
  • The mAP index reach 58.8% for Market-1501 and rank@1 reaches 76.3%.

Channels Allocation System

Apr. - May. 2021, MATLAB

GitHub: https://github.com/Kyxie/Channels.git

  • This is a project on channel allocation problems. The background of the project is that in hospitals, channels with the highest SNR are allocated to those who need them most (such as patients), while ordinary people are allocated to the interference channels of patients (low SNR).
  • Proposed 4 different algorithms to solve this problem.

Webots Robot

Feb. - Jun. 2020, C++

GitHub: https://github.com/Kyxie/TDPS-2020-UESTC-Glasgow.git

Bilibili: https://www.bilibili.com/video/BV1Rp4y1S7o3?from=search&seid=72774621551842110

  • This is a project based on Webots.
  • We designed a smart mini rover in Webots software and the patio needed to complete the task. We installed inertial navigation module, LIDAR module and camera module for the mini rover, so that it can complete the tasks such as line patrol, attitude calculation and color recognition.

Wave Generator base on FPGA

Sep. - Dec. 2019, Verilog

GitHub: https://github.com/Kyxie/wave-generator.git

  • Used FPGA (Xilinx xc7a35tftg256) to generate the sine, triangle and square waves.
  • The frequency of the wave is adjustable, from 0 - 255Hz, and controlled by an 8-bit USART.
  • The amplitude of waves is controlled by 4 switches, from 0V to 1V whose resolution is 0.1V.
  • The choice of waves is controlled by 2 switches.
  • The result of output can be shown by VGA, which can display the information about image of the cooresponding waves and the value of frequency and amplitude.

An RISC CPU

Feb. - Jun. 2018, Verilog

GitHub: https://github.com/Kyxie/CPU.git

  • Used Quartus II software to achieve a RISC CPU so that it can be added, subtracted, multiplied and divided operations.
  • The design of CPU includes data path module design (ALU, registers and PC), control unit design (state transition and IR) and communication between these two modules (CPU integration).