The hamburger menu doesn’t trigger on my iPhone 8 Plus. iOS 14.4 (not the latest)
And if my mom was still alive, she’d definitely be a regular customer. She spent probably years in Photoshop outlining jewelry to remove the background for thousands of products she sold online.
Offtopic, but I'm trying to figure out how the H1 headline looks like comic-sans, but the CSS says it's the "Staatliches" font, which looks like nothing like comic-sans to me. Maybe my windows installation picking an interesting fallback?
On my mac the H1 is an absolutely hideous cursive font in bright yellow that looks like it's from the 90s. The CSS says `font-family: "Staatliches", cursive;`.
I looked at the Chromium source, and it appears to just accept the first font of that style that has no missing glyphs for a string that's passed. So it's still a mystery to me how "cursive" gets mapped to Comic-Sans, which is decidedly not cursive. Argh :)
remove.bg seems to be more conservative in its approach; when given an image without an obvious “background” the subject of the image can be left with some chunks of background. Even with an obvious background, literally solid colored, one segment still was left over.
This tool produced much cleaner results for my attempts. However, it did remove a couple tiny elements that I would’ve considered foreground elements. Still, it cleanly removed the backgrounds, and it seems to work pretty okay with both photorealistic images and illustrations.
Sample size is low but I think there is merit in the approach.
Perhaps you could produce an array of results for the human to pick the one that matches expectation best.
I upload a hand holding a ring. It removed everything except the hand (which is the most logical) but if it included the hand it would still be a valid result.
How do training sets for something like this get built up? Creating a synthetic image of a foreground object pasted onto an existing background wouldn't seem to work because it would not capture the the complex interaction eg. The image of an astronaut walking in a field of grass.
But hand labelling would be incredibly costly, far more than image classication.
There must be an interesting trick in generating training data.
Blender is also an option, it can be scripted and it's possible to get pixel-perfect segmentation masks that way. The downside is obviously that you have to have a suitable number of 3-D scenes pre-built. But I think typically pasting foreground objects into scenes randomly is basically how these things are trained.
Interesting, that makes sense. You still need a lot of diverse/realistic cropped objects that you can (realistically?) put into scenes. I'm not sure if simply dropping random objects into random scenes would work well enough.
Also, what exactly do the nets predict, since the foreground objects can have very complex contours, you'd need to predict an arbitrarily shaped polygon ?
Any existing image dataset coupled with unsupervised methods would work pretty well for this. 10 years or so ago I worked on a similar project, we used SLIC superpixels to segment the images then spectral clustering to cut out the foreground object.
Great tool. Compares well with remove.bg. But please please please don't follow remove.bg pricing model where credits expire when the subscription in cancelled.
Congrats. That works really well. Now just let me pay a small tip for every image I want to download in full resolution so you can cover your bills. Results were ahead of those produced by remove.bg.
Since you have experience with image manipulation using machine learning I’d love to get your advice for a project I want to start. I have a little business that sells 3D printed jewelry (https://lulimjewelry.com). My biggest seller is customers engraving their or their loved ones fingerprint on the ring. Most of those prints come in needing manual cleanup, which I can usually do in a few minutes.
I’d love to train a ML algorithm to do this, and I’ve been building up the before and after pictures over time using my manually cleaned up customer fingerprint images.
Can you give me suggestions or pointers on the sort of algorithm that may be best suited for this task? Just something to get me started down the correct path would be very helpful. Also, would you have a rough estimate on what a good number of training images would be? I want to know if I’m currently in the ballpark or if I need to create a ton more.
I personally don't have any experience with this but just thought I would share what I found while researching this.
Not sure about using ML algorithm but you could look into “edge enhancement”. I think edge enhancement combined with a bit of tweaking of contrast, sharpness should give you good results.
Sharpening Filters is another one to look at. If you are looking to do this in an app, GPUImage library has sharpening filters. It might have edge enhancement filters too though I am not 100% certain.
Search for “edge enhancement online” for example for some tools. You can also look for their algorithms too. Photoshop and Photopea probably do them too.
Here’s some example I tested with an online image with edge enhancement. Your customers probably give you better quality and size images than this:
Staatliches is a free textual style on Google Fonts, I'm a major aficionado of it actually, however appears as though they neglected to incorporate a connect to the webfont. :(
What's more, the "cursive" fallback textual style is characterized by your program, and it's frequently beautiful... well... intriguing
Nice! Not to be all jaded, but there’s one of these services launching per month (week?) these days.
Some are free (but then usually poor quality), others cost money (usually with some resolution limited freebie or credits-on-signup).
I run clippingmagic.com, which launched here on hn almost eight years ago now - time flies [1].
We were #1 until the recent surge in DL-based solutions. It’s more fun to be the disruptor, but getting disrupted sure brought some renewed focus - competition works ;)
Just updated our DL model - old dogs take a while, but we finally did get a fully automatic solution including hair, which means we’re the only option with both good full auto and an editor.
Hopefully the market will eventually notice that none of the solutions work 100%, and that a smart editor can really close the loop.
40 comments
[ 2.8 ms ] story [ 56.7 ms ] threadAnd if my mom was still alive, she’d definitely be a regular customer. She spent probably years in Photoshop outlining jewelry to remove the background for thousands of products she sold online.
Same, Chrome/Windows desktop.
And the "cursive" fallback font is defined by your browser, and it's often pretty... well... interesting.
Curious if you've compared the results with remove.bg, which has been around (and improving) for a few years?
And are you trying to become a competitor or is this something you're open-sourcing?
[1] https://www.remove.bg/
remove.bg seems to be more conservative in its approach; when given an image without an obvious “background” the subject of the image can be left with some chunks of background. Even with an obvious background, literally solid colored, one segment still was left over.
This tool produced much cleaner results for my attempts. However, it did remove a couple tiny elements that I would’ve considered foreground elements. Still, it cleanly removed the backgrounds, and it seems to work pretty okay with both photorealistic images and illustrations.
Sample size is low but I think there is merit in the approach.
I upload a hand holding a ring. It removed everything except the hand (which is the most logical) but if it included the hand it would still be a valid result.
But hand labelling would be incredibly costly, far more than image classication.
There must be an interesting trick in generating training data.
Also, what exactly do the nets predict, since the foreground objects can have very complex contours, you'd need to predict an arbitrarily shaped polygon ?
Table has left, bits of person removed, and some other parts left.
[0] https://removebackground.app/image?job_name=bb990210&count=2
Remove.bg was sold to Canva for an undisclosed sum - but one of Austrias biggest exits. So something between 20M to 40m is the guess.
Since you have experience with image manipulation using machine learning I’d love to get your advice for a project I want to start. I have a little business that sells 3D printed jewelry (https://lulimjewelry.com). My biggest seller is customers engraving their or their loved ones fingerprint on the ring. Most of those prints come in needing manual cleanup, which I can usually do in a few minutes.
I’d love to train a ML algorithm to do this, and I’ve been building up the before and after pictures over time using my manually cleaned up customer fingerprint images.
Can you give me suggestions or pointers on the sort of algorithm that may be best suited for this task? Just something to get me started down the correct path would be very helpful. Also, would you have a rough estimate on what a good number of training images would be? I want to know if I’m currently in the ballpark or if I need to create a ton more.
Not sure about using ML algorithm but you could look into “edge enhancement”. I think edge enhancement combined with a bit of tweaking of contrast, sharpness should give you good results.
Sharpening Filters is another one to look at. If you are looking to do this in an app, GPUImage library has sharpening filters. It might have edge enhancement filters too though I am not 100% certain.
Search for “edge enhancement online” for example for some tools. You can also look for their algorithms too. Photoshop and Photopea probably do them too.
Here’s some example I tested with an online image with edge enhancement. Your customers probably give you better quality and size images than this:
Using this tool:
https://pinetools.com/image-edge-enhancement
Uploading this image:
https://listverse-wpengine.netdna-ssl.com/wp-content/uploads...
gives this result:
https://i.imgur.com/3TvSVGU.png
https://www.estepera.com
Some are free (but then usually poor quality), others cost money (usually with some resolution limited freebie or credits-on-signup).
I run clippingmagic.com, which launched here on hn almost eight years ago now - time flies [1].
We were #1 until the recent surge in DL-based solutions. It’s more fun to be the disruptor, but getting disrupted sure brought some renewed focus - competition works ;)
Just updated our DL model - old dogs take a while, but we finally did get a fully automatic solution including hair, which means we’re the only option with both good full auto and an editor.
Hopefully the market will eventually notice that none of the solutions work 100%, and that a smart editor can really close the loop.
[1] https://news.ycombinator.com/item?id=5682831