3 ms·
Hey, Daniel West here, the creator. First of all, as I mention in the video, this project is inspired by the machines built by akiyuky and jacquesm@. So I'm ce
by JustASquid 7y ago
Hey, Daniel West here, the creator.
First of all, as I mention in the video, this project is inspired by the machines built by akiyuky and jacquesm@. So I'm certainly not claiming this is the world's first LEGO sorting machine!
In the video I try and focus on the unique aspect of this machine, which is the Universal part. Because the CNN is trained on synthetic data, the machine is able to recognize any LEGO part that has ever been produced. This is with the notable exception of ignoring printed parts, mold variations, and oversized parts, as well as parts that are not present in the LDraw part library. These restrictions bring the tens of thousands of part categories down to just under 3000.
Accurately classifying 3000 categories is prohibitively difficult using manual labelling alone, simply because it's very hard to get physical access to all these different parts (not to mention the labelling process itself is quite laborious).
Is it overkill? Totally. But one goal of this project is to be a testbed for the use of synthetic data in a real-world classification system, and I'm quite happy with how well it ended up working.
I have produced another video explaining the AI system in detail: https://youtu.be/-UGl0ZOCgwQ https://youtu.be/-UGl0ZOCgwQ
It has also been noted that the machine would not be mass marketable in its current state. That is totally accurate! This machine should be considered a proof-of-concept/prototype and I have no plans to try and create a mass-produced version.
- jacquesm 7y agoVery neat project, congratulations on seeing it through. Note that being able to sort down to single parts is less useful than it may seem simply because of the number of passes required and that you'll likely reach your 'universal' stage a lot earlier simply because neural nets are good at classifying stuff they've never seen before as long as enough of the bits and pieces match. How long does it run between fixes? How many kg of lego have you put through it? Beware of lots people that will bug you to give them all your work, to this day not a week goes by that someone contacts me with a thinly veiled request to get a copy of the hard parts 'just for their personal curiosity' and then when you search for a bit on Google you'll find them associated with large parts resellers. Highly annoying. Best of luck with your project, curious about what you'll do next with it.
- JustASquid 7y agoThank you Jacques! Indeed, for practical sorting purposes going down to individual parts is less useful. But there are intriguing possibilities, like for example using it to keep track of your collection, or extracting sets from a collection. The machine is quite robust to jams so long as you're careful not to insert oversized parts. That being said, I'd say there's a problem every 30-60 minutes, so certainly not something you could leave overnight. Running for hours and hours means that it will eventually grind itself into dust anyway (I've already burned out a motor!) I'll probably end up sharing everything one way or another. I'm sure you'll agree that any real commercial application of something like this is pretty far-fetched so I'm more than happy to just treat this as a contribution to the body of domain randomization application research.