Coincidentally, it kind of simplifies the sorting problem too. Just do like Amazon and don't sort!
Instead, use the machine to figure out exactly what was in that bin you just bought. Give the bin an ID, and store it as is. Then, when putting together a set, have your software find the minimum number of bins you need to pull from to assemble the set. Run them through, and have the machine pull the parts.
- the sets have to be absolutely perfect to be worth something
- you need to check to make sure all parts are present, this is hard enough for Lego which starts from known quantities and brand new parts, with second hand parts and people being ultra picky about such details as year-of-manufacture of the bricks it becomes an intractable problem.
- Rare parts are really rare. In fact, the only parts you would have to document like this are the rare ones, and 'rare' is actually one of the categories that I can sort for. This gives the option to sell only the rare parts for a certain set and to leave the bulk parts to some other method. Much easier to do that profitable.
Said another way, assemble sets around the rare needles you have stumbled across unintentionally while sorting the haystack.
And then there is the 'incrowd' which does everything they can to get rid of newcomers. All in all not too impressed with Bricklink in its current incarnation, the Lego group, which used to quietly promote bricklink has gone completely silent on them.
A final item about bricklink that I don't like is that they tend to sue or send C&D letters to other Lego related sites for the use of 'their' content whereas that content is all user generated, it's just that Bricklink overnight went from having all that content owned by the contributors to claiming copyright on images and terminology. They really pulled a Gracenote/Freedb stunt here.
http://www.thebrickfan.com/brick-owl-hit-cease-desist-letter...
Imo they don't have a leg to stand on with 'their' numbering system because it is based on Lego mold numbers to begin with.
And picking them is stupendously hard due to the large variety in shapes and sizes.
Then you'd go and pick the bins, run them through, and the machine assembles the sets from those bins. That's similar to the way Amazon does it. Now they have the shelves on robotic trolleys that bring them directly to the packers, but that's just a required efficiency at their scale.
I guess the problem with this scheme is that you move the problem from classifying to identifying... twice. So the precision requirement goes up. I don't know how big your dataset would need to be to require minimum human intervention.
The closest I've come to this is where you identify which sets are present in a batch by doing a trial on a sample (that's a pretty easy statistical job), and then sort directly into sets starting from the largest sets down. That way you reduce the parts count very rapidly. So, I did this for a bit and now have 18 60 liter crates of almost complete sets which all need to be manually completed and checked. Again, not profitable.
If you just want to do this to keep busy it is easy, if you want to make more than what you could make by flipping burgers it is surprisingly hard.