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
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.
Recommended Citation
Zhang, Jeffrey , '25, "Jigsaw Puzzle Solving Robot" (2025). Senior Theses, Projects, and Awards. 973.
https://works.swarthmore.edu/theses/973