Categories
Engineering Software

Computer Vision Based Object Detection

This project was a machine-vision proof of concept delivered to a large multinational commodity distribution company in Western Canada. The company had recently implemented an automated railcar unloading system, and this POC aimed to demonstrate how a machine-learning–based object detection solution could augment the existing system by accurately identifying, localising and determining the orientation of capstan sockets on incoming train cars.

Traditional vision-based automation struggled due to the variability in railcar geometry, capstan designs, lighting conditions, debris and other environmental factors. The goal of the POC was to show that a well-trained machine learning model could outperform these legacy methods – delivering high accuracy, low latency and a clean, structured data stream suitable for real-time integration into the existing control system.

The existing system had acquisition times exceeding 1 second and a success rate below 80%. For the POC, still images and video of multiple capstan types were captured, labelled and used to train a custom model. The resulting model successfully detected capstans on 100% of the validation set with confidence levels consistently above 85% and was able to infer both location and rotation. When evaluated on live video, it achieved acquisition times under 25 ms with zero false positives on surrounding train structures.

Categories
Engineering Software

Garmin Wearable Cold Plunge App

I frequent a local cold plunge therapy venue with my girlfriend and wanted a way to effectively time each phase of the process. The solutions on the market didn’t fit my requirements, nor did using a basing timer, or no timer, so I decided to make my own.

I thought it’d be a nice weekend project, but I was quick to learn that it was going to involve learning a new platform, language and a very finicky UI design to be effective across multiple devices/resolutions, etc. Garmin uses their own language “Monkey C”, which is an object-oriented language, most similar to JavaScript. It ended up taking a couple months to get together, including testing.

The initial design consists of 3 timers, one for each phase – hot, cold and rest. Each is customisable for your desired duration and level of suffering. The app also tracks the users heart rate, temperature and saves the activity for later review in Garmin Connect.

There are additoinal features to be added to the app over time, given user feedback and from my own experience using the app. So far, it is exactly what I would’ve wanted in a cold plunge app, but let’s see what the community says.

Link to Garmin IQ Store – Cold Plunge App