A Japanese company cut 80% of the time needed to manually count pearls
countthings.com
countthings.com
They could probably get away with charging a lot more if they build a lite assembly line style counter that takes in a video feed. (They might already have this, I didn’t look too much into it).
Actual issues from a particular fruit company like the butterfly keyboard was cause of getting flagged, you weren't allowed to talk about it. Similar problems happen to this day.
But this pearl counting does not require modern ML at all. It can be done with decades old image processing algorithms like Canny edge detection, Hough transform, thresholding, Hu moments etc. How reliably is another question. This kind of stuff is/used to be called "Machine Vision" (related to computer vision, but in hard industry they like to say machine vision).
It’s a transformation which, by assuming the items are identical, turns quantity from a discrete value to a continuous one with some loss of precision. In many cases measurement times can be reduced my more than 99%.
Honestly didn't intend to come off as snarky, just clever and amusing. Tough to convey tone -- risk I take I guess. Oh well.
The reason is cultural: american can't seem to do without superlatives. They didn't eat good carrots yesterday, there were AMAZING carrots. They don't introduce me to their friends, but to their VERY BEST friends. They are always EXCITED to do X and SO something about Y.
The result is that none of those words have any value anymore. Louis C.K had a very good bit on that.
And then you add agenda, ads, and geek bias toward the new, and you got a recipe for over hype for pretty much everything (NoSQL all the things, Microservice all the things, PWA all the things, SPA all the things, OOP all the things, FP all the things, rust all the things, typescript all the things, etc).
So yes, my default assumption is that stuff on HN are over hyped (although interesting), until proven otherwise.
In Spain, for example, many industrial companies have a culture where marketing is nearly BS. That hurts them a lot IMO.
I think one of the reasons Americans overuse superlatives is because they're constantly bathed in expensive marketing.
Consequently, everyone is used to being told everything is good / great / the best. Which means anyone actually expressing that in a human capacity has to reach for "the very best" or similar.
Americans always phrase their questions as, "What's the BEST pizza?" or "What's the BEST sushi?"
As if they would die (or could even tell the difference) if they had the fourth or tenth best option in the city instead.
And if you recommend a place too expensive or too far away it becomes immediately clear they don't actually want the best.
All they actually want is a decent place to eat at a moderate price level.
But as Americans they can't say that. They have to pretend they deserve nothing but the BEST.
If I told you the best Thai place around where I live, I would tell you a place that is best not just because of its food, but also its price, parking, distance to travel. It is the best in that it is the most optimal given my own value judgment of those factors.
Of course after I moved there I found quite a number of excellent Mexican food restaurants, and for a few years I wondered what strange definition they were using.
I eventually figured out that they meant that there was no good Mexican food within walking distance of downtown
Casa Del Mariachi (off 125th) has great breakfast burritos. Haven’t tried the rest of their food, only came across them recently. Should be good though.
Azteca by Northgate is only okay if you don’t want to go far, you could do a lot better.
Plaza Garcia is your classic southwest Mexican food and one of our favorites. It’s in Kirkland but worth the drive.
Acapulco Fresh Mexican Grill in Kenmore is pretty good.
Taqueria El Sabor in Shoreline is also pretty good.
Anita’s Food Truck on Aurora also has good burritos. Wouldn’t classify them as typical southwest fare though.
And if you’re up for driving, the list wouldn’t be complete without mentioning Jumbo Burrito in Oak Harbor. Take the Ferry to Whidbey, do a day trip across Whidbey, stop at Jumbo and try the carnitas before you cross Deception Pass on the way back. You’re welcome.
If your data is good and you can fit it to a model it will work.
The problem is that data is often poor and the idealized models don't fit real world conditions so you can have problems like overfitting.
It turns out companies have wildly different maturities and proficiencies with these precursors, in addition to simple company ages. Many from having under-invested in actual (not consulting BS) technology transformation and skilling for decades.
Consequently, ML is ridiculous to consider and doomed to failure for company A. While company B can toss a simple model at their well-architected data systems and get immediate ROI.
This is underappreciated, because VPs and consultants are not typically in the business of saying "Our systems are out of date and have poor hygiene, and we can't do this new thing because of that."
It is more like the scientific method. It depends on the data available, and whether something in the arsenal can create something useful.
Most experiments yield absolutely nothing, and some achieve delightfully counter-intuitive useful results.
The criticism on HN -- perhaps correct(1) -- is not that it is hype but that it is not new. Is statistics great? of course, but its been around for decades, perhaps centuries, so it seems strange to proclaim how it will solve problems now.
(1) ML can be distinguished from statistics if you want to. I am not interested in this particular debate myself.
Right now machine learning seems like a useful tool for certain tasks but not as revolutionary as e.g. the invention of the car.
The latest trendy forms of machine learning, which are all some form of deep learning neural network, are pushing beyond the boundaries of human capability, but for a fairly narrow set of usecases. Some people get excited cause they can exceed human capabilities for some object recognition type of task, and then end up thinking that SkyNet is around the corner and they rightfully get called out for it.
You should know though that it is rarely the experts that are guilty of overhyping. It's usually VCs, or product managers, or marketers, or regular software engineers that took an intro class on Coursera where they were told exactly how to solve a problem but haven't yet been exposed to how hard it is to generalize.
With deep neural networks in particular, all of the new innovations have come from novel neural connection topologies. Most of the successful new topologies are the result of attempts to model biological function of some sorts, but that is just the tip of the iceberg. With neuron counts technically unbounded, and the topological search space essentially being the factorial of the neuron count, we will never fully explore the capabilities of neural networks, and only an infinitessimally tiny fraction of those would ever be useful in any circumstance. So deep learning is still extremely exciting because the opportunities are so boundless, yet still extremely disappointing because of how hard it is to find anything useful.
By the looks of it, none, the next app will charges $5 per month and it could even be generic ('round objects counter')
I’m a bit surprised that this is making the rounds of HN though. OpenCV and other computer vision libraries have trivialized such counting applications for decades now. ML isn’t really necessary.
The watershed algorithm for example, comes built-in and allows segmentation which can then be followed up with blob counting: http://www.cmm.mines-paristech.fr/~beucher/wtshed.html
I don’t want to diminish OP’s work since the product seems to be well-developed and respond to a real need. I guess the challenge must have been making the app robust enough to support different workloads, lighting conditions, etc. I suppose the novelty factor is seeing to what extent the technology that we as developers and engineers work on every day is often disconnected from practical application.
• Clever way to distribute "the future" to a niche/under-served audience
• MVP (likely) buildable in a week/weekend
• Marketing material demonstrating success
• "This could be my passive income side project" appeal to bored tech company engineers
It underlines the thesis in some patio11's content:
> The future is here, it's just not widely distributed yet.
SaaS allows this cost to be distributed across many clients, making it accessible for businesses that can't afford to keep around a full infrastructure and the engineers required to keep it running.
That's effectively what I did with the ball tracking. I had a red ball and filtered out everything that wasn't roughly that shade. Certainly someone could have messed with me by wandering into frame with a red shirt :D
however few of those templates do anything that openCV can't be massaged to do well, too.
Given that people are likely going to use only a few of the templates that they find useful for their own work, I find it hard to be able to find the value in paying 100/mo for a massive library filled with techniques that aren't useful for my particular work plus a UI with some polish.
Not only that , but counting stuff in the work place is often done as part of a process; it's dead easy to pipe openCV output into any system that might need to be aware of the count; it's not quite as easy with 'Counting Things' without a human in the loop.
7 day course? Here’s two boxes of 5. Do what you do with the last 3. A lot of homes are basically supermarkets of unused meds.
Though there are plenty of counting machines nowadays.
Here’s a primitive version from the UK:
Disclaimer: the project is really old, and from a time when I barely knew how to code. Lots of bad coding practices et al.
Github: https://github.com/vibhuagrawal14/segmentation-of-overlappin...
[1] https://link.springer.com/content/pdf/10.1007%2F3-540-47969-...
[2] https://www.researchgate.net/figure/Images-of-Canis-familiar...
Would it be able to count diamonds? I'm just wondering because the refraction of diamonds is very high.
Would it be able to count items located inside clear zip lock bags?
Also can it do any kind of categorization of the items? For example, 10 of type X, 20 of type Y?
The categorization is an interesting question - those templates all seem to be of similar items.
It's also super easy to correct mistakes or to add items that are not visible in the image.
Possibly you're thinking of a single error rate across all customers? For other customers, as stated, it's not 100%. But taking an average across multiple customers is not meaningful when some are counting pearls and some are counting crops.
I can also imagine the new process have other benefits. Like before, if a customer complained of getting fewer than ordered pearls, they would probably have to acknowledge that as a counting error on their side but not knowing. Now they have a picture/data to refer back to.
At least that's how it is where I work; the automation leads to reduced errors, and when they happen the amount of data makes it easier to track where it went wrong.
We are a custom ML & computer vision software company and about 7 years ago we got several requests in a short time period for counting items in images. We thought it was a great idea for a product and kind of started our journey as an internal startup.
The key that allowed them to be a billion dollar business was marketing, hype, strategy all things that could apply to any product technical or not.
If you want to make something similiar you could probably get to 80% really quickly. Putting together a product with a reputation is a different event with timing luck and risk. Building that 80% is low risk but high personal reward.
Has anyone built something to read and identify palms or lines in the hands?
We have a full team working on this for about 7 years. Constant improvements to our algorithms, new challenges, new technologies. A ton of other functionalities besides counting (e.g. forms, reports, integration). A lot of work on the backend, UX. Also, a lot of sales and marketing involved.
We also try to have a good variety of choices: enterprise license, yearly, monthly or even packages of 24h.
And we also have some free demo counting template, you don't need a license while using them. Including one to help people involved in the vaccination process: https://countthingsqanda.com/?p=1587
There are some industries/operations that need this, but only seasonally and that really fills a niche not filled by the monthly subs.
> Hold my beer:
> I made an app that counts.
Honestly, the simplicity of the idea is amazing.
Also, as a dad. Parents can be "unpleasant" people- bust so can kids.
https://csharp.hotexamples.com/examples/AForge.Imaging/BlobC...
I guess the numbering added to the image is brilliant. A human can gaze over that and see something wrong right away.
I can only assume that their support for custom requests is absolutely incredible, because it should be pretty trivial for any potential competitor to put up a similar concept for a tenth of the price and still be making a profit.
But that's always the case with enterprise software I suppose. The improvement from 98% to 100% "quality" (whatever that means) is well worth a drastic price hike for most businesses.
I had a similar shock when trying to do OCR from photos of receipts.
OpenCV provides circle detection out of the box: https://docs.opencv.org/3.4/d4/d70/tutorial_hough_circle.htm... The only part that's somewhat difficult is tuning the parameters correctly. I've found setting all thresholds very low (generating lots of false positives) and then culling overlap to work very well when I had to count individual atoms in electron microscopy images a few years ago.
Well, yes, that's what the value provided by the service is.
> count individual atoms in electron microscopy image
This sounds very cool - what sort of order of magnitude numbers were they, and how accurate was it in the end?
Then you look at their site and all the domains of application. My guess is they probably use a variety of models to get 100%: edge detection, CNN-style object detection, all sorts. And then aggregate/choose between the resulting predictions. Then they will probably have some layers of geometrical estimators.
The challenge here is 100% and on a wide variety of images. They'll need to maintain and collect data across a lot of domains, and find ways of coping with non-ideal ("in the field") input.
Replicating that dataset will cost you $10000 just to take the photos.
I've often wondered if there are other instances of this pattern - a phone app which solves some niche problem and is successful commercially being sold for a high price. Can anybody give other examples?
Why are we having this discussion? Why are people in HN amazed at this? What is wrong with the world where something like THIS is impressive?!?
ImageJ is suited to the needs of scientists and engineers. Perhaps one could craft a workflow using ImageJ but it would be much less integrated than the mobile app from the article.
Excellent work on a great product. Best of luck to you!
This seems rather a simple task, however, the app is expensive ($100 per month per device) and limited with the templates for things it can count [1].
edit: The app has 500k+ downloads and is rated at 3.5/5. People seem to complain about the fact that the templates are so limited. Real opportunity right there I'd guess.
It's easy to do it in an unreliable way. 1000$ a year doesn't seem very expensive if your business depends on it and you're saving a lot of time like in the OP.
> and limited with the templates for things it can count
It seems very specialized towards certain businesses, if you have a specific use case that isn't covered I'm guessing you can probably contact them and see if they can add it?
All these comments make me wonder if these people have ever worked with B2B pricing
Depending on what the salary is it barely breaks even, it's saving 2 working weeks a year. Depending how spread out the process is it might not even be time that can be put into something else, if it only save 5 minutes a day for instance, that's 5 minutes that's probably going towards lunch.
It's fairly disappointing for an off the shelf product that does exactly what you want, if you had to pay for any customization or RnD it's probably not worth it.
...this app not only helps Eiko Pearl to cut 80% of the time needed for counting pearls, but it also helps them reduce 3 months of labor cost.
3 months, not 80 hours.
> When taking inventory, they had 2 members of the staff counting pearls and it took 2 full days.
People are creative, we will find new things to do (particularly as more and more people will get taught automation and coding in school, making them tech-adaptable for life, as opposed to the "boomer" generations who were often fundamentally tech-averse), but let's not kid ourselves that technology isn't burning away a bunch of jobs.
I can imagine $100 a month for having an instant count so simply being a bargain for many.
For instance, there is a 'Movie Tickets' counter, but it's not counting paper tickets. Instead, the example photo looks like a screenshot of a 'pick your seats' page from a theatre's booking process. So who is doing the counting here? It can't be the theatre, as they would already know the numbers. So is the customer using this with an automated process to find out how many tickets another company is selling?
Hint: not that many.
When you're counting things of uniform size and density (like screws or coins, one type at a time), the usual trick is to weigh them all, then weigh a single one, then divide the two numbers.
There also are rather cheap optical tachometers(measuring rotations by applying reflective tape on rotating surface). I would guess such devices could also be tailored for counting falling objects.
And also there are multiple old- school tricks for similar tasks. E.g. if you need to count nails, weight them all, then weight a single nail, then divide the weights to get count.
But totally agree looking at their previous solution it feels extremely primitive. There surely must have been a simple middle ground without the app, using a mechanical funnel, a wheel or one-dimensional photosensor to count these. Even if they are different sizes and not always exactly round, the shape and size is still rather uniform.
Source: my distant family has a pearl farm and I implemented pricing algos.
Even if only similar size pearls are allowed, small variations multiplied by a large amount of pearls can cause issues, such as distinguishing 100 pearls of 99 grams each from 99 pearls of 100 grams each.
Then they could have a simple optical/laser sensor below each hole to count how many smallest, smaller, small, medium, large, larger, and largest pearls fall through each hole.
The benefit would then be that if customers wanted pearls of a certain size, they are already sorted.
Maybe there is an enterprising user here that reads this, can easily create it, and reaches out to pearl companies.
Are you using deep segmentation models or more traditional computer vision techniques?
I just didn't expect to see a website like this today, I guess. It needs more polishing, but that's the power of marketing I guess.
But I shared this here not because I thought we will get clients from HN (probably we will be getting some competition instead) but because I thought it's an interesting application of technology that people would enjoy reading about.
Maybe we don't see things the same way but even learning about the manual process of counting pearls was interesting for me.
Seems like a pretty poor ad in that case -- they are advertising a profitable business sub-niche to a huge audience of engineers, many of whom have the knowledge, execution, and money to build a clone service and drive down margins.
And... I could probably build something like this. Not as nice. And not in four hours. It'd take more than four hours of meetings to get it started. The app's price is well worth it, if we can work it into our processes.
Assuming all pearls have comparative density.
The alternative here is to point the phone at a table.
The labour costs are relatively high and dominate most business costs. $100/mth is a rounding error in comparison. If you saved 4h of median-us-wage of work a month, it's free.
I had this video in mind: https://youtu.be/nu7snTgSFeE?t=39 They do not look they are gentle with them.
Described method has repetitive manual steps: - put pearls in the trey, - take a photo - take out pearls, - put new ones ...
These steps do not look like much, but if we are talking about amount shown in video can be hundreds of hours.
Phone costs money, and making application costs developer's time and money (so nothing is free) ...
Counting device can be made by Lego, so very cheaply, here is simplistic example: https://www.youtube.com/watch?v=9YguSl_IekQ
Of course device should be made having in mind handling.
By the way application probably has a lot of sense for small dealers, or jewelries,
And yes outsourcing this to someone else and employing machine learning apparently also works.
You need to know that the underlying technology is really basic and old. 15 years ago, I used a free library (blob counter) to build a VB.net application that counted and "sexed" fruit flies. The app as presented in this website is really similar. No rocket science going on here.
Move along, please.
Pricing is just silly. I'm sure it is worth that much to some 0.001% of the potential market.
Sure, it's more reliable and you can run it on a phone. But maybe this could have been solved 20 years ago. (Yes, it might not have been as convenient, but for something that apparently is so important, it could have been applied earlier)
Japan, a country which in the 80s was synonymous with technological innovation seems to have slowed down dramatically in adopting new technologies
Edit: of course I'm not saying it's exclusive to Japan. My comment was more in the way of "the first time I saw an actual application of CV counting things in a practical setting was 20 years ago"
It's 3 days, for that to break even development costs have to very low.
Of course, selling it as a generic app for counting things is a great way to do this.
In my experience, the main challenges with problems like this are dealing with varying lighting, scales, orientation and perspective. These can quickly become of diminishing returns – especially if the solution is provided as an app that provides near-immediate feedback.
No mturk, no tricks, a lot of work in ML and in UX as it is not a very straightforward task.
I'd well believe it. I used to write computer vision applications for semiconductor manufacturing equipment and there we were able to strictly control the distance from camera to object, lighting etc. and even still getting necessary reliability was not simple. When a failure could lead to damaging a whole wafer, i.e. hundreds of thousands of dollars, 99% accurate is not good enough.
Japan is not a country I associate with a drop in technology adoption, have you been there? It's like going to the future