Cucumber grading has been automated for years. Look on YouTube for automated cucumber grading systems.[1][2] There are many competing vendors. The commercial machines process their video locally and don't need "the cloud". They're also much faster.<p>Fruit and vegetable sorting using computer vision is routine. That's why commercial produce is so consistent - it's been pre-sorted. The existing technologies are so fast that it's routine to inspect and sort peas, and possible to sort grains of rice.<p>Most of the cost and complexity in the commercial machines is in the material handling. There are conveyors and devices to get the individual items lined up.
Cleaning and washing stations are usually part of the line. Commercial machines have to be built sturdily so they survive continuous use, and have to be cleanable with high-pressure soapy water. The little unit that does machine vision is a minor part of the processing line.<p>AI techniques are routinely used. Support vector machines are popular. One Indian system uses fuzzy logic. ANNs have been tried but are not yet popular.<p>The systems generally measure user-defined features - length, width, curvature, color, flaws - which then go into a simple grading algorithm. They're not trying to match human decisions.<p>[1] <a href="https://www.youtube.com/watch?v=5DCpOx-q_yo" rel="nofollow">https://www.youtube.com/watch?v=5DCpOx-q_yo</a>
[2] <a href="http://www.aweta.nl/en/produce/cucumber.html" rel="nofollow">http://www.aweta.nl/en/produce/cucumber.html</a>
While it's a cool concept and agriculture is ripe for technology disruption, the enterprise software product marketer in me finds it to be a calculated marketing stunt, if not an disingenuous one.<p>TensorFlow is, in no way shape or form, ready to be used by anyone but very technical people with a solid knowledge of both software engineering and machine learning. In fact, it's probably unfair to single out TensorFlow because every deep learning toolkit I have seen is still in the same "extremely early adopter" phase. Yet, this article makes it seem like a line of business user (farmer) with some background in technology (former embedded systems engineer) can use deep learning to transform his/her business -when, in reality, much expert help is needed to make it work. In other words, it would have been a lot more plausible/genuine if the article read like:<p>1. A progressive farmer got in touch with Google.<p>2. Google dispatched their solutions architect to work with them.<p>3. Hey, a cool, early prototype is working!<p>I am not trying to be a hater. Deep learning has huge potential, and Google, among others, is doing a lot to make it accessible. That said, this type of over-promising ahead of market reality is what gives cutting edge technology a bad name.
tl;dr:
With a training dataset of over 7000 images, the system is incapable of performing the cucumber sorting task on live data with greater than 70% accuracy - likely do to over fitting on the "small" training set (where it shows 95% accuracy). Also, it is currently incapable of taking into account a number of the existing variables used for sorting.<p>If one were to leverage the power of a supercomputer trained with tens of thousands more observations - all meticulously hand categorized - it would probably get better.<p>Truly, we are only limited by our imaginations.
At first the headline made me skeptical because I expected it to be one of those clickbait articles where someone deploys excessive firepower solving a trivial problem.
However! It turns out that cucumber sorting is well-suited to deep learning: a) there is enough interest to generate a reasonably-sized data set, and b) It is one of those difficult "I'll know it when I see it" classification/evaluation problems.<p>However, as soon as they described the actual solution I felt somewhat let down.<p>1. Reducing the input to 80x80 images is likely unnecessary; it removes some of the most important features (number of thorns, blemishes) from contention.
If the issue is computational cost (and therefore training time) you might consider using cloud GPUs.
However, a network with multiple "towers" (like Google's Inception model) could conceivably allow for evaluating the sorts of aspects that require higher resolution relatively cheaply (one-or-two convolutional layers with pooling and then a fully connected layer) along one pathway, while a different tower (with more layers or more units per layer) processes the resized images.<p>2. If the network used was just a modification of the MNIST one, then it seems like it ignores the ordinal nature of the problem.
If cucumber quality can be ordered, why not use a regression model instead (or maybe regression along multiple criteria, like straightness, bumpiness, thickness, etc.) instead of treating each class as if they were completely separate?<p>3. Why not release the dataset? I have GPUs, the necessary background, and a few hours to try out some models.
I also have a heretofore unrecognized yen to use my models to generate images of the ideal Japanese cucumber, so I'd be willing to do it for free.
Am I the only one that thinks this is grossly overengineered solution? Wouldn't the simple machine with differently shaped and sized holes do equaly good or better? Existing industrial machines are usually pretty good at mechanical sorting (think of things like shelled sunflower seeds, etc.).
As someone who is using the Raspberry Pi professionally, I'm nervous when I see that rainbow square in the top right corner in both their screen snapshot and the video (0:16 in). It's a sign that the Pi doesn't get enough power which might results in an unstable operation or even SD card corruption. I hope there's still a human backup sorter should the system fail :-)
If anyone is interested to work in the food tech / image processing area, we are an early stage startup[0] building small scale automated food preparation robotics and have an image-processing focused industry-experienced Mechatronics PhD as an advisor. We are based in the most natural / pleasant part of China, Yunnan.<p>[0] <a href="http://8-food.com/" rel="nofollow">http://8-food.com/</a>
Similar one.. This AI bot from Spanish start-up removes plastic from garbage... <a href="http://www.sadako.es/?page_id=33&lang=en" rel="nofollow">http://www.sadako.es/?page_id=33&lang=en</a>
I don't understand why people say there is no way a non-Google engineer could do this. It's not rocket science... This farmer obviously has an engineering background, either as a job or a hobby.<p>The electronic/mechanical engineering of the sorter is actually much more demanding than training tensorflow on a custom data set - which is a fairly trivial task.<p>Anyway, cool work!
Produce sorting machines are fascinating.<p><a href="https://www.youtube.com/watch?v=Lz88nsWL4kw" rel="nofollow">https://www.youtube.com/watch?v=Lz88nsWL4kw</a>
Completely off topic, but why is having lots a prickles a positive thing in a cucumber?<p>Would that just meant they have to be cut off before you can eat it?
What I like best about this is he uploaded his dataset: <a href="https://github.com/workpiles/CUCUMBER-9" rel="nofollow">https://github.com/workpiles/CUCUMBER-9</a>
"
...First they came for the Cucumbers, and I did not speak out—<p>Because I was not a Cucumber ...
"<p>-Song of those Tensorflow'd out of their jobs.<p>[Edit: Changed Cucumber sorters to cucumbers to clarify the sarcasm]
<i>TensorFlow democratizes the power of deep learning</i><p>I won't say this kind of innovation is bad, per se, or should be stopped. But the blitheness with which the article sidesteps the collateral damage that will necessarily come of this brave new era of efficiency and progress -- as if there was nothing more to this story than an unemployed engineer helping out Mom and Pop -- really is quite breathtaking.<p>"Democratized unemployment, and for many older blue-collar workers in years to come, a nearly inescapable sense of hopelessness and despair" is what we might want to call it.