Jigsaw Puzzles Are Defeated

To some folx, puzzles are the ultimate single-player game, but to others, they are like getting a single Tootsie Roll on Halloween. [Shane] of Stuff Made Here must fall into the latter category because he spent the equivalent of 18 work-weeks to make a robot that solves them automatically. Shots have been fired in the war on puzzles.

The goal of this robot is to beat a hybrid idea of two devilish puzzles. The first is all-white which could be solved by taking a piece at random and then checking its compatibility with every unsolved piece. The second is a 5000-piece monster painted white. There is a Moby Dick theme here. Picking up pieces like a human with fingers is out of the question, but pick-and-place machines solved this long ago, and we learn a cool lesson about how shop-air can create negative pressure. Suction. We wonder if anyone ever repurposed canned air to create a vacuum cleaner.

The meat of this video is overcoming hurdles, like a rhomboidal gantry table, helping machine vision see puzzle pieces accurately, and solving a small puzzle. [Shane] explains the solutions with the ear of someone with a technical background but at a high enough level that anyone can learn something. All the moving parts are in place, but the processing power to decode the puzzle is orders of magnitude higher than consumer machines, so that will wait for part two.

30 thoughts on “Jigsaw Puzzles Are Defeated

  1. “shop-air can create negative pressure. Suction. We wonder if anyone ever repurposed canned air to create a vacuum cleaner.”

    *Giovanni Battista Venturi enters through the wall like the koolaid mascot*

    1. I’ve worked with venturi based vacuum system. Once my company tried to work with twin venturi system, it was so powerful my boss said “it could suck paint off a car quickly” and we never tried twin system since then.

  2. Okay, I have not watched the video.
    A passenger sitting next to me on a bus told me of a jig saw puzzle contest she competed in recently. The contest was put on by one particular company using their own puzzle.
    2 person teams each had a table with the pile of pieces,
    Every team had the same puzzle,
    Because the company used the same cutting template on all their puzzles, contestants were required to assemble the puzzle face up. (A number of people had memorized the pattern and often assembled their puzzles face down faster than they could face up!)
    The winning team assembled their puzzle in 15 minutes! (I have forgotten how many pieces the puzzle contained) That team was bare footed to make it easier to detect if a piece had fallen on the floor.

    Of course, this machine made by [Stuuf Made Here] could also be used to reassemble shredded documents!

    1. Part of the plot of Rainbows End by Vernor Vinge. Books were run through a wood chipper, and then the chaff was photographed as it exited the machine, whereupon the book was “reassembled” via a computer. This was done to “preserve” books, being faster than scanning them one page at a time.

  3. @Brian McEvoy said: “…like getting a single Tootsie Roll on Halloween.”

    Dang-it Brian, now I MUST have a Tootsie Roll! 12:25 PM my time. I might -just- have enough time left on my lunch hour to hop over to the corner store…

  4. This is so well explain on every step and the level of difficulty and analysis to reach the goal that should be part of a basic industrial automation training for dummies specially for managers or directors.

  5. When I see an article of a video I’ve already watched, I just skip the article and go straight to the comments. The comments are arguably the best part of Hackaday. I look forward to the technical comments on Hackaday versus the ones on YouTube.

  6. where does he get those wonderful toys?

    The only issue I see is that he appears to have to feed it pieces one at a time. I was originally wondering how he would flip upside-down pieces over, but the problem is bigger than that.

    Not to say that every step of this project isn’t amazing. I subscribed.

  7. Very nice to see Shane mention how useful telecentric lenses are in machine vision applications. Few folks are either aware of them, or bother.

    If you balk at the price of a real telecentric lens, consider what it actually is: It is a plain old lens like is already installed on a camer, plus one added element: A large long-focus converging lens, placed one focal length away from the camera lens. That’s it.

    If you have a big magnifying glass or a refractor telescope, or any other large-ish lens, it will work. Even a fresnel magnifier lens will work. Just place that big lens one (of its) focal length away from the middle of the camera lens, and you’re done: You have a lens that has a fixed, constant magnification: It makes the image of an object the same size, regardless of how far away or close it is.

    The next trick is to push the idea even further to make a pericentric lens, which can do neat things like see five sides of a six-sided die at the same time.

    1. Don’t forget to drop by the plumbing section in your local hardware store to make a nice barrel/holder for it… bonus points if you can combine items from electrical conduit, potable and waste water sections and the gas fittings aisle, it makes the associates who know anything look real worried.

  8. I would think that instead of pulling a piece, moving to scan it, then put it back into a magazine that the software could place pieces anywhere on the board that has not been solved, providing room of course. This way as pieces are found to match, it does not have to wait to come up into the magazine, nor scan all 5000 pieces first. Could be especially useful as it finds edge pieces.

    1. The video specifically mentioned why he didn’t do this, and that was just that it requires so much more work area to do so.

      Working with the 5000 piece puzzle already drove him to expand the motion stage significantly, and prompted the whole section toward the beginning of the video regarding compensation for the machine going out of square.

  9. For solving the puzzle, I imagine it would be useful to be able to encode the shape of a puzzle piece by describing the curves of each side with a mathematical description. You would also need to measure the angles at the corners.

    But for describing the shape of each side, I think you’d want a description that brought out important details first. Indeed, the highest level of detail might just describe each side as “inee”, “outee”, or “straight”. This would already cut out about half of the pieces you’d need to consider.

    The corner angles could also help narrow down the pieces quickly, if you assume that the cuts between the pieces go smoothly across the intersections. In this case, the angles of adjacent pieces should add up to approximately 180 degrees. For cuts that make angles at intersections, you’d have to give more margin to that figure.

    Another way to trim down the possibilities is to measure the linear length of each side. Adjacent pieces would have to have the same length, approximately.

    Finally, you’d want to encode the side curve itself. You might try break the shape into 4 or 6 bezier curves, finding the closest fit to the image. You’d need your algorithm to encode opposite sides in a consistent manner, to describe the same curve. Once you’ve done this, then you’re out of the pixel realm, and only have to compare numbers.

    The idea behind all this work is to find ways to eliminate non-fitting pieces quickly. In fact, by sorting the pieces into lists for each measurement, you can quickly zoom in to candidate pieces without even having to consider ones that have no chance.

    By quickly narrowing down the number of pieces to do the finest (most time-consuming) comparisons with, you can drastically shorten the amount of time it takes to solve the puzzle.

    1. If the next piece he needs is a bottom piece of a stack, he only needs to empty one stack. If you use your solution you need to empty all your stacks and need a second table again

    2. The robot places the pieces like a snake in the puzzle, So it can’t take any piece to be the next one but need ons specific one. If that piece is on the bottom of a stack witha one motor solution you should empty all your stacks. With a two-motor solution only one stack needs to be emptied.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.