Court Detection using Deep Hough Transform Line Priors
This is a course project implementing the use of the Deep-Hough-Transform-Line-Priors to detect tennis court lines and find the homography matrix. Filtering the lines post detection is necessary to identify the true bounding box of the court and to calculate the homography matrix. The homography matrix can be utilized to warp the perspective and deployed in various other applications such as score tracking or player movement behaviour during the match.
For a deeper dive into the project, check out the GitHub repository: [Link]. The process pipeline and three examples of applying and scoring the homography matrix are shown below:
Artificial Intelligence Algorithms
I learned about different principles of artificial intelligence and used them to implement solutions to AI problems. The topics covered include problem solving, taming uncertainty, decision making under uncertainty, knowledge, reasoning, planning, communicating, and perceiving.
One of the projects involved implementing the Minmax algorithm in a game of Fishing Derby against an intelligent agent, using scoring and Euclidean distance as a heuristic. Another project involved using a Hidden Markov Model (HMM) to model a fish type guessing game. Initially, we started with random guessing, but later, those guesses were used to build lambda models for known types to build a more accurate guess for the unknown fish.
Agent Negotiation And Communication With Gama Simulations
Under Construction.
Autonomous Target Shooting Vehicle
The main objective of the project was to design and manufacture an autonomous vehicle powered by Arduino that can navigate a course and fire projectiles at targets. The vehicle and all of its external components were designed using SolidWorks, with additional components manufactured using rapid prototyping (3D printing), laser cutting, and CNC machining.
Navigation was based on skid steering, utilizing line sensors mounted to the front of the vehicle and bump sensors on the sides. In order to hit the targets, a spring-powered rack and pinion launcher was designed, using a continuous servo (for pulling back the rack) and one position control servo (for a rotary magazine/carousel to load BBs). The launcher was placed on a movable platform to adjust trajectory. A gear reduction was used to maintain torque when pulling the firing piston (rack) back. A PID controller was employed to keep the car in the middle of the track.
For more pictures and a testing video, see the album here.
Automated Ocean Cleaner [Western Engineering Competition]
Chosen to be a part of the University of Manitoba team for the Western Engineering Competition (WEC), I designed and presented an automated solution for cleaning the oceans from micro-plastics. The oceans currently host around 5.25 trillion pieces of plastic debris, translating to roughly 269,000 tons of floating plastic waste. The harmful UV radiations fragment these larger plastic pieces into micro-plastics, which are not only harder to extract but also harmful to small marine creatures.
- I designed an automated drone to collect floating micro-plastics, equipped with a storage unit that, when filled, returns to a base for emptying.
- Ensured the drone's functionality without human interference, enabling it to return to its base when full or in need of charging.
- The drone featured a torpedo-shaped body frame, floaters for maintaining sea level, a renewable energy power source, and autonomous control, providing real-time data.
- Designed bases 100 km apart to host the drone, drop collected waste, clean the filter, and charge if needed. The bases included a swivel and sliding mechanism to hoist the drone in position, a filter extractor, an onboard tracking system, batteries, and solar panels.
Automation of Generating KPI Reports and Grain Capacities at Feed Mills
At Hylife, countless hours were spent gathering data about production performance, which was a huge non-added value task. To speed up and automate the process, I set up excel sheets with the capability to streamline data entry and save them in tables with the help of Macros.
I set up SQL queries that performed complex data calculations from different sources to automatically put together meaningful reports to track the Feed division performance. These reports included monitoring the micron levels of the ground ingredients, daily production performance in terms of tonnes per hour for the different processes in the Feed Mill, down times, tonnes ordered and delivered, and feed forecasting accuracy.
I used the ASABE S413 (Procedure for Establishing Volumetric Capacities of Cylindrical Grain Bins) to learn about the right factors to use to calculate accurate capacities of bins and the right compaction factor based on the type of bin and grain. I set up an excel sheet that is connected to the company's server (using SQL) to grab actual averages of our own daily tests for the received grains bushel weights to calculate the most accurate tonnes capacity from volume.