Tap to unmute

Worlds hardest jigsaw vs. puzzle machine (all white)

Share
Embed

Comments • 11 860

  • Stuff Made Here
    Stuff Made Here  2 months ago +4081

    Big thanks to everyone who supports me on Patreon! That support allows me to spend such insane amounts of time on projects like this. If you’re interested in support these projects, check out patreon.com/stuffmadehere

    • Shino Asagi Gaming
      Shino Asagi Gaming 10 days ago

      Neat hidden message btw.

    • Fallout
      Fallout Month ago

      It doesn't matter what I say, but I really think you're pushing yourself a tad too far by taking on more extreme challenges after another. At the end of the day, it's not the difficulty of the challenge that keeps the majority of us coming back; it's your personality, intelligence, charm, and neat project ideas that we love! Try doing a fun challenge next, instead of a hair pulling one! For the sake of your stress ❤

    • Dylman
      Dylman Month ago

      I recently saw a 6DOF CNC mill and i think that that would be a great next project! The person calls it Hexapetron!

    • Rock Brentwood
      Rock Brentwood Month ago

      You didn't have to paint the pieces. All you had to do was white out the pictures! After all, you *still* want to visually verify the fit. Spurious twins *do* exist in puzzles. (I know, because I've been doing large jigsaw puzzles since I was 2.) So you don't actually know for sure that you got the *right* fit, just *some* fit.

    • mr. waffles
      mr. waffles Month ago

      Its really funny seeing how you change your wallpaper to say im going slowly totally insane after every cut

  • Kfimenenpah
    Kfimenenpah Month ago +14749

    "If at first you don't succeed, reduce your expectations until you're a success" what a line

    • 38911bytefree
      38911bytefree 6 days ago

      Words to live with !!!!!!

    • Daniel Wallace
      Daniel Wallace 11 days ago

      @glasslinger a German former professor of mine said "If you fail, try again. If you fail again, try again. If you fail again, that's enough trying, I'm going to have a beer"

    • Uwe Schmidt
      Uwe Schmidt 12 days ago

      This is how computers and programming work, really. A lot of stuff had and has to be simplified to get a working prototype. You can then work to get closer to your original expectations, once you have a working model. It is way easier to expand a working model than to create a complex one from scratch.

    • Derek Wallace
      Derek Wallace 26 days ago

      Sounds like dating advice 😅

    • Inservio
      Inservio 26 days ago

      The murican educational credo if ever there was one.

  • RADRaze2KX
    RADRaze2KX Month ago +265

    Loved how you were like "Luckily, I only have to do this 1 time" "2 times" "3 times" . Video was fantastic! I love your content!

    • RKs World
      RKs World 7 days ago

      the second time around i bet he didnt actualy do it haha

    • Winjin
      Winjin 25 days ago +9

      I loved how he immediately upscaled from like 16 to 4002 instead of doing something like a 64 puzzle piece.

  • StewartIainRobertson
    StewartIainRobertson Month ago +213

    At the end there were apparently 2 missing pieces. BUT - when the software was trying to match edges, at 9:49, it said there were 4002 pieces. I think the view of the jigsaw at 17:32 shows that it's 80 pieces wide, hence 80*50=4000, rather than 69*58=4002 or 87*46=4002. So maybe Shane accidentally scanned a couple of them twice?

    • Robin Erik
      Robin Erik 16 days ago +4

      @Okay DETar Maybe he's a slow counter. If at first you dont succeed, lower you expectations until you fully counted.

    • Okay DETar
      Okay DETar 16 days ago +4

      @freewilly1193 He just had to count to 133, I doubt that took him two weeks

    • PointBlank
      PointBlank 27 days ago

      @freewilly1193 Or maybe he just saw this video at a different time like everyone does?
      youtube comment section is filled with morons

    • freewilly1193
      freewilly1193 Month ago +38

      @punkalypso geez dude if it took you 2 weeks to count it, take the w, you need it. Also neither of you noticed that between the two time stamps there was a switch of puzzles? Just take your w, man, you really need that thing.

    • punkalypso
      punkalypso Month ago +19

      Clearly you didn't actually count. You just waited for me to do it ;-) It's 87x46. Also, if he had 4 malformed pieces he only had to scan 3998, so that's something to think about. And then you wonder how he accounted for those in his algorithm?

  • Joe
    Joe Month ago +68

    I am a Software Engineer and i am going to show this video to some friends and family if they ever ask me again why the computer/software is not doing what they want. To tell a program to do exactly how it should be is hard to imagine. For the human mind its so obvious and yet a program needs some help to understand what you are trying to do. Awesome project! You are the best!

    • alvamiga
      alvamiga 27 days ago +2

      @Alexander Trowell I enjoyed the bits where the computer was finding no matches for anything. This is the point where you realise what a pedant a computer is and it does exactly what you tell it with no regard for what you wanted it to do. 😆

    • Alexander Trowell
      Alexander Trowell Month ago

      I like how he said at the end "explain to computers in excruciating detail what to do". People forget the excruciating detail part. It's amazing how many ways you can mess up a seemingly simple feature.

  • Canadian Boyd
    Canadian Boyd Month ago +80

    This is an incredible video and is so inspiring to me. Like the whole thing is a collection of impossible levels of frustration, failure, changing expectations, and perseverance. The fact that this project, which some would call a failure, is still such an objective success as a lesson in computer science and the realities of practice instead of theory makes it such a beautiful video. It's just like you said, the journey was the destination. Thank you for always creating such great content.

    • Canadian Boyd
      Canadian Boyd 24 days ago

      @Puzzardo Salami but it accomplishes a series of other sub tasks fairly well, it just doesn’t work as a whole. so i guess it depends on your standard

    • Puzzardo Salami
      Puzzardo Salami 24 days ago

      "which some would call a failure", man the thing literally can't do the thing it's supposed to do, how would you call it 😂

    • Ben Porter
      Ben Porter Month ago +2

      This is the perfect comment... don't forget.. wife is always freakin' hilarious!

  • Zachary Williams
    Zachary Williams Month ago +1047

    Honestly, reducing expectations and being able to accept "good enough" is an incredibly powerful and important skill for an engineer to develop. It's not being lazy, it's being efficient with your time.

    • Ace Ace
      Ace Ace 25 days ago

      @dgthe3 - that was my off the cuff response to someone that said 3 was good enough which I took sarcastically. You just reiterated what I wrote but tossed more detail. It had nothing to do with the fact the pi is always "rounded" whether it be 1 digit or a billion digits.

    • dgthe3
      dgthe3 26 days ago +1

      @Ace Ace Pi being rounded 'for the most part'? It's always rounded and will always be rounded. We don't know every last digit of pi, and never will. So we can't do calculations with the 'full' value of it. But it rarely matters much. You could engineer something using 100 digits of pi, but the physical part that results can only be made & inspected so precisely. Plus, given the interaction between all the various parts with each other & the environment, there is probably going to be something that can compensate for not using more than a handful of digits. Whether it's a safety factor in the static design, or the control system for something dynamic, there is usually something that allows for a bit of error.

    • Carson Lawler
      Carson Lawler 29 days ago +1

      And a good skill for people who are perfectionists

    • Mark Shiman
      Mark Shiman Month ago

      It's also incel mentality.

    • Quickcall Computers
      Quickcall Computers Month ago +1

      Succeed first, perfect second. You cannot perfect first as you will never succeed.

  • Barcag
    Barcag Month ago +11

    It's insane to see you work. You're amazing and very, very gifted. Thanks for the incredible videos!

  • Micah Bruce
    Micah Bruce Month ago +11

    That moment I realized that you were basically taking the integral of the edge of the puzzle piece was amazing! That is so clever!

  • Benny The Dood
    Benny The Dood Month ago +9

    Love your videos man. Being an engineer myself I spend half my time deciding whether a long, tedious task is worth automating or doing it manually because “I only have to do it once”. 99% of the time I should’ve spent the extra time automating. Keep these awesome projects coming, they are extremely entertaining!
    P.S. I am a logic designer and electrical engineer at Lockheed, if you ever need anything PM me

    • NoTrueScotsman
      NoTrueScotsman Month ago

      He could have easily smoothed the edges in software with a few lines of OpenCV

  • Amikke
    Amikke Month ago +7

    This is a very good summary of programming. The journey is very interesting and the destination is very satisfying, but some problems on the way can drive you slightly insane.

  • Eric Cochrane
    Eric Cochrane Month ago +656

    Anyone that knows anything about automation knows how ridiculously hard of a challenge this is. Your projects are all so intense dude, love it!!

    • SE Gamble
      SE Gamble Month ago

      @Fonk Badonk Thanks for sharing! Having just a basic understanding of the complexity of your work, and others like you, it's a marvel to me that automation has taken over so much production. Obviously it's extremely difficult work now, but think about the early to mid days of automation when computing power was so much less. But I guess the more power we get the more complex things we take on, so it's probably likely that the complexity is greater today. I dunno.

    • sacredgeometry
      sacredgeometry Month ago +1

      @Fonk Badonk Oh yeah trying to talk complexity with non engineers/ laymen is impossible. I have given up trying.

    • sacredgeometry
      sacredgeometry Month ago

      @Sarsaparilla Sunset You sound like you dont learn much

    • Fonk Badonk
      Fonk Badonk Month ago +5

      Automation engineer with a background in IT here. It's REALLY frustrating at times conveying to customers which problems are the hard ones, because from a human standpoint the match between problem and hardness is often entirely different from a computer's point of view, which also don't have such a nicely "standardized" set of sensory input as humans.
      (Seemingly) simple issues like a scale giving slightly off measurements that don't quite match with what the level or flow meters report, but your PLC only getting the weight, while the people in the plant can clearly see the other values, can and WILL lead to deviations from the product's recipe. Nearly impossible to explain if you're not being lucky enough to have a techy of the customer involved. (Which is negligent and shouldn't happen, but hellooo real world.) And that's an extremely simple example. Like, bottom of the barrel.

    • Sarsaparilla Sunset
      Sarsaparilla Sunset Month ago +1

      What an utter waste of time

  • Ross Tuttle
    Ross Tuttle Month ago +9

    Congratulations! I'm glad you finished it. Sad to hear you had to move your shop again. You're doing a great job and keep at it.

  • David Ho
    David Ho Month ago +14

    Here's a question: Was the white side of each piece well defined? I've seen puzzles that are printed on BOTH sides, so you don't know which side is up.

    • MadaxeMunkeee
      MadaxeMunkeee 4 days ago

      I think the answer is yes because he only painted one side

  • Borut Svara
    Borut Svara Month ago +20

    Nice one! Did you perhaps made the image datasets publically available for us, to have some weekend fun? 😁

    • Simon Buchan
      Simon Buchan Month ago +3

      I'll second this: I've definitely seen extreme effort to make a python algorithm fast by making it really complex, like this, which turns out to be trivialized when run in c++ or rust and the dumb option is fast enough. Not saying this case specifically would be: n² can definitely soak up a lot of compute, but I would *expect* a brute force search to be pretty feasible here.

    • TheQuark6789
      TheQuark6789 Month ago +8

      The ultimate solving algorithm: crowdsourcing other people to do it for you :D

  • Jim Hood
    Jim Hood Month ago +8

    Your tenacity is inspiring. Or frightening. Still processing that choice. That said, I loved the video and listening to your process. Thank you.

  • Max Rosenbaum
    Max Rosenbaum Month ago +970

    “It is, without a doubt, THE hardest project that I’ve done.” I love how this is how he feels after every project. Shane rules.

    • jpaugh64
      jpaugh64 Month ago +5

      @Stuart Morrow To an extent, that might be realistic. Very powerful characters don't care that you exist, and very underpowered characters don't bother to oppose you.

    • Stuart Morrow
      Stuart Morrow Month ago +5

      It's like Dragonball Z where the enemies just happen to come in increasing strength

    • Dahlia Exurrana
      Dahlia Exurrana Month ago +44

      tbf each project he's done has gotten more and more complicated in succession, so it makes sense that every one would be the hardest

    • jpaugh64
      jpaugh64 Month ago +15

      Yeah... What if he's specifically looking for projects to push his boundaries?

  • Robert Val
    Robert Val Month ago +1

    Wonderful engineering video ! I love that you show that solving complex problems takes time

  • Sim
    Sim Month ago +7

    This video came out at the same time as my robot uni project, which was simply to place 15 cubes on a grid in different patterns. I got humbled real quick

  • Brad Gangel
    Brad Gangel Month ago +2

    great video! really love the time lapse at 17:17 - inspiring! your videos always help me learn and make me laugh!

  • We've got T r o u b l e

    The amount of time you had to spend scanning the pieces must've been eye opening for you. Thinking about the sheer duration of it alone, my mind wanders off to the repetition of work people have to do in third world countries like China where they'll spent their entire day glued to a chair doing the same thing over and over and over and over again.

  • TimeBucks
    TimeBucks Month ago +1307

    That assembly time lapse was so satisfying

  • Collapsar 77
    Collapsar 77 Month ago +2

    Boy, this project looks like it took a piece of your soul with it. But good damn job, man. And hey, hilariously, despite all the months of time this has taken, it is in fact still faster than doing this by hand.

  • Tharinda Dharmasena
    Tharinda Dharmasena Month ago +1

    Really awesome stuffs, Learned a lot with them : )

  • Jim Hewlett
    Jim Hewlett Month ago +6

    It may already be made, but have you considered using that to reassemble vases and other archaeological structures?

    • parodysam
      parodysam Month ago

      That’s 3D, he had to make his own pieces because he wanted to pretend the puzzle pieces were 2D to make the problem simpler. Another issue, those pieces would be worn down so even if you tried matching the contours of two pieces of an old vase that had previously fit together, they’d no longer be a match because their shapes changed since they first broke apart.

  • SPEARFISHER
    SPEARFISHER Month ago +1

    Love my Puget Systems machine!! And the people there are amazing, never gotten so much help troubleshooting from a computer company. And love your amazing videos too!!!❤

  • Victor Penteado
    Victor Penteado Month ago +218

    You did an amazing puzzle assistant. Much better than a boring puzzle solver who can make it all alone and without knowing the power of friendship

  • Mr Hood
    Mr Hood Month ago +2

    Thank you for taking the time to simplify into digestible pieces

  • ramsey karr
    ramsey karr Month ago +1

    Amazing work and patience...btw you could have started with small sample puzzle pieces maybe around 50-100 and test them through the process which would have saved you lot of headache...🙂

  • P B
    P B Month ago

    you know what i absolutely love about this build, aside from the feat of engineering? the fact that this machine is not truly "useful", it has one purpose which is to complete puzzles but the entire purpose of a puzzle is that you do it yourself for fun, it's not a job or a task that needs to be performed in mass. how often will you have to solve a 5000 piece all white puzzle that you need to make a machine for it? who is in the market for this machine? so in that sense the journey really was the destination, the satisfaction of seeing the functioning machine comes from the hours and hours of manual labour and problem solving that went into making it. in the end the puzzle-solving machine is a puzzle itself- it's very complicated, it took a long time to finish, once it's finished it no longer has a purpose other than to exist, and the maker gains enjoyment from it's completion :)

  • Colin Woods
    Colin Woods Month ago +1

    My senior design project in computer science was solving puzzles with computer vision like this. Only instead of all the machinery, we assembled it all with software and made the completed product visible on a GUI.
    We were able to get up to 2000 piece puzzles with minimal errors. We didn't go for all white puzzles, but that is an interesting challenge. It's cool seeing the similarities and differences in how our software decomposed and solved the puzzle!

  • Maksym Bozhko
    Maksym Bozhko Month ago +494

    I am a programmer thinking "this guy does such cool stuff" as he says "you should consider becoming a programmer". I laughed out loud at that moment 😅

    • jackdonkey22
      jackdonkey22 Month ago

      I tried programming in 2006-2007 . It can be cool when you come up with things. Like i made bubble sort before i knew it already existed. I used sin and cos to do 360 directions. I also was trying to solve the traveling salesman problem before i knew it was a thing. Most everything else was frustrating haha. Like when you're using too much Arduino memory regex'ing coordinates and it doesn't give you an error, it just doesn't work right.

    • MVJB
      MVJB Month ago

      This sort of image processing I aspire to....But I gotta do it in C++/HLSL for flight simulators and I still can't wrap my head around it

    • Peter Howarth
      Peter Howarth Month ago

      Me too!

    • Fig Fox
      Fig Fox Month ago +17

      If you're a programmer, you probably think at one point: "I would have done it differently" and then "I am sure It would work better that way"... ^^

    • NoName
      NoName Month ago +33

      @Cameron Dorson it was a joke, I assume :)

  • Tetsuo6995
    Tetsuo6995 Month ago +1

    I wonder if having the full table vibrate wouldn't work to just nudge all the pieces in their spot. Either vibrating after each placement or at the end for a grand finale.
    You could also maybe have the underside edges of the puzzle pieces maybe a bit more rounded so that the piece wants to naturally fit with other pieces.
    I watched a lot of "manufacturing videos" recently and the concept of vibrating stuff just right to position things is very common for automated assembly tasks.

  • Sage Petrich
    Sage Petrich Month ago +3

    I’ll never not appreciate the amount of time, dedication and energy Shane puts into his videos🙏🏻🙏🏻 keep it up man! We all love it!

  • julianjc84
    julianjc84 Month ago +1

    Cool puzzle. That is a masterpiece and would look great framed on the wall.

  • Tom Dietrich
    Tom Dietrich Month ago +2

    Man, I really think this was the best ending of all of your videos. I was laughing out so loud when I saw your facial expression after your wifes comment 🤣...

  • M. Plewka
    M. Plewka Month ago +8

    I'm amazed at the approach you came up with to solve your all-white puzzle. Do you know that the German Frauenhofen Institute developed a similar computer program (ePuzzler) in 2003-2013 for the torn files of the State Security of the German Democratic Republic. But they had the problem that the torn edges partially overlapped. Unfortunately I couldn't find a website in English about it.

    • SE Gamble
      SE Gamble Month ago

      That's amazing!!!!! Did you know that US government officials had to manually reassemble and tape back together all the papers that Donald Trump ripped up during his presidency? Apparently he has a habit of tearing papers up when he's done with them, and unfortunately every single scrap of paper the president interacts with gets filed (like even a sticky note he doodles on absent-mindedly). Even after being informed multiple times that his habit was causing gross inefficiency for that department (not to mention turning your job into soul crushing, completely unsatisfying puzzle building), he still continued to do it. Sounds like they could have used that software (or Shane's!).

  • moobsen
    moobsen Month ago

    Great video. Would have done edge detection for the edge (case ;) pieces though, might have avoided the bug.

  • Noah Palmer
    Noah Palmer Month ago +1

    Some of the best videos on Clip-Share, hand down.

  • Chris Balfour
    Chris Balfour Month ago

    Bravo! I've been programming for decades and your approach to matching puzzle pieces was impressive. I have a slightly similar programming story.
    There are old text-based predecessors to MMORPGs called MUDs. Big online multiplayer text based games, loosely based on Dungeons & Dragons game mechanics. To oversimplify, the game worlds were a bunch of areas, each area having rooms connected NSEWUD. Areas were cities, forests, etc. Keep in mind these are text based games, so they don't really fit together spatially in rational ways like modern graphical MMORPGs. I wanted to dynamically build and store an ASCII art "map" of each area, every time the MUD server booted up, so it needed to be somewhat efficient.
    To do this, I picked one room to start from in an area, and recursively walked from there to all the rooms in the whole area, giving each room an x,y and z coordinate based on the path taken. Recursion has pitfalls, but it was easy.
    It made spaghetti look organized. At the center of a city area could be a city park, with many rooms in the park, but each road around the park's perimeter could consist of just one or two rooms. Coordinates for rooms overlapped and were pretty much useless.
    The solution I came up with was funny. I did recursive walks from all rooms as starting points, to all rooms (SIZE*SIZE; moar recursion!). This would make hundreds of sets of coordinates for every single room. Then I did the clever bit: (To avoid doing slow floating point math) I multiplied each room coordinate by the total number of rooms in the area squared (or cubed? it was a while ago) and then I just averaged each room's x's, y's and z's together. It worked 99% of the time. Some tricky areas with literal one way streets and such would be skewed, but that was no big deal. I was just happy it didn't slow down the server boot up too much.

  • soccer14blood08
    soccer14blood08 Month ago +157

    Legitimately the only creator who completely brightens my day when I see they’ve posted a new video. Love everything about this guy.

  • Marisa Morgan
    Marisa Morgan Month ago

    I want to come back in a few years to see how this machine has been improved

  • Rotten Robert
    Rotten Robert Month ago

    impressive!!! reduced expectations are a good thing when trying to move forward. i am fairly certain you could go back and tweak all those lowered expectations up to 100% correct. lol. seriously your my hero

  • James d George
    James d George Month ago +25

    I love the grounded reality of this channel!! Despite the recession, I'm so happy 😊 withdrawing my $94k profits out of my investment with a platform in town™√

    • Gandolfo Costa
      Gandolfo Costa Month ago

      I'm placing my investments with Mrs. Carmen Alise right away can't miss this great opportunity

    • Elvis raw
      Elvis raw Month ago

      @Isabelle Morrison Thank you for this. Will definitely reach out to her now. Thanks again

    • Isabelle Morrison
      Isabelle Morrison Month ago

      Tell her I referred you, also remember to share your testimony with others ☝️🇺🇲....📌

    • Isabelle Morrison
      Isabelle Morrison Month ago

      She's active with this ╪𝟭𝟲𝟬𝟮𝟳𝟴𝟬𝟳𝟲𝟴𝟰 currently.

    • Isabelle Morrison
      Isabelle Morrison Month ago

      What’s apq
      ⏬⏬

  • Ruijie He
    Ruijie He Month ago

    I have been working on this initiative for over a year (not continuously of course). Now your video motivates me to pick the project up.

  • J Waseman
    J Waseman Month ago +312

    I'M SLOWLY GOING TOTALLY INSANE...lol. Nothing short of amazing projects on this channel. Hats off to you sir. Very impressive, educational, and inspirational project as usual. Your drive is something of wonder. Thank you.

  • Börge Jacobsen
    Börge Jacobsen Month ago

    WOW mindblowing, I love your channel since the beginning !

  • Lyne Lalonde
    Lyne Lalonde Month ago

    This is exactly how I do puzzles. Note, I always get tasked with the solid colour sections. Lol

  • Phil Breadcrumbs
    Phil Breadcrumbs Month ago

    Awesome video! You should have a go at making a robot that can play the amazing game Klask, seems like it might be an interesting project

  • Vishal Pareek
    Vishal Pareek Month ago +1

    Your presentation for algorithms and top holiday destinations with no robots made my day....

  • S L
    S L Month ago +168

    What I like about you is you aren't afraid to admit your mistakes. You actually embrace them and let people know what went wrong or why things didn't work. Some people out there pretend they are so smart and get everything perfect on the first try everytime. Thanks for being real

  • najahe 123
    najahe 123 Month ago

    I'm curious why you decided to remove the fuzzy edges from the (first) puzzle in realspace rather than recalculating the shapes to make them match.

  • Matthew Robbins
    Matthew Robbins Month ago +1

    This is nothing less than incredible!

  • Jay McClure
    Jay McClure Month ago

    17:46 the simple answer is the first overlooked and often times the simple answer is the solution. Or at least a road to it. Look closely at the stacked pieces, they share at least one identical (or close enough to identical for the robotic eye) edge. Possibly eliminate this with a redundant position verification system maybe?

  • Valery0p 5
    Valery0p 5 Month ago

    That's why tackling each of the sub problems formally first saves you a lot of migraines 😅

  • Skylos Sobaka
    Skylos Sobaka Month ago +196

    As a programmer, I'm intrigued with the algorithmic possibilities that could be applied regarding your earlier data sets - do you have your various scan sets that others could play with to see if they can find clever ways to massage them into finding the connections?:

    • Skylos Sobaka
      Skylos Sobaka Month ago

      @Philippe Deslongchamps He didn't discuss any amount of fuzzing and the impact of that approach in his algorithms.

    • benoit hautefeuille
      benoit hautefeuille Month ago +1

      It would be very interesting to see more people working with that first data set. it appears clearly than original scanning is not optimal, but the real interesting challenge is to find a way to deal with that, it would give a real life solution. Some iterations probably have to be done to adjust preprocessing and matching algorithm to find a solution that would be unique.

    • Timothy Johnson
      Timothy Johnson Month ago +4

      I'm surprised he didn't just try simulating his puzzle solver with the digital version of the puzzle he generated, before he cut all the pieces out. That way all the pieces would be perfect, and he would have found the bugs before trying the solve with the physical pieces.

    • Philippe Deslongchamps
      Philippe Deslongchamps Month ago

      Yeeeeesssssss let us try! We professional software engineers :) we gona smoothen those edges then allow for error % while comparing the edges!

    • 82NeXus
      82NeXus Month ago

      @IAmThe UsualGuy The devil is in the details with this kind of problem I think. In other words, the only way you'd know would be to try it. In fact iterate on it: think and build and repeat.

  • Lou
    Lou Month ago

    You guys damn near frying your brain is why we have so much cool stuff. Thanks 👍🏾

  • JA FO
    JA FO Month ago

    I remember a family I knew growing up who had a big yellow circle they did. It was sitting on a table for a long time about half done when I first saw it.

  • Burning Diesel Production

    Hey, I really like your hair style! It speaks determination, focus and true love to science!

  • Gene
    Gene Month ago

    Great video your skill and patience are next level. I wonder if a vacuum table would help pieces not move

    • alvamiga
      alvamiga 27 days ago

      I think the biggest problem is when they get shoved. I suspect the arm will always win over any vacuum.

  • Gunhaver
    Gunhaver Month ago +250

    Not only could a TV show never be able to produce a segment like this, it would never be as good. this is peak youtube. you took months and months to make a single segment, and its amazing

    • Gunhaver
      Gunhaver Month ago +3

      @pyropulse not quite, mythbusters could not afford to take months and all the budget to make a single episode. even mythbuster's larger episodes that had some hefty budget were super rushed compared to this video. it just doesn't make sense financially to spend so much time on a single video unless you are independent and sponsored. mythbusters didn't have any sponsors (as far as i know) and was beholden to the network and advertisers that bought slots on the show. if they took a few months to make a single insane episode, that would be months of no advertising revenue

    • pyropulse
      pyropulse Month ago +2

      How could a TV show never produce something like this? Is mythbusters not a TV that did similar stuff to this?

    • Nutrition Facts
      Nutrition Facts Month ago +5

      That's why I love channels like these. No drama, just fun. Even though he doesn't upload often you understand why and can appreciate all the hard work that's put into this stuff.

  • Herobrine Snickers
    Herobrine Snickers Month ago

    Bro you just helped with my own vision project I didn’t realize I could just mark stuff out with lines

  • Krass Bass
    Krass Bass Month ago +1

    Hi, I wonder if there is another way. I would like to try my own algorithm. Could you provide the pictures? I really don’t want to go through the same hell by making my own puzzle and scanning all pieces.
    Best regards

  • Nick Frechette
    Nick Frechette Month ago

    When I heard "Thank goodness I only have to do this once"... I should of known it wasn't going to be once.... You sir are a wildly talented human. hahahaha

  • #FarmerBill
    #FarmerBill Month ago

    Never tired of watching your video! Could use some assistance if possible. I am a farmer in NE Indiana and I do a lot of field drainage tile. I have been looking for years for someone to build a small vehicle or robot with a camera and an under ground locator. This would need to be remote controlled. The purpose would be to drive unit up field tiles to map where they run or to find a blockage. I have contacted Purdue university and also multiple other universities along with hours of Google searches and phone calls with the same answer. It can't be done. Any help?

  • Fulmenify
    Fulmenify Month ago +247

    This is awesome!
    Also, I definitely learned something: Before spending hours of preparing my whole data set (or puzzle pieces) for a yet unproven algorithm (like matching sides that could fit together), make a quick test with reduced data set to see whether it works in principle :D

    • Mark Johnson
      Mark Johnson Month ago

      @Glenn edwards Sure, but your underlying assumption is that all errors must be solved at once. Starting small and then scaling stratifies the errors. So you get the basic model down, fix the big problems first, and then deal with problems that arise only at scale. Still, he did such a great job showing his whole process. The sheer level of persistence here is admirable.

    • Сергей Бобров
      Сергей Бобров Month ago +1

      this is relevant not only for programming, but for everyday stuff, sometimes not even computer-related

    • Mert
      Mert Month ago +2

      @Siberius WolfDefinitely. With his knowledge and experience, there’s no way he thought a regular cut puzzle would work perfectly. But it serves as an interesting progression plot + it’s good for educating the viewers.

    • Fulmenify
      Fulmenify Month ago +2

      @Glenn edwards It's true what you described in the end there. You have cases like that with virtual elements/data as well. But things like the algorithm finding no match at all, like in this video, because of fuzzy edges, you'd have detected with a really small subset of pieces (chosen wisely) as well.
      Also that the "smoothing fix" changed the shape too much, you'd have discovered a lot earlier.
      So I still think it's a valid and reasonable way to go about things, to make quick tests with a subset of data/pieces, before going big.

    • Glenn edwards
      Glenn edwards Month ago +1

      This approach works really well when dealing with virtual elements as long as the subset of test data represents all possible combinations you would come across. However it does not transfer well when dealing with real world physical elements as demonstrated here i.e. pieces shifting the duplication of coordinates leading to stacking etc. For example the latter problem is no doubt because the process lead to duplicate answers for the same piece so it placed it in the correct coordinates even though it had already solved it. This error would well not show up in a much smaller data set.

  • BluishGreenPro
    BluishGreenPro Month ago

    The physical world is so messy. That’s why I love programming games, where everything works 100% of the time and you never run into weird edge cases.

  • Geert Schuring
    Geert Schuring Month ago +4

    First of all: Mad respect for all the work you did and sharing it with us! :)) Secondly: WHY oh WHY did you use a 4000 (!!) piece puzzle while developing your solving technique? Wouldn't a 40 or even 400 piece puzzle make the process sooo much faster?

  • Excalibur's Engineering

    Well done sir! But, you never said anywhere how long the algorithm took to solve it? (In terms of raw compute time, not wall time.) Or did I miss this somewhere?

  • Thomas Williams
    Thomas Williams Month ago

    Fitting the puzzle pieces together is close to some work I've done recently on a cancer detection system via VOCs in the breath. We get curve scan data, a curve for each specific VOC sensor. Then we attempt to map this to known cancer data. The amount of confounding data and difficulty in separating signal from noise makes it appear like a 4000 part puzzle. Of course I wrote the clinical software all in python. The good news is that the system is quite successful at detection.

  • Fly Gaming
    Fly Gaming Month ago +93

    I love how you went with physically smoothing the edges, rather that doing it in code 😂

    • alvamiga
      alvamiga 27 days ago

      How many of us haven't gone into a database and fixed a couple of rogue values? 😉

    • VV FR
      VV FR Month ago +1

      I think the biggest lesson learned was the economics of time

    • Alexandre Zani
      Alexandre Zani Month ago +3

      There is an old joke at Google where some search results kept being wrong because for whatever reason, there was this one garden gnome listing on ebay that kept coming up. Eventually, the person who was trying to fix the bug got frustrated and bought the gnome which made the problem go away. The phrase "buying the gnome" since then has meant something like "change reality to hide the bug".

    • defenestrated23
      defenestrated23 Month ago +9

      @MDuh Gaming His problem is the locality-sensitive hash is too precise. The trick is to start with low-frequency components (which match a huge number) and continue adding high frequency coefficients until the number of matches is tractable. It seems like he was using some kind of SVM or forest model to generate the hash, so this would be fairly easy to tune.
      Like all good algorithms, the key is divide and conquer. Joining pieces into NxN blocks is a great example of this but I think that could be applied to many parts of the algo.

    • koala banana
      koala banana Month ago +1

      @MDuh Gaming the physical part could still be smoothed out in software for comparison again

  • SupersonicHB
    SupersonicHB Month ago +1

    What a job !!!! You need to have sort of a rolling pin to flatten your pieces.

  • Nikil Ragav
    Nikil Ragav Month ago +6

    Several ways I'm thinking of to match the jigsaw edges:
    n puzzle pieces
    n*4 edges
    I'm thinking that you need to do this as a sorting problem rather than a searching problem so that worst-case time complexity is something like O(n^2) at the worst case (and ideally more like O(n*log n)
    Vector space transformation
    - represent all the edges as images rather than continuous polynomials (e.g. bezier curves) maybe like 256 x 64 pixels or something around there. Don't think it needs to be too high-res
    (p*q pixels in each edge image)
    - rotate all the edges to the same orientation (eg. like ---__---) so that the indents are all in the same direction O(n). Rotation is O(p*q)
    - do PCA on the matrices or some kind of vector space transformation such that images with the same curve end up in the same coordinate in space. I think this is O(n*p*q) but not sure. Maybe you will be able to do dimensionality reduction here so instead of p*q vector points, maybe you can get away with something like 10 points (I will call this reduced dimension # as d)
    - sort all the PCA vectors (basically a radix sort). Pretty sure this is O(n*p*q). With dimensionality reduction, something like O(n*d)
    - the most likely match for every puzzle should be the one immediately before or immediately after the one you're looking at in the list O(n)
    Bezier curve, spline, or other polynomial curve representation
    - this is a continuous curve representation. A bezier curve is something like a cubic function for each corner, so ideally a single polynomial for the whole curve will be simpler.
    Assuming that you can make the representation as a single polynomial (I think it will need to be at least x^5 because there are at least 6 points for a puzzle piece · -- : __ : -- · ; it might need to be x^(3*6) = x^18 b/c I'm pretty sure that's the number of coefficients for each corner in a bezier curve):
    I will use p to represent the power of the polynomial
    - you basically end up with a vector of p+1 coefficients (a*x^5 + b*x^4 ...+ f*x^0) for each curve
    - sort the vectors from x^0 coefficient first to x^p last (so this is also a radix sort) O(n*p)
    - the most likely match for every puzzle should be the one immediately before or immediately after the one you're looking at in the list O(n)
    This assumes that your curve fitting algorithm is good
    This seems to be pretty similar to PCA in that you're actually doing a dimensionality reduction when you make a polynomial.
    But here's a problem:
    the puzzle pieces could fit together but be a bit offset
    e.g.
    \
    \_ \_
    _| _|
    | |
    |
    /
    the edges also don't necessarily need to be the same length
    So you might want to extract out just the knobby protrusion of the curve first
    then do the sorting of that and get potential matches
    then once you've clustered knobs that will fit together
    then sort based on the flatter edges ( \ vs | vs /, etc)
    then you cluster again
    then do the other flatter edge
    then cluster again.
    Hmm, but some puzzle pieces will have no protrusions (e.g. the outer border of the puzzle), so you need to handle that flat pieces aren't actually clustered to fit together.

    • alvamiga
      alvamiga 27 days ago

      I think a lot of it comes down to how unique the connectors are between pieces. The screenshots show that he's only seems to be getting single-digit matches for possibilities, which means they're pretty distinct, although maybe less so than a regular puzzle which would have the picture to narrow down the potential matches.
      I'd have probably started with the four corner pieces, which have to be the easiest to identify, and then built diagonally inwards, which would afford you two edges to match up for centre pieces and one for the (far fewer) edge pieces.
      It's obviously a nasty problem, but the complexity comes from how similar the pieces are, rather than the fact it's all white. 😀
      Ultimately, it doesn't matter if there's a picture or not if you don't give the computer the information; as the fit was less tight than the purchased puzzle (a separate nightmare) we don't actually know if it found the correct solution, or one that just happens to work! 😉

  • Tobias Arboe
    Tobias Arboe Month ago

    "If I wrote my code in something like C++ I would still be writing code - so I like this trade" - Best line of the year

  • Vanjester Lazam
    Vanjester Lazam Month ago +3

    Love the video.
    It's actually the flaws and the problem solving that made me stick around.
    You did really well. But I do hope that you get those bugs fixed and help the machine / program work more smoothly. What satisfaction it would give if you were able to pull it off without human intervention.
    Lastly... the wife thing is really hilarious. All that work and your wife is like 'meh'. Makes you want to implode. Totally relatable.
    Good job and more power to you.

    • iRouRoui
      iRouRoui 2 days ago

      i wonder what her MBTI is

    • iRouRoui
      iRouRoui 2 days ago

      it's just an "act", he said it in one of his videos (the wall painting one), she's awsome

  • Nuno M
    Nuno M Month ago +159

    This is one of your best episodes. Not only for the engineering project, but also for adding some philosophy / poetry perls like: "If at first you don't succeed, reduce your expectations until you're a success" or "There is something poetic on two pieces missing".

  • Tyler Martin
    Tyler Martin Month ago

    On todays episode of Stuff Made Here: Shane bites off more than he can chew :D This seems like an insanely ambitious project and I am wildly impressed you got as close as you did.

    • David Ho
      David Ho Month ago +1

      I think Shane is so brilliant there is nothing that is more than he can chew.

  • Petr ihadtosignupforthis

    Seems the optimization could have been also on data formatting.
    - That is by creative negative offset represantation of piece where negative side of piece 1 should be matching the positive side.
    - Format the data where you simply look for your answer (positive match negative)
    However.... 4 sides. Your approach, singles to quads etc., is neat.

  • Eugene
    Eugene Month ago +2

    I am curious if instead of grinding puzzle pieces you could use one of spline noise reduction algorithms to do it programatically.

    • NoTrueScotsman
      NoTrueScotsman Month ago

      I don't know about the algorithm you mentioned but it is trivial to do in opencv and even if he wanted to code it himself it would have been still much easier than making and photographing a new puzzle.

  • mardev
    mardev Month ago

    Maybe vibrating the table could slot some of those pieces into place? Or adding a "probe" to push the piece down after dropping it might also help

  • kukicu
    kukicu Month ago +115

    The fact that you are so raw when you talk about you struggles is incredibly motivating. It's really hard to imagine the amount of work and worries and trial and error that go into projects like these when you see the finiahed product. So for that : a big massive thank you.

    • Paul R
      Paul R Month ago +2

      And the fact that “big brain” people sometimes forget to say idk…renew the warehouse lease!! 😂

  • Ad ta tatum temporis

    Love this man and his wife, awesome couple, brillant minds, beautiful sense of humour.
    Now truth be told😅, there must be a priority CIA, NSA or FBI list out there where these two birds are listed as priority humans for extraction and protection in case of alien invasion, extinction space threats, nuclear disasters etc etc.. 😂😅
    God bless America 🇺🇸🇺🇸🇺🇸

  • 7curiogeo
    7curiogeo Month ago

    I did some simple programing years ago( 30years ago), in basic.
    This would make me crazy, so far beyond me. But so cool to see you push through and refuse to not solve found/created issues
    Total respect.

  • posthocprior
    posthocprior Month ago

    You could have used a kernel method to smooth the edges of the puzzle pieces images. This would have solved the problem. You didn't need to make your own puzzle with clearly delineated edges.

  • Mohammed Sufyan Rizvi

    Do you make a G-code interpreter for your CNC projects?

  • Sjaarda
    Sjaarda Month ago +138

    I admire not only your genius, but also your ability to explain very advanced concepts in simple to comprehend ways, and your honesty about your mistakes. Fantastic work!

    • AshiStarshade
      AshiStarshade Month ago

      There might have been genius in some earlier video, but not in this one...

  • Gun_Down_Greenwood
    Gun_Down_Greenwood Month ago

    3:22 "Thank goodness I only have to do it once."
    Why do I feel like this _can't_ age well?
    11:17 "Thank goodness I only have to do it twice"
    12:35 "Thank goodness I only have to do it three times"
    15:30 "Thank goodness I only have to do this four times"

  • snteevveetns
    snteevveetns Month ago +2

    I’m slowly going totally insane too. Great Easter egg

    • John B
      John B 8 days ago

      Looks like I wasn't the only person that saw that. 🙂

  • David Ho
    David Ho Month ago

    Wow! You've got be a super brainiac to figure out how to make the computer learn to solve this puzzle! Both the hardware and the software.

  • Knowledgeable Goy
    Knowledgeable Goy Month ago

    Damn, this Austin Powers guy is really smart. Well done!

  • Simon Peters
    Simon Peters Month ago

    I should think that it might have been interesting to have left the picture on the jigsaw. It gives you the opportunity to quickly and easily check if the computer was 100% accurate, using the amazing facility - eyesight.

  • Zach O.
    Zach O. Month ago

    Great video really impressive.

  • Abdul Munim
    Abdul Munim Month ago

    You should've first made the puzzle robot to solve an image puzzle, so that you would've gained experience or failed faster and also at least you would've known where the problem happened. But anyways, love your content.

  • Elham D
    Elham D Month ago

    I love this Chanel and the way he shows the problem & then find the solution for them !!! Hat off!!

  • L. Y.
    L. Y. Month ago +157

    Somehow this is both the funniest and most educational channel I watch on the regular. "That takes about eight hours, so I'm glad I only have to do it [number] times!" had me cracking up harder each time

    • Campfire Bandit
      Campfire Bandit Month ago

      +

    • ShootLiegh
      ShootLiegh Month ago +8

      As soon as he said it twice I immediately knew it wasn't the last either.

    • No name
      No name Month ago +3

      @Gary Lewisi get the same but isn't it annoying because then it's like "Well don't f**king ask then" 🤦😂...

    • Gary Lewis
      Gary Lewis Month ago +7

      Same. The first time he repeated it, I smiled. The 2nd time, I audibly chuckled. The 3rd time, I laughed loudly enough my wife asked me what I was watching.
      I tried to explain. She just looked at me funny.

  • C S
    C S Month ago

    During the assembly, numerous pieces are placed by the device in stand alone locations. If the designed process is to compare sides and identify matches, how does the drive know where to place pieces with no match in stand alone locations?

  • Koonsick Green
    Koonsick Green Month ago +1

    at least the several month input is shorter than how long it would take for you to finish the puzzle urself. Awesome vid! You are brilliant

  • Tristan C
    Tristan C Month ago

    Since many manufacturers use specific cutting dies for their puzzles, can you cheat and have your algorithm check to see if the puzzle matches a known die in order to greatly speed up processing times in subsequent runs.

  • Barn Owl
    Barn Owl Month ago

    Insisting on perfection will destroy the chance of success. Yours is the kind of attitude we need for those working on the fusion energy projects.

  • FlemDog Science
    FlemDog Science Month ago +190

    Your stuff is so stinking phenomenal! I try to show my class your stuff so they can see what it looks like to think really deeply about something. I’m not sure it always clicks for them, but a few love it (myself included, obviously) and it’s good for everyone. Thanks for all the work you put in!
    PS-quick idea for your end screen…put that link in the description or pin it in the comments. Get the world binge watching stuff made here!

    • FlemDog Science
      FlemDog Science Month ago +1

      @Will Scales I don't do too many Bill Nye. (Can't actually remember the last one I watched!)--but I still think his stuff is great! The only one I don't think that makes it into class is Colin Furze, although I do enjoy his content tremendously. I think he could fit though, I just need to incorporate more builds! I've been trying to make some more custom stuff myself for them that fits exactly with the days goal (with the sub-goal not being too cringy of a video!)

    • Will Scales
      Will Scales Month ago

      do you still show Bill Nye videos? I loved watching his stuff. Now I watch Smarter Every Day, Practical Engineering, Stuff Made Here and Colin Furze (but he probably isn't school-video material...)

    • Nathan Pfirman
      Nathan Pfirman Month ago +4

      We need more teachers like you that show their students actually interesting videos rather than the school approved videos that are cringey asf