Date of Award

Spring 2025

Document Type

Thesis

Terms of Use

© 2025 Jeffrey Zhang. This work is freely available courtesy of the author. It may be used under the terms of the Creative Commons Attribution 4.0 International (CC BY 4.0) license. For all other uses, please contact the copyright holder.

Creative Commons License

Creative Commons Attribution 4.0 International License
This work is licensed under a Creative Commons Attribution 4.0 International License.

Degree Name

Bachelor of Arts

Department

Engineering Department

First Advisor

Matthew A. Zucker

Abstract

Jigsaw puzzles are an exciting activity that people of all ages love to do. This project seeks to develop a robot capable of solving jigsaw puzzles. To do so, I took a preexisting CNC mill and assembled the mill except the spindle. The mill ran using G-code, a programming language I learned. From here I created a program that can move the arm of the mill to any point chosen, and can move up and down, as a proof of concept for the robot. On the puzzle solving side, I started by first taking high resolution scans of the backs of all my puzzle pieces, and isolating the pieces into individual images by creating a mask to remove the background, finding contours of adequate size, and then creating bounding boxes for the images. From here, I analyzed each individual piece to find the corner pieces to characterize the edges, and created a scoring algorithm that would determine how similar edges were. Using these matches, I constructed a finished image of the puzzle. Due to time constraints, this code was not able to be reintegrated with the CNC milling machine, which is left as work for the future.

Included in

Engineering Commons

Share

COinS