120 comments

[ 3.0 ms ] story [ 212 ms ] thread
Cool tool but just as a suggestion, having that example of removing 'Copyright' watermarks is probably a bad idea in terms of legal CYA and just general decency in terms of respecting attribution.

If that is what people want to do with the tool is beyond your control but to showcase it in your example gets you on the hook for ill-intent.

Yup, that was my first thought too: people will probably have the idea of using the tool to remove watermarks on their own anyway, but by giving it as an example you are putting yourself in the line of fire.
Why would this cause legal issues? (assuming the author owns the rights to the images shown in the preview)

I can think of two related topics:

* Export restriction on encryption (does not apply here)

* YouTube's content policy on hacking tutorials (not applicable here either, since this is not YouTube)

Because it doesn’t need to be illegal to cause legal issues. All it takes is one wealthy enough, persistent enough, annoyed enough plaintiff, to make your year extremely shitty.
LOL there are plenty of people like that
Some time ago, youtube-dl, a downloader tool for YT, faced legal troubles from RIAA simply for showing a copyrighted video URL in a demo. Something about anti-circumvention. [1]

Given that this project is an alternative to Adobe's features, the latter may feel tempted to claim this is a tool intended for copyright circumvention.

[1]: https://commonsware.com/blog/2020/10/24/youtube-dl-avoiding-...

There are different forms of secondary liability for copyright infringement: https://matthewminer.name/law/outlines/3L/1st+Semester/LAW+6...

Particularly, inducement liability could be a real issue here.

In MGM v. Grokster, the Supreme Court unanimously said, "[O]ne who distributes a device with the object of promoting its use to infringe copyright, as shown by clear expression or other affirmative steps taken to foster infringement, is liable for the resulting acts of infringement by third parties."

I've often wondered if I could get Apple computers sued by ripping CDs with iTunes and sharing the results (ripping is copy infringement in the UK, the media companies had the government remove format-shifting rights and we don't have Fair Use [our Fair Dealing is very conservative]).
No, because you can rip CDs containing stuff under some creative commons license or some other license that permits copying.

You probably can't sue a knife maker because you killed someone with one of their knives. My knives usually cut vegetables and tofu, which is allowed as far as I know.

It gets complicated, you can obviously use any 'hacking' tool for red team operations, but tools that are published and were designed for such hacking (cracking, intrusion) still appear to be subject to legal control (in Europe; I guess like how encryption tools that are subject to defence controls in USA can obviously be used for non-nefarious purposes but it's still illegal to export them [or was in the past---browsers used to hobble the encryption built it---I think still is?]).

Similar here, but worse than the knife/tool analogy: when you rip a copyright CD the system gathers all the data on the CD to present in the interface but doesn't warn you about the copyright; it is designed to rip commercial, copyrighted music.

removing watermarks does not remove the copyright...
No, but it can aide infringement (just as torrenting a movie does not remove copyright, but trackers can problematic to run).
If you want to prevent infrigement then dont publish images with watermarks online...
I say the opposite. At first I didn’t care much for the removal of people, but taking watermarks out of images had me sold.
Thank you @xwdv! Watermarks are certainly one of the main use cases.
(comment deleted)
Thanks for pointing out, it’s indeed our own edited photo from Lake Tahoe. Will swap the word with “watermark”. Appreciated!
Superb, works nicely for a test run that I did.
Thanks for testing it out!!
This is a bit of a tangent, but when I opened the page, the heading looked like this: https://i.imgur.com/mYHKd0Q.png

Turns out the Font family is specified as "Copperplate, Papyrus, fantasy" and my system didn't have any font that matched. Fixed it by installing the Impact font, as it matches "fantasy".

That's a bold choice of default fonts...
(comment deleted)
Aren't those the fonts used in one of the MS Frontpage's standard homepage templates? (Can anyone from the 90's confirm?)
Total tangent but Imgur simply does not load on Firefox for Android now? Linked page just spins forever "loading" the linked image until I request Desktop Site, at which point it happily loads.

An image hosting site that cannot (errrrr, "cannot") display images. Imagine.

Worka absolutely fine for me with Firefox for Android 102
Ahh, only seems to have that issue in private mode.
Fixed, thanks a bunch!
I remember when the smart object removal feature was added to photoshop and it was pretty cool. The fact that you can now get the same functionality working even better in a free browser tool is mind blowing.
Thank you for your kind words @orobinson!
"Even better" is an understatement. This straight blows the Photoshop smart object removal out of the water.
Really nice. I tried removing someone behind a wire grate, and it correctly identified them, replaced the wire grate and filled in the grate holes with decent background imitation.
Thank you @mbforbes!
I tried with a moderately complex image [0] and it failed to properly remove anything.

Edit: saw matsemann's comment - I was using Firefox, where selecting areas and clicking remove did nothing. Tried Chrome and got the same result of progress bar and then broken image. Same result in Safari. All on MacOS.

[0] https://i.imgur.com/mbEnZYD.jpg

Must be HN hugged to death. API responses are returning status code 500.
OK. Everybody close the tab for a minute, I want to try it.
@brk Sorry for the superrr late response, but please give it a try!
It only works for beaches ;)
I thought that might be the case which is why I tried a beach pic. Might have only been QA'd with one specific beach.
Love your comments! Definitely QA'd just for that single beach lol
Completely unusable on mobile for me. Is this expected?
I tried it (several hours ago) on iOS and it worked very well. Others are complaining about HN-induced overload, so it might be that.
Hmm, in Firefox a progress bar shows for a few seconds after clicking "remove", and then nothing else happens. In Chrome the image disappears and is replaced by a broken image icon.
Broken here also. Chrome MACOS
It's broken for me, too
Probably the AI is dead because of the HN hug (of death).
Same. FF - nothing happens. Chromium - broken image icon. If this gets fixed I would use the heck outta this app.
Couldn't find the pricing page. Is this free? What's your business model?
We will definitely keep it free. We are still trying out different business plans and will leave this answer open for now. Sorry for the vague response.
I will pay for it now for commercial use.
@Wistar I'm over the moon hearing this and would love to make this official asap. Could you please shoot us an email at support@cleanupphotos.com so we can get you at least onboard with a beta? I'm so overwhelmed to hear serious users willing to support us!
In the meantime I’ll get the high-end feature sign-up page ready asap. Thanks a bunch!
Seems like the endpoints of the service itself now seem to return HTTP 500 for some reason, so once you click on "Remove", nothing happens.

Example URL:

  https://cleanupphotos.com/cleanup/false/NUMBER_GOES_HERE
Response contents:

  Internal Server Error

  The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.
Aaah, so that's why It was behaving wonky for me.
Apologize for the super late reply and hope you gave it another try.
Nice job!

I made one of these back in the day. Also allowing positive selections gives the model a lot more information and gives the user more power. You can use that to easily remove gridlines and smudge marks in photos of drawings without having to select every little thing you want deleted, or similarly you can positively select the main subject and a bit of scenery, negatively select a few passers-by, and let the model remove a crowd. The key point is that it moves some of the training-time bias toward a runtime selection, allowing better results on a wider variety of tasks (at the cost of more clicks on photos the model understands with few removals happening).

Thanks a bunch @hansvm, certainly enlightened by expert's view!
this is an alternative i have come across: https://cleanup.pictures/
seems to be much faster and more user friendly than OP's site and worked also better on one example I tried
Meant as constructive feedback for OP: the UI is certainly more agreeable on the eyes, and I find the brush selection more convenient than OPs box selector.

Still: great work, OP!

Ngl both do a pretty great job, OP's may be slightly better even.

Unfortunately both output images at thumbnail quality, so it's an academic exercise only and not anything actually useful.

@moffkalast, thanks for the feedback! It's currently at 1024 pixels, hope that's not as bad as the experience yesterday. The processing speed will slow down a bit though, hope that won't affect the usability on phones. Thank you!
Thanks @njgroene, will try to improve the UI asap! I agree, most users might only need brushes. Great feedback, helps prioritize important aspects!
Why does the text scale with screen size?
We haven't yet tested all the screen sizes so we've built it to look nice on laptops and phones. Please let me know if the texts are showing up weird on your device. I'll make sure it doesn't. Thanks a bunch!
This reminds me of pixels magic eraser technology which I think is specialized for removing people.
I'm rather ignorant in that domain, so I wonder if some people could enlighten me. What are the AI tasks behind this?

I can identify two steps:

- Identifying an approximate shape of background vs foreground to get something more precise than just a rectangle. What is it called? Just background detection?

- Actually filling-in the holes. I think this is called a diffusion task? Is that correct? ddg-ing around looks like diffusion is the name of the method rather than the actual task, but I can't find the name of the task.

I'm curious at whether some existing open models would be usable on smartphones to make an opensource app (or maybe there are already such apps I'm unaware of)

For the two steps you listed it could be image segmentation followed by image in-painting.
The technical term is “inpainting” (https://en.wikipedia.org/wiki/Inpainting), so “inpainting algorithms” will give you papers on various ways to do it.

In general, diffusion isn’t a good way to do it, as diffusion fills in the missing hole with data with fewer small details than the surrounding area.

Modern smartphones are fast enough for implementations.

Pixel has this built into the OS.
it works reasonably well on clothes blocked by objects, I suppose not so great for skin blocked by clothes
I've personally tried to remove watches, glasses, small things blocking the skin and they are fine. But for large portions, it won't be good. Someone pointed out things like a better algorithm might give more realistic results. Those are in our pipeline, but they require more hardware resources which might end up as a sign-up service. Similar thing goes to processing higher resolution images.

This is valuable feedback, thank you!

This produced really impressive results in removing a creased dent in a car door and a pile of rocks from in front of a fence. Both photos were at an oblique angle and I thought the result was good enough for commercial use. I used Chrome on an iPad.
@Wistar We're happy you enjoyed it! Thank you!!
Just an FYI, CloudFlare is blocking this.
This is a cool version of a suggestive AI product with a great, simple interface for reviewing. Well done -- we admire this type of product at Kapwing, the company I lead.
@jenthoven respect to the hustlers kapwing.com! Thank you!
FWIW the tip, "hug the box to", comes across a little awkwardly to me, I'd prefer "wrap the box around".

Although perhaps the emotional implications of using "hug" are worth the unusual nature of the phrase.

Makes sense! Thanks @pbhjpbhj!
Of course, I had to test it with this photo:

https://imgur.com/a/ypyIhB3

Not too bad! Can definitely tell it's been edited, but for a quick removal it was painless.

That image should be the 'Lena' of person-removal image benchmarks.
This gave me a good chuckle, thanks!
Thanks for the thumbsup on painlessness!
Wow, that's a really dark one! Never thought it could reproduce a piece of history, you made my day.
Checking your browser before accessing cleanupphotos.com.

This process is automatic. Your browser will redirect to your requested content shortly.

Please allow up to 5 seconds…

Redirecting…

FOREVER.

Thanks for using this garbage service.

We are working on stabilizing the app, sorry for the trouble.
It's not your fault, it's common to CloudFlare.
I would not have said 'garbage service', but CloudFlare does make we want to punch a wall or sometimes. I get the impression that half the people using CloudFlare don't actually need it.
In this case we actually benefit from CloudFlare on the launch. The hug is quite hard from HN. We love you HN.
Really, how? I would have thought that running the image processing on that backend would be much more expensive than serving the relatively static website?
That is true!
Then how do you benefit from CloudFlare? Legit curious.
Oh the DDoS protection and traffic routing, their service is pretty easy to set up.
Who is DDoSing you? This website is not a high-profile target, I'm not sure why anyone would be interested in attacking this. Or do your logs say otherwise?

By 'traffic routing' do you mean CDN, or reverse-proxy or what? A single server with properly-configured client-side HTTP caching should do the trick for serving a static site.

I was prepared to be underwhelmed, but it did a very good job on the three photos I threw at it. Very well done indeed.
Thanks for trying it out and the compliments!!