Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Fully-automatic image background removal tool (remove.bg)
640 points by groe on Dec 17, 2018 | hide | past | favorite | 108 comments



Hey HN! We originally built this as part of a bigger app but since removing backgrounds of images can be a tiresome task in itself we thought why not release it as a standalone tool? Feedback appreciated!


Very impressive! It has some issues with uncommon hats though (which isn't too surprising):

Original: https://www.howtogeek.com/wp-content/uploads/2013/02/xrichar...

Background removed: https://www.remove.bg/system/uploads/image/processed/1c5f1c6...


I feel like RMS would be positively tickled to know that his hat had broken a commercial machine learning API.


And disappointed that his photos were fed to it.


If I was asked to cut the background out of that photo, I also would have been confused about that big circle behind his head.


It's Saint IGNUcius that is on that picture, he is a saint in the church of Emacs, and the halo on his head is an old disk.


The drive-by downvotes on HN have truly gotten out of control.

HN needs to again raise the minimum karma required to downvote.


Great job! As a note, I think you will likely collect lots of deep links to "missing" pictures over time as your service becomes popular - you already got two such links on this page in a few hours...


We are not an image hoster after all. Too many problems would be coming along also.


Makes sense!

One idea for the "enter a URL" path. If you save the image URL for a longer time period, you could give the viewer the option to re-run that URL and perhaps save it to that location for another hour.

Or show a message like what Flask's logo does when you right-click it the first time [0]. e.g. "Note: Direct linking will not work. This image will disappear from our servers in an hour." (Possibly with "Click here to post to Twitter instead," which can help "persist" an image while spreading the site a bit further in the process.)

[0]: http://flask.pocoo.org/


You might want to make it more obvious that pictures aren't linkable by doing something like returning the image from a POST (might make for bad UI) or returning the image as a data url.


Hello! What's the bigger app? Are you still working on that and this is just a nice little side project?


How did you collect the training set? Did you manually process (removed background) from training images or outsourced it via a third party?


I cheated a little bit by creating an AI that allowed me to do it faster in a semi-automatic fashion. However, the first batch to train this "labeling"-network was generated manually, which took forever.


That semi-automatic AI seems like a useful product as well, for a different task


Fantastic! great job. On the photo I tried I was holding a water bottle, it between the water bottle and my body it left a small area (inside my elbow) - also between my knees. Given how fantastic it is, if there were a way for you to add a click to remove more parts that it hadn't thought of as the background (in this case between my elbow and body) it might be good. The wall itself in that space was very regular, but I can see why it didn't remove it, it might as well have been a jacket or something, in which case no need to remove it.

The outline of my body that it did make was amazing.


We once had to get photos taken in Mumbai. The shop had two guys working Photoshop to remove the dirt marks from the wall behind us. Why did they not just paint the wall ? Because the Photoshop artists were part of the service, so they could charge us for it.

You, sir, are going to put Photoshop wallahs out of work !


> We process them, and temporarily store the results so you can download them. After that (about an hour later) we delete your files. We do not share your images or use them for any other purpose than removing the background and letting you download the result.

Glad they respect your rights on the image and delete their temp files after a reasonable amount of time.


It's also just a smart policy for saving money on storage space, and not getting in trouble when someone uploads illegal content to your site.


Works perfectly with people! Such a well done and simple tool.

Of course I'm biased, but I think putting in the effort to have this work with pets would be well worth the time.

There's services that allow you to turn photos with transparent backgrounds into stickers.

Hook this up with that, and you may have a source of revenue.


At last, an actually useful application of AI!

I am not even kidding. This is probably the first time I have seen a truly useful application of AI that automates a normally labor-intensive and menial task. Kudos!


Around 2008, one of my first jobs out of college was working as a photo retoucher for a retail fashion company. One of our main tasks was placing 3rd party product shots on a neutral background so that the photography would look consistent. I was pretty good with it and had a few tricks up my sleeve (Photoshop Actions FTW!) but it was still pretty time intensive.

Even back then, I was fearful of making a career out of that job. At worst, my company could have offshored a lot of that work rather than paying full time benefits in NYC. And while there were a few plugins back then, they weren't this good.

I'm fortunate I was able to move my career in another direction, but I did work with some amazing people who knew PS/photography inside and out. A part of me is sad that these skills are increasingly obsolete.


As someone who used to also work in this space, I don't really agree with the sentiment. The manual cutting part of the work was always the boring and mundane part and honestly I would've always appreciated better automation in that regard. Making the rote work automatic leaves you with more time to work on the creative aspects of the work, it doesn't make it obsolete.


This works really well! It would be nice if it told you it only works on images with people before you upload an image.


I knew I wouldn't be the only one to try that. It is neat that it will tell you that no people are found in your image.


Care to explain more about how it works?

Your about page says "sophisticated AI technology to detect foreground layers and separate them from the background" but that's pretty vague.

What kind of AI?


I think they are using image segmentation with Deep Learning. The technique should be similar to this. Of course, there will be some traditional CV techniques as well.

https://github.com/anish9/Fashion-AI-segmentation

Impressive idea and execution! How could I never thought about this? :)



I think many mobile device/camera apps have been doing this. The portrait feature where the background bokeh is artificially made is using a similar technique.


Usually cheaply paid humans.


No chance this is done by a human. It's way too quick, and it makes mistakes that humans wouldn't make.


That doesn't seem plausible. It works too fast and the results are too good.


Perhaps this? Was posted here a few months ago. Going to look into it. https://towardsdatascience.com/background-removal-with-deep-...


/sarcasm

Maybe not true here, but far common than people care to admit.


Is there an open source underlying library as part of your service? Would love to start using it in smaller projects :) great job BTW


Given its produced by a ".ai" company I would imagine they are using a U-Net derived ML model and not traditional OpenCV methods.

You can read more about that approach here:

https://hackernoon.com/releasing-supervisely-person-dataset-...

Good results though for sure and very handy for quick image edits.


Yup. Multiple u-nets, actually.



This method requires a video or at least multiple frames. It won't work for a single photo.


Thanks for doing this! This is an awesome app! I have a lot of pain trying to remove the background. How long did it take to build this particular app?


This worked surprisingly well on a picture of a fursuiter with several people (no suits) in the background. I didn't expect it to work at all.


Post a link. I'm interested to see how well it worked.


It seems to have been "fixed" for that one photo. Now it pulls out random people in the background instead of the focus of the picture.

It did work (mostly) on this shot though: https://snouts.online/@Kye/101262023246984238

Poor Duke lost his ear...


So many questions


Do not ask for the source pictures please. :(


Worked superbly. I spent hours yesterday manually removing backgrounds from family pics to have tshirts printed. This did it in a second.


The demos look awesome, but unfortunately it works neither in FF 64 nor Chromium 71 even without adblocker: It keeps saying: "Removing background ..." and does not show an edited version of the uploaded image.


we are about to add new servers to handle the load


you should warn people about the average wait


agreed. did not expect this interest. should work again.


Are you already using GPU acceleration? I'm currently working on alpha matting for my master's thesis and found that it helps quite a lot.


yup


Spektral, a Danish company, has been doing this in real-time on iPhone for live video. No surprise, Apple bought them for more than $30 million: https://www.digitaltrends.com/photography/apple-spektral-aqu...


Ooo now this _is_ impressive.

I used to work in VFX, where I did my fair share of pain and roto.(before moving to tech) Cutting out hair was my single biggest dread. However this appears to do a stella job automatically.


It's amazing that this can be done automatically, major kudos to the team. The breadth of what current AI can do is already astounding.

However, as someone who's been doing this kind of work professionally for decades, I find the demo results rather poor.

I have mixed feelings about what I think is a trend, such as fake software bokeh, for instance. Even though it makes pro techniques available to the masses, quality takes such a plunge that I fear we may not recover, setting the “good enough” bar way too low.


It would be so awesome if I could something like this at a much smaller scale in a darktable module for cleaning up images and for doing artistic types of portrait editing. Nice work!


Looks good. I got a Unable to upload image when I pasted a URL. https://www.google.com/amp/s/www.barcablaugranes.com/platfor... May I ask what Your Tech stack is?


> for performance reasons the output image is limited to 500 × 500 pixels. We are currently looking into ways to increase this limit (...)

Curious to see how this tool will evolve. Already impressive, with many potential use cases: products, animals, photomontages.

Besides resolution, how the app will handle super thin elements like hair will be key. A lot of tedious work is still required to cut out figures properly with Photoshop even though their selection tools got better over the years.


I guess for people wanting to get better resolution you could make a mask at 500x500 and then scale that up to your image size, add smoothing to the mask layer (or vectorise the mask edge) and apply to image of arbitrary size.


Very impressive. Works even on Mona Lisa: https://upload.wikimedia.org/wikipedia/commons/thumb/e/ec/Mo...


Pretty good, though it is not too hard to find images that confuse it: https://www.remove.bg/system/uploads/image/processed/6aaacde...


Works perfect. Very easy to use and quick. Last week I was trying to remove background from image and it took a while to finish the task.

Great job :-)


Nice work! Just curious, any reason that the output image is constrained to a lower resolution?

Also, any thought to handling video in the future?


Thanks!

Computation time increases quadratically with image size, so we had to set some limit. For now that's 500x500 px but we are looking into ways to increase the limit!

Video: Possible, we tried this prototypically already, but it would need some more optimization for good results (e.g. to avoid flickering between frames).


For higher resolution you should seriously consider charging a subscription, or on a pay-for-credits basis. Many organizations, especially those with limited or highly-demanded in-house design talent (ranging from finance to marketing to funded startups), would absolutely justify this product at rates absurdly greater than server costs. Unlike Fivver talent manually tracing boundaries, this has near instant turnaround, and that is HUGE for people with deadlines and infinite Uber budgets who just need stock images combined together.

Source: am in NYC.


Just want to jump in on this - I spent a significant amount of time in the print ad design world and something like this would be an easily justified expense.


Small business owner. I would use it since it would save me a ton of time and money on my own stuff.


I do video effects work and I'd suggest this could be very useful even with jitter, if you allow expanding the selection. A lot of time is spent creating "garbage mattes" for green screen footage, basically just roughly rotoscoping out the background so you can do key removal on just the important bits. So you could even massively downsample the video for your processing and still have a good enough matte.

Although, with your tech, and the more limited problem space of green screens and poorly lit green screens, you could probably make a pretty amazing tool to do the entire green screen removal.


Animated GIFs don't work, you should at least extract the first frame to process.


This is awesome!

I uploaded a photo of myself as a kid with my sister and grandpa. Early 80's, a washed out photo, where the lines were less definitive. Had some issues with that image.

This photo if you're curious. https://imgur.com/a/a4jQ5y1



Link doesn't work, as the images get deleted after 60m


I'm pleasantly surprised with how well this works. It would be awesome if you added the ability to pick a second photo to provide a new background. Of course this isn't that hard to do on my own once I have the background removed, but saving another step would be great :)


Nice service! I have. Couple ideas you might consider to make it even better:

1. Make a plug in for photoshop/gimp/[favorite editor]. You could charge for that service.

2. Figure out a way for users to manually fix any errors and use that data for further training.


Ok it just says "Removing Background", and never finishes that. Is it HN Effect?


Same issue here.


There some pretty major color shift in the photo I tried. A lot of red was missing from the resulting photo.

Also, it is possible to see the background through the lens of my glasses; that portion of the background was not removed.


> and it's FREE.

So how do you pay for it, and what does it cost me (in non-monetary form)?


I'm guessing they'll charge for the API and possibly support for higher-resolutions.


That would have been one of my guesses also - but I don't want to guess, and that info doesn't appear to be available on their site.


Really impressive! as a photographer this is the most time consuming part of any edit. Just curious, are you doing this with photoshop or something more low level? Any technical write up would be fascinating to read!


for people that want to try at home: https://github.com/d-grossman/joojanta200

The project utilizes CRF as RNN model to assign labels to pixels. The demo preserves pixels assigned to people while blacking out pixels associated with other labels. (Think of it as automating background removal around people)


I've just seen this research on this same subject: https://www.youtube.com/watch?v=QYIQbfnS9jA


I tried this during development. It works amazingly well but there are also a lot of downsides: the long processing time is just a minor example.


I used to spend hours cutting "renders" of images a decade ago.. and while I found a few images that confused it, many worked with surprising effect! Color me impressed!


Beautiful. Works great with portrait poses, less well with groups.


if you don't bump up the resolution output for this service.. it will be mostly be constrained to basic website use.

> I would pay a small usage fee for ultra-high-res that covers the additional server costs needed to offer this.


Pretty impressive.

Hard to judge because resulted image is tiny - but looked good.


How does this background removal tool work? The removal and keeping the people is really good, far better than I have done in the past manually


I'm interested to learn how was it done? Works as expected, great work OP. People like you make me always hungry for information


Wow!! I only tried this because of the comments here, you guys have got to try it, this is amazing.


This works pretty well, thanks for sharing, this could be useful for thumbnails!


This is the best tool i've come across so far. Thanks a lottttt!


This is impressively good!


I was not expecting this to work as well as it did. Great job!


Works amazingly well, and has an even better domain name.


Amazing! :D Any information on the tech behind this? :)


https://github.com/facebookresearch/deepmask/blob/master/REA... can be implemented in PyTorch for a DL approach or https://docs.opencv.org/3.1.0/db/d5c/tutorial_py_bg_subtract... for a traditional OpenCV based implementation


Wow. Fast and it did a good job on my test photo.


"Without a single click"

but... how do I select a photo!?


As I did, using keystrokes on a keyboard. Do you have any further questions?


Does not work with cats.


It says so in the about section. The AI is trained on people.


Let's make this a feature request for the version 2.0. People love cats and dogs.

EDIT: And horses? I guess they are common in photos of trips.


cool,let me try


> 100% automatically – in 5 seconds – without a single click

cant drag-n-drop images on the webpage... so the slogan is a lie

impressive service nonetheless


Nice work, but citing the FAQ:

> How does it work?

> We use sophisticated AI technology to detect foreground layers and separate them from the background.

You use "sophisticated AI technology"?

Why can't you write, that you trained a CNN and do some image postprocessing? This kind of voodoo-language turns me as a potential technical customer completely off.


Customers like you don't pay that good, that's why xD

Welcome to the world of marketing where you use phrases like this to attract customers who don't have a clue about what AI could be but the power to decide about money.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: