Portfolio

blur background

Iceberg ASV

Computer Vision YOLOv5 and ROS 2nd Iteration

Computer Vision YOLOv5 and ROS 2nd Iteration

Real-time object detection with ROS, based on YOLOv5 and PyTorch tailored for Iceberg ASV using Intel RealSense D435.

Skills or Technologies I used:

  • Robotics Operating System
  • Python
  • GitHub
  • VS Code
Computer Vision YOLOv5 and ROS 1st Iteration

Computer Vision YOLOv5 and ROS 1st Iteration

Real-time object detection with ROS, based on YOLOv5 and PyTorch tailored for Iceberg ASV using Intel RealSense D435.

Skills or Technologies I used:

  • Robotics Operating System
  • C++
  • Python
  • GitHub
  • VS Code
Real World Marine Markers Custom Dataset YOLOv5 Training

Real World Marine Markers Custom Dataset YOLOv5 Training

This project focuses on training YOLOv5 models using a custom dataset of real-life images of marine markers for the Roboboat compettion. Our objective is to enhance object detection in marine environments, contributing to safer marine navigation and advanced research.

Skills or Technologies I used:

  • Roboflow
  • Annotation& Labelling
  • Jupyter Notebook
  • GitHub
  • VS Code
Gazebo Simulation Marine Markers Custom Dataset YOLOv5 Training

Gazebo Simulation Marine Markers Custom Dataset YOLOv5 Training

This project is dedicated to training YOLOv5 models using a custom dataset of marine markers generated from Gazebo simulations for the Roboboat competition. Our goal is to be able to test our object detection with our robotic application in Gazebo.

Skills or Technologies I used:

  • Roboflow
  • Annotation& Labelling
  • Jupyter Notebook
  • GitHub
  • VS Code
Bag to Video Package Util

Bag to Video Package Util

ROS bag_to_video_pkg converts camera data from ROS bag files to video, ideal for analyzing or recording robotic system footage. Includes installation, usage instructions, and Kdenlive editing integration.

Skills or Technologies I used:

  • Robotics Operating System
  • Python
  • GitHub
  • VS Code

Projects

Personal Website

Personal Website

I am developing my personal website for my professional portfolio and where I share insights into my work in cybersecurity, robotics, and computer vision.

Skills or Technologies I used:

  • Astro
  • HTML
  • CSS
  • JavaScript
  • SVG
  • Github
  • VSCode
JUnit5 Testing Showcase

JUnit5 Testing Showcase

This repository showcases a collection of JUnit 5 and Mockito test cases and scenarios, developed as part of my learning journey from the Udemy courses. It serves as a practical demonstration of my unit testing skills, relevant to my upcoming internship at Nasdaq-Verafin.

Skills or Technologies I used:

  • JUnit
  • Mockito
  • JavaScript
  • Github
  • Eclipse IDE
Gray Scale Image Box Filter

Gray Scale Image Box Filter

Smoothing is an image processing technique used to blur, remove small details and reduce the noise of an image. There are different filter types, such as linear and non-linear. The filter for this project was a 3*3 box filter. The box filter is the mean of the neighbouring pixel intensities. In this project, we explore how the box filter affects different images.

Skills or Technologies I used:

  • Python
  • OpenCV library
  • Github
  • VSCode
Resume

Resume

This repository contains the LaTeX source code for my professional resume. The resume highlights my education, work experience, skills, extracurricular activities, honors, and certifications. It is designed using the altacv class to create a visually appealing and detailed CV. This document was developed using Overleaf, an online LaTeX editor that simplifies the process of LaTeX document creation, and is adapted from the AltaCV template available on Overleaf.

Skills or Technologies I used:

  • Latex
  • Overleaf
  • Github
  • VSCode
Simple Interest Calculator

Simple Interest Calculator

This Simple Interest Calculator is a web-based tool that allows users to calculate the interest on a principal amount over a period of time. The project is built using HTML, CSS, and JavaScript and was developed as part of the course CAD101EN: Introduction to Cloud Development with HTML, CSS, and JavaScript provided by IBM.

Skills or Technologies I used:

  • HTML
  • CSS
  • JavaScript
  • Github
  • VSCode

Utils

PDF Pageshot Extractor Util

PDF Pageshot Extractor Util

PDF PageShot Extractor is a Python tool designed to efficiently convert each page of a PDF document into individual image files. This utility was inspired by a friend who needed to take numerous screenshots for her class. The challenge was that the PDF contained scanned images, making it difficult to extract information directly. This tool simplifies the process, enabling easier access to the content, particularly when used in conjunction with OCR (Optical Character Recognition) technologies for text extraction.

Skills or Technologies I used:

  • Python
  • pdf2image library
  • Poppler library
  • GitHub
  • VS Code
Auto Screenshot Util

Auto Screenshot Util

A Python utility designed to facilitate the automatic capture of screenshots from a video file at specified time intervals. This utility was inspired by the specific needs encountered in the field of computer vision, particularly in the process of creating custom datasets. It addresses a common challenge where researchers and developers extract camera feeds in MP4 format from ROS (Robot Operating System) bag files and require an efficient method to generate image datasets.

Skills or Technologies I used:

  • Python
  • moviepy library
  • Pillow library
  • GitHub
  • VS Code
Form Automation Util

Form Automation Util

This utility automates the process of filling out and submitting the Box Lunch Order form for MUN's Dining Hall. It also includes a feature to send a confirmation email upon successful submission of the form.

Skills or Technologies I used:

  • Python
  • Selenium library
  • GitHub
  • VS Code
Camera Display and Save Package

Camera Display and Save Package

This ROS (Robot Operating System) package is designed to subscribe to a camera feed topic, display the image using OpenCV, and save the image to a file. It utilizes ROS publishers and subscribers, OpenCV for image handling, and cv_bridge for converting between ROS image messages and OpenCV image representation.

Skills or Technologies I used:

  • Robotics Operating System
  • C++
  • CMake
  • OpenCV library
  • GitHub
  • VS Code

Coursework

COMP 3301 Image Preprocessing for Vehicle Detection

COMP 3301 Image Preprocessing for Vehicle Detection

The primary purpose of this project is to apply some of the image processing techniques that we were taught in this course on images that are input to a You Only Look Once (YOLO) version 5 model trained on vehicle classification and examine the effects of each process on the performance of the model. We will also be comparing our results with those obtained from inputting the unmodified images into the model.

Skills or Technologies I used:

  • Python
  • OpenCV library
  • Roboflow
  • YOLOv5
  • GitHub
  • VS Code
ECE 5010 Coach O Matic

ECE 5010 Coach O Matic

Coach O Matic is a desktop application crafted for amateur soccer team coaches to generate equal playing time lineups, developed as part of our ECE 5010 Software Design course project. Utilizing Java and JavaFx, along with Maven for build automation, the application emphasizes adherence to SOLID principles to ensure a robust and maintainable architecture. This project not only demonstrates our ability to apply theoretical concepts into practical software development but also aims to enhance the coaching experience by streamlining team management and lineup generation tasks.

Skills or Technologies I used:

  • Java
  • JavaFX
  • Maven
  • GitHub
  • VS Code
ECE 4400 Data Structures Showcase

ECE 4400 Data Structures Showcase

The ECE 4400 Data Structures Showcase repository explores essential and efficient data structures, emphasizing recursion, generic programming, and modularity. It focuses on procedural and data abstraction, alongside precise documentation for optimal software development.

Skills or Technologies I used:

  • Data Structures
  • Recursion
  • C++
ECE 4400 Grocery Manager

ECE 4400 Grocery Manager

The ECE4400 GroceryManager is an efficient inventory management system developed for ECE 4400, employing BST, DLL, and CQ data structures for item organization, inventory management, and tracking customer history, streamlining grocery management and data analysis.

Skills or Technologies I used:

  • Data Structures
  • C++
ECE 1020 Intro to Programming Showcase

ECE 1020 Intro to Programming Showcase

The ECE 4400 Data Structures Showcase repository explores essential and efficient data structures, emphasizing recursion, generic programming, and modularity. It focuses on procedural and data abstraction, alongside precise documentation for optimal software development.

Skills or Technologies I used:

  • Arduino
  • Python
ECE 1020 Trivia Grame

ECE 1020 Trivia Grame

"Trivia Game" is an interactive Python-based trivia game designed for Arduino, combining elements of various subjects including Math, History, Chemistry, and Physics. Developed as part of the ENGI 1020 Lab-Mini Project, this game is tailored to provide an entertaining and educational experience for users, challenging their knowledge across different fields.

Skills or Technologies I used:

  • Arduino
  • Python