Computer Vision and ML Robotics
Here is a collection of Computer Vision and Machine Learning based robotics projects completed while I took CENG 390: Robotics in Fall 2025 at Chapman University, earning an A+.
Connect 4
Developed a Python-based Connect 4 system integrating computer vision, AI decision-making, and robotic manipulation. The program uses OpenCV to detect the current board state in real-time, then employs a minimax algorithm with alpha-beta pruning to determine the optimal move strategy. Once a move is selected, the robot executes precise pick-and-place operations retrieving a game piece and positioning it above the target column for deployment. This required synchronizing vision-based board recognition, AI computation, and inverse kinematics for accurate multi-axis motion control, creating a fully autonomous gameplay system capable of strategic decision-making and physical execution.
Vision Based Object Localization
Developed a Python-based autonomous color-matching system integrating a spinning wheel mechanism with a robotic arm. The program controls a wheel that randomly selects a color, then uses computer vision (OpenCV) to identify and locate matching objects in the workspace. The robot executes a pick-and-place sequence using a magnetic gripper, retrieving the target object, dispensing its contents, and returning it to its original position. This required coordinating real-time image processing for color detection with inverse kinematics for trajectory planning, demonstrating closed-loop control between computer vision and multi-axis robotic manipulation.
TicTacToe
Designed and programmed a fully autonomous Tic-Tac-Toe–playing robot using the Ned2 robotic arm. Implemented OpenCV-based computer vision algorithms using Python for board detection, move recognition, and state tracking through real-time image processing. Integrated robotic control through the PyNiryo library, enabling precise piece placement and smooth motion planning. Combined AI-driven decision logic with visual feedback loops to create an interactive, self-operating system that plays against human users with accuracy and consistency.