Research
Papers and projects.
Mostly computer vision and tracking, from Oregon State onward. The writing is on the posts page.
Publications
arXiv 2022
Masader Plus: A New Interface for Exploring +500 Arabic NLP Datasets
A web interface for browsing the Masader catalogue of Arabic NLP datasets — exploration, filtering, and an API over the backend.
CVPR 2021
Discriminative Appearance Modeling with Multi-track Pooling for Real-time Multi-object Tracking
Most trackers model each target in isolation, which breaks down when objects look alike. We introduce a multi-track pooling module that updates appearance memory across all tracks at once, with a matching training strategy that generates hard tracking episodes online — real-time state-of-the-art on public MOT benchmarks under a bilinear-LSTM framework.
IBM Think 2019
Leveraging system architecture to optimize deep learning and AI-based processing of massive data sets
GPU expansion cards hit real limits once they have to move large data across the system bus. We evaluated several GPU architectures on massive audio, video, and DNA sequence workloads at Oregon State's CGRB, and showed where CPU–GPU integration is the actual bottleneck.
Projects
2022
Detecting Anomalies in Object Appearance and Motion Dynamics
Oregon State University · DARPA Machine Common Sense
On the Passive Violation of Expectation team under Dr. Alan Fern. Built a tracker on Bilinear-LSTM and a Siamese network, a role-assignment module to decide which objects matter, and a rule-based reasoning agent that judges whether a scene is plausible.
PyTorch · Bilinear-LSTM · Siamese networks
2022
2021
onlysudo
A Discord and Twitch bot running style transfer, English and Arabic text completion, Arabic poetry generation, English QA, and TTS — built for Twitch streamers.
Python · Hugging Face · PyTorch · ONNX · TensorFlow · Node.js · Socket.IO
2021
Improving a Generative Visual Dialog model
Oregon State University
Took the model from 23.01% to 41.57% by swapping the image embedding for pre-trained CLIP and the word embedding for GloVe. Built a web application on top of it.
CLIP · GloVe · PyTorch
2020
How long was the poultry sick?
Oregon State University
An ML pipeline that auto-labelled over 100,000 bird sound samples using hidden Markov models, FFT, k-means and bootstrapping, then a deep learning classifier to detect illness from the calls — deployed to an NVIDIA Jetson Nano with TensorRT.
Keras · TensorFlow · SoX · TensorRT · Jetson Nano
2020
Labeling tool
Oregon State University
An image labelling tool that took throughput from 300 to 3,000 images per week. Used across multiple labs, including fieldwork in Africa with no internet access.
jQuery · Node.js
2020
Measuring interaction in sport
Oregon State University
A social network analysis system for understanding how players interact during a match.
C++ · Python · Cython · TensorFlow · Google Research Football
2019
Pedestrian Tracking and Privacy Preservation
Oregon State University · Senior Design
A computer vision system for the City of Portland that detects and obfuscates pedestrians' faces in real time, then tracks movement to study pedestrian and traffic behaviour for road safety.
OpenCV · PyTorch · Keras · Flask · Node.js · MongoDB
2019
Tech Data AI Demo
Oregon State University · CGRB
A site that races different hardware against each other running the lab's deep learning models. Sponsored by Tech Data, IBM, NVIDIA and OpenPower, and featured at IBM Think 2019.
Bootstrap · JavaScript · Node.js · NGINX · Bash
2019
Owl Sound Classification
Oregon State University · CGRB
Deep learning models that classify owl species from audio.
Keras · TensorFlow · OpenCV · NumPy · SoX
2019
Plankton Detection
Oregon State University · CGRB
Deep learning models for detecting plankton in imagery data.
Keras · TensorFlow · OpenCV · NumPy
2018
Image Captioning
A CNN–RNN model that generates captions from images: a convolutional network for feature extraction, an LSTM for generating the caption.
PyTorch · NumPy · OpenCV
2018
Self-Driving RC Car
A web app streaming live video from a Raspberry Pi-controlled RC car, plus the intelligent agent structure and model behind it.
Python · Node.js · Raspberry Pi
2017
Aces Up
Oregon State University
A card game built with a team. Won Best Web Application for Software Engineering I.
Java (Ninja) · JavaScript · Heroku
2016
Personal website
Oregon State University
An early version of this site, plus an NGINX config that redirects HTTP to HTTPS and maps networks.
Node.js · JavaScript · NGINX
2016
AI agent for a 2D grid game
Oregon State University
Hunt the Wumpus with a dynamic grid size, and an embedded agent that solves it using probability distribution methods.
C++
Certifications