Yes PLEASE. I have spent a lot of time Removing link shorteners from posts! and many of the blacklisted link shorteners are actually image hosting services, so I have experience dealing with this.
Many image hosting services delete their images after a certain period of time. After this has happened, it can be IMPOSSIBLE to get a replacement.
There is only one image I can remember that I was able to find a suitable replacement for. The only reason I could was because it was of a pop up in a very popular tool, and the question essentially dictated what it said.
There is still a lot of work to be done with removing banned image links. yfrog.com alone has 200 hits.
A number of questions relied on now broken images to be coherent. It's impossible to answer a question when all it says is:
How do I get this effect in jQuery?
I want to do this in jQuery:
(Yes, this is loosely based off personal experience.)
By my calculations, there are about 20k+ different posts (on Stack Overflow alone) that have inlined images that aren't from i.stack.imgur.com:
Select id as [Post Link], body
where body like '%<img src="http://[^i]%'
or body like '%<img src="https://[^i]%'
This probably misses a great deal, like ImageShack images. It's also not running quick enough on some sites, so it may need to be tweaked if you're going to run it (e.g. by returning
top 100 only).
I think that the best solution would be to automate as much of this as possible. Would it be possible to have Community find all the posts with live inlined images, upload them to Imgur, and replace it with the new link? In the past it helped to transition links during the great meta schism and then again during the switch to HTTPS. (The latter change also messed up posts with inlined external HTTP images, something that still needs fixing on most sites.)
Another solution would be to give a warning when editing a post that contains an inlined external image. While this doesn't solve the problem directly, it at least makes sure that people know it's a problem so it can be fixed on a case-by-case basis. It would look something like this: