Hacker News new | ask | show | jobs
A Japanese company cut 80% of the time needed to manually count pearls (countthings.com)
586 points by morsanu 1854 days ago
32 comments

Wow, this is such a simple application of ML and it is incredibly valuable. On their website, they charge $100/month per device or $1000/year per device [0] and I bet they're making a killing.

[0] https://countthings.com/en/

Value pricing at it's finest. If the customer saves $1000/month per device, they'll happily pay the $100/month. As it still saves them $900. They don't care how complex/simple the ML implementation is.
But is there any barrier to entry though?

By the looks of it, none, the next app will charges $5 per month and it could even be generic ('round objects counter')

It may not seem like it to those of us who know how to do it, but there actually is quite a barrier to entry. You or an organization needs to have the skills to utilize machine learning algorithms, test them thoroughly, package it in an easy-to-use application, then market it and compete against competitors. Just ask your every day Joe what you should do with a learning rate if your error rate suddenly spikes or how to monitor for overfitting. Then ask them how to form an LLC or how to create and audit a liability release waiver for clients.
I also think part of the "real skill" in this sort of business is making sure you have someone around when it breaks. If the pearl counting algo goes haywire, the pearl company wants to know that they'll have someone to contact to fix it.
The barrier to entry is that many niche markets that latch on to the original service over time are incredibly random and difficult to associate with a uniform market. You can build and price a cheaper app, but reaching the set of customers would be difficult.
A business would probably not want to take the risk of switching to an unproven app for just $100 a month in savings.
Until then, profit is profit.
I imagine it's all in the business development. I for one never would have thought to reach out to pearl traders to service their counting needs, and odds are they're not actively seeking out computer vision expertise.
Meanwhile industrial manufacturing have been using vision systems for years to count and inspect items. This solution is waaaaay cheaper than what other alternative packages are.

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).

They can also count items from video https://youtu.be/EoCMUfMO2jw
The difficulty of this depends on the acceptance criteria. I can imagine that the industrial requirements for FP/FN count make this quite an interesting and complicated problem.
I would not say it's that simple, they do have many trained models with high accuracy.

https://countthings.com/en/counting-templates

I wish I could get a bead on how useful ML is. Hackernews makes me think it’s all hype.
I don't know about others, but because a lot of IT news comes to me from American medias, I _always_ consider it hype.

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.

I live in Southeast Asia and am in a Facebook group where foreigners often post asking for recommendations.

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.

Perhaps it has to do with different interpretations of what is meant by 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.

This is exactly right. Before I lived in Seattle, I was told (moving from the southwest), that there was no good Mexican food in Seattle.

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

But unless you list those factors such adjective is meaningless.
As seen in this comment in another thread currently in the front page: https://news.ycombinator.com/item?id=27263606 (Although the person that used 'best' in that story is from the UK).
But americans do get marketing though. I bet you know about a bunch of companies that were doing $thing in $country before, probably with better outcomes, but never got the recognition.

In Spain, for example, many industrial companies have a culture where marketing is nearly BS. That hurts them a lot IMO.

Both of these are interrelated.

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.

The main reason I'm trying to cut down on my HN consumption a bit is the incessant pessimism. While a regular reality check is definitely useful, the "I'm so jaded by everything" vibe makes it hard to get excited about anything. I like being excited by things! It feels good and motivates me. Too much HN is a recipe for lethargy.
I think the most important reason to reduce consumption is due to everything being carefully curated.

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.

Mac fans being rabid Mac apologists isn't something leaving HN is going to change.
Depends on your baseline excitement. If you're so hyped up that you think it can classify bad and good prospective employees from a single photo, you should tone it down because that's nonsense. If you think it's all fluff, then you are also wrong. There are many great ML applications for constrained scenarios.

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).

There’s also a technique called “weighing”.

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%.

Cut the snark. And if you check the link, the assumption that items are identical is far off.
Yeah I know. And the use cases of people on a beach, crowded theater, trees in the woods, etc. don't lend themselves to weighing.

Honestly didn't intend to come off as snarky, just clever and amusing. Tough to convey tone -- risk I take I guess. Oh well.

I think you're not wrong. Even if the pearls aren't identical, if you weigh enough of them at once the central limit theorem will be on your side.
Maybe I misunderstand, but I don't think you meant central limit theorem.
ML needs data engineering like electrical devices need electrical infrastructure (i.e. generators, transmission lines, transformers, last mile lines).

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."

Machine Learning is not a single thing that can be useful or not.

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.

As usual, there are exaggerations on both sides. ML is genuinely useful for moderately complex problems like this one, and pretty rubbish for a bunch of other stuff it's been shoehorned on. There is no silver bullet, as usual.
Machine learning is extremely useful, used in hundreds of industries for probably a million different things. Most of these uses are not exciting.

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.

Machine learning is a tool for solving certain tasks. Usefulness lies in finding new places to use those techniques. The hype is about predictions that machine learning (or AI in hype-speak) will be able to do things that it is currently not able to.

Right now machine learning seems like a useful tool for certain tasks but not as revolutionary as e.g. the invention of the car.

A reasonable summary would probably be "useful in mostly though not always modest ways in many areas, but _severely_ overhyped". It's not nothing, but it's also probably not going to lead to self-driving cars or even fully-accurate voice recognition anytime soon, say.
Google, the world's most used search engine, uses BERT to power it's queries.
Sometimes I feel like the whole ML scene is just stringing me along.
It's literally statistics applied to data.

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.

There's no ML here. This is a decades old software technology being packaged as a phone app.
There's no ML here. This is a decades old software technology being packaged as a phone app.
The much better cameras help a lot, I guess. I remember scanning QR codes with a 2014 and a 2018 (yeah, already old) flagship phone and being amazed at the distance the latter was able to do it from. At least 3x the distance from the QR code vs the old model, and the autofocus was near instant, too.
I think you meant to say there's no AI here. Since even a linear regression is ML.
I think what the CountThings app is doing is great. There are too many industries where tasks are being performed inefficiently due to a lack of applying readily available technology. They had the foresight to develop a product for a very common problem and make a business out of it.

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.

This article is perfectly within HN's audience!

• 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.

The thesis is originally from William Gibson.
Just for reference for those unfamiliar, William Gibson said "The future is already here—it’s just not very evenly distributed"
For a non-tech company, implementing it may be easy but the hard part is getting someone around when it stops working. This saves 3 months for the pearl company, they're not paying someone full time for an implementation of computer vision counting.

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.

LOL you're not getting this done trivially with OpenCV.

https://countthings.com/en/counting-templates

Count things isn't trivial, but this specific use case (counting circles) is trivial with opencv. I've done it myself making a robot follow a ball :)
I still wouldn't consider this trivial. It takes a good bit of playing around with parameters like radius range and filters to consistently get all and only real circles. Even under ideal conditions, it's probably more than an hour of trial and error, and it's very easy for a layman to not fully understand why they're not getting the result they wanted. I'm no expert on jewelry but I imagine even a 0.1% error rate would be quite expensive, and that level of performance would be a real challenge for even someone very experienced with opencv.
Agree. Especially if you can control the image quality, background, etc, this can be done with less fancy methods. Heck, they probably don’t even need an image based solution. They could have also used mostly mechanical machines like how coin counters/sorters work, or used a bigger version of their old counting plate method but with detectors in each slot.
Background helps a lot, but if your things are relatively the same color, it's pretty easy to just filter out anything not within that color range and look for circles, even with an inconsistent background (though, admittedly it's harder).

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

They could even make people count them by hand!
Well no that wouldn't be fully automatic. A counting machine that just funnels the pearls through a switch is simple, automatic, non-patent encumbered, and cheap.
amassing a library of scripts for various shapes is time-consuming, true.

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.

No, with many of the templates you quickly go well beyond "massaging". Not saying it can't be done, but you vastly oversell the triviality of it.
Yet we still have humans counting pills in pharmacies
Maybe in USA/Canada. In a lot of Europe, you’re getting sealed boxes. Often without any stickers applied.

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:

https://youtu.be/foLAXcrYxF0

In a an image with sufficient contrast between the foreground and the background, thresholding and using the fast radial symmetry transform[1] should do the trick. I have some really old code that I wrote a few years back that does something similar. I was able to use the same algorithm for counting objects in images captured from a Neubauer chamber [2] and saved countless man hours at my university.

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 a solution like that work for a video feed where you need to make sure you're not double counting as objects move along?
Hi, there! I'm one of the project managers at CountThings, I'll try to respond to comments here but I guess you can AMA.
I just wanted to say that if you can count particles of things in microscope images, you can probably make great inroads at companies that do drug testing, like Covance or PPD in America. They're paying chemists to circle blobs on paper and count them. I bet they'd even appreciate someone to count their circles!
Thanks for the idea. Getting the app in front of companies that need it is one of our challenges.
The company I work at did a project like this where the goal was counting of different types of bacterial colony forming units (CFUs) that were cultured in Petri dishes [0]. We presented our results at ESANN [1].

[0] https://radix.ai/cases/gsk-vaccine-development

[1] https://arxiv.org/abs/2103.05337

Probably a very naïve question but, how did you know/find out that an app to count things could be a profitable business?
No, it's actually a pretty good question.

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.

Depends on the industry as well. Cell counting is a huge part of life science research and it's a well established business in lab-based pipelines (integral part of commercial solutions). However if you try to enter the realm of clinical field such as histology and pathology assistive technology it suddenly becomes tricky. Same with innovative diagnostic tools. You need clinical trials for those.
First, this looks amazing. I have a couple of very specific questions.

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?

Yes, we should be able to count them if they are visible in the picture. Please email our support with a couple of sample images. We are also doing classification for some of our templates/clients.
There's a 'raw diamonds' counting template listed on https://countthings.com/en/counting-templates

The categorization is an interesting question - those templates all seem to be of similar items.

How accurate is the counting? For examples like the case study, I presume your customers will want very close to 100% accuracy, but many other use cases will only need rough numbers. How do you calibrate / verify your app?
You have to take into account the error rate of human counting when making the comparison.

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.

For most of our clients, we get to 100% accuracy. For some more difficult scenarios, a lower accuracy is ok for estimations (e.g. estimating the crop in agriculture).

It's also super easy to correct mistakes or to add items that are not visible in the image.

You don't mean 100% accuracy, that means mistakes are impossible. Perhaps your error rate is very rare, but it's a bit concerning you don't attempt to quantify it.
I disagree. If we consider a single customer with a particular application, we probably imagine an iterative process like this: the customer supplies some sample images, the system gets a few wrong, they add special cases, fine-tune the hyperparameters, whatever, and after all this they literally get 100% on the customer's holdout data. If that happens for several customers then the GP statement is justified (no other number is possible for these customers).

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.

Suppose it depends on which part of the chain he attributes error, plausible lighting or poor positioning - anything that is an employee duty - does throw it off and then they scrub it. But yeah. Still.
The article shows a photo with the pearls highlighted with circles. I'm generally skeptical of AI, but this system produces a certificate that a human can verify much faster than doing the work themselves. IMO, that's the right way to do it. You can trust the system 99% of the time, and check a random 1% by eye every day. Or, you can keep a human fully in the loop and still save time (though, if the error rate is too low, humans will get bored)
One thing to consider is that humans don't have 100% accuracy for large numbers of things.
How did you come up with the pricing strategy. I imagine some big companies might pay more if they can save lot of money with this.
We iterated through different ideas and numbers. It's not an easy task, I can tell you that.

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

I really like the flexibility of the 24 hr ones.

There are some industries/operations that need this, but only seasonally and that really fills a niche not filled by the monthly subs.

It seems to me that it would be useful for the app to count items on the left and right of a ruler (or some line) so correct number of items can be separated out from a pool.
Could you talk about some of the niche use cases of the app? I'm curious what the long tail of use cases looks like.
Do you need help with Salesforce integration?
Don't we all?
Hire me then!
What approach does it use? Does it use image segmentation (e.g. U-net) followed by classic image analysis? Or does it get the counts directly from the network?
Is not it something anyone can do for free using image J with a bit of scripting.
If you have the skills, you should definitely try it.

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.

It is impressive you do it so fast. In case you have not thinked about it, some people will be interested by it in life sciences. Best I could do with the picture available on your website https://imgur.com/a/FKEkiFz compared to https://countthingsqanda.com/wp-content/uploads/2021/01/5-17... I got some wrong counts but the picture is really tiny to work with.
Is this a bad time to remind HN of that famous comment on the founding of dropbox?
Technically many could do what dropbox did to create a similiar product when they were part of yc class. Many HN have a personal dropbox setup they made themselves.

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?

Sorry, out of the loop; what comment?
> All good apps have already been created. There is no room for innovation.

> Hold my beer:

> I made an app that counts.

Honestly, the simplicity of the idea is amazing.

People often don't know what's really needed by businesses until they see the use case. I remember 2 decades ago a family friend making fun of his son's project where they identified bad apples on a processing line in a packing facility. Pretty close to this project. He saw it and still didn't get it.
Ok, so 1) this sounds immediately valuable to anyone that eats good apples and 2) who makes fun of their own kid (I mean, to the face)

Also, as a dad. Parents can be "unpleasant" people- bust so can kids.

To be fair, a machine that spots bad apples is rather useless, as by the time you spot them the whole bunch is already spoiled.
Let's assume that the company ordering that project knew what they were doing :-)
Next, an app to identify bad apples heh
The "counting" is not the hard part of the app. The productionazion, templates, UI, marketing is the hard part.
And right now as we speak, there's 10s of people on this thread already working on cloning this idea. Some probably gonna make good money.
For anyone who's complaining about the price, take a look at their whole offer:

https://countthings.com/en/counting-templates

To counter other’s points on pricing - in the end it’s a question of utility vs price. 1k$ per year to cut time to count by 80% may be a great deal to many.
the article said it saved about three months of labour. if best alternative is someone counting in old labour intensive way with annual salary of around $50k then that's an O($10k) profit.
who is responsible now?
In this case, it would be reasonable that the person who uses the app would be responsible. The app takes the image and labels every pearl with a number. So the person just needs to check there were no missing or mislabeled pearls, which is much easier than counting.
In the example I would expect the app to get it right every time. In a more fuzzy setting it would still be faster (thousands of times) and [generally] more accurate but a person can account for how important accuracy is.

I guess the numbering added to the image is brilliant. A human can gaze over that and see something wrong right away.

Of course, but $100 per year to do the same is an even better deal.

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.

This was my first thought: I could do this in half a day.

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.

I absolutely expect this to be harder than it looks. If it was easy Google lens would do it.

I had a similar shock when trying to do OCR from photos of receipts.

Google Lens isn't going to include a menu item for every single computer vision task with a simple specialized solution.

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.

> The only part that's somewhat difficult is tuning the parameters correctly

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?

https://news.ycombinator.com/item?id=27262146

Replicating that dataset will cost you $10000 just to take the photos.

This is great! A really simple technical idea paired with the right business model = success.

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?

Is ML here needed? When I was working in a lab we used the opensource ImageJ for counting cells. It seems like it'd do a great job here too.

https://en.wikipedia.org/wiki/ImageJ

A colleague of mine recently published a paper on ML-based cell counting for human cancer cells. It's open access and available here https://www.mdpi.com/2076-3417/11/11/4912
Yes. Yes. 1000 times YES!

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?!?

It's not that it's impressive as a novel approach. It's impressive because they found a market with a need and delivered a product to meet that need. It's simple enough that it seems like an obvious need and yet complex enough that there's not that much competition.

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.

Coz this company is making money. And the customer is satisified.
As someone that has worked in food science micro labs, this is a great product that lab operations would love for CFU counting.

Excellent work on a great product. Best of luck to you!

They are using an app https://countthings.com/

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].

[1] https://countthings.com/en/counting-templates

> This seems rather a simple task, however, the app is expensive

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?

You are totally right. We usually work with businesses that have a counting need and we create a new template for their use case.
1k a month wouldn't seem ridiculous unless individual companies currently have several devices

All these comments make me wonder if these people have ever worked with B2B pricing

> Before they started using CountThings from Photos, counting pearls took almost 100 hours a year. After installing this app, the time needed for counting pearls has been reduced by 80%. It takes only 20 hours now.

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.

Besides the cost cutting, keep in mind that the employees that don't have to manually count are not getting fired. They are providing more and better client services.
I think this is an important point. It doesn't have to be "machines took my job". When I helped automate/streamline a government welfare program, it didn't mean case workers suddenly were without a job. It meant they could spend less time clicking on a computer, and more time doing the important human to human stuff and provide better care.
It doesn't have to, but eventually it will. At the first inevitable downturn, jobs that get cut in a newly-automated field will never come back.

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.

You missed an important part of the article:

...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.

It's not really clear where that 3 months figure comes from. Do they have 6 people all saving 2 weeks? And if so do the share the device or is the cost scaling with employees? There's also another part:

> When taking inventory, they had 2 members of the staff counting pearls and it took 2 full days.

Some of those counting templates are very niche, which makes it intriguing to think of who is using them.

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?

Financial analysts trying to figure out if AMC are gonna hit their quarterly numbers?
Here's a hint: NO
Seems like a low price if it saves labor costs like in the OP. But they can only ask that price because it's such an obscure niche and other people probably didn't even consider that something like that is needed. Good chance they'll soon have competition.

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 really depends how much time they are losing while manually counting. For most, the price is not high, the employees doing the counting can now focus on other more valuable tasks. We also have pack of 24hour licenses that they can activate when it's inventory time, for example.
Our app is mostly targeted to businesses. Besides counting, we also have a ton of other features (e.g. forms, reports, integrations, etc).
Do you know the true cost of a developer? When they are already hired they may seem free, but in practice that $100 dollars is probably less than hour worth of time.
This is a B2B app.

I can imagine $100 a month for having an instant count so simply being a bargain for many.

As someone who was worked in Japan for 13 years, I can vouch that this is a very strong testimonial. A Japanese company will not adopt new technology like this unless it highly accurate.
so how would you go about doing this using ml? is it a classification problem? Count the number of instances. Or do we do deep learning and say here is a picture the result is 10?
Instance segmentation.
Thanks for this, maskrcnn looks like an interesting candidate
also U-net is great at this stuff, and a bit easier to implement for my taste. there are many ready implementations over the internet
The really fun challenge, is counting how many distinct domains countthings is using for their promotion. You probably need to use Hyperloglog :)
After you complete the challenge, I'll give you the correct answer.

Hint: not that many.

Couldn't they use a machine like a coin counter?
There exists an entire industry for counting and sorting things(e.g. optical bean sorting).

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.

This scales better. Also, going by the pictures in the article, the pearls are of varying sizes, so making a machine to count them would be a tad more tricky.

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.

I'm no expert, but I believe Pearl is quite easy to scuff/scratch.
The new camera approach obviously is a lot more accurate, powerful and simple now once you have it.

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.

probably more difficult because of the irregular sizes of the pearls.
Pearls are going to be far less uniform than coins, a software solution is likely going to have better accuracy.
Pearls come in all different sizes.
Yes.
This is an advertisement / press release, which is fine, but should be disclosed as such in the HN title.
When a player rolls 38 6-sided dice in a tabletop game, I'd like to have something similar.
This page from countthings.com makes it obvious that counting things isn’t all that trivial: https://countthings.com/en/counting-templates
The tray used in the demonstration is almost white (beige?). Wouldn’t a black tray (hence darker background and higher contrast) increase accuracy?
They could not count by weight (before ML)? For e.g - If 100 pearls weight 10 gm etc? They could also have used a machine for counting them
The picture in the bottom of the article shows that varying sizes of pearls need to be counted at the same time, making using weight very unreliable.

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.

They could use a simple sorting machine that sorts pearls based on size (like how most coin sorting machines work - run all coins over a small hole, the smallest coins fall through, then run have a slightly larger hole after that, and so on).

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.

$100/mo/dev is deemed profitable to the company si I guess they are happy rather going for contracts for hardware machines
Pearl vary in size a lot; they can easily double in diameter, ie. possibly x 8 in weight. Weighting could be valuable, in addition to counting and measuring how round and shiny they are — but it would be the 4th or 5th more important aspect, at most.

Source: my distant family has a pearl farm and I implemented pricing algos.

Okay, I'm not sure why people use software to do the work that hardware has solved decades ago. Like, I know that pearls come in various shapes, sizes, and weights but they're discrete objects. I would have assumed a simple machine similar to an egg counter would've already been on patent for such uses just for pearls. I mean the ML use case is still neat but I always feel that people always grab computers for the wrong reasons for tasks that aren't that novel. Just my two cents.
Wouldn't an egg counter be much more expensive? To say nothing of customizing it for pearls.
Hardware also has errors. This is a task of a keeping record, verification process.
I thought the tray in the thumbnail was the solution. What about a padded tray with dimples in rows of 10?
This is very cool, well done!

Are you using deep segmentation models or more traditional computer vision techniques?

I cut 50% of the time needed to manually count small objects by...counting in twos.
The website copy is a bit bad, but I can see the application and business use 100%.

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.

Nobody cares that this is just an ad? It's got too many paragraphs of bullshit filler for something that's basically "they're taking pictures and counting the pearls using machine learning".
Of course we are trying to promote our business, writing some case studies is one way to do it.

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.

>> Nobody cares that this is just an ad?

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.

I've got bad news for you regarding every other submission on HN.
Nobody here will buy their app; people are mostly interested in the idea and in the business model.
I'm planning on sending this link over to our warehouse guys. We sell containers of many small things.

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.

Call me naive, but wouldn't this be a lot easier - and more low-tech, thus cheaper, to sort by size with a sieve, then weight individual size-bags, and divide by the size of one pearl?

Assuming all pearls have comparative density.

So you need to make / order sieves, then get the counting person to sort, bag, weigh the items, calculate results. This will have a lot of mistakes too. And you end up with a process working only with that type of pearls. (Edit: forgot the solution debugging time)

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 am not impressed, they could cut 1000% by using: big bawl, pipe, simple mechanical sorting mechanism, and electronic counter.
I am not familiar with pearls, but a mechanical sorting mechanism could damage them I think. Also, how is a mechanical sorting mechanism or an electronic counter simpler, cheaper or faster than a photo?
I thought pearls are quite strong, but I learned something today, I just learned that Pearl's Mohs hardness is 2.5 (between gypsum and calcite), meaning very soft in comparison to Diamonds (10).

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,

Humans on the other hand are really good at looking at patterns. I imagine a tray with some recesses that would receive the pearls after a bit of shaking or a funnel that would put all the pearls in a line and then somehow group them/count them should not be that hard to do.

And yes outsourcing this to someone else and employing machine learning apparently also works.

I think that was the old solution: they have a large tray with 100 slots and a bar which allows for multiples of 10 to be counted. The digits are done manually. The problem was that pearls could fall out of the tray and, as they are round, roll around on the floor taking up to 30m to find. It is a mechanism for counting out a specified number rather than determining how many are in a bag, which may be more limited. Another problem was that if workers forgot the partial sum, they would need to start again.
No need to imagine, there’s a picture of that tray right at the top of the article.
Everyone here is amazed at the ML applications.

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.

Why do I "need to know" that? Why does it matter it's not rocket science?
terrible example. You can just make a square from pearls and multiply. If you need to do a lot of it make a box with numbers on the side, tilt it then count and add the remaining row. The weight is probably not irregular enough to justify the tool. There are better examples on the website.

Pricing is just silly. I'm sure it is worth that much to some 0.001% of the potential market.

Natural pearl sizing varies widely and they aren't perfect spheres either.
You are going to have to sort them eventually.
The pictures show them as different sizes.
The example with pipes on a truck is that much better. From my experience if you have 100 people count those by hand at least 10 will get it wrong.
Counting elements from pictures is how old again now? 20 years? 30 years?

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"

If you think old, unoptimized, high-human labor business processes exist only in Japan, have I got a bridge to sell to you.
Optimizing 100 hours per year to 20 hours isn't much either..

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.

That part of the article confused me too, I think it's later implied they pay that 100 vs 20 hour cost much more often than once a year.
It does mentions three months reduction of labour cost, which is a lot more than 80 hours.
People outside IT field generally don't even know how counting thing from picture is very trivial computer vision task. This is common everywhere in the world.
Are there any alternatives? Or how one should approach making an app from scratch?
The old method used to be template matching, and it probably still works well enough for problems like this. There are almost certainly now better approaches possible using Machine Learning.

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.

My bet is they just invested a few months making a varied dataset, a few grand on mturk using labelme, some image augmentation, a few engineering tricks for a nice UX,some strategies for getting the model to converge on tricky test images, and got it to hit 100% accuracy fairly quickly.
We are working on this product in-house for 7 years now. We are an internal startup from a company that does custom computer vision and ML software.

No mturk, no tricks, a lot of work in ML and in UX as it is not a very straightforward task.

> Japan, a country which in the 80s was synonymous with technological innovation seems to have slowed down dramatically in adopting new technologies

Japan is not a country I associate with a drop in technology adoption, have you been there? It's like going to the future