Recent graduate in Computer Science at California State University, Los Angeles 2018


Languages

[ Java - Python - JavaScipt - HTML5/CSS ]

Libraries

[ JavaFx - OpenCV3 - Numpy - scikit-learn - Pandas ]

Server/Database

[ Servlets - NodeJS ] ^ [ MySQL - MongoDB ]

Course Electives

[ Artificial Intelligence - Concurrent and Distributed Programming - Cryptography - Data Science - Robotics ]


RoboSub 2018

Senior Design Project 2018 (CSULA)

As team of computer science students we were tasked to develop requirements and build the software to run an autonomous underwater vehicle (AUV). The software developed is comprised of two parts: Robot Operating System (ROS) and Computer Vision (CV). Communication between hardware and software was accomplished with ROS. Navigation with decision making is accomplished through CV using object detection. Part of the CV pipeline includes image processing and machine learning.

Image Cropping Tool

OpenCV, GUI, and Numpy

This tool was created to simplify preparing image training data. The user can view a set of images and create a bounding box around a region of interest (ROI). The ROI is then stored to disk as a jpg. A txt file is also created. The txt file contains the label and the coordinates (x, y, w, h) of the ROI. If multiple ROI's exist in one image, the label and coordinates are appended to the end of the txt file corresponding to the image file name.

Graffiti Report

Geolocation, Image Processing, and Machine Learning

After uploading images and location of graffiti, the information is added to a database while the images are preprocessed and used for machine learning. A classifier is built and trained to recognize graffiti letters. The information can then be used to map and locate hot spots of common graffiti locations.

Lupita's Cafe

Point of Sale (POS) system for beverages

The simple POS system is used for tracking finances and metrics based on sales each night. A graphical user interface (GUI) is provided to simplify the beverage-ordering process.